@charset "utf-8";

html{
	font-size: 10px;
	/*font-size: 62.5%;*/
}

body {
     font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	 line-height: 1.5;
	 letter-spacing: 0;
	 color: #221714;
	 font-size: 0;
}

.clearFix:after,
header:after,
#wrapper:after,
section:after,
footer:after{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	_zoom: 1;
}

*:first-child+html .clearFix:after,
*:first-child+html header:after,
*:first-child+html #wrapper:after,
*:first-child+html section:after,
*:first-child+html footer:after{ zoom: 1; } /* IE7 */

a,a img,input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="image"]{
	-webkit-transition: 0.2s ease-out;
	-moz-transition: 0.2s ease-out;
	-o-transition: 0.2s ease-out;
	-ms-transition: 0.2s ease-out;
}

a:hover img,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="image"]:hover{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

br.smp{display: none;}

/**************************************************
 loading
**************************************************/
[class^="shaft-load"] {
  	margin: 0 auto;
	margin-top: calc(50vh - 15px); 
  	width: 60px;
  	height: 30px;
}
[class^="shaft-load"] > div {
  float: left;
  background: #00D96D;
  height: 100%;
  width: 5px;
  margin-right: 1px;
  display: inline-block;
}
[class^="shaft-load"] .shaft1 {
  -webkit-animation-delay: 0.05s;
  -moz-animation-delay: 0.05s;
  -o-animation-delay: 0.05s;
  animation-delay: 0.05s;
}
[class^="shaft-load"] .shaft2 {
  -webkit-animation-delay: 0.1s;
  -moz-animation-delay: 0.1s;
  -o-animation-delay: 0.1s;
  animation-delay: 0.1s;
}
[class^="shaft-load"] .shaft3 {
  -webkit-animation-delay: 0.15s;
  -moz-animation-delay: 0.15s;
  -o-animation-delay: 0.15s;
  animation-delay: 0.15s;
}
[class^="shaft-load"] .shaft4 {
  -webkit-animation-delay: 0.2s;
  -moz-animation-delay: 0.2s;
  -o-animation-delay: 0.2s;
  animation-delay: 0.2s;
}
[class^="shaft-load"] .shaft5 {
  -webkit-animation-delay: 0.25s;
  -moz-animation-delay: 0.25s;
  -o-animation-delay: 0.25s;
  animation-delay: 0.25s;
}
[class^="shaft-load"] .shaft6 {
  -webkit-animation-delay: 0.3s;
  -moz-animation-delay: 0.3s;
  -o-animation-delay: 0.3s;
  animation-delay: 0.3s;
}
[class^="shaft-load"] .shaft7 {
  -webkit-animation-delay: 0.35s;
  -moz-animation-delay: 0.35s;
  -o-animation-delay: 0.35s;
  animation-delay: 0.35s;
}
[class^="shaft-load"] .shaft8 {
  -webkit-animation-delay: 0.4s;
  -moz-animation-delay: 0.4s;
  -o-animation-delay: 0.4s;
  animation-delay: 0.4s;
}
[class^="shaft-load"] .shaft9 {
  -webkit-animation-delay: 0.45s;
  -moz-animation-delay: 0.45s;
  -o-animation-delay: 0.45s;
  animation-delay: 0.45s;
}
[class^="shaft-load"] .shaft10 {
  -webkit-animation-delay: 0.5s;
  -moz-animation-delay: 0.5s;
  -o-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

/* Shaft 1 */
.shaft-load > div {
  background-color: #00D96D;
  -webkit-animation: loading 1.5s infinite ease-in-out;
  -moz-animation: loading 1.5s infinite ease-in-out;
  -o-animation: loading 1.5s infinite ease-in-out;
  animation: loading 1.5s infinite ease-in-out;
  -webkit-transform: scaleY(0.05) translateX(-10px);
  -moz-transform: scaleY(0.05) translateX(-10px);
  -ms-transform: scaleY(0.05) translateX(-10px);
  -o-transform: scaleY(0.05) translateX(-10px);
  transform: scaleY(0.05) translateX(-10px);
}

@-webkit-keyframes loading {
  50% {
    -webkit-transform: scaleY(1.2) translateX(10px);
    -moz-transform: scaleY(1.2) translateX(10px);
    -ms-transform: scaleY(1.2) translateX(10px);
    -o-transform: scaleY(1.2) translateX(10px);
    transform: scaleY(1.2) translateX(10px);
    background-color: #00BFFF;
  }
}
@-moz-keyframes loading {
  50% {
    -webkit-transform: scaleY(1.2) translateX(10px);
    -moz-transform: scaleY(1.2) translateX(10px);
    -ms-transform: scaleY(1.2) translateX(10px);
    -o-transform: scaleY(1.2) translateX(10px);
    transform: scaleY(1.2) translateX(10px);
    background-color: #00BFFF;
  }
}
@-o-keyframes loading {
  50% {
    -webkit-transform: scaleY(1.2) translateX(10px);
    -moz-transform: scaleY(1.2) translateX(10px);
    -ms-transform: scaleY(1.2) translateX(10px);
    -o-transform: scaleY(1.2) translateX(10px);
    transform: scaleY(1.2) translateX(10px);
    background-color: #00BFFF;
  }
}
@keyframes loading {
  50% {
    -webkit-transform: scaleY(1.2) translateX(10px);
    -moz-transform: scaleY(1.2) translateX(10px);
    -ms-transform: scaleY(1.2) translateX(10px);
    -o-transform: scaleY(1.2) translateX(10px);
    transform: scaleY(1.2) translateX(10px);
    background-color: #00BFFF;
  }
}


/**************************************************
 header
**************************************************/
header{
	position: absolute;
	z-index: 9999;
	width: 100%;
	display: none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
}

p{
	padding: 20px;
	text-align: right;
}

p img{width: 200px;}

/**************************************************
 visual
**************************************************/
#visualHanger{
	width: 100%;
	height: 100vh;
}

#visualHanger li{
	position: absolute;
	width: 100%;
	height: 100vh;
	display: none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
}

