* {
	margin: 0;
	padding: 0;
	line-height: 130%;
	font-family: 'Lucida Grande', 'segoe UI', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

html, body{
	margin: 0;
	padding: 0;
}

strong{
	font-weight: bold;
	color: #ff7755;
}

div#contents br{
	line-height: 130%;
}
p br,th br,td br{
	line-height: 130%;
}
p {
	margin-bottom: 10px; 
}
.centerize{
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

span.new, div.new{
	color: #ffff00;
	font-weight: bold;
	margin: 0px 5px;
}


body{
	/*width: 1024px;
	margin-left: auto;
	margin-right: auto;*/
	position: relative;
	background-image: url("images/bg.jpg");
	background-repeat: repeat;
	-moz-background-size: auto;
	background-size: auto;
}
@media(max-width:767px){
	body{
		padding-top: 50px;
	}
}

div#maincover{
	width: 1024px;
	margin-left: auto;
	margin-right: auto;
	background-color: #eeeeff;
	position: relative;
}
@media(max-width:1024px){
	div#maincover{
		width: 768px;
	}
}
@media(max-width:767px){
	div#maincover{
		width: 320px;
	}
}

div#leftcover{
	width: 240px;
	padding-left: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: #eeeeff;
	position:relative;
	float: left;
}
@media(min-width:1024px) and (min-height:590px){
	div#leftcover{
		/* position: fixed; */
		/* top: 0px;
		float: none; */
	}
}

@media(max-width:1024px){
	div#leftcover{
		position: static;
		width: auto;
		height: 105px;
		float: none;
	}
}
@media(max-width:767px){
	div#leftcover{
		position: fixed !important;
		top: 0;
		left: 0;
		z-index: 1030;
		width: 100%;
		height: 30px;
		float: none;
	}
}


div#title{
	color: #000000;
	display: block;
}
@media(max-width:1024px) and (min-width:767px){
	div#title{
		float: left;
		position:absolute;
		top:10px;
		left:10px;
	}
	div#title img{
		width: 180px;
	}
}
@media(max-width:767px){
	div#title{
		float: left;
	}
}

div#menu{
	color: #000000;
	font-weight: bold;
}
div#menu>div{
	position: relative;
}
@media(min-width:1024px){ /*PCから*/
	div#menu>div{
		font-size: 18px;
		margin: 20px 0px 20px 15px;
	}
}
@media(max-width:1024px) and (min-width:767px){ /*タブレットから*/
	div#menu{
		position:absolute;
		top:10px;
		left:200px;
		width:550px;
	}
	div#menu>div{
		display: inline-block;
		width: 183px;
		margin: 0 0 5px 0;
	}
	div#menu>div.rxm{
		width: 366px;
	}
}
div#menu a{
	color: #000000;
	text-decoration:none;
	width: 100%;
	height: 100%;
}
div#menu a:visited{
	color: #000000;
}
div#menu a:hover{
	color: #ff0000;
}
@media(max-width:767px){ /*モバイルから*/
	div#menu{
		display: none;
	}
}

div#snsbutton{
	color: #000000;
}
@media(max-width:1024px) and (min-width:767px){
	div#snsbutton{
		float: left;
		text-align: center;
		position:absolute;
		top:50px;
		left:10px;
		width:180px;
	}
}
@media(max-width:767px){
	div#snsbutton{
		float: right;
		text-align: right;
		padding-right: 15px;
	}
}

div#rightcover{
	margin-left: 250px;
	background-color: #000000;
	color: #ffffff;
}
@media(min-width:1024px){
	div#rightcover{
		min-height:500px;
	}
}
@media(max-width:1024px){
	div#rightcover{
		margin-left: 0px;
	}
}
@media(max-width:767px){
	div#rightcover{
		margin-left: 0px;
	}
}

div#navi{
	padding: 10px;
	background-color: #333333;
	color: #ffffff;
}
@media(max-width:767px){
	div#navi{
		padding: 7px 2px 2px 2px;
	}
}

