@charset "utf-8";

/* =================================================== */
/*                                                     */
/* IPSJ/ITSCJ トップページ読込CSS(component.css)       */
/* 各パーツ部品（モジュール）の定義                    */
/*                                                     */
/* -- 変更履歴 --------------------------------------- */
/* 2013/08/15 新規作成                                 */
/*                                                     */
/* =================================================== */




/* --- クリアフィックス定義 --- */
.clearfix,
#contents ul.horizontal-list,
div.zoomsight,
ul.pager
 {
	/zoom: 1;
}

.clearfix:after,
#contents ul.horizontal-list:after,
div.zoomsight:after,
ul.pager:after
 {
	content: ""; 
	display: block; 
	clear: both;
}





/* --- 汎用要素定義 --- */
/* リンク定義 */
a:link {
	color: #006CD8;
	text-decoration: underline;
}
a:visited {
	color: #006CD8;
}
a:hover {
	color: #006CD8;
	text-decoration: none;
}
a:active {
	color: #006CD8;
	text-decoration: none;
}

/* 汎用クラス定義 */
.f-left {
	float: left;
}

.f-right {
	float: right;
}

.f-clear {
	clear: both;
}

.t-left {
	text-align: left;
}

.t-right {
	text-align: right;
}

.t-center {
	text-align: center;
}

.v-top {
	vertical-align: top;
}

.v-bottom {
	vertical-align: bottom;
}

.v-middle {
	vertical-align: middle;
}

.nowrap {
	white-space: nowrap;
}


/* ボタン定義 */
input[type=button],
input[type=submit],
input[type=reset] {
	color: #282828;
	font-size: 100%;
	font-family: "メイリオ", "ＭＳ ゴシック", monospace;
	cursor: pointer;
	white-space: nowrap;
}

/* テキスト入力ボックス（通常） */
input[type=text].input_text {
	height: auto;
	padding: 1px 2px 1px 2px;
	border: solid 1px #ABADB3;
	font-size: 100%;
	font-family: "メイリオ", "ＭＳ ゴシック", monospace;
	vertical-align: middle;
}

/* テキストエリア */
textarea {
	padding: 3px 2px 3px 2px;
	border: solid 1px #ABADB3;
	font-size: 100%;
	font-family: "メイリオ", "ＭＳ ゴシック", monospace;
	vertical-align: middle;
}

/* ラベル */
label {
	display: inline-block;
	min-height: 22px;
	line-height: 22px;
	margin: 0 4px 0 2px;
	cursor: pointer;
}

span.label {
	display: inline-block;
	height: 22px;
	line-height: 22px;
	margin: 0 16px 0 2px;
}

/* チェックボックス */
input[type=checkbox] {
	margin-right: 3px !important;
	vertical-align: middle;
	cursor: pointer;
}

/* ラジオボタン */
input[type=radio] {
	margin-right: 3px !important;
	vertical-align: middle;
	cursor: pointer;
}


/* セレクトボックス */
select {
	height: 22px;
	line-height: 90%;
	padding: 0;
	border: solid 1px #ABADB3;
	font-size: 100%;
	font-family: "Meiryo UI", "ＭＳ ゴシック", monospace;
	cursor: pointer;
}
select:focus {
	border: solid 1px #688CD7;
}

/* ボタンやテキストボックス等に対するオプション */
span.option {
	margin: 0 5px 0 5px;
}


/* アクセス制限アイコン表示 */
span.lock {
	display: inline-block;
	width: 18px;
	height: 18px;
	background: transparent url('../images/common_icon_lock.png') no-repeat center center;
}


/* 強調 */
strong {
	font-weight: bold;
}


/* セクション */
div.section {
	margin: 10px 0 0 0;
	padding: 10px 10px 10px 10px;
	background: #E3E3E3;
	border: solid 1px #E3E3E3;
	border-radius: 5px;
}


/* リスト */
ul {
	margin: 10px 0;
	padding: 0;
	list-style: none;
}

