@charset "utf-8";
/*-----------------------------------------------*
	content.css
 *-----------------------------------------------*/

body
{
	color: #6f6f6f;
	margin: 0;
	padding: 0;
	line-height: 1.6;
	min-width: 1200px;
}

h1, h2, h3
{
	margin: 0;
	padding: 0;
}

ul, li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

img
{
	border: none;
	margin: 0;
	padding: 0;
}

a
{
	color: #6f6f6f;
}

hr, .hidden
{
	display: none;
}

.clearfix:after
{
	content: "";
	clear: both;
	display: block;
}


#organization_name
{
	font-size: medium;
	position: absolute;
}

#organization_name_en
{
	font-size: small;
	position: absolute;
	line-height: 1.1;
}

#main_logo
{
	display: block;
	margin-top: 2em;
}


/* コンテンツ共通クラス */
.transparent:hover
{
	opacity: .5;
}

.outer_container
{
	margin-top: 20px;
	background:
		linear-gradient(to bottom, #FFF 0, rgba(255,255,255,0) 250px),
		url(../_img/background/content_top_bg.png) left top no-repeat,
		url(../_img/background/content_bottom_bg.png) left bottom no-repeat,
		url(../_img/background/content_middle_bg.png) left bottom repeat-y;
}

.container
{
	border-bottom: 2px #ea8000 solid;
	margin: 0 100px;
	padding-bottom: 50px;
	position: relative;
	background: linear-gradient(to right, rgba(214,209,201,0.25) 0%, rgba(255,255,255,0) 10%, rgba(255,255,255,0) 90%, rgba(214,209,201,0.25) 100%);
}

.column
{
	border-bottom: 0px;
}

#column_left
{
	float: left;
	width: 260px;
}

#column_center
{
	display: block;
	margin: 0 275px 0 275px;
}

#column_right
{
	float: right;
	width: 260px;
}

/* メールマガジン */
#magazine
{
	margin: 20px 0 0 0;
}

#magazine a
{
	position: relative;
	display: block;
	padding: 20px 20px;
	background-color: rgba(174,173,212,1.0);
}
#magazine a:hover
{
	background-color: rgba(174,173,212,0.5);
}

#magazine .link_arrow
{
	position: absolute;
	top: 20px;
	right: 10px;
}

#magazine .link_image
{
	margin: 10px auto 0;
	display: block;
}


#column_left .mail_magazine_image_wrap {
	padding: 20px 5px;
	width: 100%;
}

#column_left .mail_magazine_img_centering
{
	margin: 0 auto 5px auto;
}

#column_left .contents_title {
	display: block;
	float:left;
}

#column_left .contents_arrow {
	display: block;
	float:right;
}


/* リンクボタン */
#column_center .link_frame
{
	margin: 10px 10px 0 0;
}

#column_center .link_frame a
{
	position: relative;
	display: block;
	padding: 20px 30px;
}

#column_center .link_arrow
{
	position: absolute;
	top: 20px;
	right: 20px;
}

#column_center .link_image
{
	margin-top: 10px;
	display: block;
}

#lecture
{
	float:left;
	background-color: rgba(149,187,223,1.0);
}

#lecture:hover
{
	background-color: rgba(149,187,223,0.5);
}

#photolib
{
	float:left;
	background-color: rgba(208,197,179,1.0);
}

#photolib:hover
{
	background-color: rgba(208,197,179,0.5);
}


/* バナー */
#column_right #box_links
{
	border-left: solid 1px rgba(214,209,201,0.25);
}
#column_right #box_links ul
{
	width: 250px;
	margin: 0 auto;
	padding: 20px 0;
}
#column_right #box_links a
{
	text-decoration: none;
}
#column_right #box_links li
{
	list-style-type: none;
	margin-bottom: 10px;
}
#column_right #box_links li img
{
	vertical-align: bottom;
}
#column_right #box_links li img:hover
{
	opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
}



/* 中ページ用（ニ段組み用） */
#main_column
{
	display: block;
	margin: 0 0 0 280px;
	padding: 0px 30px;
}

#headline
{
	background: url(../_img/common/headline_icon.png) no-repeat 20px center #BB7;
	color: #fff;
	font-size: 120%;
	padding: 8px 20px 8px 60px;
	margin: 0 0 30px 280px;
	line-height: 1.2;
}

.page_top
{
	position: fixed;
	bottom: 0;
	right: 0;
	padding: 5px 8px;
	color: #FFF;
	background: #8A5;
	font-size: 0.5em;
	z-index: 100;
	opacity: 0.6;
	text-decoration: none;
}

