/* スタイルシート */

body{
	color:#000;
	margin:0;
	padding:0;
	border-top:5px solid #ffb4b4;
	font-family:Arial,Verdana,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	-webkit-text-size-adjust:none;
	text-aling:center;
}

body * {
	
	font-size:100%;
	font-family:inherit;
	color:inherit;
	
	-webkit-text-size-adjust:100%;
	
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-o-box-sizing:border-box;
	box-sizing:border-box;
	
	margin:0;
	padding:0;
	
	text-align:left;
	
}

a:link {
	color:#0000FF;
}

a:visited {
	color:#0000FF;
}

img {
	border:none;
}

p {
	line-height:1.8em;
}

.FLT {
	display:inline;
	float:left;
}

.FLR {
	display:inline;
	float:right;
}

.FLC {
	display:block;
	margin:0 auto;
}

.Blue {
	color:#0000FF;
}

.Red {
	color:#FF0000;
}

.Green {
	color:#008800;
}

.CLFLT {
	clear:both;
}

.NBR {
	white-space:nowrap!important;
}

.SmallText {
	font-size:90%!important;
}

.SmallerText {
	font-size:75%!important;
}

.LargeText {
	font-size:105%!important;
}

.LargerText {
	font-size:115%!important;
}

.Alert {
	color:#FF0000;
	font-weight:bold;
}

.AC {
	text-align:center!important;
}

.AR {
	text-align:right!important;
}

.AL {
	text-align:left!important;
}

.MW100p {
	max-width:100%!important;
	/width:100%!important;
}


.MW120 {
	max-width:120px!important;
	/width:120px;
}

.MW180 {
	max-width:180px!important;
	/width:180px;
}

.MW240 {
	max-width:240px!important;
	/width:240px;
}

.MW320 {
	max-width:320px!important;
	/width:320px;
}

.MW480 {
	max-width:480px!important;
	/width:480px;
}

.MW640 {
	max-width:640px!important;
	/width:640px;
}

.MaxWidth {
	width:1000px!important;
	/width:1005px!important;
}

@media (max-width:999px) {
	.MaxWidth {
		width:768px!important;
	}
}

.OnlySpInline, .OnlySpBlock {
	display:none!important;
}

@media (max-width:767px) {
	.MaxWidth {
		width:100%!important;
	}

	.SpDisplayNone {
		display:none!important;
	}
	
	.OnlySpBlock {
		display:block!important;
	}
	.OnlySpInline { 
		display:inline!important;
	}

	.SpNoFloat {
		display:block!important;
		width:auto!important;
		max-width:100%;
		float:none!important;
		margin-left:auto!important;
		margin-right:auto!important;
	}
	
	.MW320, .MW480, .MW640 {
		width:100%!important;
	}

}

.LetterSizeIcon {
	height:0.8em;
	vertical-align:baseline;
	margin-left:0.2em;
	margin-right:0.3em;
}

.NoBorder {
	border:none!important;
}

.IB {
	display:inline-block;
}

Table.NoBorder {
	width:auto;
	margin:0 auto;
	
	border:none;
	border-collapse:separate;
	border-spacing:5px;
}
	
	Table.NoBorder tr td {
		vertical-align:top;
		border:none;
		
		padding:0.3em 0.3em;
		
		font-size:inherit;
	}
	
	Table.NoBorder tr td.Title {
		padding:0.3em 1em;
		vertical-align:middle;
		background-color:#444;
		
		text-align:center;
		color:#FFF;
		
	}



/* ラッパー */
#Wrapper {
	margin:0 auto;
	overflow-x:hidden;
}


/* ページトップボタン */
#page-top {
	position:fixed;
	bottom:20px;
	right:20px;
}
#page-top a {
	text-decoration:none;
	width:auto;
	text-align:center;
	display:block;
	
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	tap-highlight-color:rgba(0,0,0,0);
	
}
#page-top a:hover {
	text-decoration: none;
}

@media (max-width:767px) {
	#page-top {
		bottom:5px;
		right:5px;
	}
	#page-top a img {
		width:48px;
	}
}


