/* トピックパス */
p.clsTopicPath {
	font-size:x-small;
	line-height:125%;
	border-bottom:1px solid #efefef;
	margin:0;
	padding:8px;
}

/* サブメニュー */
.clsSubMenu ul.clsMenu {
	margin:1em 0;
}

/* ページアップ */
p.clsPageUp {
	font-size:x-small;
	line-height:125%;
	border-top:1px solid #ccc;
	padding-top:2px;
}

/* 表 */
table.clsTable {
	width:100%;
	margin:16px 0;
}

table.clsTable caption {
	font-size:x-small;
	line-height:125%;
	border-top:1px solid #efefef;
	padding:8px 2px;
	text-align:right;
}

table.clsTable th {
	text-align:left;
}

table.clsTable td {
	text-align:left;
}

table.clsTable th.clsPrice, table.clsTable td.clsPrice {
	width:120px;
	text-align:right;
}

table.clsTable small.clsNotes {
	display:block;
	font-size:x-small;
	line-height:150%;
	margin-top:4px;
}

table.clsTable th .clsText, table.clsTable td .clsText, table.clsData th .clsText, table.clsData td .clsText {
	border-top:1px solid #efefef;
	padding:8px 2px;
}

table.clsTable th.clsItem .clsText, table.clsTable td.clsItem .clsText, table.clsData th .clsText {
	margin-right:8px;
}

/* 表：データ */
table.clsData {
	width:100%;
	margin:16px 0;
}

table.clsData caption {
	display:none;
}

table.clsData th, table.clsData td {
	text-align:left;
	vertical-align:top;
}

table.clsData th.clsItem {
	font-weight:normal;
	width:120px;
}

/* フォーム */
form input.clsInput, form textarea.clsInput, form textarea.clsInputSub {
	width:100%;
}

form input.clsInput4 {
	width:48px;
}

form input.clsButton {
	padding:2px 32px;
}

form p.clsButton {
	border-top:1px solid #ccc;
	padding:0 2px;
	padding-top:16px;
}

/* コンテンツ */
#idsContents {
	float:none;
	width:auto;
	padding:16px 0;
}

.clsContent {
	padding:0 96px;
	height:auto !important;
	height:1px;
	overflow:visible;
}

.clsContent h2, .clsContent h3, .clsContent h4, .clsContent p, .clsContent ul, .clsContent ol, .clsContent dl {
	margin-top:1em;
	margin-bottom:1em;
}

.clsContent .clsParagraph, .clsContent .clsParagraphTitle, .clsContent .clsParagraphBlock {
	padding:0 2px;
}

.clsContent .clsParagraph, .clsContent .clsParagraphBlock {
	border-bottom:1px solid #efefef;
	margin-bottom:64px;
	height:auto !important;
	height:1px;
	overflow:visible;
}

.clsContent .clsParagraphBlock {
	padding:0;
}

.clsContent h2 {
	color:#b28e5e;
	font-size:small;
	line-height:125%;
	border-bottom:1px solid #b28e5e;
	margin:16px 0;
	margin-bottom:24px;
	padding:8px 2px;
}

.clsContent h3 {
	font-size:small;
	line-height:125%;
}

.clsContent h3, .clsContent h4  {
	color:#b28e5e;
}

p.clsMessage {
	color:#ff0066;
}

/* コンテンツワイド */
#idsContentsWide #idsContents {
	padding:0;
}

/* ブロック */
.clsBlockList {
	margin-top:24px;
}

.clsBlock .clsHalfL {
	float:left;
	width:274px;
}

.clsBlock .clsHalfR {
	float:right;
	width:274px;
}

.clsBlock .clsTitle h3, .clsBlock .clsTitle h4 {
	font-size:small;
	line-height:150%;
}

.clsBlock .clsTitle {
	float:left;
	width:118px;
	border-top:1px solid #efefef;
}

.clsBlock .clsBody {
	float:right;
	width:436px;
	border-top:1px solid #efefef;
}

.clsBlock .clsHalfL .clsBody, .clsBlock .clsHalfR .clsBody {
	width:148px;
}

.clsBlock h3, .clsBlock h4, .clsBlock p, .clsBlock ul, .clsBlock ol, .clsBlock dl {
	padding:0 2px;
}

.clsBlock .clsNumeric {
	text-align:right;
}

.clsBlock p.clsStrong {
	font-weight:bold;
	font-size:small;
	line-height:125%;
	color:#b28e5e;
}

/* ステップ */
.clsStep {
	clear:left;
	border-top:1px solid #efefef;
}

.clsStep h3, .clsStep h4, .clsStep p, .clsStep ul, .clsStep ol, .clsStep dl {
	padding:0 2px;
}

.clsStep p {
	font-size:small;
	line-height:175%;
}

.clsStep p.clsNotes {
	font-size:x-small;
	line-height:175%;
}

.clsStep h3 {
	margin:0;
	height:auto !important;
	height:1px;
	overflow:visible;
}

.clsStep div.clsHeading {
	padding:1em 0;
}