#visualHanger li img{display: none;}

#visualHanger li:nth-child(1){
	background: url(../img/visual1.jpg) no-repeat center center;
	background-size: cover;
}

#visualHanger li:nth-child(2){
	background: url(../img/visual2.jpg) no-repeat center center;
	background-size: cover;
}

#visualHanger li:nth-child(3){
	background: url(../img/visual3.jpg) no-repeat center center;
	background-size: cover;
}

#visualHanger li:nth-child(4){
	background: url(../img/visual4.jpg) no-repeat center center;
	background-size: cover;
}

#visualHanger li:nth-child(5){
	background: url(../img/visual5.jpg) no-repeat center center;
	background-size: cover;
}

#titleHanger{
	position: absolute;
	width: 100%;
	height: 100vh;
	top: 0;
	z-index: 3;
	display: none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
}

h1{
	display: table-cell;
	vertical-align: middle;
	width: 100vw;
	height: 100vh;
	text-align: center;
}


/**************************************************
 contents
**************************************************/
article{
	display: none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
}

p.greeting{
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.8;
	text-align: center;
	padding: 50px 10px;
	background-color: #F0F0E1;
}

.infoHanger{
	width: 1000px;
	margin: 40px auto 0 auto;
}

.infoHanger dl{
	display: table;
	height: 280px;
}

.infoHanger dl dt{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 280px;
	height: 280px;
	font-size: 40px;
	font-size: 4.0rem;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #221714;
	padding: 20px 0 0 0;
}

.infoHanger dl dt.lecture{vertical-align: top;}

.infoHanger dl dd{
	display: table-cell;
	vertical-align: middle;
	text-align: right;
	width: 720px;
}

.infoHanger dl dd.lecture{
	vertical-align: top;
	text-align: left;
	padding-left: 60px;
}

.infoHanger dl dd.lecture h3{
	font-size: 35px;
	font-size: 3.5rem;
	padding: 11px 15px 7px 15px;
	margin: 50px 0 0 0;
	border-bottom: 3px solid #221714;
	background: #EEEEEE;
}

.infoHanger dl dd.lecture h3:nth-child(1){margin: 0;}