div#contents{
	padding: 10px;
}
@media(max-width:767px){
	div#contents{
		padding: 10px 2px;
	}
}
p.clear,div.clear{
	clear: both;
}

div#footer{
	width: 1014px;
	margin: 0 auto;
	padding: 5px;
	clear: both;
	color: #ffffff;
}
@media(max-width:1024px){
	div#footer{
		width: 758px;
	}
}
@media(max-width:767px){
	div#footer{
		width: 310px;
	}
}

#pagetitle{
	text-align: center;
	font-size: x-large;
	line-height: 150%;
	color: #ffffff;
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 2px solid #cccccc;
}

h1,h2,h3,h4{
	text-align: center;
	line-height: 140%;
	margin: 10px 0px;
}
@media(max-width:767px){
	h1{
		font-size: x-large;
		line-height: 120%;
	}
	h2,h3{
		font-size: large;
		line-height: 120%;
	}
}
@media(min-width:767px){
	h1.small{
		font-size: large;
		line-height: 140%;
	}
	h2.small,h3.small{
		font-size: large;
		line-height: 140%;
	}
}

a img{
	border: none;
}

img.topimage{
	display: block;
	max-width: 700px;
	height: auto;
	width /****/:auto;  /*IE8のみ適用*/
	margin-left: auto;
	margin-right: auto;
}@media(max-width:767px){
	img.topimage{
		max-width: 300px;
	}
}
.innerfade_base{
	position: relative;
}
.innerfade_base > img, .innerfade_base > p > img{
	position: absolute;
	top: 0px;
}

/*リンクの設定*/
a:link { color: #ccccff;}	/*通常リンクは明るい青に*/
a:visited { color: #ffcccc;}	/*訪問済みリンクは明るい赤に*/
a:hover { color: #ff8888;}	/*マウスを置くとちょっと濃い赤に*/

@media(min-width:1024px){
	.phone_only, .tablet_only{
		display: none !important;
	}
}
@media(max-width:1024px) and (min-width:767px){
	.desktop_only{
		display: none !important;
	}
	.phone_only{
		display: none !important;
	}
}
@media(max-width:767px){
	.desktop_only, .tablet_only{
		display: none !important;
	}
	.desktop_tablet_only{
		display: none !important;
	}
/*	.phone_only{
		display: block;
	}
	swap.phone_only{
		display: inline;
	}*/
}

li{
	margin-left: 10px;
	margin-bottom: 5px;
	list-style-position: inside;
}
@media(max-width:767px){
	li{
		margin-bottom: 10px;
	}
}

#hierarchy_list { 
	width: 100%;
	height: 32px;
	list-style: none;
	overflow: hidden;
}
#hierarchy_list li { 
	margin: 0px;
	float: left;
}
#hierarchy_list li a {
	color: #ffffff;
	text-decoration: none; 
	padding: 6px 0 6px 50px;
	padding: 6px 30px 6px 30px\9;
	_padding: 6px 30px 6px 30px;
	*padding: 6px 30px 6px 30px;
	background: #333333; 
	position: relative; 
	display: block;
	float: left;
}
#hierarchy_list li a:after { 
	content: " "; 
	display: block; 
	width: 0; 
	height: 0;
	border-top: 50px solid transparent;           /* Go big on the size, and let overflow hide */
	border-bottom: 50px solid transparent;
	border-left: 30px solid #135f82;
	position: absolute;
	top: 50%;
	margin-top: -50px; 
	left: 100%;
	z-index: 2; 
}	
#hierarchy_list li a:before { 
	content: " "; 
	display: block; 
	width: 0; 
	height: 0;
	border-top: 50px solid transparent;           /* Go big on the size, and let overflow hide */
	border-bottom: 50px solid transparent;
	border-left: 30px solid #333333;
	position: absolute;
	top: 50%;
	margin-top: -50px; 
	margin-left: 2px;
	left: 100%;
	z-index: 1; 
}	
#hierarchy_list li.first_list a {
	padding-left: 20px;
	padding-left: 30px\9;
	*padding-left: 30px;
	_padding-left: 30px;
	-webkit-border-radius: 5px 0 0 5px; 
	-moz-border-radius: 5px 0 0 5px; 
	border-radius: 5px 0 0 5px;
}

