@charset "utf-8";

/* @group a */

/* リンク
============================================================*/
a,
a:link { /* a:visited */
	color: #aa0b0a;
}

a:hover,
a:focus,
a:active,
.over a {
	color: #de625e;
	text-decoration: underline;
}

a.none,
.over a.none {
	text-decoration: none;
}


/* @end */

/* @group fontsize */

/*
9px  : 69%  IE 72%
10px : font-size: 77%;
11px : font-size: 85%;
12px : font-size: 93%;
13px : font-size: 100%;
14px : font-size: 108%;
15px : font-size: 116%;
16px : font-size: 123.1%;
17px : font-size: 131%;
18px : font-size: 138.5%;
19px : font-size: 146.5%;
20px : font-size: 153.9%;
21px : font-size: 161.6%;
22px : font-size: 167%;
23px : font-size: 174%;
24px : font-size: 182%;
25px : font-size: 189%;
26px : font-size: 197%;
*/

/* font-size 9px */
selector {
	font-size: 69%;
	_font-size: 72%;
	/font-size: 72%;
}


/* フォントサイズリセット */
.fsReset,
.fsResets p {
	font-size: 100% !important;
}
/* デフォルトフォントサイズ */
.fsDefault {
	font-size: 85%;
}




/* @end */

/* @group common */

/* @group 共通 */

/* 共通
============================================================*/

html {
	width: 100%;
	background-color: #fff;
}

body {
	width: 100%;
	background-color: #fff;
	color: #444;
}
	body.ie {
		
	}

.tx p {
	margin-bottom: 1em;
}

/* @end */

/* @group フォント */

p {
	font-size: 93%;
	line-height: 2;
}

/* デフォルトフォントカラー */
.defFontColor {
	color: #444;
}

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

.light {
	color: #333;
	line-height: 1.5;
}

/* @end */

/* @group ヘッダー */

/* --ヘッダー
------------------*/
#header {
	border-top: 5px solid #aa0b0a;
}
	#header .inner {
		position: relative;
	}
		#header .tagline {
			padding-top: 10px;
			font-size: 77%;
		}
		#header .cap {
			display: block;
		}
		#logo {
			padding-top: 12px;
			margin-bottom: 22px;
		}
		#header .info {
			position: absolute;
			top: 43px;
			right: 20px;
		}

#top {
	position: relative;
	height: 300px;
}
	/* --グローバルナビ
	------------------*/
	#gnav {
		position: absolute;
		top: 209px;
		width: 100%;
		background-color: #8d060a;
		/*background: url(../_images/common/nav_bg.png) 0 0 repeat-x;
		z-index: 10;*/
	}
	body.ie7 #gnav {
		left: 0;
	}
		#gnav .inner {
			width:  873px;
			margin: 0 auto;
		}
		#gnav li {
			float: left;
		}
		#gnav a {
			display: block;
		}
		#gnav a:hover,
		#gnav .current a {
			background-image: url(../_images/common/nav_over.gif);
		}
		body.ie6 #gnav a:hover {
			background-color: #8d060a;
		}
	#mainImg {
		width: 940px;
		height: 300px;
	}


/* @end */

/* @group メイン */

/* --メイン
------------------*/
#main {
	padding-top: 35px;
}
	#content {
		float: left;
		width: 670px;
	}
		#content h1 {
			margin-bottom: 30px;
		}
		#content h2 {
			margin-bottom: 30px;
		}
		
	.columnLeft {
		float: left;
		width: 325px;
	}
	
	.columnRight {
		float: right;
		width: 325px;
	}


/* @end */

/* @group サイド */

/* --サイド
------------------*/
#side {
	float: right;
	padding: 18px;
	background-image: url(../_images/common/bgGrid.gif);
}
	#side .mod_blc {
		width: 200px;
		margin-bottom: 20px;
	}
		#side .mod_blc.last {
			margin-bottom: 0px;
		}
	#side_banner li {
		margin-bottom: 15px;
	}
		/*
		#side_banner .banner a img {
			border: 1px solid #ccc;
		}
		#side_banner .banner a:hover img {
			border-color: #aa0b0a;
		}
		*/
	#side_access .body {
		padding: 18px 23px 8px;
		background: url(../_images/common/side_access_bg.gif) 0 0 repeat-y;
	}
		#side_access h2 {
			line-height: 0;
			font-size: 0;
		}
		#side_access h3 {
			margin-bottom: 12px;
			color: #AA0B0A;
			line-height: 1.4;
			font-size: 108%;
		}
		#side_access p {
			margin-bottom: 10px;
			font-size: 85%;
		}
		#side_access .bottom {
			padding-top: 8px;
			background: url(../_images/common/lineGrid2.gif) 0 top repeat-x;
		}
			#side_access a {
				float: right;
				display: block;
				padding: 7px 0 7px 7px;
			}
		


