@charset "utf-8";

/*PC用 css*/

.w320_only,
.sp_only,
.sp_only ul{display:none !important;
}

body{
font-size:14px;
line-height: 1.6;
letter-spacing: 0.3px;
text-align: center;
min-width: 1040px;
}

h3,
h2{line-height: 1.4;}

.imgR {
	float: right;
	margin: 0 0 20px 30px;
}

.imgL {
	float: left;
	margin: 0 30px 20px 0;
}

.left{
float:left;
}

.right{
float:right;
}

.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb25{margin-bottom:25px;}
.mb30{margin-bottom:30px;}
.mb35{margin-bottom:35px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mt10{margin-top:10px;}
.mt10{margin-top:20px;}
.mt40{margin-top:40px;}
.ml10{margin-left:10px;}
.ml20{margin-left:20px;}
.ml30{margin-left:30px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.pt10{padding-top:10px;}
.pt20{padding-top:20px;}
.pt30{padding-top:30px;}
.pt40{padding-top:40px;}
.pt50{padding-top:50px;}
.pb30{padding-bottom:20px;}
.pb30{padding-bottom:30px;}
.pb40{padding-bottom:40px;}
.pl10{padding-left:10px;}


.txt11{ font-size:11px; }
.txt12{ font-size:12px; }
.txt13{ font-size:13px; }
.txt14{ font-size:14px; }
.txt16{ font-size:16px; }
.txt17{ font-size:17px; }
.txt18{ font-size:18px; }
.txt19{ font-size:19px; }
.txt20{ font-size:20px; }
.txt22{ font-size:22px; }
.txt24{ font-size:24px; }
.txt28{ font-size:28px; }
.txt32{ font-size:32px; }
.txt36{ font-size:36px; }

.txt120{
font-size:120%;
}

a.tel,
a.tel-link{
pointer-events: none;
}

.txt_green{
color:#63ae30
}

.txt_red{
color:#f32323;
}
/*----------------------------------------------------
	#box1000（背景/ページ横幅）
----------------------------------------------------*/

#container{
text-align:center;
overflow:hidden;
min-width: 1040px;
}

#main_contents {
padding-top: 118px;
	/zoom: 1;
clear:both;
overflow: hidden;
}

.box1000 {
overflow: hidden;
width: 980px;
margin-left: auto;
margin-right: auto;
}

/* 2column-main */
#primary{
clear:both;
width:705px;
float:left;
padding-top: 40px;
}

/* 2column-side */
#sidebar{
width:240px;
float:right;
padding-bottom:40px;
padding-top: 50px;
}
/*----------------------------------------------------
	ヘッダー
----------------------------------------------------*/

header{
width:100%;
margin: 0 auto 0;
padding: 40px 0 0;
z-index: 9998;
position: fixed;
height:78px;
background: #fff;
}

.tagline{
background: #d5687a;
position: fixed;
text-align: center;
width:100%;
z-index: 9999;
}

.tagline p,
.tagline h1{
color:#fff;
font-weight: normal;
font-size: 14px;
text-align: center;
width:1000px;
margin-left:auto;
margin-right:auto;
line-height: 22px;
height:24px;
}

header .logo_box {
width:195px;
height:64px;
position: absolute;
text-align: left;
display: block;
overflow: hidden;
}

.h_tel{
float:right;
text-align: left;
overflow: hidden;
display: inline-block;
margin-bottom: 10px;
line-height: 30px;
vertical-align: top;
}

.h_tel a{
background: url(/img/common/i_tel.png) 0 50% no-repeat ;
display: inline-block;
padding-left: 32px;
line-height: 30px;
font-size:28px;
font-weight: 500;
color: #cc6699;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
padding-right: 10px;
}

/*----------------------------------------------------
	nav
----------------------------------------------------*/

#gnavi{
display: inline-block;
padding:0;
z-index: 999;
overflow: hidden;
position: relative;
float:right;
}

#gnavi ul {
margin: 0 auto 0;
height:22px;
font-size:14px;
text-align: left;
display: inline-block;
}

#gnavi ul li{
display: block;
margin: 0;
float:left;
position: relative;
padding-left: 18px;
}

#gnavi ul li:first-of-type{
padding-left: 0;
}

#gnavi ul li a{
background: url(/img/common/i01.png) 0 58% no-repeat ;
background-size: 16px auto;
padding-left: 18px;
display: block;
line-height:22px;
cursor: pointer;
 -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}

#gnavi ul li a:hover{
color:#d5687a;
text-decoration: none;
}

#about #gnavi ul li.nav01 a,
#course #gnavi ul li.nav02 a,
#school #gnavi ul li.nav03 a,
#news #gnavi ul li.nav04 a,
#trial #gnavi ul li.nav05 a{
color:#d5687a;
}

#spNav {
display: none !important;
}

/*----------------------------------------------------
	tit 共通パーツ
----------------------------------------------------*/
#main_contents .tit_wrap{
background: url(/img/common/bg02.png) #fdf2da;
box-shadow:0px 4px 3px -3px #f0dfc9 inset;
}

#main_contents .title{
position: relative;
text-indent: -9999px;
height:180px;
}

#school #main_contents .title{
background: url(/img/school/tit.png) 50% 60% no-repeat;
}

#news #main_contents .title{
background: url(/img/news/tit.png) 50% 60% no-repeat;
}