.page_top:hover
{
	opacity: 1.0;
}

.page_top:after
{
	display: inline-block;
	margin: 0 0 0 8px;
	content: "";
	border-top: solid 3px #FFF;
	border-left: solid 3px #FFF;
	width: 5px;
	height: 5px;
	transform: rotate(45deg);
}



/* ----------------------------------
 * 	デフォルトスタイル定義
 * ---------------------------------- */
main h3
{
	margin: 30px 0 20px;
	padding: 8px 20px;
	color: #7C7354;
	background: url(../_img/background/headline_bg.png) repeat-x left bottom #EED;
	border-top: solid 5px #CB9;
	font-size: medium;
}

main h4
{
	margin: 30px 0 20px;
	padding: 5px 20px;
	color: #7C7354;
	background: url(../_img/background/headline_bg.png) repeat-x left bottom #EED;
	border-top: solid 5px #CD9;
	font-size: medium;
}

main h5
{
	margin: 30px 0 20px;
	padding: 2px 20px;
	color: #7C7354;
	background: url(../_img/background/headline_bg.png) repeat-x left bottom #EED;
	border-top: solid 5px #E0E5FF;
	font-size: medium;
}

main h6
{
	margin: 30px 0 20px;
	padding: 0px 20px;
	color: #7C7354;
	background: url(../_img/background/headline_bg.png) repeat-x left bottom #EED;
	border-top: solid 5px #FFE5E5;
	font-size: medium;
}

main p
{
	text-indent: 1em;
	margin: 0 0 1em 20px;
}

main table
{
	margin: 10px 0;
	border: solid 20px #EED;
	border-collapse: collapse;
	line-height: 1.2;
}

main caption
{
	padding: 3px;
	font-weight: bold;
	background: #DDC;
}

main th
, main td
{
	padding: 7px 15px;
	border: solid 1px #EED;
}

main th
{
	color: #FFF;
	background: #B6D16D;
}

main td
{
	background: #FFF;
}

main ul
{
	margin: 0 0 0 50px;
	line-height: 1.4;
	padding: 0;
}

main ul li
{
	position: relative;
	margin: 10px 0;
}

main ul li:before
{
	content: url(../_img/common/breadcrumb_arrow.png);
	display: block;
	position: absolute;
	top: 0;
	left: -20px;
	padding: 0 5px 0 0;
}

main ol
{
	margin: 0 0 0 60px;
	line-height: 1.4;
	padding: 0;
}

main ol li
{
	position: relative;
	margin: 10px 0;
	counter-increment: number;
}

main ol li:before
{
	content: counter(number);
	display: block;
	position: absolute;
	top: 0;
	left: -2em;
	color: #7C7354;
	line-height: 1;
	min-width: 1em;
	min-height: 1em;
	text-align: center;
	font-weight: bold;
	z-index: 3;
	border: solid 1px #EEC;
}

main ol li:after
{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: -2em;
	z-index: 2;
	min-width: 1em;
	min-height: 1em;
	border: solid 1px #DDB;
	transform: rotate(45deg);
}

main dl
{
	margin: 0 0 0 20px;
	line-height: 1.4;
}

main dt
{
	margin: 20px 0 0;
	padding: 2px 0 2px 20px;
	border-top: solid 3px #BD6;
	border-bottom: solid 1px #BD6;
	color: #7C7354;
	background: #FEFFFA;
	font-weight: bold;
}

main dd
{
	margin: 5px 40px 5px 40px;
}

main a
{
	color: #585;
}

main a:hover
{
	color: #E85;
}

.nowrap
{
	white-space: nowrap;
}

.pdf
{
	position: relative;
}
.pdf:after
{
	content: "PDF [" attr(data-size) "]";
	display: inline-block;
	position: relative;
	top: 0;
	left: 0;
	padding: 2px 5px;
	margin: 0 0 0 5px;
	color: #FFF;
	white-space: nowrap;
	background: linear-gradient(0deg, #ECC, #CAA);
	border: solid 1px #A88;
	font-weight: bold;
	font-size: small;
	line-height: 1;
}
.pdf:hover:after
{
	background: #D88;
}

/* ----------------------------------
 * 	デフォルトスタイルリセット
 * ---------------------------------- */
main *.reset
,main *.reset li
,main *.reset li:before
,main *.reset li:after
,main *.reset dt
,main *.reset dd
{
	content: none;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	width: auto;
	height: auto;
	min-width: auto;
	min-height: auto;
}