ul>li {
	margin: 0 0 10px 0;
	padding: 0 0 0 18px;
	background: transparent url('../images/common_ul_icon_list.png') no-repeat 0 0.2em;
}


/* リンク */
p.internal,
li.internal
 {
	padding-left: 18px;
	text-indent: 0;
	background: transparent url('../images/common_icon_black_internal.png') no-repeat 0 0.15em;
}

p.external,
li.external
 {
	padding-left: 18px;
	text-indent: 0;
	background: transparent url('../images/common_icon_black_external.png') no-repeat 0 0.2em;
}

p.file,
li.file
 {
	padding-left: 18px;
	text-indent: 0;
	background: transparent url('../images/common_icon_file.png') no-repeat 0 0.2em;
}

p.list,
li.list
 {
	background: none;
	text-align: right;
	text-indent: 0;
}
p.list>a,
li.list>a
 {
	padding: 0 0 0 18px;
	text-indent: 0;
	background: transparent url('../images/common_icon_black_internal.png') no-repeat 0 0.2em;
}

p.inner,
li.inner
 {
	padding-left: 18px;
	text-indent: 0;
	background: transparent url('../images/common_icon_page-internal.png') no-repeat 0 0.2em;
}

/* 文章 */
p {
	margin: 16px 0;
	line-height: 150%;
	text-indent: 0;
}

/* 画像中央寄せ */
p img.mt-image-center {
	display: block;
	text-align: center;
	margin: 10px auto;
	vertical-align: middle;
}

/* 画像左寄せ */
p img.mt-image-left {
	float: left;
	margin: 0 10px 10px 0;
	vertical-align: top;
}

/* 画像右寄せ */
p img.mt-image-right {
	float: right;
	margin: 0 0 10px 10px;
	vertical-align: top;
}




/* --- コンテンツ要素定義 --- */
/* パンくずナビ */
#contents ul.breadcrumb {
	margin: 0 0 10px 0;
}

#contents ul.breadcrumb li {
	float: left;
	margin-right: 2px;
	margin-bottom: 1px;
	padding: 2px 20px 2px 3px;
	font-size: 85.7143%;
	background: #FFFFFF url('../images/common_breadcrumb_icon_arrow.png') no-repeat 100% 3px;
}

#contents ul.breadcrumb li.head {
	margin-right: 8px;
	padding: 1px 4px 0px 4px;
	border: solid 1px #777777;
	background-image: none;
	color: #555555;
}

#contents ul.breadcrumb li.last {
	background-image: none;
}

/* 大見出し */
/* カテゴリインデックス */
div.category_index #contents div.pagetitle {
	margin: 0 0 10px 0;
	line-height: 1em;
	border: solid 1px #AFAFAF;
	background: #F4F4F4 url('../images/common_h1_bg.png') repeat-x left top;
}

div.category_index #contents div.pagetitle h1.heading_1 {
	margin: 0;
	padding: 0;
	line-height: 1.1em;
	border: solid 2px #FFFFFF;
	background: transparent url('../images/common_h1_icon_categorytitle_left.png') no-repeat 0% -0px;
	font-size: 142.857%;
	font-weight: bold;
}

div.category_index #contents div.pagetitle h1.heading_1 span {
	display: block;
	padding: 26px 80px 26px 42px;
	background: transparent url('../images/common_h1_icon_categorytitle_right.png') no-repeat 100% -0px;
}

/* カテゴリ毎の設定 */
div.category_index #contents div.pagetitle h1.soshiki {
	background-position: 0% -0px;
}
div.category_index #contents div.pagetitle h1.soshiki span {
	background-position: 100% -0px;
}
div.category_index #contents div.pagetitle h1.hyojunka {
	background-position: 0% -148px;
}
div.category_index #contents div.pagetitle h1.hyojunka span {
	background-position: 100% -148px;
}
div.category_index #contents div.pagetitle h1.katsudo {
	background-position: 0% -296px;
}
div.category_index #contents div.pagetitle h1.katsudo span {
	background-position: 100% -296px;
}
div.category_index #contents div.pagetitle h1.hasshin_joho {
	background-position: 0% -444px;
}
div.category_index #contents div.pagetitle h1.hasshin_joho span {
	background-position: 100% -444px;
}