#inquiry #main_contents .title{
background: url(/img/inquiry/tit.png) 50% 60% no-repeat;
}

#about #main_contents .title{
background: url(/img/about/tit.png) 50% 60% no-repeat;
}

#course #main_contents .title{
background: url(/img/course/tit.png) 50% 60% no-repeat;
}

#trial #main_contents .title{
background: url(/img/trial/tit.png) 50% 60% no-repeat;
}

#policy #main_contents .title{
background: url(/img/policy/tit.png) 50% 60% no-repeat;
}

.stit01{
font-size:22px;
text-align: center;
margin-bottom: 20px;
font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
letter-spacing: 2px;
/*font-weight: 500;*/
}

.stit01.txt32{
font-size:32px;
letter-spacing: 3px;
}

.stit01.txt30{
font-size:30px;
letter-spacing: 3px;
}


.btn_rose a{
display: inline-block;
background: #c83f5c;
color:#fff;
text-align: center;
font-size:14px;
letter-spacing: 0.3px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
line-height: 30px;
height: 30px;
padding: 1px 15px;
font-weight: normal;
}

.btn_rose input:hover,
.btn_rose a:hover{
background: #930120 !important;
text-decoration: none;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

.btn_blue02 a{
color:#4199c4;
font-size:16px;
}

section{
overflow: hidden;
}

section p{
line-height: 1.6;
}

#main li{
position: relative;
}

a.more{
position: absolute;
top:0;
bottom:0;
right:0;
left:0;
cursor: pointer;
text-indent:-9999px;
z-index: 999;
 -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}

a.more:hover{
background-color: rgba(255,255,255,0.2)
}

.bg_w{
width:940px;
margin-left:auto;
margin-right: auto;
-webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
      box-sizing: border-box;
}

/*----------------------------------------------------
	#breadcrumb
----------------------------------------------------*/

.breadcrumb{
margin: 0 auto -40px;
position: relative;
z-index: 999;
}

.breadcrumb ol{
text-align:left;
line-height: 40px;
height:40px;
padding-left: 15px;
}

.breadcrumb li{
display:inline;
font-size:14px;
letter-spacing: 0px;
text-shadow:1px 1px 0px #fff;
}

.breadcrumb li{

}

.breadcrumb li a{
font-weight: normal;
}

.breadcrumb li:after {
    content: '>';
}

.breadcrumb li:last-child:after {
display: none;
}

#about .breadcrumb li{
text-shadow:none;
}

#about .breadcrumb li a{
color:#fff;
}

#about .breadcrumb li:after {
content: '>';
color:#fff;
}


/*----------------------------------------------------
	#course
----------------------------------------------------*/

.course_detail{
padding: 50px 0 40px
}

#course .intro{
background:#cc6699;
z-index: 1;
}

#course .intro .box1000{
background:url(/img/course/main.jpg) left top no-repeat;
height:500px;
color:#fff;
position: relative;
z-index: 2;
width:1000px;
}

#course .intro .txt_box{
padding-top: 20px;
padding-left:522px;
text-align: left;
}

#course .txt32{
font-weight: 500;
margin-bottom: 20px;
font-size:36px;
}

#course .intro .txt_box p{
letter-spacing: 0;
line-height: 1.8;
}

#course .intro .txt_box ul{
margin: 5px auto;
}

#course .intro .txt_box li{
background:url(/img/course/icon_sakura.png) left 50% no-repeat;
padding-left: 24px;
letter-spacing: 0px;
font-weight: bold;
}

#course .intro .txt_box li a{
font-size:120%;
color:#ffffcc;
letter-spacing: 1px;
}

#course01 .txt01{
margin-bottom: 30px;
}

#course .step{
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: space-between;
   -ms-flex-pack:space-between;
     justify-content:space-between;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

#course .step li{
width:30%;
background: #fff;
border: 1px solid #ccc;
z-index: 2;
position: relative;
padding-bottom: 120px;
margin: 40px 0;
overflow: visible;
}

#course .step li:after{
display: block;
content: "";
width:20px ;
height:43px ;
top: 0;
right: -36px;
bottom: 0;
margin: auto;
position: absolute;
background: url(/img/course/step_arrow.png) 50% 50% no-repeat;
}

#course .step li:last-child:after{
display: none;
}

#course .step li.pb80{
padding-bottom: 80px;
}

#course .step li .no{
color:#fff;
position: absolute;
top:-40px;
left:0;
right:0;
margin:auto;
background:url(/img/course/bg_step.png) 50% top no-repeat;
background-size: auto 39px;
height:39px;
font-size:17px;
line-height:46px;
vertical-align: bottom;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

#course .step li .no i{
font-size:150%;
font-weight: 500;
}

#course .step li h3{
font-size:22px;
padding: 30px 0;
letter-spacing: 0px;
}

#course .step li .txt{
padding: 10px;
text-align: left;
}

#course .step li .btn_rose{
position: absolute;
bottom:20px;
left:0;
right:0;
margin: auto;
height:50px;
}

#course .step li .btn_rose.btn_tel{
bottom:80px;
}

#course .step li .btn_rose.btn_tel a span{
background: url(/img/common/i_tel02.png) 0 50% no-repeat;
display: inline-block;
font-size:22px;
padding-left: 35px;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
background-size: 32px auto;
}