/* ヘッダー */
#Header {
	width:100%;
	/*
	border-bottom:1px solid #D0D0D0;
	*/
	padding-bottom:10px;
}
	
	#Header .HeaderContainer {
		position:relative;
		width:920px;
		margin:0 auto;
	}
	
	#Header .HeaderContainer p {
		position:absolute;
		width:100%;
		font-size:10px;
		top:7px;
		color:#666666;
		text-align:center;
	}
	
	#Header .HeaderContainer a.HeaderLogo {
		display:block;
		position:absolute;
		left:5px;
		top:5px;
		height:90px;
		z-index:2;
	}
	
		#Header .HeaderContainer a.HeaderLogo img {
			display:block;
			width:auto;
			height:90px;
		}
	
	#Header .HeaderContainer h3,
	#Header .HeaderContainer p {
		position:relative;
		width:100%;
		padding:1em;
		padding-bottom:0;
		font-size:10px;
		font-weight:normal;
		color:#666666;
		line-height:1.4em;
		
		text-align:right;
	}
	
	#Header .HeaderContainer p {
		padding-bottom:1em;
		padding-top:0;
	}
	
	#Header .HeaderContainer img.InlineImage {
		max-width:25%;
		margin-left:1.5em;
		vertical-align:middle;
	}
	
	#Header .HeaderContainer img.ExperienceBanner {
		border:1px solid #2828a1;
	}
	
	@media (max-width:999px) {
		#Header .HeaderContainer p {
			padding-top:0.5em;
		}
	}
	
	@media (max-width:767px) {
		
		#Header {
			padding-bottom:5px;
			border-bottom:none;
		}
		
		#Header .HeaderContainer a.HeaderLogo {
			display:block;
			position:relative;
			left:0;
			text-align:center;
		}
			#Header .HeaderContainer a.HeaderLogo img {
				display:inline;
			}
		
		#Header.SmallHeader .HeaderContainer a.HeaderLogo {
			display:inline;
			margin-left:5px;
		}
			#Header.SmallHeader .HeaderContainer a.HeaderLogo img {
				width:200px;
				height:auto;
			}

		
		#Header .HeaderContainer h3 {
			text-align:center;
		}
		
		#Header .HeaderContainer h3 {
			display:none;
		}
		
		#Header.SmallHeader .HeaderContainer img.InlineImage {
			display:none;
		}
		
		#Header .HeaderContainer img.InlineImage {
			display:block;
			margin:0 auto;
			height:5em;
			max-width:100%;
		}
		
		#Header .HeaderContainer p {
			padding-bottom:1em;
			padding-top:1em;
		}
		
		#Header.SmallHeader .HeaderContainer p {
			display:none;
		}
		
	}


/* フッター */
#Footer {
	width:100%;
	font-size:14px;
	background-color:#ea4a15;
}
	
	#Footer .FooterContainer {
		position:relative;
		width:920px;
		padding:0 5px;
		margin:0 auto;
	}
	
	#Footer .FooterContainer ul.FooterMenu {
		width:auto;
		padding:0;
		margin:0;
		list-style-type:none;
	}
	
		#Footer .FooterContainer ul.FooterMenu li {
			float:left;
			margin-top:0.5em;
			margin-bottom:0.2em;
			padding-left:10px;
			padding-right:1.5em;
			text-align:center;
			line-height:1.5em;
			background-image:url(../images/triangle_right_wh.gif);
			background-repeat:no-repeat;
			background-position:0 50%;
		}
		
		#Footer .FooterContainer ul.FooterMenu li:last-child {
				border-right:none;
		}
			#Footer .FooterContainer ul.FooterMenu li a {
				color:#FFFFFF;
				text-decoration:none;
			}
			
			#Footer .FooterContainer ul.FooterMenu li a:hover {
				text-decoration:underline;
			}
			
	#Footer .FooterSiteInfo {
		width:100%;
		padding:1.2em 2em;
		
		background-color:#ea4a15;
		
		font-size:85%;
		text-align:right;
		color:#FFFFFF;
		
		line-height:1.4em;
	}
		#Footer .FooterSiteInfo a {
			color:#FFFFFF;
		}