.infoHanger dl dd.lecture dl{
	height: auto;
	display: block;
	padding: 15px 0;
	border-bottom: 1px dotted #221714;
	font-size: 0;
}

.infoHanger dl dd.lecture dl dd{
	width: 210px;
	height: auto;
	/*display: inline-block;
	vertical-align: top;*/
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: normal;
	background: none;
	color: #221714;
	text-align: left;
	line-height: 1.8;
	float: left;
}

.infoHanger dl dd.lecture dl dd span{
	font-size: 24px;
	font-size: 2.4rem;
	color: #FFFFFF;
	background-color: #FF8000;
	padding: 0 10px;
	margin-right: 5px;
}

.infoHanger dl dd.lecture dl dd span.style1{background-color: #FF8000;}

.infoHanger dl dd.lecture dl dd span.style2{background-color: #85B200;}

.infoHanger dl dd.lecture dl dd span small{
	font-size: 16px;
	font-size: 1.6rem;
}

.infoHanger dl dd.lecture dl dd code{display: none;}

.infoHanger dl dd.lecture dl dt{
	width: 450px;
	height: auto;
	/*display: inline-block;
	vertical-align: top;*/
	font-size: 16px;
	font-size: 1.6rem;
	text-align: left;
	margin: 0;
	font-weight: normal;
	background: none;
	color: #221714;
	float: right;
}

.infoHanger dl dd.lecture dl dt.style1{
	width: 100%;
	float: none;
}

.infoHanger dl dd.lecture dl dt.style1 img{
	width: 100%;
	max-width: 700px;
}

.infoHanger dl dd.lecture dl dt strong{
	display: block;
	font-size: 24px;
	font-size: 2.4rem;
}

.present{
	width: 740px;
	margin: 40px auto 0 auto;
	padding: 30px;
	border: 5px solid #000000;
	border-radius: 1.0rem;
}

.presentImg{text-align: center;}

.presentImg img{vertical-align: middle;}

.presentImg img:nth-child(1){margin-right: 20px;}

.present dl{
	text-align: center;
}

.present dl dt{
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: bold;
}

.present dl dd{
	font-size: 16px;
	font-size: 1.6rem;
	padding: 5px 0 0 0;
}

.present dl dd strong{
	font-size: 19px;
	font-size: 1.9rem;
}

.present2{
	padding: 40px 0 0 0;
	text-align: center;
}

.present2 img{
	width: 100%;
	max-width: 700px;
}

#mapHanger{
	width: 1000px;
	margin: 40px auto 0 auto;
}

#mapHanger img{width: 100%;}

#mapHanger span{
	display: block;
	text-align: right;
	font-size: 16px;
	font-size: 1.6rem;
}

#mapHanger span a{
	color: #333333;
	padding: 8px 20px 5px 20px;
	background-color: #EEEEEE;
	border-radius: 10rem;
}

#mapHanger span a:hover{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

.inquiryBtn{
	margin: 10px 0 0 0;
	padding: 20px 10px;
	text-align: center;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
}

.inquiryBtn a{
	display: block;
	width: 450px;
	padding: 20px 0 17px 0;
	margin: 0 auto;
	color: #FFFFFF;
	background-color: #FF4000;
	border-radius: 10rem;
}

.inquiryBtn a:hover{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

#reserved{
	padding: 0;
	text-align: center;
	/*background-color: #004D97;*/
}

#reserved h2{
	font-size: 40px;
	font-size: 4.0rem;
	padding: 30px 10px 27px 10px;
	background-color: #E95F00;
	color: #FFFFFF;
}

#reserved h2 span{
	display: block;
	font-size: 27px;
	font-size: 2.7rem;
	margin: 0 0 10px 0;
	padding: 5px;
}

#reserved h2 span small{
	padding: 8px 25px 5px 25px;
	background-color: #FFFFFF;
	border-radius: 10.0rem;
	color: #E95F00;
}


/**************************************************
 footer
**************************************************/
footer{
	margin: 50px 0 0 0;
	padding: 40px 10px;
	text-align: center;
	background-color: #221714;
	display: none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
}

footer dl{
	margin: 35px 0 0 0;
	color: #FFFFFF;
}