body.english #contents div.pagetitle {
	margin-top: 14px;
}



/* 次階層インデックス */
div.detail_page #contents h1.heading_1 {
	margin: 0 0 10px 0;
	border: solid 1px #AFAFAF;
	background: #F4F4F4 url('../images/common_h1_bg.png') repeat-x left top;
	font-size: 128.571%;
	font-weight: bold;
}

div.detail_page #contents h1.heading_1 span {
	display: block;
	padding: 12px 20px 8px 28px;
	border: solid 2px #FFFFFF;
	background: transparent url('../images/common_h1_icon_pagetitle.png') no-repeat 12px 50%;
}

/* 中見出し */
#contents h2 {
	margin: 30px 0 10px 0;
	padding: 4px 0 0 24px;
	border-top: solid 2px #263753;
	background: transparent url('../images/common_h2_icon.png') no-repeat 0 0.5em;
	font-size: 114.286%;
	font-weight: bold;
}

/* 小見出し */
#contents h3 {
	margin: 20px 0 10px 0;
	padding: 0 0 0 18px;
	background: transparent url('../images/common_h3_icon.png') no-repeat 0 50%;
	font-weight: bold;
}

#contents h4,
#contents h5,
#contents h6
 {
	margin: 20px 0 10px 0;
	padding: 0;
	font-weight: bold;
}


/* テーブル */
#contents table {
	width: 100%;
	margin: 20px 0;
	border: none;
}

#contents table caption {
	margin: 0 0 6px 0;
	text-align: left;
	font-weight: bold;
}

#contents table th {
	text-align: left;
	padding: 8px 10px 8px 5px;
	border: solid 1px #999999;
	background: #EEEEE6;
	font-weight: bold;
	width: 150px;
}

#contents table td {
	text-align: left;
	padding: 8px 10px 8px 5px;
	border: solid 1px #999999;
}

#contents table td p {
	margin: 0;
	text-indent: 0;
	line-height: 100%;
}
#contents table td ul {
	margin: 0;
}

#contents table td ul li {
	margin: 0;
}


/* 囲い文章 */
#contents p.box {
	margin: 20px 0;
	padding: 12px 16px;
	border: solid 2px #CCCCCC;
	border-radius: 3px;
}


/* 定義テーブル */
#contents table.data_table {

}

#contents table.data_table th {
	padding-left: 16px;
	padding-right: 16px;
	border: none;
	border-left: solid 3px #CCCCCC;
	vertical-align: top;
}

#contents table.data_table td {
	padding-left: 16px;
	border: none;
	vertical-align: top;
}


/* 注記 */
#contents table.note {

}

#contents table.note th {
	width: 4em;
	padding-top: 0;
	padding-bottom: 0;
	padding-right: 0;
	border: none;
	background: transparent;
	vertical-align: top;
}

#contents table.note td {
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 0;
	border: none;
	vertical-align: top;
}

/* フィルタリングテーブル */
#contents #autoFilter td ul li {
	background: transparent url('../images/common_icon_file.png') no-repeat 0 0.2em !important;
}


/* コンテンツ内リスト */
#contents ul {
	margin: 20px 0;
}

#contents ul ul {
	margin: 10px 0 16px 0;
}


/* 通常リスト（並列） */
#contents ul.horizontal-list li {
	float: left;
	margin-right: 16px;
}


/* 通常リスト（括弧） */
#contents ul li.parenthesis {
	position: relative;
	padding-left: 3.3em;
	background: none;
}

#contents ul li.parenthesis span.head-number {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 3.3em;
	z-index: 10;
}




/* 通常リスト（ダウンロードリンク） */
#contents span.filesize {
	margin: 0 6px;
}



/* ページトップへ */
#contents p.pagetop {
	margin-bottom: 0;
	text-align: right;
	text-indent: 0;
}

