/* CSS Document */
/*@font-face {
font-family: "hannari";
  src: url("../../css/fonts/hannari.woff") format("woff");
}
@font-face {
font-family: "minamoto";
  src: url("../../css/fonts/minamoto.woff") format("woff");
}
@font-face {
font-family: "minamoto_l";
  src: url("../../css/fonts/minamoto_l.woff") format("woff");
}*/

html,body { width: 100%; }
body {
	color: #26354C;
	margin: 0 auto;
	font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",  "メイリオ", sans-serif;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
}


li { list-style: none; }

p {
	text-align: justify;
	-ms-text-justify: auto;
	text-justify: auto;
	text-justify: inter-ideograph;
}
img { vertical-align: bottom; }

.noborder { border: none !important; }
.nomargin { margin: 0 0 !important; }

.ta_r { text-align: right; }
.ta_c { text-align: center; }

.cf:before,.cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { zoom:1; }

	a {
		color: #26354C;
		text-decoration: none;
	}

.loading-area{background:#fff;width:100%;height:100%;height:100vh;position:fixed; z-index: 22000;}
.loading-area .loadeing-logo-area{position:absolute;top:50%;left:50%;
	width:16vw;height:20vw; margin-top:-10vw; margin-left: -8vw; text-align: center;}
.loading-area .loadeing-logo-area .img { width: 100%; position: relative; }
.loading-area .loadeing-logo-area img{ width:16vw; opacity: 1; position: absolute; left:0; top:0; }
.loading-area .loadeing-logo-area img.scissor {
    -webkit-animation: choki 1s linear infinite;
    -moz-animation: choki 1s linear infinite;
    -ms-animation: choki 1s linear infinite;
    -o-animation: choki 1s linear infinite;
    animation: choki 1s linear infinite; }
/*.loading-area .loadeing-logo-area i{color:#ccc;display:block;margin:30px auto 0}*/
	@-webkit-keyframes choki { 0% {-webkit-transform: rotate(0deg);}
		50% {-webkit-transform: rotate(15deg);}
		100% {-webkit-transform: rotate(-1deg);} }
	@-moz-keyframes choki { 0% {-moz-transform: rotate(0deg);}
		50% {-moz-transform: rotate(15deg);}
		100% {-moz-transform: rotate(-1deg);} }
	@-ms-keyframes choki { 0% {-ms-transform: rotate(0deg);}
		50% {-ms-transform: rotate(15deg);}
		100% {-ms-transform: rotate(-1deg);} }
	@-o-keyframes choki { 0% {-o-transform: rotate(0deg);}
		50% {-o-transform: rotate(15deg);}
		100% {-o-transform: rotate(-1deg);} }
	@keyframes choki { 0% {transform: rotate(0deg);}
		50% {transform: rotate(15deg);}
		100% {transform: rotate(-1deg);} }

	body { font-size: 3.8vw; line-height: 1.5; }
	.mb0 { margin-bottom: 0 !important; }
	.mb20 { margin-bottom: 2.6vw !important; }
	.mb25 { margin-bottom: 3.3vw !important; }
	.mb30 { margin-bottom: 4vw !important; }
	.mb40 { margin-bottom: 5.3vw !important; }
	.mb50 { margin-bottom: 6.6vw !important; }
	.mb60 { margin-bottom: 8vw !important; }
	.mb70 { margin-bottom: 9.3vw !important; }
	.mb80 { margin-bottom: 10.6vw !important; }
	.mb90 { margin-bottom: 12vw; }
	.mb100 { margin-bottom: 13.3vw !important; }
	.mb120 { margin-bottom: 16vw !important; }
	.pt50 { padding-top: 6.6vw !important; }
	.ls-1 { letter-spacing: -1px; }
	.ls-2 { letter-spacing: -2px; }
	.ls-3 { letter-spacing: -3px; }
	.ls-4 { letter-spacing: -4px; }


	body { width:100%; }
	.wrap { width: 100%; overflow: hidden;}
	.for_pc { display: none; }
	img { max-width: 100%; }

	.cf_s:before,.cf_s:after { content:""; display:table; }
	.cf_s:after { clear:both; }
	.cf_s { zoom:1; }

.showup {
	opacity: 0;
	transition: 1s;
	transform: translateY(4vw);
    -webkit-transform: translateY(4vw);
    -moz-transform: translateY(4vw);
    -ms-transform: translateY(4vw);
    -o-transform: translateY(4vw);
}
.upview {
	-moz-animation: showup 1s linear 0s 1 normal forwards;
	-webkit-animation: showup 1s linear 0s 1 normal forwards;
	-o-animation: showup 1s linear 0s 1 normal forwards;
	-ms-animation: showup 1s linear 0s 1 normal forwards;
}
.showdown {
	opacity: 0;
	transition: 1s;
	transform: translateY(-4vw);
    -webkit-transform: translateY(-4vw);
    -moz-transform: translateY(-4vw);
    -ms-transform: translateY(-4vw);
    -o-transform: translateY(-4vw);
}
.downview {
	-moz-animation: showdown 1s linear 0s 1 normal forwards;
	-webkit-animation: showdown 1s linear 0s 1 normal forwards;
	-o-animation: showdown 1s linear 0s 1 normal forwards;
	-ms-animation: showdown 1s linear 0s 1 normal forwards;
}
.showleft {
	opacity: 0;
	transition: 1s;
	transform: translateX(-4vw);
    -webkit-transform: translateX(-4vw);
    -moz-transform: translateX(-4vw);
    -ms-transform: translateX(-4vw);
    -o-transform: translateX(-4vw);
}
.leftview {
	-moz-animation: showleft 1s linear 0s 1 normal forwards;
	-webkit-animation: showleft 1s linear 0s 1 normal forwards;
	-o-animation: showleft 1s linear 0s 1 normal forwards;
	-ms-animation: showleft 1s linear 0s 1 normal forwards;	
}

.showright {
	opacity: 0;
	transition: 1s;
	transform: translateX(4vw);
    -webkit-transform: translateX(4vw);
    -moz-transform: translateX(4vw);
    -ms-transform: translateX(4vw);
    -o-transform: translateX(4vw);
}
.rightview {
	-moz-animation: showright 1s linear 0s 1 normal forwards;
	-webkit-animation: showright 1s linear 0s 1 normal forwards;
	-o-animation: showright 1s linear 0s 1 normal forwards;
	-ms-animation: showright 1s linear 0s 1 normal forwards;
}




/*common*/
	.mainw { width: 88vw; margin-left: auto; margin-right: auto; }
	.mainw2 { width: 80vw; margin-left: auto; margin-right: auto; }
	#mv { position: relative; width: 100%; height: 66vw;
		background: url(../images/mv.jpg) center center no-repeat; background-size: cover; }
	#mv.mv2 { background: url(../images/mv2.jpg) center center no-repeat; background-size: cover; }
	#mv h2 { position: absolute; top:0; left:0; text-align: center; width: 100%; height: 66vw;
		overflow: hidden; text-indent: -10000px; background: url(../images/ttl.png) center center no-repeat;
		background-size: auto 30vw; }

	.lead { margin-bottom: 10vw; font-size: 4.2vw; line-height: 8vw; text-align: center; color: #52B9D8; }
	.note { padding-left: 1em; text-indent: -1em; }
	.cflex { display: flex; }

	h2.ch2 { font-size: 6vw; line-height: 9vw; text-align: center; margin-bottom: 12vw; position: relative;
		color: #52B9D8; padding-top: 15vw; }
	h3.ch3r { font-size: 4vw; margin-bottom: 2vw;
		position: relative; line-height: 8vw; }

	h4.ch4 { line-height: 6vw; font-size: 6vw; color: #26354C; margin-bottom: 6vw;
		font-family: 'Jost', sans-serif; }

	h5.ch5 { font-size: 4vw; line-height: 8vw; font-family: 'Jost', sans-serif; }
	h6.ch6 { font-size: 4vw; line-height: 8vw; font-family: 'Jost', sans-serif; margin-bottom: 2vw; }
	h5.ch5_ja { font-size: 4.4vw; line-height: 7vw; margin-bottom: 6vw; }

	.cmenu { width: 80vw; position: relative; border-top: #74C2DF 1px solid; margin: 9vw auto 0; }
	.cmenu ul { display: flex; flex-wrap: wrap; }
	.cmenu li { width: 50%; border-bottom: #74C2DF 1px solid; }
	.cmenu li:nth-child(odd) { border-right: #74C2DF 1px solid; }
	.cmenu li a { display: block; width: 100%; height: 13vw; line-height: 13vw; position: relative; text-align: center;
		font-size: 4vw; background: url(../../images/icon_down.svg) right 2vw center no-repeat; background-size: 2.6vw auto; }
	.cmenu li a.l2 { line-height: 4.2vw; padding-top: 2vw; }

	/*cb...color box*/
	.cb { background: #E7F2F2; }
	.cbshort { width: 100%;
    padding: 5vw 0;
    position: relative;
    }
	.cbshort:before {
	    content: "";
	    width: 100%;
	    height: 60vw;
	    background: #E7F2F2;
	    position: absolute;
	    top: 0;
	    left: 0;
	}

	.cbtnr { font-size: 4vw; display: block; text-align: center; line-height: 13vw;
		 width: 100%; height: 13vw; background: #E9E26D; }
	.cbtnr2 { font-size: 4vw; border: #52B9D8 1px solid; background: #ffffff;
		color: #52B9D8; display: block; text-align: center; line-height: 13vw;
		width: 66vw; height: 13vw; }


	ul.cul { position: relative; margin-bottom: 6vw; }
	ul.cul li { font-size: 4vw; line-height: 6vw; }
	ul.cul li:before { content: "・"; padding-right: 1vw; }
	ul.cul.sub { padding-left: 1em; margin-bottom: 0; }

	table.ctable { border-collapse: collapse; width: 100%; position: relative; background: #ffffff; }
	table.ctable tr:first-child th { border-top: #74C2DF 1px solid; }
	table.ctable tr:first-child td { border-top: #74C2DF 1px solid; }
	table.ctable th,table.ctable td { border-bottom: #74C2DF 1px solid; text-align: left; padding: 2vw;
		font-size: 4vw; line-height: 6vw; vertical-align: top; }
	table.ctable th { font-weight: normal; }

	/*cdl...common dl*/
	.cdl {  }
	.cdl dt { border-bottom: #74C2DF 1px solid; border-top: #74C2DF 1px solid;
		line-height: 6vw; font-size: 4vw; padding: 2vw;
		background: #E7F2F2; text-align: left; }
	.cdl dd { line-height: 6vw; font-size: 4vw; padding: 2vw; text-align: left; }
	.cdl dd:last-child { border-bottom: #74C2DF 1px solid; }

	.stafflist { display: flex; flex-wrap: wrap; margin-bottom: 20vw; }
	.stafflist li { width: 36vw; margin-right: 5vw; }
	.stafflist li:nth-child(even) { margin-right: 0; padding-top: 13vw; }
	.stafflist li a { display: flex; justify-content: space-between; }
	.stafflist.message li p.staffno { width: 3vw; height: 42vw;
		background: url(../images/txt_message.svg) bottom center no-repeat;
		background-size: 3vw auto; }
	.stafflist li .staffinfo { width: 28vw; }
	.stafflist li .img { margin-bottom: 2vw; }
	.stafflist li p.name { font-size: 4.2vw; margin-bottom: 2vw; }
	.stafflist li p.plus { width: 100%; border-top: #74C0DD 1px solid; border-bottom: #74C0DD 1px solid;
		height: 9vw; background: url(../../images/icon_plus.svg) center center no-repeat; background-size: 4vw auto;
		text-indent: -10000px; overflow: hidden; }

	#modal_staff { display: none; width: 100%; height: 100vh; position: fixed; background: #ffffff; overflow: auto;
		top:0; left: 0; padding-top: 12vw; padding-bottom: 12vw; }
	/*#modal_staff #staff_close { position: absolute; top:4vw; right: 4vw; width: 8vw; }*/
	#modal_staff .img { margin-bottom: 8vw; position: relative; }
	#modal_staff:before { content: ""; width: 68vw; height: 53vw; right: 0; top: 0; position: absolute;
		background-color: #E7F2F2; }
	#modal_staff .slide_staff { position: relative; width: 100%; height: 62vw; }
	#modal_staff .slide_staff .bx-wrapper,#modal_staff .slide_staff .bx-viewport,#modal_staff .slide_staff ul,#modal_staff .slide_staff ul li { width: 100% !important; height: 62vw; }
	#modal_staff .slide_staff ul li img { width: 100%; height: auto; }
	/*#modal_staff .slide_staff li { position: absolute; top:0; left: 0; }*/
	#modal_staff .bx-wrapper .bx-pager.bx-default-pager a { width: 4vw; height: 4vw;
		border-radius: 2vw; margin: 0 4vw !important; border: #30c3e1 1px solid; background: none; opacity: 1; }
	#modal_staff .bx-wrapper .bx-pager.bx-default-pager a.active { background: #30c3e1; opacity: 1; }
	#modal_staff p.name { text-align: center; margin-bottom: 4vw; }
	#modal_staff p.name span { font-family: 'Jost', sans-serif; font-size: 6.4vw; color: #74C0DD; }
	#modal_staff p.school { font-size: 4.4vw; line-height: 8vw; color: #74C0DD; margin-bottom: 6vw; }
	#modal_staff p { position: relative; font-size: 4vw; line-height: 8vw; }
	#modal_staff p.bt { font-family: 'Jost', sans-serif; color: #74C0DD; }
	#modal_staff dt { font-weight: bold; margin-bottom: 4vw; }
	#modal_staff dd { margin-bottom: 7vw; }
	#modal_staff #staff_close { display: block; margin: 6vw auto; width: 13vw; }

	.mfp-iframe-holder .mfp-content { height: 70vh; }
	.mfp-container .mfp-iframe-scaler iframe { background: #ffffff; }
	.staff_iframe { padding: 6vw; }

	.staff_iframe .img { margin-bottom: 16vw; position: relative; }
	.staff_iframe:before { content: ""; width: 68vw; height: 53vw; right: 0; top: 0; position: absolute;
		background-color: #E7F2F2; }
	.staff_iframe .slide_staff { position: relative; width: 100%; height: 62vw; }
	.staff_iframe .slide_staff .bx-wrapper,.staff_iframe .slide_staff .bx-viewport,.staff_iframe .slide_staff ul,.staff_iframe .slide_staff ul li { width: 100% !important; height: 62vw; }
	.staff_iframe .slide_staff ul li img { width: 100%; height: auto; }
	/*.staff_iframe .slide_staff li { position: absolute; top:0; left: 0; }*/
	.staff_iframe .bx-wrapper .bx-pager.bx-default-pager a { width: 4vw; height: 4vw;
		border-radius: 2vw; margin: 0 4vw !important; border: #30c3e1 1px solid; background: none; opacity: 1; }
	.staff_iframe .bx-wrapper .bx-pager.bx-default-pager a.active { background: #30c3e1; opacity: 1; }
	.staff_iframe p.name { text-align: center; margin-bottom: 4vw; }
	.staff_iframe p.name span { font-family: 'Jost', sans-serif; font-size: 6.4vw; color: #74C0DD; }
	.staff_iframe p.school { font-size: 4.4vw; line-height: 8vw; color: #74C0DD; margin-bottom: 6vw; }
	.staff_iframe p { position: relative; font-size: 4vw; line-height: 8vw; }
	.staff_iframe p.bt { font-family: 'Jost', sans-serif; color: #74C0DD; }
	.staff_iframe dt { font-weight: bold; margin-bottom: 4vw; }
	.staff_iframe dd { margin-bottom: 7vw; }
	.staff_iframe #staff_close { display: block; margin: 6vw auto; width: 13vw; }

	@-moz-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-webkit-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-o-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-ms-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }

	@-moz-keyframes showdown { 0% { opacity: 0; transform: translateY(-20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-webkit-keyframes showdown { 0% { opacity: 0; transform: translateY(-20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-o-keyframes showdown { 0% { opacity: 0; transform: translateY(-20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-ms-keyframes showdown { 0% { opacity: 0; transform: translateY(-20px); } 100% { opacity: 1; transform: translateY(0); } }

	@-moz-keyframes showleft { 0% { opacity: 0; transform: translateX(-20px); } 100% { opacity: 1; transform: translateX(0); } }
	@-webkit-keyframes showleft { 0% { opacity: 0; transform: translateX(-20px); } 100% { opacity: 1; transform: translateX(0); } }
	@-o-keyframes showleft { 0% { opacity: 0; transform: translateX(-20px); } 100% { opacity: 1; transform: translateX(0); } }
	@-ms-keyframes showleft { 0% { opacity: 0; transform: translateX(-20px); } 100% { opacity: 1; transform: translateX(0); } }

	@-moz-keyframes showright { 0% { opacity: 0; transform: translateX(20px); } 100% { opacity: 1; transform: translateX(0); } }
	@-webkit-keyframes showright { 0% { opacity: 0; transform: translateX(20px); } 100% { opacity: 1; transform: translateX(0); } }
	@-o-keyframes showright { 0% { opacity: 0; transform: translateX(20px); } 100% { opacity: 1; transform: translateX(0); } }
	@-ms-keyframes showright { 0% { opacity: 0; transform: translateX(20px); } 100% { opacity: 1; transform: translateX(0); } }


/*header*/
	header { width: 100%; text-align: center; height: 18vw; display: flex; justify-content: center; align-items: center; }
	header h1 { width: 70vw; height: 18vw; margin: 0 auto; color: #52B9D8; font-size: 8vw; text-align: center;
		line-height: 18vw; font-family: 'Jost', sans-serif; }


	#vision { padding-top: 15vw; padding-bottom: 18vw; }
	#vision .img { margin-bottom: 10vw; }

	#message_ceo { margin-bottom: 20vw; }
	#message_ceo .ceo { display: flex; position: relative; justify-content: space-between; align-items: flex-end;
		margin-bottom: 6vw; }
	#message_ceo .ceo .img { width: 33vw; }
	#message_ceo .ceo .txt { width: 40vw; }
	#message_ceo .ceo .txt h3 { font-size: 6vw; margin-bottom: 10vw; }
	#message_ceo .ceo .txt h3 span { font-size: 4.4vw; }
	#message_ceo p { font-size: 4vw; line-height: 6vw; }

	.salon_env { position: relative; padding: 0 3vw; }
	.salon_env li { display: flex; justify-content: space-between; margin-bottom: 9vw; }
	.salon_env li p.envno { width: 3vw; height: 58vw; background: url(../images/txt_env.svg) bottom center no-repeat;
		background-size: 3vw auto; }
	.salon_env li .envinfo { width: 72vw; }
	.salon_env li .img { margin-bottom: 5vw; }
	.salon_env li p.lead_env { font-size: 4.2vw; line-height: 6vw; color: #52B9D8; }

	#curriculum.cbshort:before { height: 46vw; }
	.lesson { position: relative; margin-bottom: 20vw; }

	#requirements { padding-top: 18vw; margin-bottom: 20vw; }
	.cate-tab { /*border-bottom: #74C2DF 1px solid;*/ display: flex; justify-content: center; position: relative; }
	.cate-tab:before { content: ""; position: absolute; bottom: 0; left: 0; width: 100vw; height: 1px; background: #74C2DF; }
	.cate-tab li { width: 40vw; height: 13vw; line-height: 13vw; text-align: center; position: relative;
		border: rgba(255,255,255,0) 1px solid; }
	.cate-tab li a { display: block; width: 40vw; height: 13vw; }
	.cate-tab li.ui-tabs-active { border-top: #74C2DF 1px solid; border-right: #74C2DF 1px solid; background: #ffffff;
		border-left: #74C2DF 1px solid; border-bottom: #ffffff 1px solid; }
	#requirements .detail { padding: 6vw 0; }

	#shops { margin-bottom: 26vw; }
	#shops .mainw2 { background: #ffffff; padding-top: 6vw; position: relative; }
	#shops ul { position: relative; width: 66vw; margin: 0 auto; }
	#shops ul li { margin-bottom: 2vw; }

/*footer*/
	footer { background: #30c3e1; color: #ffffff; position: relative; padding-bottom: 26vw; }
	#pagetop_sp { width: 60vw; height: 20vw; margin: 0 auto 8vw; }
	#pagetop_sp a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; position: relative; }
	#pagetop_sp a img { width: 26vw; height: auto; }
	#pagetop_sp a:before { content: ""; width: 1px; height: 6vw; background: #30c3e1; position: absolute; top:-6vw; left: 50%; }
	#pagetop_sp a:after { content: ""; width: 1px; height: 6vw; background: #ffffff; position: absolute; top:0; left: 50%; }

	footer h2 { width: 80vw; height: 18vw; margin: 0 auto 12vw; color: #ffffff; font-size: 8vw; text-align: center;
		font-family: 'Jost', sans-serif; line-height: 18vw; }
	footer .copy { font-size: 3.7vw; text-align: center; }

.btn_fix { position: fixed; bottom: 0; left:0; width: 100%; }
.btn_fix .cbtnr { line-height: 20vw; height: 20vw; background: url(../images/icon_form.svg) left 25vw center no-repeat #E9E26D; background-size: 4.2vw auto; padding-left: 6vw; }

	.thanks { margin-bottom: 20vw; }
	.thanks .cbtnr { margin-top: 8vw; }