@charset "utf-8";
	
@import url("fontawesome-4.3.0.min.css");
	
@import url("framework.css");

/* Font Size , Family, Color :
--------------------------------------------------------------------------------------------------------------- */
@font-face {
	font-family: 'Noto Serif JP';
	/*font-family:BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue,YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;*/
	src: url('font/NotoSerifJP-Light.otf') format('opentype');
    font-weight: 300;
	font-weight: 400;
    font-style: normal;
}

@font-face {
	font-family: 'Noto Serif JP';
	/*font-family:BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue,YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;*/
	src: url('font/NotoSerifJP-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

body
{
  font-family: "Noto Serif JP","Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;	 
  font-family:BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue,YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}

html 
{
	 font-size: 62.5%;
	 /*　ベースを10pxにしています　*/ 
}

body 
{
	-webkit-text-size-adjust: 100%;
	background-color:#ffffff;
	 font-size: 1.0rem;
	 line-height : 1.6;
	 color:#333333;
}

h1,h2,h3,h4,p,li
{
	margin:0;	
	padding:0;
}

h1, h2, h3
{
	font-weight:400; 	
}

h2 
{	
	padding:0 0 18px 0;
	padding:0 0 1.8rem 0;	 
  	position: relative;		
	font-size : 22px;	
	font-size : 2.2rem;	 
	font-weight:400; 
}

h2
{
	letter-spacing: 10px;	
	letter-spacing: 1rem;	
}

p, li, a
{
	font-weight:300;
}
 
.underline::before 
{	
  content: '';
  width: 80px;	
  width: 6rem;	
  height: 4px;
  height: 0.4rem;
  position: absolute;	
  margin: 0 auto;	
  left: 0;	
  right: 0;
  bottom: 0.1px;
  bottom: 1rem;	
  background-color: #1F228E;
}

h3
{
	font-size: 18px; 
	font-size: 1.8rem;	 
}

h4,tr,td
{
	font-size: 14px; 
	font-size: 1.4rem;	 
	font-weight:400;
}

p
{
	 font-size:1.4rem;
	 color : #333333 ;
	 letter-spacing:1px;
	letter-spacing:0.1rem;
	line-height:1.7;
}

a 
{
	color:#333333;
}




/* Outline */

ul,ol
{	
	margin:0;	
	padding:0;	
	list-style:none;
}

.group .admfee
{
	text-indent: 1.6rem;
}

.group table
{
	margin:1rem 0 1.8rem 1.6rem;
	margin-left: 1.6rem;
	margin-bottom: 1.8rem;
	width: 90%;
  table-layout: fixed;
    border-collapse: collapse;
  border-spacing: 0;
  }




.group .fee1 th, .group .fee2 th, .group .fee3 th
{
	width: 20%;
	background-color:#eeeeee;
	text-indent: 1rem;
}  

.group .fee1 th
{
	width: 50%;
} 
  

.group .mid
{
	width: 50%;
}

.group .endr
{
	text-align: right;
}  

.

/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row0
{	 
	background: transparent url(../../images/topbar.jpg) top left repeat-x;
}

 /* 横幅に合わせて自動縮小するが、拡大はしない */
.row2
{	 
	max-width: 100%;	 
	width:100%;
} 

.row2 img
{	
 	width:100%;	
	max-width: 100%;	
	height: auto;
	border-bottom:1px solid #999999 ;	
}

/* footer + kanri */

.row9, .row10
{	 
	background-color : #1F228E ; 	
	background-color : #666666 ;		
}

/* inside the row
--------------------------------------------------------------------------------------------------------------*/
.message, #info, #about, #schedule
{
	padding:80px 0;
	padding:8rem 0;	
}


/* id topbar
--------------------------------------------------------------------------------------------------------------- */
#topbar
{	 
	/*margin: 0 auto;
	text-align:center;*/	
}

#topbar #logo
{
	margin:100px 0 50px 0;
	margin:10rem 0 5rem 0;
	margin : 80px 0 50px 0;
	margin: 8rem 0 5rem 0;	
}

#topbar #logo h1
{	
	margin: 0;
	padding:0;
}

#topbar #logo h1 img
{	
	margin: 0;
	padding:0;
	width:280px
	width:2.8rem;
}

/* when use icon */

#topbar .faico a
{	
	color:inherit;
}

#topbar .faico a:hover
{	
	color:#FFFFFF;
}


/*  id header
--------------------------------------------------------------------------------------------------------------- */
#mainav .drop::after, 
#mainav li li .drop::after, 
#breadcrumb li:first-child::before, 
#breadcrumb li a::after, 
.sidebar nav a::after
{	
	position:absolute;	 
	font-family:"FontAwesome";	 
	font-size:10px;	 
	line-height:10px;
}

#mainav 
{
	margin:0 0 20px 0;
	margin:0 0 2rem 0;
	padding:0;	
}

#mainav ul 
{
	width: 100%;
	display: flex;	
}

#mainav li 
{
	 width: 100%;
	 padding:0 0.3rem;
	 background: transparent;
	 font-size: 14px;
	font-size:1.4rem;
	 text-align: center;	
}

#mainav li:last-child
{
	margin-right:0;	
}

#mainav li a, #mainav li a:link, #mainav li a:active
{
	display:block;
	 padding:0 0 6px 0;
	color:#333333;
	font-size:1.4rem;
	font-weight:500;
}

#mainav li.active a
{
	border-bottom:1px solid #bbbbbb;
	
}

#mainav li:hover a
{
	border-bottom:1px solid #bbbbbb;
	
}

#mainav li li a
{
	border:solid;
	border-width:0 0 1px 0;	
}

#mainav .drop
{
	padding-left:10px;
	padding-left:1rem;	
}

#mainav li li a, #mainav li li .drop
{
	display:block;
	margin:0;
	padding:10px 15px;
	padding:1rem 1.5rem;	
}

#mainav .drop:after, 
#mainav li li .drop:after
{
	content:"\f0d7";	
}

#mainav .drop:after
{
	top:5px;
	top:0.5rem;
	left:0;	
}

#mainav li li .drop:after
{
	top:15px;
	top:1.5rem;
	left:5px;
	left:0.5rem;	
}

#mainav ul ul
{
	visibility:hidden;
	opacity:0;	
}

#mainav ul li:hover > ul
{
	visibility:visible;
	 opacity:1;	
}

#mainav form
{
	display:none;
	margin:0;
	padding:0;	
}

#mainav form select, #mainav form select option
{
	display:block;
	cursor:pointer;
	outline:none;	 
}

#mainav form select
{
	width:100%;
	padding:5px;
	padding:0.5rem;
	border:1px solid;	
}

#mainav form select option
{
	margin:5px;
	margin:0.5rem;
	padding:0;
	border:none;	
}

#mainav select option[selected] 
{
	 background: #CCC;	
}

#mainav select>option:hover  
{
	 color:#CCC;
	 cursor: pointer;	 
}


/* Main Image class slider
--------------------------------------------------------------------------------------------------------------- */
.slider 
{	
	width: 100%;	
	height: auto;	
	background-position:center center;	
	background-size: cover;
	
	/*display: flex;	
	align-items: center;	
	justify-content: center;
	*/
}


/* row3 main.message > 
---------------------------------------------------------------------------------------------------------------*/
.message h2
{
	margin-bottom:20px;
	margin-bottom:2rem;
	font-size:22px;
	font-size:2.2rem;
	letter-spacing: 10px;	
	letter-spacing: 1rem;	
}

 .message p
{	
	margin:0;	
	padding:0;	
	font-size:16px;
	font-size:1.6rem;
}


/* Info
---------------------------------------------------------------------------------------------------------------*/
#info
{
	border-top: 1px solid #dddddd ;	
	border-bottom: 1px solid #dddddd ;		
}

#info .first h2 
{	
	padding : 30% 0 ;
	padding:0;
	font-size:2rem; 
	letter-spacing: 10px;	
	letter-spacing: 1rem;	
}

#info .two_third .info
{	 
	height:100px;
  height: 10rem;	
  overflow: scroll;
  overflow-y: scroll;
  overflow-x: hidden;	
}

#info p
{	
	margin:0;	
	padding:0;
}

#info .text
{	
	margin-bottom:0.8rem;	
}


/* About
--------------------------------------------------------------------------------------------------------------- */
.row51 #about
{
	border-bottom: 1px solid #dddddd ;	
}

#about .about h2
{
	margin:0 0 40px 0;
	margin : 0 0 4rem 0 ; 
}
#about .one_half p  
{
	 margin:0;
	 
}
#about .one_half  img  
{
	 margin-bottom :3rem;
	 
}
#about h3  
{
	 margin : 0 0 6px 0; margin : 0 0 0.6rem 0 ; 
	 font-size : 16px ;
	 font-size : 1.6rem ;
	 font-weight : 600 ;
	 color:#333333;
	 
}
#about .one_half .last_p 
{
	margin-top:2rem;
	
}
#about .one_half li 
{
	 font-size:1.6rem;
	 color:#333333;
	 
}


/* Lesson
--------------------------------------------------------------------------------------------------------------- */
#lesson
{	
	padding:40px 0 80px;
	padding:4rem 0 8rem;	
	border-bottom:1px solid #dddddd;
}

#lesson h2
{	
	margin-bottom:30px;
	margin-bottom:3rem;	
}

#lesson .one_half h3, 
#lesson .one_half p
{	
margin:0;	
padding:0;
}

#lesson .one_half h3
{
	margin-top:8px;
	margin-top:0.8rem;
	font-size:15px;
	ont-size: 1.5rem;
	font-weight:600;
	color:#333333;
}

#lesson h4:nth-of-type(2)
{
	margin-top:10px;
	margin-top:1rem;
} 

#lesson h4:nth-of-type(2)
{
	margin-top:10px;
	margin-top:1rem;
} 

#lesson .one_half h3:first-child 
{
	margin-top:0;
}

/*
#lesson .one_half p
{	
	font-size: 1.4rem;	
	line-height:1.6;
}
*/

#lesson .map p
{	
	font-size:12px;	
	font-size:1.2rem;
}

#lesson .one_half .last
{	
	margin-bottom:14px;		
	margin-bottom:1.4rem;	
}

#lesson



/* Schedule
--------------------------------------------------------------------------------------------------------------- */
/*
#schedule .second
{	  
  height: 150px;
  height: 1.5rem;	
  overflow: scroll;	
  overflow-x: hidden;
}*/

#schedule .two_third
{
border:1px solid red;
}

#schedule .two_third .schedule
{	  
  height: 150px;
  height: 15rem;	
  overflow: scroll;
  overflow-y: scroll;
  overflow-x: hidden;
  
}

#schedule .text
{	
	margin-bottom:3px;	
	margin-bottom:0.3rem;	
	font-size: 14px;	
	font-size: 1.4rem;	
}

#schedule h3
{	
	margin:0;	
	padding:0;	
	font-weight:400;	
}



/* Contact
--------------------------------------------------------------------------------------------------------------- */
#contact
{
	margin-bottom:80px;
	margin-bottom:8rem;
	padding:8px;
	padding:0.8rem;
	border:1px solid #bbbbbb;
}

#contact .first img
{
	margin:0;	
	padding:0;
	max-width: 100%;
	height: auto;
}

#contact .contact
{
	text-align:left;
}

#contact .contact h2
{
	margin:0 0 0px 0;
	margin:0 0 0rem 0;
	padding:0;
	font-weight:100;
	color:#333333;
	font-size:20px;
	font-size:2rem;
	letter-spacing:10px;
	letter-spacing:1rem;	
}


#contact .contact p
{
	margin:0 0 10px 0;
	margin:0 0 0.1rem 0;
	padding:0;
	font-size:14px;
	font-size:1.4rem;
	color:#333333;
}

#contact .contact .last
{
	margin-bottom:0;
	text-indent:1.5px;
	text-indent: 0.15rem;	
}

#contact .contact a
{
	color:#333333;
	border-bottom:1px dashed #666666;
}



/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer
{
	padding : 40px 0 0  ;
	padding : 4rem 0 0; 
}

#footer .heading
{
	margin:0;	
	padding:0;	
	font-size:14px;
	font-size:1.4rem;	
}

#footer small
{	
	margin:0 0 20px 0;
	margin:0 0 2rem 0;	
	padding:0;	
	font-size:11px;
	font-size:1.1rem;
}

#footer .heading, #footer small
{
	color:#cccccc;
}

/* Kanri */
.kanri
{	
	padding: 0 0 10px 10px ; padding: 0 0 1rem 1rem ;
}

.kanri i
{	
	color: #cccccc;
}



/* Transition Fade
--------------------------------------------------------------------------------------------------------------- */
.faico a, #mainav *, #backtotop, .services i, #info .services li,  .overlay
{
	transition:all .3s ease-in-out;
	
}


/* Back to Top */
#backtotop
{
	z-index:999;
	 display:inline-block;
	 position:fixed;
	 visibility:hidden;
	bottom:20px;
	bottom:2rem;
	right:20px;
	right:2rem;
	width:36px;
	width:3.6rem;
	height:36px;
	height:3.6rem;
	line-height:36px;
	line-height:3.6rem;
	font-size:16px;
	font-size:1.6rem;
	 text-align:center;
	 opacity:.2;	
}

#backtotop i
{
	display:block;
	 width:100%;
	 height:100%;
	 line-height:inherit;
	
}
#backtotop.visible
{
	visibility:visible;
	 opacity:.5;
	
}
#backtotop:hover
{
	opacity:1;
	
}
#backtotop
{
	color:#FFFFFF;
	 background-color:#999999;	
}


/* Font Awesome Social Icons
--------------------------------------------------------------------------------------------------------------- */
.faico
{
	margin:0;
	 padding:0;
	 list-style:none;
	
}
.faico li
{
	display:inline-block;
	 float:left;
	 margin:0 2px 0 0;
	 padding:0 6px 0 0;
	 line-height:normal;
	
}
.faico li:last-child
{
	margin-right:0;
	
}

.faico a
{
	display:inline-block;
	height:20px;
	font-size:16px;
	 text-align:center;
	
}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */




/*-------------------------------
            Clear Fix
--------------------------------*/
.clearfix:after

{
	
  content: "";
	
  display: block;
	
  clear: both;
	

}





/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport
{
	width:device-width;
	
}


/* Smartphone + Tablet
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:180px) and (max-width:750px) 
{

.row0
{	 
	background: transparent url(../../images/topbar.jpg) top left repeat-x;
}

.message, #info, #about, #schedule, #footer
{
	padding:40px 0;
	padding:4rem 0;	
}

#topbar #logo
{
	margin:60px 0 30px 0;
	margin:6rem 0 3rem 0;
}

h1 img
{
	width : 60%;
}

h2, .message h2
{
	letter-spacing: normal;
}

 .message h2
{	
	padding:0 0 24px 0;
	padding:0 0 2.4rem 0;	 
}

.imgl, .imgr
{
	display:inline-block;
	 float:none;
	 margin:0 0 10px 0;	
}

.fl_left, .fl_right
{
	display:block;
	 float:none;	
}

.one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter
{
	display:block;
	 float:none;
	 width:auto;
	 margin:0 0 30px 0;
	 margin:0;	 
	 padding:0;	
}

.last
{
	margin-bottom:0;	
}

#topbar
{
	/*text-align:center;	
}

#topbar .inline
{
	margin-bottom:15px;	*/
}

#topbar .faico li
{
	float:none;	
}

#header #logo
{
	text-align:center;
	/* margin-bottom:15px;	*/
}

.message
{
	/*padding-bottom:50px;	*/
}

#info
{
	/*padding-bottom:50px;*/
	
}

#about .first
{
	margin-bottom:40px;
	margin-bottom:4rem;
}

#lesson
{
	padding:20px 0 40px;
	padding:2rem 0 4rem;	
}

#lesson h2
{
	margin:20px 0;
	margin:2rem 0;
}

#lesson .first .group_first_last
{
	margin-bottom:10px; 
	margin-bottom:1rem;
}

#contact .first
{
	margin-bottom:20px;
	margin-bottom:2rem;
}

#contact .second h2
{
	margin-bottom:10px;
	margin-bottom:1rem;
	letter-spacing:normal;
}

#contact .second p, #contact .second .last
{
	margin-bottom:10px;
	margin-bottom:1rem;
}

#footer
{
	/*padding-bottom:20px;*/
}

}