/* @end */

/* @group フッター */

/* --フッター
------------------*/
		
#footer {
	margin-top: 40px;
}
	#footer .inner {
	}
		#footer ul {
			padding-top: 14px;
		}
			#footer li {
				border-left: 1px solid #333;
			}
			#footer li.last {
				border-right: 1px solid #333;
			}
				#footer li a {
					display: block;
					color: #333;
					padding: 0 1em;
					text-decoration: none;
					font-size: 77%;
				}
					#footer li a:hover {
						color: #de625e;
						text-decoration: underline !important;
					}			
			.btTop {
				display: block;
				float: right;
			}
	
	#footer .bottom {
		padding-bottom: 80px;
		background-color: #000;
	}
		#copyright {
			padding-top: 10px;
		    color: #fff;
		    font-weight: bold;
		    font-size: 69%;
			_font-size: 72%;
			/font-size: 72%;
		}


/* @end */

/* @end */

/* @group 共通クラス */

/* 共通クラス
============================================================*/
.mod_cnt {
	width: 940px;
	padding-left: 20px;
	padding-right: 20px;
    margin: 0 auto;
}

#content .mod_blc {
	margin-bottom: 40px;		
}

.cap {
	padding-top: 10px;
	line-height: 1.5 !important;
}

#content .title {
	padding-bottom: 7px;
	border-bottom: 1px dotted #999;
	margin-bottom: 18px;
}

#content .subTitle {
	height: 16px;
	margin-bottom: 20px;
	padding-left: 10px;
	border-left: 5px solid #AA0B0A;
	color: #AA0B0A;
	line-height: 1;
	font-weight: bold;
	font-size: 108%;
}

a.arrow {
	padding-left: 14px;
	background: url(../_images/common/arrow.gif) 0 center no-repeat;
	color: #666;
	font-weight: bold;
	text-decoration: none;
}
	a.arrow:hover {
		color: #de625e;
		text-decoration: underline;
	}

span.catch {
	font-weight: bold;
	color: #AA0B0A;
}
	
/* --テーブル
------------------*/

.table {
	padding-left: 6px;
	background: url(../_images/common/lineGridRow6.gif) 0 0 repeat-y;
}

table.default {
	border-collapse: collapse;
}
	table.default th,
	table.default td {
		padding: 20px;
		vertical-align: top;
	}
	table.default th {
		font-weight: bold;
	}

/* @end */

/* @group concept */

/* concept
============================================================*/

#content.concept {
}
	#content.concept h2 {
		padding-left: 15px;
		background: url(../_images/common/lineGridRow6.gif) 0 0 repeat-y;
	}
	#content.concept h2 p {
		padding-top: 8px;
		font-weight: normal;
	}
		
		/* --ポイント
		------------------*/
		#content.concept #point li {
			margin-bottom: 15px;
			padding: 20px 20px 18px;
			border: 1px dotted #999;
			background-position: 632px 12px;
			background-repeat: no-repeat;
		}
		#content.concept #point li.point01 {
			background-image: url(../_images/concept/point_cap01.gif);
		}
		#content.concept #point li.point02 {
			background-image: url(../_images/concept/point_cap02.gif);
		}
		#content.concept #point li.point03 {
			background-image: url(../_images/concept/point_cap03.gif);
		}
			#content.concept #point li p {
				padding-top: 8px;
			}
		/* --ショートプログラム
		------------------*/
		#content.concept #short li {
			width: 315px;
			padding: 5px;
			background-image: url(../_images/common/bgGridRed.gif);
		}
			#content.concept #short li .inner {
				position: relative;
				background-color: #fff;
			}
				#content.concept #short li .inner h3 {
					padding: 20px 0 14px 16px;
					border-bottom: 1px dotted #999;
				}
				#content.concept #short li .inner p {
					display: block;
					padding: 10px 16px 40px;
				}
				#content.concept #short li .inner .arrow {
					position: absolute;
					left: 16px;
					bottom: 14px;
					font-size: 77%;
				}
					.ie6 #content.concept #short li .inner .arrow {
						left: 0px;
						bottom: 24px;
					}