#contents p.pagetop a {
	display: inline-block;
	padding: 0 0 0 18px;
	background: transparent url('../images/common_icon_pagetop.png') no-repeat 0 50%;
}


/* Adobe ダウンロード */
#contents div.adobe {
	background: #F3F3F3;
	border: 1px solid #999999;
	font-size: 90%;
	margin: 10px 0 0;
	padding: 10px;
}
#contents div.adobe p {
	text-indent: 0;
}
#contents div.adobe a {
	display: block;
	float: left;
}
#contents div.adobe img {
	margin: 0 12px 20px 0;
}
#contents div.adobe p {
	margin: 0;
}


/* 情報処理学会試行標準番号 */
#contents p.tsipsj {
	margin: 15px 0;
}

#contents p.tsipsj img {
	margin-right: 10px;
	vertical-align: middle;
}

/* 試行標準英文タイトル */
#contents table.tsipsj_eng_title {
	margin-top: 10px;
	border: none;
}

#contents table.tsipsj_eng_title th {
	width: 40px;
	padding: 1px 1px 0 1px;
	background: #23334A;
	border: none;
	color: #FFFFFF;
	text-align: center;
	vertical-align: middle;
	font-weight: normal;
}

#contents table.tsipsj_eng_title td {
	padding: 1px 1px 1px 8px;
	background: #FFFFFF;
	border: none;
}


/* お知らせ一覧 */
#contents table.info_list {
	
}

#contents table.info_list th {
	width: 100px;
	padding-top: 12px;
	padding-bottom: 10px;
	border: none;
	border-bottom: solid 1px #CCCCCC;
	background: none;
	font-weight: normal;
	font-size: 85.714%;
	vertical-align: top;
}

#contents table.info_list td {
	padding-top: 10px;
	padding-bottom: 10px;
	border: none;
	border-bottom: solid 1px #CCCCCC;
	vertical-align: top;
}


/* ログインボックス */
div#main #cl_module div.login {
	margin: 0 0 7px 0;
	border: solid 1px #B9B9B9;
	background: #FFFFFF;
}

div#main #cl_module div.login h2 {
	margin: 1px;
	padding: 0 10px 0 8px;
	border-top: none;
	border-bottom: solid 1px #B9B9B9;
	background: #D8D8C5 url('../images/top_login_title_bg.png') repeat-x left top;
	color: #333333;
	font-size: 114.28%;
	line-height: 1.5em;
}

div#main #cl_module div.login h2 span {
	display: inline-block;
	padding: 3px 0 1px 25px;
	background: transparent url('../images/top_contents_icon.png') no-repeat -0px -143px;
}

div#main #cl_module #hu_welcome h2 span {
	background-position: -0px -286px;
}

div#main #cl_module div.login p {
	margin: 16px 8px 16px 8px;
	font-size: 92.857%;
}

div#main #cl_module div.login p.login_message {
	
}

div#main #cl_module div.login p.login_button {
	margin: 0 0 15px 0;
	text-align: center;
}

div#main #cl_module div.login p.login_button a {
	display: inline-block;
	width: 152px;
	height: 32px;
	line-height: 32px;
	white-space: nowrap;
	background: transparent url('../images/top_button_login_bg.png') no-repeat center center;
	color: #FFFFFF;
	text-decoration: none;
}


/* 規格賛助員ボックス */
#cl_module div.sanjoin {
	margin: 7px 0;
	padding: 0 5px 5px 5px;
	border-top: solid 5px #FF6000;
	background: #FFFFFF;
}

#cl_module div.sanjoin p {
	margin: 7px 0;
	font-size: 85.714%;
}

#cl_module div.sanjoin ul {
	margin: 7px 0;
}

#cl_module div.sanjoin ul li {
	min-height: 20px;
	margin: 5px 0;
	padding: 0 0 0 28px;
}

#cl_module div.sanjoin ul li.one {
	background: transparent url('../images/common_icon_number_one.png') no-repeat left top;
}

