@charset "utf-8";
/*--------------------------------------------------------------------
  レイアウトIDや詳細なスタイルを定義
--------------------------------------------------------------------*/

/* body
------------------------------------------------------------------- */

html {
	background-color: #040917;
}
body {
	background-image: url(../img/bg_all.jpg);
	background-repeat: repeat-x;
	background-position: center top;	
	font-size: 0.625em;
	font-family: "ヒラギノ角ゴ Pro","hiragino kaku gothic pro","メイリオ",meiryo,'lucida grande',tahoma,verdana,arial,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	padding: 0;
	margin: 0 auto;
	color: #EEE;
}

/* setting (基本設定)
------------------------------------------------------------------- */
#mainFrame {
	width: 960px;
	margin: auto;
}
#mainContents {
	width: 790px;
}
#sideMenu {
	width: 170px;
}

/* baseFrame
------------------------------------------------------------------- */
#baseFrameOuter {
	background-image: url(../img/bg_body.jpg);
	background-repeat: repeat-y;
	background-position: center top;
}
#baseFrame {
	background-image: url(../img/bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
}

/* mainContents
------------------------------------------------------------------- */
#mainContents {
	float: right;
	margin: auto;
}

/*
 common 
*/
#mainContents p,
#mainContents iframe,
#mainContents ul,
#mainContents ol,
#mainContents dl,
.hyo,
.note,
.alert,
.docType,
.innernavi,
.plugin,
.recNavi,
.pageInnerNavi,
.bookingNavi {
	padding: 0;
	margin:  0 18px 15px;
}

#mainContentsInner{
	min-height:400px;
	height:auto !important;
	height:400px;
}

/*
 headline 
*/
#mainContents h1 {
	clear: both;
	font-size: 2em;
	padding:0 0 0 18px;
	margin: 0;
}
#mainContents h2 {
	clear: both;
	background-image: url(../img/bg_h2.jpg);
	background-position: left top;
	background-repeat: no-repeat;
	font-size: 1.6em;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #FFF;
	padding: 7px 18px 7px 50px;
	margin: 0 0 0.8em 0;
}
#mainContents h3 {
	clear: both;
	background-image: url(../img/bg_h3.gif);
	background-position: left bottom;
	background-repeat: no-repeat;
	font-size: 1.6em;
	line-height: 1.8;
	letter-spacing: 0.1em;
	color: #FFCC00;
	padding: 0 0 0.2em 0;
	margin: 0 18px 0.5em;
}
#mainContents h4 {
	color: #FFDC51;
	background-image: url(../img/bg_h4.gif);
	background-position: left bottom;
	background-repeat: no-repeat;
	font-size: 1.4em;
	line-height: 1.6;
	padding: 0 0 0 20px;
	margin: 0 18px 0.5em;
}
#mainContents h5 {
	font-size: 1.4em;
	line-height: 1.6;
	margin: 0 18px 0.5em;
}
#mainContents h6 {
	font-size: 1.4em;
	color: #CCCCCC;
	line-height: 1.6;
	margin: 0 18px 0.5em;
}

#mainContents .text-important {
	color: #DD5588 !important;
}
#mainContents .text-mute {
	color: #9B9B9B !important;
}

/*
 paragraph
*/
#mainContents p {
	font-size: 1.4em;
	line-height: 1.8;
}

/*
 list
*/
#mainContents ul {
	font-size: 1.4em;
}
#mainContents ul li {
	list-style-image: none;
	list-style-type: none;
	line-height: 1.6;
	background-image: url(../img/bg_li.jpg);
	background-position: left top;
	background-repeat: no-repeat;
	padding: 0 0 0 14px;
	margin: 0 0 0.3em 0;
}
#mainContents ul li ul li{
	padding: 0 0 0 20px;
	margin: 0 0 0.3em 0;
}
#mainContents ol {
	font-size: 1.4em;
	margin-left: 18px;
	padding: 0;
}
#mainContents ol li {
	list-style-position: outside;
	line-height: 1.6;
	margin: 0 0 0.3em 36px;
	padding:2px 0 2px 0;
}
#mainContents ol li ol li {
	margin: 0 0 0.6em 18px;
}
#mainContents li ul, #mainContents li ol {
	font-size: 100%;
	padding:2px 0 0 0;
	margin: 5px 0 0 0;
}
#mainContents dl {
	font-size: 1.2em;
	line-height: 1.6;
}
#mainContents dt {
}
#mainContents dd {
}