#course .step li .btn_rose a{
height:50px;
width:230px;
line-height: 48px;
font-size:16px;
-webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
      box-sizing: border-box;
}

#course .stit_grade{
font-size:36px;
font-weight: 500;
line-height: 100px;
height:100px;
color:#fff;
background: rgba(240,111,154,1);
background: -moz-linear-gradient(top, rgba(240,111,154,1) 0%, rgba(251,131,83,1) 100%);
background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(240,111,154,1)), color-stop(100%, rgba(251,131,83,1)));
background: -webkit-linear-gradient(top, rgba(240,111,154,1) 0%, rgba(251,131,83,1) 100%);
background: -o-linear-gradient(top, rgba(240,111,154,1) 0%, rgba(251,131,83,1) 100%);
background: -ms-linear-gradient(top, rgba(240,111,154,1) 0%, rgba(251,131,83,1) 100%);
background: linear-gradient(to bottom, rgba(240,111,154,1) 0%, rgba(251,131,83,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f06f9a', endColorstr='#fb8353', GradientType=0 );
}

.alink{
margin-top: -120px;
padding-top: 120px;
}

#course .course_box{
border-top:1px solid #c387a5;
border-bottom: 1px solid #fff;
margin-bottom: 50px;
background: #fff;
box-shadow:0px 3px 5px -2px #999;
}

#course .course_box .box1000{
width:960px;
padding-right: 330px;
-webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
      box-sizing: border-box;
}

#course .course_box .doc_box.box1000{
padding-right: 0px;
}

#course .course_box .lead{
color:#993366;
font-size:22px;
font-weight:bold;
letter-spacing: 0.2px;
/*font-weight: 500;*/
padding: 25px 0 10px;
}

#course .course_box h2{
margin: 0px auto 13px;
font-size:40px;
font-weight: 500;
background:url(/img/course/icon02.png) left 50% no-repeat;
padding-left: 50px;
letter-spacing: 0.3px;
}

#course .course_box .img{
position: absolute;
right:0;
top:18px;
border: 1px solid #9e9e9d;
}

#course .course_box .img img{
width:318px;
}

#course .course_box .txt01{
margin-bottom: 30px;
font-size:16px;
}

#course .course_box .exp01{
margin-bottom: 20px;
background: #fef5f5;
padding: 15px 20px;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: space-between;
   -ms-flex-pack:space-between;
     justify-content:space-between;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

#course .course_box .exp01 li{
width:48%;
}

#course .course_detail .btn_trial02{
padding: 20px 0 30px;
}

.acc_box .txt_box{
margin-bottom: 30px;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: space-between;
   -ms-flex-pack:space-between;
     justify-content:space-between;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

.acc_box .txt_box .img02{
display: inline-block;
border: 1px solid #999;
}

.acc_box .txt_box .img02 img{
width:320px;
display: inline-block;
}

.acc_box .txt_box p{
background: #f6f0df;
padding: 30px;
width:622px;
}

.ti_{
text-indent: -0.4em;
}

.txt_p{
color:#993366;
}

.acc_box .table_box{
margin: 25px auto 30px;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: space-between;
   -ms-flex-pack:space-between;
     justify-content:space-between;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

.acc_box .table_box .w50{
width:48%;
}

.acc_box .table_box table{
width:100%;
margin-bottom: 14px;
}

.acc_box .table_box table.mb0{
margin-bottom: 0;
}

.acc_box .table_box table .ti{
text-indent: -1.2em;
padding-left: 1.2em;
}

.acc_box .table_box table caption{
background: #fef5f5;
line-height: 2;
color:#993366;
border-top: 1px dotted #999;
border-bottom: 1px dotted #999;
margin-top: 10px;
}

.acc_box .table_box tr{
border-bottom: 1px dotted #999;
}

.acc_box .table_box tr th{
padding: 10px 12px;
color:#993366;
width:4.4em;
}

.acc_box .table_box tr td{
padding: 10px;
}

/*----------------------------------------------------
	アコーディオン
----------------------------------------------------*/
/*
.acc_box {
  position      : relative; 
  overflow      : hidden;
  transition    : .7s;
  height        : 40px;
  margin        : 0 auto 0px;
  width:100%;
}

.acc_box .doc_box{
padding-bottom: 10px;
}
 
.acc_box > input {
 display       : none;                            
}

.acc_box > label {
  position      : absolute;
  display       : inline-block;
  bottom        : 0px; 
  left          : 0;
  right         : 0;
  height        : 45px;
  text-align    : center;

}
 
.acc_box > input[type="checkbox"]:checked + label {
  height        : 30px;
  padding-top   : 0;
}

.acc_box > input[type="checkbox"]:not(:checked) + label::after {
  content       : "詳しくみる";
display: block;
position: absolute;
cursor: pointer;
height:30px;
width: 100%;
background:url(/img/course/bg_detail.png) left 50% repeat-x;
bottom: 0;
left: 0;
right:0;
z-index: 99;
color:#fff;
font-size:16px;
height:40px;
line-height: 38px;
}


.acc_box > input[type="checkbox"]:checked + label::after {
content       : "閉じる";
display: block;
position: absolute;
cursor: pointer;
height:30px;
width: 100%;
background:url(/img/course/bg_detail.png) left 50% repeat-x;
bottom: 0px;
left: 0;
right:0;
z-index: 99;
color:#fff;
font-size:16px;
height:40px;
line-height: 38px;
}*/

/*----------------------------------------------------
	#about
----------------------------------------------------*/

#about .intro{
background:#887d69;
z-index: 1;
}

#about .intro .box1000{
background:url(/img/about/main.jpg) left top no-repeat;
height:500px;
color:#fff;
position: relative;
z-index: 2;
width:1000px;
}