/* メニュー */
#NaviMenuBar {
	width:100%;
	margin:5px 0;
	margin-bottom:0;
	/*
	background:#EDEDFF;
	*/
	border-bottom:1px solid #DDAAAA;
}
	
	#NaviMenuBar .NaviMenuBarContainer {
		width:920px;
		margin:0 auto;
		/*
		border-top:2px solid #DDAAAA;
		border-bottom:2px solid #DDAAAA;
		*/
	}
	
	
	#NaviMenuBar .NaviMenuBarContainer ul {
		width:100%;
		padding:0;
		margin-top:5px;
		list-style-type:none;
	}
		#NaviMenuBar .NaviMenuBarContainer ul li {
			display:inline;
			float:left;
			
			width:20%;
			height:100%;
			
			border-right:1px dotted #444466;
			*margin-left:-1px;
		}
		
		#NaviMenuBar .NaviMenuBarContainer ul li:last-child {
			border-right:none;
		}
		
			#NaviMenuBar .NaviMenuBarContainer ul li a {
				display:block;
				width:100%;
				height:100%;
				
				padding:8px 0px 5px 0px;
				
				font-size:16px;
				color:#666666;
				font-weight:bold;
				line-height:0.8em;
				
				text-align:center;
				
				text-decoration:none;
				
			}
			
			#NaviMenuBar .NaviMenuBarContainer ul li a .Subtitle {
				font-size:70%;
				font-weight:normal;
			}
				
				#NaviMenuBar .NaviMenuBarContainer ul li a:hover {
					background-color:#ccc4cc;
				}
	
@media (max-width:767px) {
		#NaviMenuBar .NaviMenuBarContainer ul {
			padding-left:0.5em;
			padding-right:0.5em;
		}
		#NaviMenuBar .NaviMenuBarContainer ul li {
			float:left;
			width:auto;
			margin-top:0.2em;
			margin-bottom:0.2em;
			padding-left:10px;
			padding-right:1.5em;
			text-align:center;
			line-height:1.5em;
			border:none;
			background-image:url(../images/triangle_right_bk.gif);
			background-repeat:no-repeat;
			background-position:0 50%;
		}
		
		#NaviMenuBar .NaviMenuBarContainer ul li:last-child {
			border-right:none;
		}
		
			#NaviMenuBar .NaviMenuBarContainer ul li a {
				display:inline;
				white-space:nowrap;
			}
			#NaviMenuBar .NaviMenuBarContainer ul li a .Maintitle {
				display:none;
			}
			
			#NaviMenuBar .NaviMenuBarContainer ul li a .Subtitle {
				color:#222222;
				font-size:90%;
			}
				
				#NaviMenuBar .NaviMenuBarContainer ul li a:hover {
					text-decoration:underline;
					background-color:#FFFFFF;
				}
}



/* トップページ */
.SliderContainer {
	margin:0.5em auto;
	margin-top:-5px;

}

.MainColumn {
	display:inline;
	float:left;
	width:710px;
	margin-right:10px;
	margin-top:0.5em;
	margin-bottom:0.5em;
}

	.MainColumn h2 {
			width:100%;
			padding-left:5px;
			
			margin-bottom:1em;
			height:2em;
			line-height:2em;
			
			/*
			border-left:15px solid #2828a1;
			border-bottom:1px solid #2828a1;
			*/
			background-color:#2828a1;
			color:#FFFFFF;
			border-radius:1em;
			text-align:center;
	}

.Information {
	width:100%;
	margin-bottom:2em;
	padding:0 5px;
}
		.Information h3 {
			padding-left:32px;
			padding-right:1em;
			margin-bottom:0.8em;
			
			color:#222222;
			font-weight:normal;
			font-size:90%;
			
			background-repeat:no-repeat;
			background-image:url(../images/news_leader_icon.gif);
			background-position:8px 50%;
			
		}

.SideMenu {
	display:inline;
	float:left;
	width:280px;
	margin-top:0.5em;
	margin-bottom:0.5em;
}

	.SideMenu h2 {
		width:100%;
		padding-left:5px;
		
		margin-bottom:0.2em;
		height:2em;
		line-height:2em;
		
		/*
		border-left:15px solid #2828a1;
		border-bottom:1px solid #2828a1;
		*/
		background-color:#2828a1;
		color:#FFFFFF;
		border-radius:1em;
		text-align:center;
	}