#cl_module div.sanjoin ul li.two {
	background: transparent url('../images/common_icon_number_two.png') no-repeat left top;
}

#cl_module div.sanjoin ul li.three {
	background: transparent url('../images/common_icon_number_three.png') no-repeat left top;
}

#cl_module div.sanjoin ul li.four {
	background: transparent url('../images/common_icon_number_four.png') no-repeat left top;
}

#cl_module div.sanjoin p.internal {
	background-image: url('../images/common_icon_blue_internal.png');
	font-size: 78.948%;
}


/* ZoomSight */
#cl_module div.zoomsight {
	padding: 0px 5px 5px 5px;
}

#cl_module div.zoomsight p.zoomsight_img img {
	float: left;
	margin-right: 10px;
}

/* ログイン画面 */
#contents div.login_field {
	margin: 20px 0;
}

#contents div.login_field_set {
	width: 400px;
	margin: 0 auto;
	border: solid 1px #B9B9B9;
	background: #FFFFFF;
}

#contents div.login_field h1.logo {
	margin: 1px;
	padding: 0 10px 0 8px;
	border-top: none;
	border-bottom: solid 1px #B9B9B9;
	background: #D8D8C5 url('../images/top_login_title_bg.png') repeat-x left top;
	color: #333333;
	font-size: 114.28%;
	line-height: 1.5em;
}

#contents div.login_field h1.logo span {
	display: inline-block;
	padding: 3px 0 1px 25px;
	background: transparent url('../images/top_contents_icon.png') no-repeat -0px -143px;
}

#contents div.login_field p {
	width: 280px;
	margin: 16px auto;
}

#contents div.login_field p.login_message {
	
}

#contents div.login_field p.post_submit {
	text-align: center;
}

#contents div.login_field p.post_submit input[type=image] {
	display: inline-block;
	width: 152px;
	height: 32px;
}

#contents div.login_field p.login_link {
	text-align: center;
}

#contents div.login_field p a.internal {
	display: inline-block;
	padding-left: 18px;
	text-indent: 0;
	background: transparent url('../images/common_icon_black_internal.png') no-repeat 0 0.15em;
}


/* お問い合わせフォーム */
#contents div.contact-form {
	width: auto;
	border: none;
}

#contents div.contact-form div.contact-form-field,
#contents div.contact-form div.contact-form-submit {
	width: auto;
	border: none;
}

#contents div.contact-form div.contact-form-field.highlight {
	background: none;
}

#contents p.contact-form-information {
	font-weight: bold;
}


/* 検索結果 */
#contents .search dl.search_result {
	width: 100%;
}

#contents .search dl.search_result span.date {
	margin-left: 30px;
}

#contents .search dl.search_result dt strong {
	font-size: 120%;
}

#contents .search dl.search_result dd {
	margin: 0 0 20px 0;
	padding-bottom: 20px;
	border-bottom: dotted 1px #999;
}

/* ページ送り */
#contents ul.pager {
	text-align: center;
}

#contents ul.pager li {
	display: inline-block;
	background: none;
	padding: 0 5px;
}

@media print {
	input[type=button],
	input[type=submit],
	input[type=reset],
	input[type=text].input_text,
	textarea {
		font-family: "ＭＳ Ｐゴシック", monospace;
	}
	ul>li {
    padding-bottom: 1px;
		background-position:  0 0.1em;
	}
	p.internal,
	li.internal
	 {
		background-position:  0 0.1em;
	}

	p.external,
	li.external
	 {
		background-position:  0 0.1em;
	}

	p.file,
	li.file
	 {
		background-position:  0 0.1em;
	}

	p.list>a,
	li.list>a
	 {
		background-position:  0 0.1em;
	}

	p.inner,
	li.inner
	 {
		background-position:  0 0.1em;
	}
	#contents ul.breadcrumb li {
		background-position: 100% 0.1em;
	}

	#contents ul.breadcrumb li.head {
		padding: 2px 4px 2px 4px;
	}

}