#about .intro .txt_box{
position: absolute;
top: 50%;
left:522px;
right:0;
margin: auto;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
text-align: left;
}

#about .txt32{
font-size:36px;
font-weight: 500;
margin-bottom: 30px;
}

#about .intro .txt_box p{
line-height: 1.8;
}

#about .tokucho .img img{
width:272px;
padding: 0 10px;
}

#about .tokucho li{
clear: both;
overflow: hidden;
margin-bottom: 40px;
}

#about .tokucho .txt_box{
width:645px;
font-size:16px;
padding-top: 20px;
}

#about .tokucho li:nth-child(odd) .txt_box{
padding-top: 50px;
}

#about .tokucho h3{
font-size:22px;
color:#aa5780;
margin-bottom: 20px;
letter-spacing: 0.4px;
font-weight: bold;
}

#about01 .btn_purple{
margin-bottom: 55px;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: center;
   -ms-flex-pack: center;
     justify-content: center;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

#about01 .btn_purple a{
width:300px;
height: 60px;
line-height: 58px;
color: #fff;
font-size:20px;
background: #aa5780;
display: block;
margin: 0 18px;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
border-radius: 6px;
}

#about01 .btn_purple a:hover{
background: #86164d;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

#about02{
padding: 30px 0 0;
}

#about02 .student{
margin: 30px auto;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: space-between;
   -ms-flex-pack:space-between;
     justify-content:space-between;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

#about02 .student li{
width:31%;
}

#about02 .student li .img img{
width:162px;
padding-bottom: 15px;
}

#about02 .student li .txt{
text-align: left;
}

#about03{
padding: 30px 0 0;
}

#about03 table{
font-size:16px;
background: #fff;
width: 750px;
margin: 10px auto 60px;
text-align: left;
border: 15px solid #fff;
border-collapse: collapse;
}

#about03 table th{
width:80px;
font-weight: normal;
text-align: center;
padding: 4px;
}

#about04 .stit01{
font-size:30px;
letter-spacing:0.4px;
margin: 0 auto 40px;
}

#about04 .about_box{
background: #fff;
padding: 20px;
width:940px;
margin: 0 auto 30px;
}

#about04 .about_box h3{
position: absolute;
background: #993366;
color:#fff;
height:50px;
line-height: 48px;
width:260px;
font-size:30px;
left:-20px;
font-weight: 500;
}

#about04 .about_box h3:after{
display: block;
content: "";
width: 21px;
height: 13px;
bottom: -13px;
left: 0;
margin: auto;
position: absolute;
background: url(/img/about/stit_btm.png) 50% 50% no-repeat;
}

#about04 .about_box .img img{
width:290px;
}

#about04 .about_box .txt_box{
width:580px;
padding-top: 65px;
font-size:16px;
}

#about04 .about_box dt{
padding-top: 14px;
color: #993366;
font-weight: bold;
font-size: 18px;
}

#about04 .about_box dd{
color: #996666;
}


/*----------------------------------------------------
	#school
----------------------------------------------------*/

#school .intro.box1000{
background:url(/img/school/img01.png) right top no-repeat;
height:250px;
}

#school .intro h2{
font-size:36px;
margin-bottom: 45px;
font-weight: 500;
padding-top: 20px;
letter-spacing: 2px;
}

#school .intro p{
line-height: 1.8;
}

#school01{
padding: 30px 0 50px;
}

#school .area_sort{
padding-left: 20px;
margin-bottom: 30px;
overflow: hidden;
}

#school .area_sort dl{
float:left;
font-size:16px;
vertical-align: top;
}

#school .area_sort dt{
color: #d77182;
}

#school .area_sort li{
padding-top: 5px;
}

.area_sort dd{
display: inline-block;
margin-right: 30px;
vertical-align: top;
}

#school .btn_search{
clear: both;
text-align: center;
margin-bottom: 50px;
}

.area_sort label{
position: relative;
}

.check01{
  display: none;
}
.check_txt{
  padding-left: 25px;
  position:relative;
  margin-right: 20px;
}
.check_txt::before{
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 0;
  width: 17px;
  height: 17px;
  border: 1px solid #999;
  border-radius: 4px;
}
.check01:checked + .check_txt{
  color: #d5687a;
}
.check01:checked + .check_txt::after{
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  left: 5px;
  width: 8px;
  height: 15px;
  transform: rotate(40deg);
  border-bottom: 3px solid #d5687a;
  border-right: 3px solid #d5687a;
}

#school01 h3.txt_rose{
font-size:26px;
color:#d5687a;
}

#form_box .btn input,
.btn_search input{
cursor: pointer;
-webkit-border-radius: 6px;
-moz-border-radius:6px;
border-radius: 6px;
line-height: 50px;
height:50px;
color:#fff;
background: url(/img/common/arrow_btn.png) 28px 50% no-repeat #d5687a;
font-size:20px;
padding: 0 30px 0 50px;
box-shadow: none;
border: none;
outline: none;
}