#hierarchy_list li.sixth_last_list a       { background: #8888ff; }
#hierarchy_list li.sixth_last_list a:after { border-left-color: #8888ff; }

#hierarchy_list li.fifth_last_list a       { background: #7777ff; }
#hierarchy_list li.fifth_last_list a:after { border-left-color: #7777ff; }

#hierarchy_list li.fourth_last_list a       { background: #6666cc; }
#hierarchy_list li.fourth_last_list a:after { border-left-color: #6666cc; }

#hierarchy_list li.third_last_list a       { background: #555599; }
#hierarchy_list li.third_last_list a:after { border-left-color: #555599; }

#hierarchy_list li.second_last_list a       { background: #444477; }
#hierarchy_list li.second_last_list a:after { border-left-color: #444477; }


#hierarchy_list li a:hover { background: #ffffff; color: #000000; }
#hierarchy_list li a:hover:after { border-left-color: #ffffff; !important; }

#hierarchy_list li.last_list a {
	background: #333333; /*背景色と同色に*/
	font-weight: bold;
	padding-left: 50px\9;
	color: #ffffff;
	pointer-events: none;
	cursor: default;
}
#hierarchy_list li.last_list a:after { border-left-color: #333333 }

#hierarchy_list li.last_list a:hover { background: transparent; }
#hierarchy_list li.last_list a:hover:after { border-left-color: transparent !important; }

.topic{
	margin: 0 auto;
}
.topic h1{
	font-size: x-large;
}
.topic h2, .topic h3, .topic h4{
	font-size: large;
}

blockquote{
	margin-left: 5px;
	margin-bottom: 10px;
	padding-left: 5px;
	border-left: solid 2px #ffffff;
}

@media(min-width:767px){
	.topic{
		position: relative;
		background-image: url("images/topic.png");
		width: 740px;
		height: 50px;
		margin-bottom:10px;
	}
	.topic h1, .topic h2, .topic h3, .topic h4{
		height: 50px;
		line-height: 50px;
	}
	.topic .rightbottom{
		position: absolute;
		right: 7px;
		bottom: 7px;
	}
}
@media(max-width:767px){
	.topic{
		background-image: url("images/topic_mobile.png");
		background-repeat: no-repeat;
		width: 300px;
		padding-top: 20px;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.topic h2, .topic h3, .topic h4{
		margin: 0;
		text-align: left;
	}
	.topic .rightbottom{
		text-align: right;
		font-size: small;
		margin: 5px;
	}
}

@media(min-width:767px){
	.rightfloat{
		margin-left: 10px;
		float: right;
	}

	.leftfloat{
		margin-right: 10px;
		float: left;
	}
}
@media(max-width:767px){
	.rightfloat{
		display: block;
		max-width: 300px;
		margin: 5px auto;
	}

	.leftfloat{
		display: block;
		max-width: 300px;
		margin: 5px auto;
	}
}

.caption{
	text-align: center;
	font-weight: bold;
	margin-top: 10px;
	margin-bottom: 20px;
}

table{
	border-collapse: collapse;
	border-style: ridge;
	border-color: #ffffff;
	margin: 10px;
}
th,td{
	padding: 3px 3px;
	border-style: solid;
	border-width: 1px;
	border-color: #ffffff;
}
@media(max-width:767px){
	table{
		margin: 10px auto;
		float: none !important;
		width: 300px;
	}
}

@media(max-width:767px){
	img.back{
		width: 100px;
	}
}