.CalendarContainer {
	width:100%;
	margin:1em auto;
	padding:0 5px;
	text-align:center;
}
	
	.CalendarContainer img.Calendar {
		width:240px;
	}

.SocialWidgetContainer {
	width:100%;
	margin:1em auto;
	padding:0 5px;
	text-align:center;
}

.SocialIconContainer {
	width:100%;
	margin:1em auto;
	padding:0 5px;
	text-align:center;
}

.SocialIconContainer p {
	font-size:90%;
	color:#222222;
	margin-bottom:1em;
	text-align:left;
}

.SocialIconContainer .IconArea {
	text-align:center;
}

.SocialIconContainer a img.SocialIcon {
	height:64px;
	margin:6px;
	border:none;
	border-radius:6px;
	vertical-align:middle;
}

@media (max-width:999px) {
	.MainColumn {
		width:477px;
	}
}

@media (max-width:767px) {
	.MainColumn {
		display:block;
		float:none;
		width:100%;
		width:95%;
		margin:0 auto;
		margin-bottom:1em;
	}
	
	.SideMenu {
		display:block;
		float:none;
		width:95%;
		margin:0 auto;
		margin-bottom:1em;
	}
	
}

/* 特徴紹介 */
.FeatureContainer {
	width:100%;
}

	.EachFeature {
		display:inline;
		float:left;
		width:355px;
		/width:315px;
		padding:0 20px;
		margin-bottom:2.5em;
	}
		
		.EachFeature img {
			display:block;
			margin:0 auto;
			margin-bottom:1em;
			width:180px;
			border:1px solid #E0E0EE;
			box-shadow:2px 2px 3px #DDDDDD;
		}
		
		.EachFeature h3 {
			text-align:center;
			color:#fd7db9;
			font-size:120%;
			margin-bottom:1em;
		}
		
		.EachFeature p {
			color:#222222;
			font-size:90%;
		}
	

@media (max-width:999px) {
	.EachFeature {
		width:238px;
		/width:208px;
		padding:0 15px;
	}
	
	.EachFeature h3 {
		font-size:100%;
	}
	
	.EachFeature img {
		width:120px;
		margin-bottom:0.7em;
	}
	
	.EachFeature p {
		line-height:1.5em;
	}

}

@media (max-width:767px) {
	.EachFeature {
		display:block;
		float:none;
		width:98%;
		margin:0 auto;
		padding:0;
		padding-bottom:2em;
		border-bottom:1px dotted #222222;
		margin-bottom:2.0em;
	}
	
	.EachFeature h3 {
		font-size:120%;
	}
	
	.EachFeature img {
		width:180px;
		margin-bottom:1em;
	}
}

/* 共通 */
.MainContent {
	width:100%;
	margin:0.5em auto;
	margin-bottom:1em;
	padding:0.2em 5px;
}

	.MainContent h1 {
		width:100%;
		margin-top:0.7em;
		margin-bottom:0.7em;
		padding-top:0.3em;
		padding-bottom:0.3em;
		
		color:#172988;
		font-size:150%;
		font-weight:bold;
		
	}
	
	.MainContent h2 {
		width:100%;
		margin-top:0.7em;
		margin-bottom:0.7em;
		padding-top:0.3em;
		padding-bottom:0.3em;
		
		color:#172988;
		font-size:130%;
		font-weight:bold;
		
	}
	
	@media (max-width:767px) {
		
		.MainContent h1 {
			font-size:130%;
		}
		
		.MainContent h2 {
			font-size:120%;
		}
	}
	
	