#form_box .btn input:hover,
.btn_search input:hover{
background: url(/img/common/arrow_btn.png) 28px 50% no-repeat #930120 !important;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

.pd40{
padding: 40px 20px;
}

.pd20{
padding: 20px;
}

.school_list{
text-align: left;
font-size:16px;
width:100%;
}

.school_list th{
padding: 11px 20px;
background: #cc6699;
color: #fff;
/*font-weight: normal;*/
width:30%;
}

.school_list th.name{
width:40%;
}

.school_list td{
padding: 11px 20px;
vertical-align: middle;
}

.school_list tr:nth-child(odd){
}

.school_list tr:nth-child(even){
background: #ededed;
}

 a.btn_detail{
float:right;
cursor: pointer;
display: inline-block;
-webkit-border-radius: 4px;
-moz-border-radius:4px;
border-radius: 4px;
line-height: 28px;
height:30px;
color:#fff;
background: url(/img/common/arrow_btn.png) 14px 50% no-repeat #d5687a;
background-size: 8px auto;
font-size:14px;
padding: 0 15px 0 30px;
box-shadow: none;
border: none;
outline: none;
}

 a.btn_detail:hover{
background: url(/img/common/arrow_btn.png) 14px 50% no-repeat #930120;
background-size: 8px auto;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

.school_list02{
width:860px;
margin: 0 auto 50px;
}

.detail .school_list02{
margin: 0 auto 30px;
}

.stit_purple{
line-height:42px;
height:42px;
background: #cc6699;
color: #fff;
margin-bottom: 18px;
text-align: center;
font-size:18px;
}

.stit_purple.txt22{
line-height:50px;
height:50px;
font-size:21px;
}

.school_list02 .img{
float:right;
width:320px;
height:auto;
}

.school_list02 tr{
background-image: linear-gradient(to right, #999, #999 3px, transparent 1px, transparent 5px);
background-size: 8px 1px;
background-position: bottom;
background-repeat: repeat-x;
}

.school_list02 table{
width:496px;
float:left;
text-align: left;
}

.school_list02 th{
width:36%;
text-align: left;
color:#cc6699;
background: url(/img/school/icon01.png) 12px 50% no-repeat;
padding: 10px 5px 10px 30px;
vertical-align: middle;
}

.school_list02 td{
padding: 10px 20px;
letter-spacing: 0;
}

.school_list02 .btn{
float:right;
width:320px;
text-align: center;
padding: 15px 0 15px;
}

.school_list02 .btn_detail{
float:none;
}

#school02{
padding: 30px 0 40px;
}

#school02 .img02{
float:left;
position: relative;
width:225px;
height:225px;
display: block;
overflow: hidden;
border-radius: 50%;
}

#school02 .img02 img{
position: absolute;
top:50%;
left:50%;
margin: auto;
z-index: 999;
width: auto;
height:100%;
max-width: none;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.school_list02 dt.icon{
background: url(/img/school/icon01.png) 0px 50% no-repeat;
padding-left: 20px;
color:#cc6699;
font-weight: bold;
margin-bottom: 10px;
}

.school_list02 .msg_wrap{
padding: 44px 0 30px;
position: relative;
}

.school_list02 .msg{
position: absolute;
top: 50%;
left:255px;
margin: auto;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}

.inline_wrap{
text-align: center;
}

.school_list02 dd{
letter-spacing: 0;
}

.btn_back a{
background: #d5687a;
width:230px;
display: inline-block;
color:#fff;
font-size:20px;
height:50px;
line-height: 50px;
margin-bottom: 35px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}

.btn_back span{
display: inline-block;
background: url(/img/common/arrow_btn02.png) 0 50% no-repeat;
padding-left: 24px;
}

.btn_back a:hover{
background: #b3233b;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

/*----------------------------------------------------
	新着情報
----------------------------------------------------*/

#news .blog_post,
#news ul.blog_list li{
margin-bottom:40px;
text-align: left;
clear: both;
overflow: hidden;
position: relative;
padding: 10px 0 10px;
}

#news .post_tit{
text-align: left;
position: relative;
display: block;
font-size:21px;
color:#fff;
font-weight: normal;
height:40px;
line-height: 40px;
background: #cc6699;
padding-left: 94px;
overflow: visible;
margin-bottom: 20px;
}

#news .post_tit:before {
display: block;
content: "";
width:77px ;
height:67px ;
top: -12px;
left: 10px;
margin: auto;
position: absolute;
background: url(/img/news/icon01.png) 50% 50% no-repeat;
}

.blog_post .cate,
.blog_list .cate,
.blog_post .date,
.blog_list .date{
color:#db7f8e;
display: inline-block;
margin-bottom: 10px;
color:#b26087;
padding-right: 15px;
}

.blog_list .img{
float:left;
display: inline-block;
width:240px;
height:180px;
position: relative;
margin-top: 6px;
margin-right: 20px;
margin-bottom: 20px;
overflow: hidden;
}

.blog_list .img img{
position: absolute;
top:0;
left:0;
right:0;
bottom:0;
margin: auto;
z-index: 999;
width: 100%;
height: auto;
}

.blog_list .txt{
line-height: 1.8;
}

.blog_post .sns_btn li{
display: inline-block;
vertical-align: bottom;
padding-right: 10px;
}

.blog_post .sns_btn li.fbk{
padding-bottom: 5px;
}