/*
 br
*/

#mainContents br {
	letter-spacing: normal !important;
}


/*
 dangumi
*/
.dan1 {
	float: left;
	width: 47.5%;
}
.dan2 {
	float: right;
	width: 47.5%;
	margin: 0 18px 0 0;
}

/*
font
*/
.att {
	background-color: #990000;
	padding: 3px 5px;
}
.large {
	font-size: 1.2em !important;
}


/*
 table
*/

#mainContents table.hyo {
	background-color: #0B0B38;
	font-size: 1.4em;
	line-height: 1.4em;
	border-top: solid 1px #8C8873;
	border-left: solid 1px #8C8873;
}
#mainContents table.hyo th,
#mainContents table.hyo td {
	padding: 8px;
	border-bottom: solid 1px #8C8873;
	border-right: solid 1px #8C8873;
	vertical-align: top;
}
#mainContents table.hyo th {
	background-color: #45455D;
	color: #FFF;
}
#mainContents table.hyo caption {
	font-size: 1.16em;
	font-weight: bold;
	text-align: left;
	padding: 5px 0 5px 0;
}

#mainContents table th p,
#mainContents table td p {
	font-size: 1em !important;
	margin: 0 !important;
	padding:0 !important;
}
#mainContents table th ul,
#mainContents table td ul {
	font-size: 1em !important;
	margin: 0 !important;
}
#mainContents table th ol,
#mainContents table td ol {
	font-size: 1em !important;
	margin: 0 !important;
}
#mainContents table th small,
#mainContents table td small {
	display: block;
	font-size: 76.5%;
	font-weight: normal;
	padding: 5px 0;
}
#mainContents table h2,
#mainContents table h3,
#mainContents table h4,
#mainContents table h5,
#mainContents table h6 {
	font-size: 1em !important;
	margin-left: 0 !important;
}

#mainContents table .hyoItemSub {
	background-color: #333 !important;
	color: #DDD !important;
}
#mainContents table .hyoItemNumlic {
	text-align: right;
}
#mainContents table .hyoItemLetter {
	text-align: center;
	vertical-align: middle !important;
	font-size: 1.6em;
	font-family: Meiryo, 'MS PGothic', sans-serif;
}

/* mainContents - document type
------------------------------------------------------------------- */

#mainContents .docType {
	background-color: #EEE;
	font-size: 0.86em;
	border: solid 1px #888;
	padding: 15px 15px 90px 15px;
}

/*
 headline 
*/
#mainContents .docType h1 {
	clear: both;
	font-size: 2em;
	padding:0 0 0 18px;
	margin: 0;
}
#mainContents .docType h2 {
	background-image: none;
	color: #444;
	padding: 18px 0;
	text-align: center;
}
#mainContents .docType h3 {
	clear: both;
	color: #444;
	background-image: url(../img/bg_h3_doc.gif);
	background-position: left bottom;
	background-repeat: no-repeat;
	font-size: 1.6em;
	line-height: 1.8;
	letter-spacing: 0.1em;
	margin: 0 18px 0.5em;
}
#mainContents .docType h4 {
	color: #444;
	background-image: none;
	font-size: 1.6em;
	line-height: 1.6;
	padding: 0;
	margin: 0 18px 0.5em;
}
#mainContents .docType h5,
#mainContents .docType h6,
#mainContents .docType p,
#mainContents .docType li {
	color: #444;
}


/*
 list
*/
#mainContents .docType ul {
	font-size: 1.4em;
}
#mainContents .docType ul li {
	list-style-image: none;
	list-style-type: none;
	line-height: 1.6;
	background-image: url(../img/bg_li.jpg);
	background-position: left top;
	background-repeat: no-repeat;
	padding: 0 0 0 14px;
	margin: 0 0 0.3em 0;
}
#mainContents .docType ul li ul li{
	padding: 0 0 0 20px;
	margin: 0 0 0.3em 0;
}
#mainContents .docType ol {
	font-size: 1.4em;
	margin-left: 18px;
	padding: 0;
}
#mainContents ol li {
	list-style-position: outside;
	line-height: 1.6;
	margin: 0 0 0.3em 36px;
	padding:2px 0 2px 0;
}
#mainContents .docType ol li ol li {
	margin: 0 0 0.6em 18px;
}
#mainContents .docType li ul,
#mainContents .docType li ol {
	font-size: 100%;
	padding:2px 0 0 0;
	margin: 5px 0 0 0;
}
#mainContents .docType dl {
	font-size: 1.2em;
	line-height: 1.6;
}