.clsStep h3 .clsLeft {
	display:block;
	float:left;
	width:118px;
}

.clsStep h3 .clsRight {
	display:block;
	float:right;
	width:436px;
}

/* 注意書き */
.clsNotes ul.clsList li {
	font-size:small;
	line-height:150%;
	margin-bottom:8px;
}

/* 画像 */
p.clsPhoto, p.clsPhotoL, p.clsPhotoR {
	background-color:#efefef;
	padding:0;
}

p.clsPhotoL, p.clsPhotoR {
	width:188px;
	margin-top:0;
	margin-bottom:16px;
}

p.clsPhotoL {
	float:left;
	margin-left:2px;
	margin-right:16px;
}

p.clsPhotoR {
	float:right;
	margin-left:16px;
	margin-right:2px;
}

p.clsPhoto {
	margin-left:2px;
	margin-right:2px;
	height:auto !important;
	height:1px;
	overflow:visible;
}

p.clsPhoto img, p.clsPhotoL img, p.clsPhotoR img {
	margin:4px;
}

p.clsPhoto img.clsLeft {
	float:left;
	margin-right:0;
}

p.clsPhoto img.clsRight {
	float:right;
	margin-left:0;
}

/* クィーン */
div.clsQueenList {
	text-align:center;
}

table.clsQueenList {
	width:100%;
	margin:0 auto;
}

div.clsQueenList h3 {
	letter-spacing:-1px;
}

div.clsQueenList h3 .clsTitle .clsIconL {
	margin-right:3px;
}

a.clsQueen {
	display:block;
	background-color:#ccc;
	width:135px;
	margin-left:4px;
	margin-bottom:24px;
	text-decoration:none;
}

a.clsQueen .clsBody {
	display:block;
	background-color:#fff;
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	margin:0 1px;
}

.clsQueenList .cls1st .clsQueen {
	margin-left:0;
}

.clsQueenList h3 {
	margin:0;
}

a.clsQueen span.clsThumb {
	display:block;
}

a.clsQueen span.clsTitle {
	display:block;
	font-size:small;
	line-height:125%;
	padding:0 6px;
	white-space:nowrap;
	border-top:1px solid #efefef;
	padding-top:6px;
}

a.clsQueen span.clsTitle span.clsAge {
	font-weight:normal;
	font-size:x-small;
	line-height:125%;
	color:#333;
	padding-left:6px;
}

a.clsQueen span.clsExcerpts {
	display:block;
	color:#333;
	font-weight:normal;
	font-size:small;
	line-height:125%;
	padding:4px 6px;
}

/* クィーンランク */
span.clsRank span.clsThumb
, span.clsRankrecommend span.clsThumb
, span.clsRanknewface span.clsThumb
, span.clsRankbreakthrough span.clsThumb
, span.clsRankmaster span.clsThumb
{
	border-bottom:4px solid;
}

body.clsRankrecommend p.clsTitleL
, body.clsRanknewface p.clsTitleL
, body.clsRankbreakthrough p.clsTitleL
, body.clsRankmaster p.clsTitleL
{
	border-top:4px solid;
	padding-top:8px;
	border-bottom:1px solid #b28e5e !important;
}

span.clsRank span.clsThumb
{
	border-color:#fff;
}

span.clsRankrecommend span.clsThumb
, body.clsRankrecommend p.clsTitleL
{
	border-color:#D6AD33;
}

span.clsRanknewface span.clsThumb
, body.clsRanknewface p.clsTitleL
{
	border-color:#ADD633;
}

span.clsRankbreakthrough span.clsThumb
, body.clsRankbreakthrough p.clsTitleL
{
	border-color:#FF66A3;
}

span.clsRankmaster span.clsThumb
, body.clsRankmaster p.clsTitleL
{
	border-color:#9D9D9D;
}

p.clsQueensRank {
	font-size:x-small;
	line-height:125%;
	padding:0 2px;
}

/* サイトマップ */
.clsSiteMap h3 {
	border-top:1px solid #ccc;
	margin-top:8px;
	padding-top:1em;
}

.clsSiteMap h4 {
	float:left;
	font-weight:normal;
	margin-top:0;
	margin-left:12px;
	white-space:nowrap;
}

/* プレイ */
.clsPlay p {
	font-size:small;
	line-height:175%;
}

.clsPlay p.clsPhotoNFL {
	float:left;
	margin-top:0;
	margin-right:8px;
}

/* キャッシュカード */
.clsCachCard {
	border:1px solid #efefef;
	margin:16px 0;
	padding:8px;
}

.clsCachCard p {
	margin:0;
}

/* 料金表 */
table.clsPriceTable {
	margin:1em 0;
}

table.clsPriceTable th {
	border-bottom:1px solid #ccc;
	padding:8px 2px;
	text-align:left;
}

table.clsPriceTable td {
	border-bottom:1px solid #efefef;
	padding:8px 2px;
}

table.clsPriceTable td.clsPrice {
	width:160px;
}
