@charset "UTF-8";
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;
}:before,:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html,body,div,span,iframe,h1,h2,h3,h4,h5,h6,p,a,address,big,code,del,dfn,em,img,q,s,small,strong,sub,sup,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,details,embed,figure,figcaption,footer,header,menu,nav,output,section,time,mark,video{margin:0;padding:0;border:0;font-style:normal;font-weight:400;font-size:100%;vertical-align:baseline}
img{vertical-align:bottom;-webkit-backface-visibility: hidden; backface-visibility: hidden;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}html{overflow-y:scroll;height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}input,textarea{margin:0;padding:0}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}a{text-decoration:none}a:focus{outline:none}a{color:#82cdb9}


body {
font-family:"メイリオ","Meiryo","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","ＭＳ Ｐゴシック","MS P Gothic",Verdana,Arial,Helvetica,sans-serif;
letter-spacing:1px;
line-height:1.6;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;

color:#555;
min-width:960px;
font-size:16px;
height: 100%;

}
.wrap{
	position: relative;
    min-height: 100%;
    height: auto !important;
    height: 100%;
	overflow:hidden
}
#main_container{
	overflow:hidden;position:relative;padding-bottom:120px;
	min-height: calc(100vh - 130px);}
.hover1 a{transition:.6s}
.hover1 a:hover{color:#E99DC3}


/*.hover1 a:hover{filter:alpha(opacity=60);-moz-opacity:.6;opacity:.6}
*/

.gfont{
font-family: 'Quicksand', sans-serif;	
}
p.gfont {
    
    font-size: .9rem;
    text-align: center;
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

ヘッダー

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.header_top,nav ul
{width:1200px;margin:0 auto;}
.header_top{
	padding: 1em 0 1em 0;
	height:80px;
	-webkit-align-items: baseline; /* Safari */
  align-items:         baseline;
}
.header_top p b{font-size:1.6em;font-weight:700}
.header_top ul{width: 92px;position:relative;top:10px}

/*ーーーーーーーーーー

ナビゲーション

ーーーーーーーーーー*/
nav{background:#FDF9F8;}

nav li{width:33%;
text-align:center;font-size:.8em;
height:50px;line-height:50px;
letter-spacing:0;

}
nav li a{color:#666}




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

コンテンツ共通パーツ

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*リンクボタン　ピンク１*/
.btn1{
position: relative;color:white;
}

.btn1::before{
content: '';
display: inline-block;
height: 20px;
position: absolute;
  opacity: 0;
  bottom: 6px;
z-index: 1;
border-radius: 8em;
-webkit-filter: blur(20px) brightness(0.95);
filter: blur(20px) brightness(0.95);
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
-webkit-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.btn1 span {
  display: inline-block;
  text-align:center;
  height:44px;line-height:40px;
  border-radius:4px;
  position: relative;
  z-index: 2;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.btn1:hover span {
  -webkit-filter: brightness(1.05) contrast(1.05);
          filter: brightness(1.05) contrast(1.05);
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
		  
	  
}

.btn1:hover::before {

  bottom: -2px;
  opacity: 1;
  filter: blur(20px);
	-webkit-filter: blur(20px);
}

.btn1:hover span {
  -webkit-transform: scale(1.04);
          transform: scale(1.04);
}
.btn1:hover:active span {

  filter: brightness(1) contrast(1);
	-webkit-filter: brightness(1) contrast(1);
  transform: scale(1);
	-webkit-transform: scale(1);

  transition: all 0.15s ease-out;
	-webkit-transition: all 0.15s ease-out;

}
.btn1:hover:active::before {
  bottom: 0;
	filter: blur(10px) brightness(0.95);
  -webkit-filter: blur(10px) brightness(0.95);
	transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
}

/*メインコンテンツリンク*/
.top .mainBtn{width:260px;margin:2em auto;}
.top .mainBtn span{width:260px;	}
.mainBtn{

display:block;
	
}
.mainBtn span,
.mainBtn::before{
background: #82cdb9;
/* background: -moz-linear-gradient(left,  #ff84b7 10%, #ffb48c 100%);
background: -webkit-linear-gradient(left,  #ff84b7 10%,#ffb48c 100%);
background: linear-gradient(to right,  #ff84b7 10%,#ffb48c 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff84b7', endColorstr='#ffb48c',GradientType=1 ); 	 */
}


.mainBtn::before{
left: 22px;
right:22px;
}
.mainBtn span::after{
	font-family:'FontAwesome';
	content: "\f105";
	position:absolute;
	right:10px;top:50%;
	 -webkit-transform: translateY(-50%);transform: translateY(-50%);
	z-index:3
}


/*ヘッダーアイコンリンク*/
.squareBtn{
	display:inline-block;
}
.squareBtn span,
.squareBtn::before{
background: #06C755;
background: -moz-linear-gradient(left,  #06C755 0%, #06C755 100%);
background: -webkit-linear-gradient(left,  #06C755 0%,#06C755 100%);
background: linear-gradient(to right,  #06C755 0%,#06C755 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#06C755', endColorstr='#06C755',GradientType=1 );

	
}
header .btn1 span{width:44px;position:relative}
header .btn1 img{
	position: absolute;
    top: 9px;
    left: 8px;
    /* vertical-align: middle; */
	/*vertical-align: middle;*/
}
.squareBtn::before{
left:2px;
right:2px;
}





section{overflow: hidden;}


.titleH1{
	width:84%;max-width: 960px;
	margin: 0 auto;
	text-align:center;
	padding:2.8em 0;line-height:1.2;
	color:#666;
	
	
}
.titleH1 b{display:block;font-size:3em;letter-spacing:0}
.ttlH2{
font-size: 1.1rem;
display: inline-block;
text-align: center;
border: 1px solid;
padding: .2em 3em;
margin-bottom: 2rem;
}

.btn_pink{
	display:block;
	height:40px;line-height:40px;width:200px;
	background:#E99DC3;
	color:white;
	margin:0 auto;text-align:center;
	position:relative;
	border-radius:2px;
	
}
.btn_pink:after{
	font-family:'FontAwesome';
	content: "\f105";
	position:absolute;
	right:10px;
}


.panelList img{width:100%}


.panelList .panel{
display:block;
text-align:center;
/*margin-bottom:10px;*/
outline: none;	
}


.panelList a{color:#666}
.name{font-weight:bold;padding-top:1em;
width:92%;margin:0 auto;line-height:1.6;
	white-space: nowrap;
	  overflow: hidden;
	  letter-spacing:0
	  }
.panelList .age,.panelList .size{font-size:10px;letter-spacing:0;line-height:1.4;
margin-bottom:.4em}
.icon_panel{min-height:18px;margin-bottom:1em}
.icon_panel ul{width:92%;margin:0 auto;
}
.icon_panel li{font-weight:bold;
letter-spacing:0}
.panelList .icon_panel li{font-size:10px;width:55px;}
.icon_panel li:nth-child(2){margin-left:4px}
.icon_today{color:#FFAE65;border:1px solid}
.icon_new{color:#90E0B1;border:1px solid;}
.icon_newdate{color:#E87EB5;border:1px solid;width:90%;max-width:200px;margin:0 auto;letter-spacing:0;font-size:12px;margin: 0 auto 20px auto;}
.waiting{
	margin-top:10px;
	padding:5px;
	color:#E87EB5;font-weight:bold;font-size:12px;
	letter-spacing:0}
	


.sub_txt{
	text-align:center;
	color:#666;
	width:92%;margin:0 auto;
	max-width:880px;
	font-size:.9em;	
	margin-bottom:2em
}



.sec_main{overflow: hidden;}
.sec_main .panelList{
	display: -webkit-flex;display: flex;
	 -webkit-flex-wrap: wrap;flex-wrap:wrap;
	 max-width:960px;
	 margin:0 auto 2em auto;
	 padding-left:.5%;
	 
  }
.sec_main .panel{
	width:19.5%;
	background: white;
	margin-right:.5%;
	margin-bottom:.4em;}


.box1{margin: 0 auto;width:960px}
.boxTxt{margin: 0 auto;width:40rem}
.boxTxt p{line-height:2}
.paragraph{margin-bottom:2em;margin-bottom: 2em;}
.notes{font-size:.8rem;line-height:1.4}
/*ーーーーーーーーーー

フレックスボックス

ーーーーーーーーーー*/
 .flexBetween{
display: -webkit-flex;display: flex;-webkit-justify-content: space-between;justify-content:space-between;	
}
.flexCenter{display: -webkit-flex;display: flex;-webkit-justify-content: center;justify-content:center;}
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

フッター

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*ページトップ*/
.page_top {
width: 60px;
height: 60px;
margin: 0 auto;
color: #FDF9F8;
text-align: center;
z-index:1;
    display: block;
	position:fixed;
	bottom: 8em;right:2em;
margin-top: -30px;
}

.page_top::before {
    display:block;
  width:100%;
height: 100%;
    line-height:56px;
    font-family: 'FontAwesome';
    content: "\f106";
    position: absolute;
    margin-left: -30px;
    left: 50%;
    top: 50%;
    margin-top: -30px;
	font-size: 30px;
	background:#999;
border-radius: 100%;
	
}


footer{background:#FDF9F8;padding:2em;height:140px;
 position: absolute;
    bottom: 0;
    width: 100%;
    flex-direction: column;
	}
footer .flexBetween{min-width:960px;margin:0 auto}
footer span{display:block;max-width:1200px;margin:0 auto}
.footer_bottom {text-align:center;}
.copyright {font-size:.8em;}



footer li{display:inline;font-size:.8em}
footer li a {
color:#555;
padding:0 .4em;
}

.refle_link {
    margin-top: .5rem;
    
}

footer ul {
    text-align: center;
}

/*cast*/
.cast #main_container{background:#F8F9FF}
.cast .waiting {
    border-top: 2px solid #F8F9FF;
}

p.re-text {
    margin-top: -35px;
    font-size: .9rem;
    text-align: center;
}
/*access*/
 #map {
      width: 100%;
      height:400px;
    }
	

	.map_link{
	display:block;
	padding:1em 0;
	font-size:.8em
	
	}
	.map_link::before{
	display:inline-block;
	font-family:'FontAwesome';
	content:"\f08e";	
	}
.access dl{padding:0 2em 2em 2em;overflow:hidden}
.access dt,.access dd{margin-bottom:1.4em;}
.access dt {
    font-weight: bold;
    text-align: center;
    margin-top: 2rem;}
    /* width: 28%; */
    /* text-align: right; */
    /* margin-right: 2%; */

/*.access dt{font-weight:bold;width:28%;text-align:right;margin-right:2%}
/*.access dd{width:70%}*/

.access dd {text-align: center;}
.access dd .gfont{font-weight:700;font-size:1.4em;letter-spacing:0;line-height:1}



.inner{width:960px;margin:0 auto}
 
span{-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;}

/*system*/
.system h2{text-align:center;border:1px solid #666;display:block;width:180px;margin:0 auto 1em auto}
.system h3{border-bottom:1px solid #CCC;text-align:center;margin-bottom:2em;padding-bottom:1em}
.system h4{font-weight:bold;margin-bottom:.4em}
.system h5{padding-bottom:1em}

.boxPrice{
	padding:3rem;
	margin:0 auto;
	
}
.pcourse{background:#FFF5F6;}
.pwax{background:#EEF5FC}
.otherPrice{
	background:#F1F1F1;
	padding:2em 1em;
	margin:0 auto
	
}
.boxPrice dl,.otherPrice dl{max-width:700px;margin:0 auto}
.boxPrice dt,.boxPrice dd{display:inline-block;text-align:right;line-height:1.4}
.boxPrice dt{margin-left:20px}
.boxPrice dd{margin-right:20px}
.boxPrice b{font-size:1.8em;letter-spacing:0;color:#eb3c69;}

/*.sec_course{
	padding:1em;
	margin:0 auto 2em auto;
	width:960px;
}
.sec_course img{width:300px;margin-right:2em}
.sec_course p{font-size:.9em}
.otherPrice .flexCenter div{width:380px;padding:0 20px}
.otherPrice dt,.otherPrice dd{
	display:inline-block;
}
.otherPrice dt{width:65%;}
.otherPrice dd{text-align:right;width:35%;}*/
.system small{font-size:.8em}
.tblPrice,.priceOther{width: 960px;margin: 0px auto;}
	
.tblPrice{text-align: right}
.tblPrice td{width:9em}
.priceOther{text-align:center;padding-top:2rem}
.priceOther b{font-size:1.6em}
.priceOther p{line-height:1.2;/*width:50%*/margin-top: 1rem;}.waxTxt{width:960px;margin:2em auto 0 auto;text-align:center}
span.sm_txt {
    font-size: .8rem;
}

.kiyaku{padding:2em;background:#fafafa;}
.kiyaku p,.kiyaku ul{font-size:.8rem;line-height:1.4}.kiyaku ul{margin:1.4em auto}

/*concept*/
.Pconcept{background: #F7F1F1;}
.boxTxt img {margin-bottom: 3em;}

p.reason {
    text-align: center;
    padding-top: 2rem;
}
.concept-bg {
    background: url(/pc/img/flowerBg.png);
}
.con_boxTxt {
    margin: 0 auto;
    width: 40rem;
}

.con_boxTxt {
    margin: 0 auto;
    width: 40rem;
    position: relative;
    line-height: 2;
    font-size: .9rem;
    margin-bottom: 25rem;
    z-index: 2;
}

p.reason {
    position: absolute;
    z-index: 3;
    top: 185px;
    left: 267px;
}

/* 2019-07-30 Edit デザイン崩れ発生
.con_paragraph {
    width: 600px;
    margin: 0 auto;
    background: #fff;
    padding: 5rem 2rem 2rem;
    position: absolute;
    top: 268px;
    left: 20px;
}
*/
.con_paragraph {
    width: 600px;
    margin: 0 auto;
    background: #fff;
    padding: 2rem 2rem 2rem;
    /* position: absolute; */
    top: 278px;
    left: 20px;
}


p.Special_txt2 {
    font-size: 1.1rem;
    font-weight: 600;
    padding-bottom: 1rem;
    text-align: center;
    /* padding-top: 1rem; */
    margin-top: -10px;
}

p.Special_txt {
    font-size: 1.1rem;
    font-weight: 600;
    padding-bottom: 1rem;
    text-align: center;
    padding-top: 1rem;
}
.play_bg{background: url(/pc/img/flowerBg_play.png);}

h4.Commitment {
    position: relative;
    color: white;
    font-size: 1.7em;
    font-weight: bold;
    padding: .9rem 2rem;
    background: linear-gradient(to right, #ff84b7 0%,#ff8c8c 100%);
    /* background: #ac9161; */
    line-height: 1.3;
    margin: 3rem auto;
}

p.Commitment_Txt {
    font-size: 1rem;
    line-height: 2;
}
/* 2019-07-30 Edit デザイン崩れ発生
.con_boxTxt h4 img {
    position: absolute;
    top: calc(53% - 101px);
    width: 195px;
    right: 10px;
}

 */
.con_boxTxt h4 img {
    position: absolute;
    /* top: calc(53% - 101px); */
    top: calc(50% - 80%);
    width: 195px;
    right: 10px;
}



/*play*/
.boxStep{text-align:center;margin-bottom:2rem;/*background:white;*/padding:2rem}
.boxStep p{line-height:1.4;margin-bottom:1em}
.boxStep li:first-child{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px dotted #CCC}
.ttlPlay{font-size:1.4rem;position:relative;font-weight:bold}
.ttlPlay::before{display:inline-block;content:"";width:.8rem;height:2px;background:#555;vertical-align: middle;
margin-right:.6rem}

.playInfo{padding:1.4rem 0}

.btnTel{font-size:1.2rem;margin-right:2rem}
.btnTel b{font-weight:700;font-size:1.7em}
.btnMail{margin-left:2rem}
.btnMail .btn1 span{padding:.4em 1em;line-height: 30px;font-weight:bold;margin-left:.4rem}

.business_hours b {
    font-weight: 700;
    font-size: 1.7em;   
}




h4.step_txt {
    position: absolute;
    top: -60px;
    left: 0;
    right: 0;
    margin: auto;
}

p.step_txt {
    padding-top: 5rem;
    font-size: 1.1rem;
    font-weight: 600;
}



/*company*/
.tblCompany{text-align:left;width:100%}
.tblCompany th,.tblCompany td{border-bottom:1px solid #e7e7e7;padding:.6em 0}
.tblCompany th{width:6em}

/*recrit*/

section#rec_bg {
    background-color: #F0FBE9;
    padding-bottom: 3rem;
}

.rec_text {
    margin: 0 auto;
    width: 40rem;
    line-height: 2;
}

.rec_text img {
    margin-bottom: 2rem;
}

.rec_text h3 {
    border-bottom: none;
    padding-top: 2rem;
    margin-bottom: 0;
    padding-bottom: 0;
}

section.summary h3 {
    font-size: 1.2rem;
    font-weight: 600;
    padding-top: 2rem;
}
.summary_txt {
    width: 620px;
    margin: 0 auto;
}
section.summary h3 {
    font-size: 1.2rem;
    font-weight: 600;
    padding-top: 2rem;
}
.summary_txt dt {
    font-weight: 600;
    margin-bottom: 1rem;
    text-align: left;
}

.summary_txt dd {
    text-align: left;
    margin-bottom: 3rem;
    border-bottom: solid 1px #ccc;
}

span.summary_small {
    font-size: .8rem;
}

video {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 2rem;

}


@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop, .btn1:hover::before {
		opacity: 0 !important;
	}
}

/* Play 2019-07-30 Add */
.rec_MV{
    width: 640px;
    margin: 0 auto;
}
.sec-flow{
    width: 700px;
    margin: 0 auto;
}



.step li.is-current {
    background: #fff;
    font-weight: bold;
    z-index: 0;
    color: #555555;
    margin: 0 auto;
    padding: 2rem;
    width: 100%;
    margin-bottom: 6rem;
    position: relative;
}
.sec-flow ol li {
    background: #fff;
    padding: 2rem;
    margin: 0 auto;
    width: 700px;
    margin-bottom: 2rem;
}
.step li {
    position: relative;
    width: 100px;
    background: #504944;
    padding: 1em;
    margin-bottom: 1em;
    text-align: center;
    color: #fff;
}

.step li:after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: -59px;
    left: 0;
    right: 0;
    margin: auto;
    border-style: solid;
    border-color: #ffffff transparent transparent transparent;
    border-width: 60px 190px 0 190px;
    z-index: 1;
}


.step li.last-is-current {
    background: #fff;
    font-weight: bold;
    z-index: 0;
    color: #555555;
    margin: 0 auto;
    padding: 2rem;
    width: 100%;

    position: relative;
}
.step li:last-child::after{
    content: none;
}

.sec-flow ol > li h4 {
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 1rem;
}

.sec-flow ol > li h4 span {
    font-size: 1.6rem;
    font-weight: 700;
    color: #AC9161;
    letter-spacing: 0;
    display: block;
}

li.is-current img {
    position: absolute;
    top: -8rem;
    width: 40%;
    left: 9px;
}

li.last-is-current img {
    position: absolute;
    width: 40%;
    top: -11rem;
    right: -5rem;
}

.step .is-current .flow_text,.step .last-is-current .flow_text{
    /*text-align: left;*/
}