@media screen and (min-width:180px) and (max-width:900px) 
{
	
#topbar, #header, .message, #info, #about, #photo, #lesson, #schedule, #contact, #footer 
{
	max-width:90%;	
}

	#topbar
{
	
}

	#header
{
	
}

	#pageintro
{
	
}

	#mainav
{
	
}
	#mainav ul
{
	display:none;
	
}
	#mainav form
{
	display:block;
	
}

#breadcrumb
{
	
}

.container
{
	
}

#comments input[type="reset"]
{
	margin-top:10px;	
}

.pagination li
{
	display:inline-block;
	 margin:0 5px 5px 0;
	
}

#info
{
	
}

#footer
{
	
}

#copyright
{
	
}

#copyright p:first-of-type
{
	margin-bottom:10px;	
}
}

/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:978px) 
{
	
#topbar, #header, .message, #info, #about, #photo, #lesson, #schedule, #contact, #footer 
{
	max-width:978px;	
}

}


/* Other
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:650px) 
{	
	.scrollable
{
	display:block;
	 width:100%;
	
	margin:0 0 30px 0;
	 padding:0 0 15px 0;
	 overflow:auto;
	 overflow-x:scroll;
	
}
	.scrollable table
{
	margin:0;
	 padding:0;
	 white-space:nowrap;
	
}

}