/* 講師紹介 */
.EachStaff {
	width:100%;
	margin-bottom:2em;
	padding-bottom:1em;
	border-bottom:1px dotted #ea4a15;
}
	.EachStaff img.Portrait {
		display:inline;
		float:left;
		width:240px;
		margin-right:25px;
		margin-left:5px;
		margin-bottom:0.5em;
		border:none;
	}
	
	.EachStaff .StaffInformation {
		display:inline;
		float:left;
		width:640px;
		padding-top:5px;
		
		color:#444;
		
	}
	
	.EachStaff .StaffInformation p {
		margin-bottom:0.5em;
	}
		.EachStaff p.StaffTitle {
			margin-bottom:0.2em;
			line-height:1.4em;
			font-size:100%;
			font-weight:bold;
			color:#777;
		}
		
		.EachStaff p.StaffName {
			white-space:nowrap;
			font-size:150%;
			font-weight:bold;
			margin-bottom:0.4em;
			color:#222;
		}
		.EachStaff p.StaffName .StaffNameJapanese {
			font-size:80%;
		}
	
		.EachStaff p.StaffCareer {
			margin-bottom:1.3em;
			padding-left:1em;
			line-height:1.4em;
			font-size:90%;
		}
	
		.EachStaff p.StaffIntroduction {
			color:#222;
			padding-left:0.5em;
			margin-bottom:0;
			
			font-size:95%;
		}

	@media (max-width:999px) {
		.EachStaff .StaffInformation {
			width:480px;
		}
	}
	
	@media (max-width:767px) {
		.EachStaff img.Portrait {
			display:block;
			float:none;
			margin:0 auto;
			margin-bottom:0.8em;
		}
		.EachStaff .StaffInformation {
			width:100%;
		}
		
		.EachStaff .StaffTitle,
		.EachStaff .StaffName,
		.EachStaff .StaffCareer {
			text-align:center;
		}
		
		.EachStaff .StaffCareer span {
			display:inline-block;
			width:auto;
			text-align:left;
		}
	}

	
/* 地図ウィジェットコンテナ */
.MapContainer {
	width:640px;
	height:auto;
	margin:0 auto;
	margin-bottom:2em;
}

@media (max-width:767px) {
	.MapContainer {
		width:100%;
		max-width:640px;
		/*height:240px;*/
	}
	
	.MapContainer h1 {
		font-size:130%;
	}
	
	.MapContainer h2 {
		font-size:120%;
	}
}

/* YouTubeビデオコンテナ */
.YouTubeContainer {
	position:relative;
	width:100%;
	max-width:640px;
	padding-bottom:56.25%;
}

.YouTubeContainer43 {
	position:relative;
	width:100%;
	padding-bottom:75%;
}

	.YouTubeContainer iframe,
	.YouTubeContainer43 iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}


/* お問い合わせ */
	.InquiryFormContainer {
		margin:2em auto;
		margin-bottom:1em;
	}
	
		.InquiryFormTable {
			width:100%;
			margin:0 auto;
		}

		.InquiryFormTable tr td {
			padding-bottom:0.5em;
		}

 
		.InquiryFormTable tr td input,
		.InquiryFormTable tr td select {
			width:100%;
			padding:0.3em;
			line-height:1em;
		}
		
		.InquiryFormTable tr td input.NoBorder {
			border-style:none;
		}		

		.InquiryFormTable textarea {
			width:100%;
			height:12em;
			padding:0.2em;
		}


/* お問い合わせバナー */
/* お問い合わせバナー */

.ContactBannerContainer {
	width:540px;
	max-width:95%;
	margin:2em auto 3em auto;
	text-align:center;
	
	border-radius:2px 2px 0 0;
	border:1px solid #0066CC;
}
	
	
	.ContactBannerContainer .Title {
		width:100%;
		height:2.5em;
		line-height:2.5em;

		
		background-color:#0066CC;
		
		color:#FFFFFF;
		font-size:80%;
		font-weight:bold;
		text-align:center;
		
	}
	
	.ContactBannerContainer .Content {
		width:100%;
		padding:0.8em 1em;
		
	}
		.ContactBannerContainer .Content p {
			width:100%;
			line-height:1.5em;
			
			margin-bottom:1em;
			
			font-size:80%;
			color:#222222;
		}
		.ContactBannerContainer p img {
			display:inline;
			width:240px;
			
			vertical-align:middle;
			margin-bottom:1em;
			
		}