footer dl dt{
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
}

footer dl dd{
	font-size: 16px;
	font-size: 1.6rem;
	padding: 10px 0 0 0;
}

footer dl a{
	color: #FFFFFF;
	text-decoration: underline;
}


/**************************************************
 Responsive
**************************************************/
@media screen and (max-width: 640px){

br.smp{display: block;}
	
/***** header **********/
p{padding: 15px;}

p img{width: 160px;}


/***** visual **********/
#visualHanger{height: 100vw;}

#visualHanger li{height: 100vw;}

#titleHanger{height: 100vw;}

h1{height: 100vw;}
	
h1 img{width: 75%;}


/***** contents **********/
article{padding: 0 10px;}
	
p.greeting{
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.7;
	text-align: left;
	padding: 25px 15px;
}

.infoHanger{
	width: 100%;
	margin: 30px auto 0 auto;
}

.infoHanger dl{
	display: block;
	height: auto;
}

.infoHanger dl dt{
	display: block;
	width: 100%;
	height: auto;
	font-size: 30px;
	font-size: 3.0rem;
	padding: 15px 0;
}

.infoHanger dl dd{
	display: block;
	width: 100%;
	text-align: center;
	padding: 15px 0 0 0;
}
	
.infoHanger dl dd img{width: 100%;}
	
.infoHanger dl dd.lecture{padding-left: 0;}

.infoHanger dl dd.lecture h3{
	font-size: 24px;
	font-size: 2.4rem;
	padding: 10px 0 5px 0;
	margin: 40px 0 0 0;
	text-align: center;
	background: #EEEEEE;
}

.infoHanger dl dd.lecture dl{
	padding: 0 0 10px 0;
}

.infoHanger dl dd.lecture dl dd{
	width: 100%;
	font-size: 14px;
	font-size: 1.4rem;
	float: none;
	padding: 5px 0 0 0;
}
	
.infoHanger dl dd.lecture dl dd br{display: none;}
	
.infoHanger dl dd.lecture dl dd code{display: inline;}

.infoHanger dl dd.lecture dl dd span{
	font-size: 22px;
	font-size: 2.2rem;
}

.infoHanger dl dd.lecture dl dd span small{
	font-size: 14px;
	font-size: 1.4rem;
}

.infoHanger dl dd.lecture dl dt{
	width: 100%;
	font-size: 14px;
	font-size: 1.4rem;
	float: none;
	padding: 10px 0 0 0;
}

.infoHanger dl dd.lecture dl dt strong{
	font-size: 20px;
	font-size: 2.0rem;
}
	
.present{
	width: 100%;
	margin: 30px auto 0 auto;
	padding: 15px;
}
	
.presentImg{text-align: center;}

.presentImg img{
	display: block;
	margin: 0 auto;
}

.presentImg img:nth-child(1){margin: 0 auto 5px auto;}
	
.presentImg img:nth-child(2){
	width: 100%;
}

.present dl{
	text-align: center;
}

.present dl dt{
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
}

.present dl dd{
	font-size: 14px;
	font-size: 1.4rem;
	padding: 5px 0 0 0;
}

.present dl dd strong{
	font-size: 16px;
	font-size: 1.6rem;
	display: block;
}

#mapHanger{
	width: 100%;
	margin: 20px auto 0 auto;
}

#mapHanger img{width: 100%;}

#mapHanger span{
	text-align: center;
	font-size: 14px;
	font-size: 1.4rem;
	padding: 20px 0 0 0;
}

.inquiryBtn{
	margin: 30px 0 0 0;
	padding: 20px 10px;
	font-size: 22px;
	font-size: 2.2rem;
}

.inquiryBtn a{
	width: 100%;
	padding: 20px 0 17px 0;
}


/***** footer **********/
footer{
	margin: 30px 0 0 0;
	padding: 25px 10px;
}
	
footer img{
	width: 240px;
}
	
footer dl{margin: 25px 0 0 0;}

footer dl dt{
	font-size: 18px;
	font-size: 1.8rem;
}

footer dl dd{
	font-size: 14px;
	font-size: 1.4rem;
	padding: 5px 0 0 0;
}
	
	
}