/* @end */

/* @group program */

/* @group 短期 */

/* program
============================================================*/

#program {
}
	#program .mod_blc {
		
	}
	#program .mod_blc.arrow {
		padding-bottom: 50px;
		margin-bottom: 30px;
		background: url(../_images/program/lineArrow.gif) 0 bottom no-repeat;
	}
	#program #content h2 p {
		padding: 8px 10px 0px 20px;
		border-left: 7px solid #aa0b0a;
		font-weight: normal;
		color: #333;
		font-size: 100%;
	}
	#program #intro .smallcap {
		float: left;
		width: 42px;
		height: 42px;
		margin-top: 3px;
		margin-right: 10px;
		background: url(../_images/program/smallcap.gif);
		text-indent: -9999px;
	}
		#program.ie6 #intro .smallcap {
			float: none;
			width: auto;
			height: auto;
			margin: 0;
			background: none;
			text-indent: 0;
		}
	
	/* --ポイント
	------------------*/
	#program #point {
		
	}
		#program #point li {
			margin-bottom: 30px;
			padding-left: 44px;
			background-repeat: no-repeat;
		}
		#program #point li.point01 {
			background-image: url(../_images/program/cap_point01.gif);
		}
			#program #point li.point01 p {
				width: 245px;
			}
		#program #point li.point02 {
			background-image: url(../_images/program/cap_point02.gif);
		}
		#program #point li.point03 {
			background-image: url(../_images/program/cap_point03.gif);
		}
			#program #point li p {
				padding-left: 22px;
				border-left: 1px dotted #000;
			}
		#program #point li.last {
			margin-bottom: 0;
			padding-bottom: 0;
		}
		
	/* --フロウ
	------------------*/
	#program .flow li {
		margin-bottom: 11px;
		padding-bottom: 40px;
		background: url(../_images/program/arrow_flow.gif) center bottom no-repeat;
	}
		#program .flow li .inner {
			padding: 12px 12px 12px 70px;
			border: 1px dotted #000;
			background-position: 22px 25px;
			background-repeat: no-repeat;
		}
		#program .flow li .flow01 {
			background-image: url(../_images/program/cap_flow01.gif);
		}
		#program .flow li .flow02 {
			background-image: url(../_images/program/cap_flow02.gif);
		}
		#program .flow li .flow03 {
			background-image: url(../_images/program/cap_flow03.gif);
		}
		#program .flow li .flow04 {
			background-image: url(../_images/program/cap_flow04.gif);
		}
			#program .flow .columnTx {
				float: left;
			}
				#program .flow h3 {
					padding-top: 13px;
					margin-bottom: 7px;
				}
				#program .flow li .inner p {
					
				}
				
			#program .flow li .inner .columnImg {
				float: right;
			}
			
		#program .flow li.last {
			margin-bottom: 0;
			padding-bottom: 0;
			background: none;
		}
	
	/* --効果
	------------------*/
	#program #effect {
		width: 671px;
	}
		#program #effect h2 p {
			padding-top: 0;
		}
		#program #effect .body {
			padding: 0 40px 30px;
			border-left: 2px solid #b78f96;
			border-right: 2px solid #b78f96;
		}
			#program #effect .columnTx {
				float: left;
				width: 350px;
			}
				#program #effect p {
					
				}
				
			#program #effect .columnImg {
				float: right;
			}
	
	/* --コース詳細
	------------------*/
	#program #course {
		
	}
		#program #course table {
			width: 100%;
			border-collapse: collapse;
			border: 1px solid #999;
			border-radius: 4px;
			-webkit-border-radius: 4px;    /* Safari,Google Chrome用 */  
			-moz-border-radius: 4px;   /* Firefox用 */
		}
		#program #course th {
			font-weight: bold;
		}
		#program #course td,
		#program #course th {
			padding: 10px;
			border: 1px dotted #999;
			text-align: center;
			font-size: 108%;
		}
			#program #course .head {
				color: #333;
			}
			#program #course .courseName {
				color: #AA0B0A;
			}
	
	/* --受講の流れ
	------------------*/
	#program #class {
		
	}
		#program #class .inner {
			padding: 24px 20px 20px 70px;
			background-position: 22px 24px;
		}
		#program#program #class .flow h3 {
			padding-top: 0;
		}