.blog_list .more span{
display: inline-block;
position: absolute;
bottom:0;
right:10px;
margin: auto;
text-indent: 0;
text-decoration: underline;
}

.blog_post article{
overflow: hidden;
text-align: start;
margin-bottom: 40px;
}

.blog_post article .img img{
width:300px;
height:auto;
max-height: 400px;
padding:10px 20px 20px 0px;
}

.blog_post article img{
padding-bottom: 15px;
}

.pagenavi{
margin-bottom: 60px;
font-size:21px;
text-align: center;
}

.pagenavi span{
display: inline-block;
margin: 0 4px;
}

.pagenavi a{
display: inline-block;
width:32px;
padding: 1px;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
}

.pagenavi .current{
width:32px;
}

.pagenavi .next{
float:right;
}

.pagenavi .prev{
float:left;
}

.pagenavi .pn{
margin:0 auto 0;
overflow: hidden;
line-height: 30px;
}

.pagenavi .next a,
.pagenavi .prev a{
line-height: 30px;
display: inline-block;
}

.pagenavi a:hover,
.pagenavi .current{
display: inline-block;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
padding: 1px;
background: #e197b7;
color:#fff;
}

.pagenavi a:hover{
text-decoration: none !important;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

.pagenavi2{
clear: both;
margin:40px auto 20px;
overflow:hidden;
font-size:16px;
}

.pagenavi2 .prev{
display: inline-block;
float:left;
position: relative;
padding-left: 20px;
background: url(/img/news/prev.png) left 50% no-repeat;
margin-bottom: 7px;
}

.pagenavi2 .next{
display: inline-block;
float:right;
position: relative;
padding-right: 20px;
background: url(/img/news/next.png) right 50% no-repeat;
}

.pagenavi2 a{
text-decoration: underline;
}

#sidebar h4{
background: url(/img/news/pink02.png);
color:#fff;
font-size: 16px;
line-height: 40px;
height:40px;
text-align: center;
font-weight: normal;
}

#sidebar dl{
padding-bottom:4px;
margin-bottom:30px;
font-size:16px;
}

#sidebar dl dt{
margin-bottom:10px;
}

#sidebar dl dd{
padding:8px 8px 8px;
background-image: linear-gradient(to right, #999, #999 2px, transparent 1px, transparent 4px);
background-size: 4px 1px;
background-position: bottom;
background-repeat: repeat-x;
}

#sidebar dl.i_f a{
display:inline-block;
background: url(/img/common/i01.png) 0 50% no-repeat;
padding-left: 24px;
display: block;
line-height: 22px;
}

#sidebar dl dd.nob{
background: none;
}

select#select01  {
width:80%;
margin: 0 auto;
color:#666;
cursor: pointer;
background: url(/img/news/bg_select.jpg) 0 bottom repeat-x #fff;
position: relative;
-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
font-size: 17px;
vertical-align: middle;
border:none;
padding: 7px 30px;
border:1px solid #ccc;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
display: -webkit-box;
 display: box;
 box-pack:center;
 -webkit-box-pack:center;
}
/*----------------------------------------------------
	#index
----------------------------------------------------*/

.main_img{
background:url(/img/common/bg02.png) #fdf2da;
text-align: center;
padding: 20px 0 10px;
box-shadow:0px 4px 3px -3px #f0dfc9 inset;
}

#index01{
padding: 40px 0 20px;
}

/*
#index01 .txt01{
font-size:14px;
}*/

#index01 ul {
margin: 6px auto 10px;
overflow: hidden;
font-size:14px;
}

#index01 ul li{
z-index: 3;
border: 1px solid #cc6799;
float:left;
background: #fff;
padding: 2px;
width:482px;
margin-bottom: 25px;
-webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
      box-sizing: border-box;
}

#index01 ul li:last-of-type{
float:right;
}

#index01 ul li:before {
z-index: 2;
display: block;
content: "";
width: 100%;
height:10px ;
bottom:-10px;
left: 0;
right: 0;
margin: auto;
position: absolute;
background: url(/img/index/shadow01.png) 50% bottom no-repeat;
}

#index01 ul .img{
background: #fff;
margin-bottom: 10px;
display: block;
}

#index01 ul img{
display: inline-block;
}

#index01 ul h3{
font-size:22px;
margin-bottom: 10px;
font-weight: 500;
}

#index01 ul li .txt_box{
padding: 10px 10px 30px;
}

#index01 ul li .more01{
background: #cc6699;
color:#fff !important;
display: inline-block;
position: absolute;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
line-height: 26px;
height: 28px;
bottom:-15px;
left:0;
right:0;
margin: auto;
width:144px;
z-index: 10;
/* box-shadow */
box-shadow:0px 4px 4px -1px #aaa;
}

#index01 ul li .more01:hover{
background: #c00261;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

#index01 ul li p{
text-align: left;
}

.news_box{
padding: 27px 0 25px;
}

.news_box .btn_rose{
text-align: right;
border-bottom: 1px solid #c83f5c;
padding-bottom: 20px;
margin-top: -48px;
margin-bottom: 30px;
}