/* レッスン・料金 */
.CourseBannerContainer {
	display:inline;
	float:left;
	width:46%;
	/width:45%;
	
	padding:0.8em 0.5em;
	
	/*border:1px dotted #0066CC;*/
	margin-right:2%;
	margin-left:1%;
}
	
	.CourseBannerContainer h2 {
		margin:0;
		margin-bottom:0.5em;
		margin-left:-2em;
		text-align:center;
	}
	
	.CourseBannerContainer h2 .Icon{
		margin-right:1em;
		height:4em;
		vertical-align:middle;
	}
	
	.CourseBannerContainer p {
		margin-bottom:1em;
		line-height:1.5em;
		color:#222222;

	}


@media (max-width:767px) {
	.CourseBannerContainer {
		display:block;
		float:none;
		width:95%;
		margin:0 auto;
		margin-bottom:1em;
	}
}


.EachLesson {
	width:640px;
	margin:0 auto;
	margin-bottom:1em;
	padding-bottom:1em;
	padding-top:1em;
	border-bottom:1px dotted #ea4a15;
}

.EachLesson .LeftColumn {
	display:inline;
	float:left;
	width:240px;
	margin-right:20px;
}
	
	.EachLesson .LeftColumn img {
		width:240px;
		border:2px solid #eae1ea;

	}

.EachLesson .RightColumn {
	display:inline;
	float:left;
	width:380px;
	/width:370px;
}

.EachLesson p {
	font-size:100%;
	color:#222222;
	margin-bottom:1em;
}

.EachLesson p.LessonDescription strong {
	display:inline-block;
	color:#222;
	font-size:100%;
	font-weight:bold;
	margin-top:0.5em;
	margin-bottom:0.2em;
}

.EachLesson h3 {
	color:#222;
	margin-bottom:0.5em;
}

.EachLessonLast {
	/*border-bottom:1px dotted #ea4a15;*/
}

table.LessonInfoTable {
	width:auto;
	margin:1em auto;
	margin-bottom:1.5em;
	
	border-left:1px solid #CCCCCC;
	border-top:1px solid #CCCCCC;
	border-collapse:collapse;

}


table.LessonInfoTable tr td {
	border-right:1px solid #CCCCCC;
	border-bottom:1px solid #CCCCCC;
	
	padding:0.3em 0.5em;
	
	color:#222222;
	font-size:90%;
}

table.LessonInfoTable tr td.Left {
	background-color:#eae1ea;
	font-weight:bold;
	padding:0.3em 1em;
}

@media (max-width:767px) {
	.EachLesson {
		width:100%;
		padding-left:0.2em;
		padding-right:0.2em;
	}
	
	.EachLesson .LeftColumn {
		display:none;
	}
	
	.EachLesson .RightColumn {
		width:100%;
	}
}

/* サイトマップ */
	.SiteMap {
		display:inline-block;
		color:#222222;
		font-size:100%;
		padding-bottom:1em;
		margin-bottom:1em;
		text-align:left;
	}
	
		.SiteMap ul {
			width:100%;
			margin-bottom:2em;
			list-style-type:none;
		}
		
			.SiteMap ul li {
				margin-bottom:1em;
				padding-left:15px;
				line-height:1.2em;
			}
			
				.SiteMap ul li a {
					padding-left:10px;
					font-weight:normal;
					background-image:url(../images/triangle_right_bk.gif);
					background-repeat:no-repeat;
					background-position:0 50%;
				}


/*コンテンツ編集*/
.ContentEditArea .EachItem {
	font-size:100%;
	color:#222222;
	font-weight:normal;
	
	border:1px solid #666666;
	padding:1em;
	margin-bottom:1.5em;

}

.ContentEditArea .EachItem h3 {
	margin-bottom:0.5em;
	margin-top:0.5em;
}

.ContentEditArea .EachItem input[type=text],
.ContentEditArea .EachItem textarea {
	padding:0.5em 0.5em;
	width:100%;
	font-size:90%;

}

.ContentEditArea .EachItem textarea {
	height:10em;
	line-height:1.2em;
}

.ContentEditArea .EachItem .ImagePreview {
	display:block;
	margin:0.3em auto;
	
	max-width:100%;
}

.ContentEditArea .EachItem .Description {
	font-size:80%;
	color:#666666;

}

.PreviewingIcon {
	position:relative;
	width:100%;
	height:0;
}

	.PreviewingIcon div {
		position:absolute;
		top:-48px;
		left:0;
		
		width:100%;
		
		text-align:center;
	}