/* @end */

/* @group 短期以外 */

/* other
============================================================*/

#program_other {
}
	#program_other #content .mod_blc li {
		margin-bottom: 30px;
	}
	#program_other #content .mod_blc li .body {
		margin-left: 5px;
		padding-left: 15px;
		padding-top: 8px;
		background: url(../_images/common/lineDotRowRed.gif) 0 0 repeat-y;
	}

/* @end */

/* @end */

/* @group trainer */

/* trainer
============================================================*/

#trainer {
}
	#trainer #profile {
		padding-top: 25px;
		margin-bottom: 30px;
	}
		#trainer .columnTx {
			width: 428px;
		}
		#trainer .columnTx h2 {
			margin-bottom: 20px;
		}
	
	#trainer #works {
		border: 1px dotted #999;
	}
		#trainer #works th {
			border-bottom: 1px dotted #999;
		}
		
	
/* @end */

/* @group access */

/* access
============================================================*/

#content.access {
}
	#content.access th,
	#content.access td {
		text-align: left;
		vertical-align: top;
	}
		#content.access th {
			padding-right: 26px;
		}
		#content.access td p {
			margin-bottom: 8px;
		}
	#content.access #map {
		width: 670px;
		height: 350px;
	}

/* @end */

/* @group contact */

/* contact
============================================================*/

#contact {
}
#contact #content {
	width: 680px;
}
	#contact form {
		margin-top: 20px;
		padding-top: 20px;
		border-top: 1px dotted #999;
	}
	#contact #counseling_form {
		margin-top: 0;
		padding-top: 0;
		border: none;
	}
		#contact .table {
			margin-top: 25px;
			margin-bottom: 40px;
		}
			#contact td,
			#contact th {
				font-size: 93%;
			}
			#contact th {
				width: 300px;
				padding-top: 28px;
				padding-bottom: 28px;
			}
			#contact td {
				padding-right: 0;
			}
			#contact form th p {
				padding-top: 5px;
			}
			#contact th span {
				color: #d91618;
			}
			#contact input,
			#contact textarea {
				width: 380px;
				padding: 8px 10px;
				margin-right: 10px;
				border: none;
				background-color: #e5e5e5;
			}
			#contact textarea.resizable {
				margin-right: 0;
			}
			#contact button {
				width: 670px;
				padding: 0;
				margin: 0;
				border: none;
				background-color: #fff;
				cursor: pointer;
				overflow: hidden;
			}
				#contact button img {
					display: block;
					position: relative;
					padding: 0;
					overflow: hidden;
				}
				#contact.ff button img {
					margin-left: -3px;
				}
			#contact .top td,
			#contact .top th {
				padding-top: 20px;
			}
			#contact .bottom td,
			#contact .bottom th {
				padding-bottom: 0;
			}
			/* --コンタクトフォーム
			------------------*/
			#contact_form textarea {
				resize: none;
			}
				/* --入力項目
				------------------*/
				#contact #age {
					width: 30px;
				}
				#contact #zip {
					width: 60px;
				}
				#contact .radioButton {
					width: 20px;
					background-color: #fff;
				}
				#contact .tipInner {
					color: #FF0000;
					font-size: 77%;
				}

/* @end */

/* @group info */

/* @group company */

/* company
============================================================*/

#content.company {
}
	#content.company h1 {
		margin-bottom: 0;
		padding-bottom: 15px;
	}
	#content.company table.default {
		width: 100%;
	}
	#content.company table.default td,
	#content.company table.default td {
		border-bottom: 1px dotted #999;
	}


/* @end */

/* @group privacy */

/* privacy
============================================================*/

#privacy {
}
	#privacy ol {
		margin-top: 25px;
		padding-top: 25px;
		border-top: 1px dotted #999;
	}
		#privacy ol li {
			margin-bottom: 40px;
			line-height: 2;
			font-size: 93%;
		}
		
/* @end */
		
/* @end */

/* @group error */

/* error
============================================================*/

#notFound {
}
	#notFound p {
		width: 700px;
		margin: 0 auto;
		padding: 100px;
	}

/* @end */