.news_box ul{
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: space-between;
   -ms-flex-pack:space-between;
     justify-content:space-between;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

.news_box ul li{
overflow: hidden;
min-height: 84px;
text-align: left;
width:472px;
margin-bottom: 20px;
-webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
      box-sizing: border-box;
}

.news_box ul li .img{
display: block;
position: relative;
width:110px;
height: 82px;
left:0;
top:0;
overflow: hidden;
float: left;
margin:0 14px 12px 0;
}

.news_box ul li .img img{
position: absolute;
top:0;
left:0;
right:0;
bottom:0;
margin: auto;
z-index: 999;
width: 100%;
}

.news_box ul li .tit{
font-weight: normal;
}

.news_box ul li span{
color:#b26087;
padding-right: 10px;
}

#index02 .stit01{
margin-bottom: 30px;
}

#index02 ul{
margin-bottom: 30px;
overflow: hidden;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: space-between;
   -ms-flex-pack:space-between;
     justify-content:space-between;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

#index02 ul li{
width:310px;
margin-bottom: 25px;
font-size:14px;
text-align: left;
}

#index02 ul li h3 a{
border: 1px solid #be946f;
margin-bottom: 8px;
display: inline-block;
}

#index02 ul li h3 a:hover{
border: 1px solid #c83f5c;
}

#index02{
padding: 40px 0 20px;
}

#index03{
padding: 40px 0 30px;
}

#index03 .txt_box .img{
width:195px;
position: absolute;
left: 0;
top:0;
}

#index03 .txt_box .img img{
display: inline-block;
}

#index03 .txt_box{
position: relative;
padding-left: 220px;
}

#index03 .txt_box .font-min{
padding-top: 5px;
display: inline-block;
font-size:16px;
}

#index03 .txt_box p.txt{
line-height: 1.7;
padding-top: 14px;
}

/*----------------------------------------------------
	ポリシー
----------------------------------------------------*/

.policy01{
width:700px;
margin: 30px auto 0;
background: #ffffde;
padding: 27px;
}

.policy01 .txt01{
margin-bottom: 25px;
}

.policy01 dt{
color:#4c1951;
font-weight: bold;
font-size:16px;
margin-bottom: 2px;
}

.policy01 dd{
margin-bottom: 20px;
}

.policy01 .contact{
padding-top: 10px;
}

/*----------------------------------------------------
	inquiry
----------------------------------------------------*/

#inquiry .intro{
padding-top: 60px;
background:url(/img/inquiry/inq_img.png) right bottom no-repeat;
padding-left: 65px;
padding-bottom: 15px;
}

#trial .intro{
padding-top: 60px;
background:url(/img/trial/img_trial.jpg) right bottom no-repeat;
padding-left: 65px;
padding-bottom: 15px;
}

#trial .intro .stit01,
#inquiry .intro .stit01{
margin-bottom: 35px;
/*font-weight: 500;
padding-top: 20px;
letter-spacing: 2px;*/
}

#trial .intro p,
#inquiry .intro p{
font-size:18px;
text-align: left;
margin-bottom: 30px;
}

#trial .inq_tel02 a,
#inquiry .inq_tel02 a{
display: inline-block;
width:360px;
background: #c83f5c;
color:#fff;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
text-align: center;
}

#trial .inq_tel02 a:hover,
#inquiry .inq_tel02 a:hover{
background: #930120;
text-decoration: none;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

#trial .inq_tel02 a span,
#inquiry .inq_tel02 a span{
background: url(/img/common/i_tel02.png) 0 50% no-repeat;
display: inline-block;
font-size:36px;
line-height: 66px;
height:66px;
padding-left: 48px;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}


/*----------------------------------------------------
	フォーム
----------------------------------------------------*/
#form_box{
padding: 45px 0 100px;
}

#form_box .stit01{
font-size:34px;
padding:0 0 20px;
}

#form_box .txt01{
margin:0 auto 20px;
text-align: left;
font-size:18px;
width:865px;
}

#form_box .step{
margin: 25px auto;
}

#form_box .txt02{
margin:0 auto 30px;
font-size:14px;
text-align: center;
}

.form_wrap {
width:865px;
margin: 0 auto;
padding: 30px 60px 50px;
}

#form_box .txt_box{
text-align: center;
font-size:18px;
}

.table_form{
width:100%;
margin:0px auto 20px;
}

.table_form th{
padding:3px 15px 18px 20px;
width:26%;
vertical-align: top;
text-align:left;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
vertical-align: top;
}

.table_form th.vm{
vertical-align: middle;
}

.confirm table.table_form th{
padding:5px 15px 25px 20px !important;
font-weight: normal;
}

.table_form td{
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
padding:0px 20px 13px;
vertical-align:middle;
text-align:left;
width:74%;
}

.table_form td span.ph{
display:block;
padding:2px 0 ;
color:#999;
}

.table_form td.add{
padding-left: 45px;
position: relative;
}

.confirm table.table_form td{
color:#111;
padding:0px 20px 28px;
font-weight:bold;
font-size:17px;
}

#form_box table.table_form th label{
float:left;
width:105px;
}

#form_box table .must{
background:#cc0000;
color:#fff;
text-align:center;
font-size:13px;
padding:0px 8px 0;
float:right;
font-weight: normal;
}

#form_box table input,
#form_box table textarea{
border:1px solid #ccc;
width:98%;
font-size:16px;
padding:10px;
}

#form_box table input.zip{
width:10em;
}

#form_box table .date_wrap{
padding-bottom: 13px;
display: block;
line-height: 1.6;
}