/* functionNavi
------------------------------------------------------------------- */
#mainContents #functionNavi {
	font-size: 0;
	line-height: 0;
	padding:0 0 62px;
	margin: 0 0 0 484px;
}
#mainContents #functionNavi li {
	float: left;
	background-image: none;
	list-style-image: none;
	list-style-type: none;
	list-style-position: outside;
	padding:0;
	margin: 0;
}
#mainContents #functionNavi li img {
	vertical-align: bottom;
}


/* reccomendNavi
------------------------------------------------------------------- */
#mainContents .recNavi {
	border: dotted #999 1px;
	padding: 12px 0 0 0;
	font-size: 0.875em;
}
#mainContents .recNavi ul {
	
}
#mainContents .recNavi ul li {
	float: left;
	padding: 0 18px 1em 14px;
	background-image: url(../img/bg_recnavi_li.jpg);
	background-position: left top;
}

/* bookingNavi
------------------------------------------------------------------- */
#mainContents .bookingNavi {
	text-align: center;
	background-image: url(../img/bg_h3.gif);
	background-repeat: repeat-x;
	background-position: left top;
	padding: 18px;
}

/* pageInnerNavi
------------------------------------------------------------------- */
#mainContents .pageInnerNavi {
	border: dotted #CCC 1px;
	padding: 12px 0 0 0;
	font-size: 0.875em;
}
#mainContents .pageInnerNavi ul {
	
}
#mainContents .pageInnerNavi ul li {
	float: left;
	padding: 0 20px 1em 50px !important;
}

/* pageNavi
------------------------------------------------------------------- */
#mainContents #pageNavi {
	padding: 0 0 10px 18px;
}
#mainContents #pageNavi ul {
	padding:0;
	margin: 0;
}
#mainContents #pageNavi ul li {
	float: left;
	font-size: 0;
	line-height: 0;
	padding:0;
	margin: 0;
	background-image: none;
}
#mainContents #pageNavi ul li img {
	vertical-align: bottom;
}
#mainContents .submenu-kunren-course {
	position: relative;
}
#mainContents .submenu-kunren-course img {
	position:absolute;
	left: 120px;
	top: -11px;	
	z-index: 100;
}

/* sideMenu
------------------------------------------------------------------- */
#sideMenu {
	float: left;
	text-align: right;
	margin: 0 0 2.5em 0;
}
#sideMenu ul {
	font-size: 1.4em;
	margin: 0;
	padding:0;
}
#sideMenu ul li {
	margin: 0 0 0.5em 0;
	padding:0;
	list-style-type: none;
	list-style-position: outside;
}
#sideMenu li ul {
	font-size: 100%;
	margin: 0.5em 0 0 10px;
	padding:0;
}
#sideMenu ul a {
	display: block;
}
#sideMenu ul a:hover {
	background-color: #FC0;
}
#sideMenu img {
	vertical-align: bottom;
	padding: 0 0 0 5px;
}

/* footer
------------------------------------------------------------------- */
#mainContents #footerNavi {
	clear: both;
	width: 755px;
	border-top: dotted 1px #CCC;
	padding: 18px 0 1px;
	margin: auto;
}
#mainContents #footerNavi p {
	font-size: 1em;
	>font-size: 10px;
	text-align: center;
}
#mainContents #footerNavi a {
	text-decoration: none;
}
#mainContents #footerNavi a:hover {
	text-decoration: underline;
}

#footer {
	text-align: center;
	background-image: url(../img/bg_footer.jpg);
	background-repeat: repeat-x;
	background-position: center bottom;
}
#footerInner {
	margin: auto;
}

/* background tune
-------------------------------------------------------------------- */

/* chrome safari */
@media screen and (-webkit-min-device-pixel-ratio:0) {
	#baseFrame {
		border-left: solid 1px #CCC;
	}
}
/* IE7でpadding指定 */
*:first-child+html body {
padding-left: 1px;
}
*:first-child+html body #footerNavi {
font-size: 0.675em;
}

/* IE6以下でpadding指定 */
*html body {
padding-left: 1px;
}
*html body #footerNavi {
font-size: 0.675em;
}