#form_box table .date_wrap span{
display: inline-block;
}

#form_box table .date_wrap .vm{
vertical-align: middle;
}

#form_box table .date input{
width:10em;
padding:3px 10px;
margin-right: 10px;
line-height: 1.6;
}

#form_box table textarea{
height:14em;
}

input::placeholder {
  color: #999;
}
input:-ms-input-placeholder {
  color: #999;
}
input::-ms-input-placeholder {
  color: #999;
}

#form_box table select {
cursor: pointer;
font-size: 15px;
line-height: 1.8;
height:1.6em;
}

#form_box table .zip_txt{
font-size:20px;
padding-right: 10px;
display: inline-block;
position: absolute;
left:18px;
top:6px;
color:#999;
}

.entry_btn,
.submit,{
	text-align: center;
	margin: 0 0 20px 0;
}

#form_box .btn{
overflow:hidden;
margin:0 auto 10px;
padding:10px 0 0;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 -webkit-justify-content: center;
   -ms-flex-pack: center;
     justify-content: center;
 -webkit-flex-wrap: wrap;
   -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

#form_box .btn input{
margin: 0 20px;
}

#form_box .submit input,
#form_box .submit02 input{
letter-spacing: 2px;
/*background: #fe902e;
width:300px*/
}

#form_box .back input{
background: url(/img/common/arrow_btn02.png) 28px 50% no-repeat #999;
width:120px;
font-size: 19px;
}

#form_box .back input:hover{
background: url(/img/common/arrow_btn02.png) 28px 50% no-repeat #666 !important;
}

#form_box .complete_txt{
font-size:24px;
font-weight: 500;
text-align: center;
margin: 40px auto 30px;
line-height: 1.9;
}

#form_box .time{
display: block;
margin:10px auto 40px;
font-size:16px;
}

/*----------------------------------------------------
	inq_box
----------------------------------------------------*/

.btn_trial{
padding: 40px 0 30px;
}

#trial .btn_trial{
display: none;
}

.inq_box.ver02{
background: none;
}


.inq_box.ver02 .info_box{
width:650px;
margin: 0 auto 10px;
background: #fff;
overflow: visible;
border: none;
}

.inq_box.ver02 .info_box .font-min{
font-size:22px;
color:#993366;
padding: 30px 18px 10px;
background:url(/img/common/inq_img.png) top right no-repeat;
height:146px;
line-height: 1.8;
font-weight: bold;
/*font-weight: 500;*/
}

/*----------------------------------------------------
	inq_box
----------------------------------------------------*/

.inq_box{
background:url(/img/common/bg02.png) #ededed;
padding: 50px 0 30px;
text-align: left;
position: relative;
margin: 0 auto;
-webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
      box-sizing: border-box;
}

.inq_box .stit01{
margin-bottom: 45px;
}

.inq_box .info_box{
width:650px;
margin: 0 auto 10px;
border: 1px solid #c83f5c;
background: #fff;
overflow: visible;
}

.inq_box .info_box p.txt18{
margin-top: -10px;
padding: 30px 18px 10px;
background:url(/img/common/inq_img.png) top right no-repeat;
}

.inq_box .info_box ul{
overflow: hidden;
padding:10px 18px 18px;
}

.inq_box .info_box li{
display: inline-block;
height:auto;
margin: 0 auto;
float:left;
height:60px;
}

.inq_box li a{
display: inline-block;
width:280px;
line-height: 60px;
height:60px;
background: #c83f5c;
color:#fff;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
text-align: center;
}

.inq_box li a:hover{
background: #930120;
text-decoration: none;
-webkit-transition: all .4s linear;
transition: all .4s linear;
}

.inq_box li a span{
display: inline-block;
font-size:22px;
}

.inq_box .info_box li.inq_mail{
float:right;
}

.inq_box li a.tel span{
background: url(/img/common/i_tel02.png) 0 50% no-repeat;
background-size: 35px auto;
padding-left: 35px;
font-size:28px;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.inq_box li a.mail span{
background: url(/img/common/i_mail.png) 0 50% no-repeat;
background-size: 32px auto;
padding-left: 35px;
letter-spacing:2.5px;
}

/*----------------------------------------------------
	footer
----------------------------------------------------*/

footer{
background: #fff;
position: relative;
font-size:14px;
padding:35px 0 26px;
}

footer a:hover {
text-decoration: underline;
}

.f_logo{
display: inline-block;
margin-bottom:10px;
}

.f_logo img{
width:auto;
height:66px;
}


footer .f_tel{
font-size:18px;
padding: 6px 0;
/*font-weight:bold;*/
}

.f_nav {
position: relative;
text-align: center;
margin: 25px auto 14px;
overflow: hidden;
}

.f_nav li{
margin-bottom: 10px;
display: inline-block;
padding-left: 10px;
text-align:left;
font-size:14px;
}

.f_nav li a{
background: url(/img/common/arrow_footer.png) 0 56% no-repeat;
background-size:8px auto;
padding-left: 9px;
}


footer .fb_link img{
width:250px;
height:auto;
}

.copy {
background: #cc6699;
color:#fff;
clear: both;
padding: 15px;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

#fix_btn .btn_mail{
position: fixed;
right:0;
top:400px;
z-index: 99999;
}

#fix_btn .btn_trial,
#fix_btn .btn_tel{
display: none;
}