/* ●全体の初期化設定 */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend
,table, caption, tbody, tfoot, thead, tr, th, td
{
	background:none repeat scroll 0 0;
	border:0 none;
	font-size:100%;
	margin:0;
	padding:0;
	outline:0 none;
	vertical-align:baseline;
}
table, caption, tbody, tfoot, thead, tr, th, td {
	vertical-align:middle;
}
body{
	-webkit-text-size-adjust: 100%;
}
*{zoom:1;} /*for IE6*/

*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}

/* ●段組設定 */
body{
	font: normal normal 100% sans-serif; /* 全体のデフォルトフォント設定 */
	color:#555; /* 全体のデフォルト文字色設定 */
	background-color:white; /* 全体の背景色設定 */
	text-align:center; /*左右の余白を均等にする for IE6*/
}
#page_wrapper{ 
	min-width:36rem; /* 全体の最小幅を設定 */
	max-width:120rem; /* 全体の最大幅を設定 */
	min-width:none\9; /* for IE8 */
	max-width:none\9; /* for IE8 */
    margin: 0 auto; /*左右の余白を均等にする*/
    text-align: left; /*上のtext-align:centerを打ち消す*/
}
#page{ 
    margin: 0; /*全体のマージンをここで設定*/
}

/*IE6でのmin-widthの代わり*/
* html #page_wrapper {
        border-right: 16rem solid #fff;
}
* html {
        display:inline-block;
        position:relative;
        margin-right:-14rem;
}

#central{
	margin:1rem 2rem 1rem;
}

#body_wrapper{ 
	width:100%; /* for IE overflow hidden bug */
	float:right;
	margin-left:-14rem; /*左サイドバーの横サイズ＋余白（マイナス）*/
	margin-right:0;
}
#body{ 
	width:100%; /* for IE overflow hidden bug */
	float:left;
}
#body_inner{
	position:relative;
	margin-left:14rem; /*左サイドバーの横サイズ＋余白*/ 
	margin-right:0; /*右サイドバーの横サイズ＋余白*/ 
}
#left_sidebar{ 
	float:left; 
	width:12rem; /*左サイドバーの横サイズ*/ 
}
#right_sidebar{
	float:right;
	width:16rem; /*右サイドバーの横サイズ*/ 
}
#right_sidebar div{
	width:100%;
}
#left_sidebar div{
	width:100%;
}
.c_no_sidebar  #body_inner{ 
	margin-left:0; /*左サイドバーの横サイズ＋余白*/ 
}
.c_right_sidebar  #body_inner{ 
	margin-left:0; /*左サイドバーの横サイズ＋余白*/ 
	margin-right:18rem; /*右サイドバーの横サイズ＋余白*/ 
}
.c_no_sidebar  #body_wrapper 
,.c_right_sidebar  #body_wrapper
{ 
	margin:0;
}
.c_both_sidebar  #body_inner{
	margin-left:14rem; /*左サイドバーの横サイズ＋余白*/
	margin-right:18rem; /*右サイドバーの横サイズ＋余白*/
}
.c_both_sidebar  #body
,.c_right_sidebar  #body
{
	margin-right:-18rem; /*右サイドバーの横サイズ＋余白（マイナス）*/
}
#central {
}

/* ●基本要素の設定 */

/* パラグラフや見出しの基本マージンの設定*/
p,h1,h2,h3,h4,h5,h6,ul,ol,dl,form{
	margin: 1rem 0 0.5rem ;
}
/* パラグラフや見出しをゼロマージンにしたい場合、zero_marginクラスをコンテナに指定する*/
.zero_margin p,.zero_margin h1,.zero_margin h2,.zero_margin h3,.zero_margin h4,.zero_margin h5,.zero_margin h6,.zero_margin ul,.zero_margin ol,.zero_margin dl,.zero_margin form{
	margin: 0;
}
table p,table h1,table h2,table h3,table h4,table h5,table h6,table ul,table ol,table dl,table table,table form{
	margin:0;
}
p.small_text{
	font-size:0.8rem;
}
img {
	border: 0;
}
a, a:link {
	color: #555599;/* リンクカラーの設定 */
	text-decoration:none;
	cursor:pointer
}
a:visited {
	color: #775599;/* 訪問済みカラーの設定 */
	text-decoration:none;
	cursor:pointer
}
a:hover {
	color: black;/* ホバーカラーの設定 */
	text-decoration:underline;
} 
a:active {
	color:#000;/* アクティブカラーの設定 */
}
h1,h2,h3,h4,h5,h6{
	line-height:110%; 
	text-align:left;
}
h1:first-child
,h2:first-child
,h3:first-child
,h4:first-child
,h5:first-child
,h6:first-child
,p:first-child
,li:first-child
{
	margin-top:0;
}

h1{
	font-size:2rem;
	font-weight:normal;
	/*background: #666699;
	color:white;*/
	border-bottom:solid 1px #aaa;
}
h2{ 
	font-size:1.2rem;
	font-weight:normal;
	background:#aaa;
	color:white;
	padding:0.25rem 0.5rem;
	border-radius: 0.25rem;
	-moz-border-radius: 0.25rem;
	-webkit-border-radius: 0.25rem;
}
h2 a
,h2 a:link
,h2 a:visited
{ 
	color:white;
}
h3{
	font-size:1.2rem;
	font-weight:normal;
	border-bottom: solid 1px #aaa;
}
h4{
	font-size:1rem;
	font-weight:normal;
	border-left:solid 1rem #aaa;
	margin-left:1rem;
	padding-left:0.5rem;
}
h5{
	font-size:1rem;
	font-weight:bold;
	margin-left:1rem;
	border-bottom:solid 1px #aaa
}
h6{
	font-size:1rem;
	font-weight:bold;
	margin-left:1rem;
}

hr {
	margin:1rem;
	border-width: 1px 0px 0px 0px;
	border-style: solid;
	border-color: #aaa;
	height: 1px; 
}

p {
	/*max-width: 50rem;
	max-width:none\9; /* for IE8 */
	margin-top:0.5rem;
}
.multi_column {
	max-width:none;
	-webkit-column-width: 20rem;
	-moz-column-width:20rem;
}
#central .multi_column p
,#central p.multi_column
{
	margin-top:0;
}
#left_sidebar  p
,#right_sidebar  p
{
	font-size:0.8rem;
}
.content{
	overflow:auto;
	margin-bottom:1rem;
}
#left_sidebar .content
,#right_sidebar .content
{
	margin-bottom:1rem;
}

/* ●リスト */
ul {
	list-style-type: disc;
	list-style-position: outside;
	margin:0.5rem 0 1rem;
	padding-left: 2rem;
}
ol {
	margin:0.5rem 0 1rem;
	padding-left: 2rem;
}
ul li ,
ol li
{
	display:list-item;
	vertical-align:top;
}
ul * ul
,ol * ul
,ul * ol
,ol * ol
{
	margin: 0;
}

dl
{
	margin:1rem 0;
}
dt
{
	font-weight: bolder;
	margin:0.5rem 0;
	border-bottom: 1px #bbb solid;
}
dd
{
	margin-left: 4rem;
}

/* ●テーブル */
table {
    border-collapse: collapse;
    border-spacing: 0;
	border: none;
	line-height:120%;
	background-color:white;
}
table td 
{
	border: 1px #aaa solid;
	padding: 0.2rem 0.5rem; 
	text-align:left;
}
table th, table td.question
{
	background-color:#aaa;
	border: 1px #fff solid;
	color:#fff;
	padding: 0.2rem 0.5rem; 
	text-align:left;
	white-space:nowrap;
}
table thead td
,table thead th
{
	background-color:#777;
	border: 1px #ddd solid;
	color:#fff;
	text-align:left;
	font-size:0.9rem;
	padding-top:0;
	padding-bottom:0;
	white-space:nowrap;
}
table tr:first-child th
,table thead tr:first-child td
{
	border-top: 1px #aaa solid;
}
table th:first-child
,table thead td:first-child
{
	border-left: 1px #aaa solid;
}
table th:last-child
,table thead td:last-child
{
	border-right: 1px #aaa solid;
}
table tr:last-child th
{
	border-bottom: 1px #aaa solid;
}
table tfoot td
,table tfoot th
{
	border: none;
	font-size:0.9rem;
	padding-top:0;
	padding-bottom:0;
}
table caption
{
	text-align:left;
	font-weight:bold;
}
.no_border_table td
,.no_border_table th
{
 	vertical-align: top;
	border: none;
}
.h_border_table td
{
	border-top: 1px #aaa solid;
	border-bottom: 1px #aaa solid;
	border-left: none !important;
	border-right: none !important;
}
.h_border_table th
{
	border-top: 1px #fff solid;
	border-bottom: 1px #fff solid;
	border-left: none !important;
	border-right: none !important;
}
.h_border_table tfoot td
,.h_border_table tfoot th
{
	border: none;
}
.v_border_table td
{
	border-top: none;
	border-bottom: none;
	border-left: 1px #aaa solid;
	border-right: 1px #aaa solid;
}
.v_border_table th
{
	border-top: none;
	border-bottom: none;
	border-left: 1px #fff solid;
	border-right: 1px #fff solid;
}
.stripes_table tr:nth-child(even){
	background-color: #eeeeee;
}
td.nowrap{
	white-space:nowrap;
}

/* ●フォーム */
form.miniSurveyView{
	margin-left:1em;
}

form.miniSurveyView input[type="text"]
,form.miniSurveyView input[type="tel"]
,form.miniSurveyView input[type="email"]
,form.miniSurveyView input[type="number"]
,form.miniSurveyView input[type="password"]
,form.miniSurveyView input[type="date"]
,form.miniSurveyView input[type="time"]
{
	width:100%;
}
form.miniSurveyView textarea{
	width:100%;
}
form.miniSurveyView table td{
	border-left: none !important;
	border-right: none !important;
}


/* ●SisimizisDownloadFolder */
.SisimizisDownloadFolder .SisimizisDownloadFolderTitle{
	font-size:1.2rem;
	font-weight:normal;
	border-bottom: solid 1px #aaa;
}
.SisimizisDownloadFolder .SisimizisDownloadFolderItem{
	padding-left:1rem;
	padding-right:1rem;
	font-size:90%;
}
#left_sidebar .SisimizisDownloadFolder .SisimizisDownloadFolderItem
,#right_sidebar .SisimizisDownloadFolder .SisimizisDownloadFolderItem
{
	width:auto;
}
.SisimizisDownloadFolder .SisimizisDownloadFolderItem table{
	background-color:#fff;
	margin-bottom:0;
	width:auto;
}
.SisimizisDownloadFolder .SisimizisDownloadFolderItem table td
{
	border-top: solid 1px #aaa;
	border-bottom: solid 1px #aaa;
	border-left: none;
	border-right: none;
}
.SisimizisDownloadFolder .SisimizisDownloadFolderItem table tr:nth-child(even)
{
	background-color: #eef2f0;
}
/* ●ヘッダ */
#header{
}
#header .content{
	margin:0;
}
#header_logomark{
	float:left;
}
#header_logomark img{
	width:100%;
	max-width:30rem;
	height:auto;
	margin-left:2rem;
}
#header_search{
	text-align:right;
	margin:0.5rem 2rem;
}
#header_search form{
	margin:0;
}
#header_statement{
	overflow:hidden;
}
#header_statement img{
	height:2rem;
	width:auto;
}

/* ●ヘッダーページリンク */
.header_pagelist{
	text-align:right;
	margin: 0.5rem 2rem;
	font-size:0.9rem;
}
.header_pagelist ul
,.header_pagelist ol
{
	margin:0; padding:0;
	list-style-type: none;
	width:auto; 
	display: inline;
	overflow:hidden; 	
}
.header_pagelist li{
	padding:0;
	display: inline;
	color:#aaa;
	line-height:1.5rem;
}
.header_pagelist li:first-child{
}
.header_pagelist li a
,.header_pagelist li a:link
,.header_pagelist li a:visited
{
	/* 下2行の順番を変えないこと */
	display: -moz-inline-box;
	display: inline-block;	
	/* 上2行の順番を変えないこと */
	color:#555;
	text-decoration: none;
	font-weight:normal;
	padding:0 1rem;
	height:1.5rem;
	width:auto;
	white-space:nowrap;
	text-align: center;
	border-right:solid 1px #aaa;
	border-left:solid 1px #aaa;
	margin-left:-1px;
}
.header_pagelist li a:hover
{
	color:#aaa;
}
.header_pagelist li a:active
{
	color:black;
}

/* ●フッタ */
#footer-area{
	clear:both;
}
#footer .footer_name{
	padding:0.5rem 2rem;
	background: #669999;
	color:white;
}
#footer .footer_name p{
	margin:0 0 0.5rem;
	line-height:1.2rem;
}
#footer .footer_name .address{
	margin:0;
	font-size:0.8rem;
	line-height:1.2rem;
}



/* ●ヘッダーナビ */
.nav-header{
	color:white;
	background: #669999;
	font-size:1rem;
	margin:0;
	padding:0.5rem 1rem;
	clear:both;
}
.nav-header ul
,.nav-header ol
{
	margin:0; padding:0;
	list-style-type: none;
	width:auto; 
	display: inline;
}
.nav-header li{
	margin:0; padding:0;
	display: inline;
	color:#aaa;
	line-height:1.5rem;
}
/*.nav-header li.first{
	display: none;
}*/
.nav-header li a
,.nav-header li a:link
,.nav-header li a:visited
{
	/* 下2行の順番を変えないこと */
	display: -moz-inline-box;
	display: inline-block;	
	/*上2行の順番を変えないこと */
	color:white;
	text-decoration: none;
	font-weight:normal;
	padding:0 1rem;
	height:1.5rem;
	width:auto;
	/*white-space:nowrap;*/
	text-align: center;
	/*border-right:solid 1px #aaa;
	border-left:solid 1px #aaa;
	margin-right:-1px;*/
}
.nav-header li a.first{
	display:none;
}
.nav-header li.first a
,.nav-header li.first a:link
,.nav-header li.first a:visited
{
	color:white;
}
.nav-header li.nav-path-selected a
{
	color:#ccc;
}
.nav-header li a:hover,
.nav-header li.first a:hover
{
	color:#ccc;
}
.nav-header li a:active,
.nav-header li.first a:active
{
	color:#999;
}

/* ●パンくずリスト */
.breadcrumb{
	font-size:0.9rem;
	padding:0.1rem 0.5rem;
	margin:0 2rem;
}
.breadcrumb a
,.breadcrumb a:link
,.breadcrumb a:visited
{
	color:#777;
	text-decoration: none;
}
.breadcrumb a:hover{
	color:#aaa;
}
.breadcrumb a:active{
	color:black;
}
.breadcrumb p{
	padding:0;
	margin:0;
}

/* ●サイドバーメニュー */
 
.sidebar_menu{
	width:100%;
}
.sidebar_menu ul{
	list-style-type: none;
	margin:0;
	padding:0;
}
.sidebar_menu ul li{
	margin-bottom:2rem;
}

.sidebar_menu ul li a
,.sidebar_menu ul li a:link
,.sidebar_menu ul li a:visited
{
	line-height:125%;
	font-size:1.25rem;
	text-decoration: none;
	font-weight:normal;
	color:#555;
	display: block;
	/*border-radius: 0.25rem;
	-moz-border-radius: 0.25rem;
	-webkit-border-radius: 0.25rem;*/
	border-bottom:solid 1px #aaa;
}
.sidebar_menu ul li a:hover{
	color:#aaa;
}
.sidebar_menu ul li a:active{
	color:black;
}
.sidebar_menu ul li a.nav-selected
,.sidebar_menu ul li a.nav-selected:hover
{
	color:black;
}

/*他の第1レベル項目を、すべて表示するかどうかの設定*/
.current_tree_only .sidebar_menu ul li{
	display:none;
}

.current_tree_only .sidebar_menu ul li.nav-path-selected
, .current_tree_only .sidebar_menu * ul.child li
{ 
	display:list-item;
}

/*2階層目以下*/
.sidebar_menu ul.child{
	/*padding-left:1rem;*/
}
.sidebar_menu ul.child li{
	margin:0;
}
.sidebar_menu ul.child li a
,.sidebar_menu ul.child li a:link
,.sidebar_menu ul.child li a:visited
{
	background-color:#fff;
	color:#777;
	font-size:1rem;
	font-weight:normal;
	margin:0;
	padding:0.25rem 1rem;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-bottom:solid 1px #aaa;
	border-top:solid 1px #aaa;
	margin-top:-1px;
}
.sidebar_menu ul.child li:first-child a
,.sidebar_menu ul.child li:first-child a:link
,.sidebar_menu ul.child li:first-child a:visited
{
	border-top:none;
	margin-top:0;
}
.sidebar_menu ul.child li a.nav-selected
,.sidebar_menu ul.child li a.nav-selected:link
,.sidebar_menu ul.child li a.nav-selected:visited
{
	color:black;	
}
.sidebar_menu ul.child li a.nav-selected li a
,.sidebar_menu ul.child li a.nav-selected li a:link
,.sidebar_menu ul.child li a.nav-selected li a:visited
{
	color:#777;
}
.sidebar_menu ul.child li a:hover
,.sidebar_menu ul.child li a.nav-selected li a:hover
{
	color:#aaa;
}
.sidebar_menu ul.child li a:active
,.sidebar_menu ul.child * li a:active
,.sidebar_menu ul.child li a.nav-selected * li a:active
{
	color:black;
}
/*3階層目以下*/
.sidebar_menu ul.child * ul.child{
	padding-left:0.8rem;
}
.sidebar_menu ul.child * ul.child li{
	font-size:1rem;
}

/* ●ページタイトル */
h1.page_title
{
}

div.page_description
{
	margin:1rem 0 1rem 1rem;
}

/* ●ページリスト */
div.thumbnail_pagelist_block{
}
div.thumbnail_pagelist{
	margin:2rem 1rem;
	overflow:auto;
}
div.thumbnail_pagelist_text{
	overflow:auto;
}
div.thumbnail_pagelist_text p{
	margin-left:1rem;
}
div.thumbnail_pagelist h3{
	margin-top:0;
	/*border-left:solid 1.2rem #aaa;
	padding-left:0.25rem;*/
}
div.thumbnail_pagelist div.ccm-page-list-thumbnail{
	float:left;
	margin-right:1rem;
}
div.ccm-page-list-rss-icon{
	text-align:right;
	padding:0 1rem;
}
div.ccm-page-list-rss-icon img{
	width:1.5rem;
	height:auto;
}
div.block_thumbnail_pagelist_block{
}
div.block_thumbnail_pagelist{
	float:left;
	overflow:auto;
	height:24rem; /*グリッド表示ページリストの縦サイズ*/
}
div.block_thumbnail_pagelist.small_grid{
	width:14rem;
	height:10rem;
	overflow:hidden;
}
div.block_thumbnail_pagelist.one-twelfth{
	height:18rem; /*グリッド表示ページリストの縦サイズ*/
}
div.block_thumbnail_pagelist_inner{
	padding: 1rem 1rem 0.2rem 1rem;
	height:auto;
}
div.block_thumbnail_pagelist div.ccm-page-list-thumbnail img{
	height:8rem;
	width:auto;
}
.page_title img.news_icon{
	float:right;
	height:7rem;
	width:auto;
} 
.news_pagelist div.thumbnail_pagelist h3{
	margin-bottom:0;
} 
.news_pagelist div.thumbnail_pagelist .ccm-page-list-date{
	text-align:right;
	margin:0;
	font-size:0.7rem;
	color:#aaa;
} 
.news_pagelist div.thumbnail_pagelist_text p{
	margin-top:0;
} 
.news_pagelist div.thumbnail_pagelist img.news_icon{
	float:right;
	height:5rem;
	width:auto;
} 

/* ●子ページ一覧 */
.child_pagelist{
	font-size:1rem;
	color:#999;
}
ul.child_pagelist
,ol.child_pagelist
{
	margin:0; padding:0;
	list-style-type: none;
	width:auto; 
	display: inline;
	overflow:hidden; 	
}
.child_pagelist li{
	padding:0;
	display: inline;
	color:#aaa;
	line-height:1.5rem;
}
.child_pagelist li:first-child{
}
.child_pagelist li a
,.child_pagelist li a:link
,.child_pagelist li a:visited
{
	/* 下2行の順番を変えないこと */
	display: -moz-inline-box;
	display: inline-block;	
	/* 上2行の順番を変えないこと */
	color:#555;
	text-decoration: none;
	font-weight:normal;
	padding:0 1rem;
	height:1.5rem;
	width:auto;
	white-space:nowrap;
	text-align: center;
	border-right:solid 1px #aaa;
	border-left:solid 1px #aaa;
	margin-left:-1px;
}
.child_pagelist li a:hover
{
	background-color:#eee;
}
.child_pagelist li a:active
{
	background-color:#aaa;
}

/* ●横並びテキストボタン */
.horizontal_button{
	font-size:90%;
	color:#999;
	margin-top:-0.5rem;
}
.horizontal_button ul
,.horizontal_button ol
{
	margin:0; padding:0;
	list-style-type: none;
	width:auto; 
	display: inline;
	overflow:hidden; 	
}
.horizontal_button li{
	padding:0;
	display: inline;
	height:1.3rem;
}
.horizontal_button.divide_vb li{
	border-left:solid 1px #999;
	margin-left:-1px;
}
.horizontal_button.divide_vb li:first-child{
	border-left:none;
}
.horizontal_button li a
,.horizontal_button li a:link
,.horizontal_button li a:visited
{
	/* 下2行の順番を変えないこと */
	display: -moz-inline-box;
	display: inline-block;	
	/* 上2行の順番を変えないこと */
	padding:0;
	margin-left:1rem;
	width:auto;
	white-space:nowrap;
	text-align: center;
	text-decoration: none;
	font-weight: normal;
}
.horizontal_button.divide_vb li a
,.horizontal_button.divide_vb li a:link
,.horizontal_button.divide_vb li a:visited
{
	margin-right:1rem;
}
.horizontal_button li a:hover
{
	color:black;
}
/* アクティブなボタンの表示 */
 .horizontal_button li.nav-path-selected.nav-selected a
,.horizontal_button li.nav-path-selected.nav-selected a:link
,.horizontal_button li.nav-path-selected.nav-selected a:visited
,.horizontal_button li.nav-path-selected.nav-selected a:hover
,.horizontal_button li.nav-path-selected.nav-selected a:active
,.horizontal_button li.nav-path-selected.first.nav-selected a
,.horizontal_button li.nav-path-selected.first.nav-selected a:link
,.horizontal_button li.nav-path-selected.first.nav-selected a:visited
{ 
	font-weight:bold;
}

/* ●スライドショー */
div.ccm-SlideshowBlock-display
,.ccm-SlideshowBlock-display div
{
}

.ccm-SlideshowBlock-display img{
	width:100%;
	max-width:50rem;
	max-width:none\9; /* for IE8 */
	height:auto;
}

/* ●Youtube 動画 */
div.youtubeBlock{
}
div.youtubeBlock iframe{
	width:100%;
	max-width:50rem;
	max-width:none\9; /* for IE8 */
}

/* ●画像入りの記事、画像ブロック */
.catch_img{
	overflow:hidden;
}
.catch_img img{
	max-width:100%;
	height:auto;
}
#central #left_sidebar div.cai_images
,#central #right_sidebar div.cai_images
,#central .ccm-layout-col div.cai_images
{
	width:100%;
	float:none;
	margin-right:0;
	margin-bottom:0.5rem;
}
div.images_caption
{
	text-align:center;
	line-height:110%;
	margin:0.25rem 0 1rem;
}
#left_sidebar div.images_caption,
#right_sidebar div.images_caption
{
	font-size:0.8rem;
}
div.images_caption_inner
,#left_sidebar div.images_caption_inner
,#right_sidebar div.images_caption_inner
{
	display:inline-block;
	width:auto;
	text-align:left;
	margin:0 0.25rem;
	font-weight:bold;
}
.images_block
{
	width:100%;
	text-align:left;
	margin-bottom:1.5rem;
}

.images_box
{
	display: -moz-inline-box;
	display: inline-block;	
	width:33.3%;
	vertical-align:top;
}

#central #left_sidebar .images_box
,#central #right_sidebar .images_box
,#central .ccm-layout-col .images_box
{
	float:none;
	width:100%;
}

.images_box img
{
	width:100%;
	height:auto;
	border:solid 1px white;
}

/* ●バナーブロック */
#left_sidebar .banners_block img
,#right_sidebar .banners_block img
,.ccm-layout-col .banners_block img
{
	width:100%;
	height:auto;
}

/* ●ファイルブロック */
.files_block{
	text-align:center;
	margin:1rem 0;
	width:100%;
}

.file_block{
	width:32%;
	min-width:12rem;
	overflow:hidden;
	padding:0.25rem 0;
	text-align:left;
	border-top:solid 1px #aaa;
	border-bottom:solid 1px #aaa;
	vertical-align:top;
	display: -moz-inline-box;
	display: inline-block;	
	margin:-1px 0 0;
}

#left_sidebar files_block,
#right_sidebar .files_block
{
	margin:0;
}

#left_sidebar .file_block
,#right_sidebar .file_block
,.ccm-layout-col .file_block
{
	width:100%;
}

.file_block img{
	width:auto;
	height:4rem;
	float:left;
	margin:0.25rem;
}

#left_sidebar .file_block img,
#right_sidebar .file_block img
{
	width:3rem;
	height:auto;
}

.file_block .link_text{
	margin:0.25rem;
}
.file_block .file_block_description{
	font-size:0.8rem;
	line-height:1.2rem;
	margin:0.25rem;
}
#left_sidebar .file_block .file_block_description,
#right_sidebar .file_block .file_block_description
{
}

.simple_buttons .three_column_button{
	background:white; 
	border:none;
}
.simple_buttons .three_column_button a
,.simple_buttons .three_column_button a:link
,.simple_buttons .three_column_button a:visited
{
	color: #555599;
}
.simple_buttons .three_column_button a:hover
{
	background: none;
	color:#555;
}
.simple_buttons .three_column_button a:active
{
	background: none;
	color:black;
}

.three_column_buttons{
	text-align:center;
	margin-top:-1px;
}
.three_column_button{
	display: -moz-inline-box;
	display: inline-block;	
	text-align:left;
	vertical-align:top;
	width:32%;
	max-width:16rem;
	min-width:8rem;
	background-color:#669999;
	border:solid 1px white;
	border-radius: 0.5rem;
	-moz-border-radius: 0.5rem;
	-webkit-border-radius: 0.5rem;
}
#left_sidebar .three_column_button
,#right_sidebar .three_column_button
,.ccm-layout-col .three_column_button
{
	width:100%;
	max-width:none;
}
.three_column_button_inner
,#left_sidebar .three_column_button_inner
,#right_sidebar .three_column_button_inner
{
	margin:0;
	text-align:left;
	width:100%;
	border:none;
}
.three_column_button a{
	display: -moz-inline-box;
	display: inline-block;	
	color:#fff;
	width:100%
}
.three_column_button img{
	float:left;
	width: 2.5rem;
	height:auto;
	margin:0.25rem;
}
#central .three_column_button p{
	width:auto;
	margin:0.25rem;
	font-size:1rem;
}

/* ●レイアウト幅調整用クラス */
.five-sixths{
	width:83.3%;
	height:auto;
} 
.three-fourths{
	width:74.9%;
	height:auto;
} 
.two-thirds{
	width:66.6%;
	height:auto;
} 
.one-half{
	width:49.9%;
	height:auto;
} 
.one-third{
	width:33.3%;
	height:auto;
} 
.one-fourth{
	width:24.9%;
	height:auto;
} 
.one-sixth{
	width:16.6%;
	height:auto;
} 


/* ●Media Queriesを利用した画面幅サイズによるレイアウト調整 */
@media screen and (max-width: 132rem) {
	#page .one-sixth{
		width:19.9%;
	}
}
@media screen and (max-width: 112rem) {
	#page .one-fifth
	,#page .one-sixth
	{
		width:24.9%;
	} 
}
@media screen and (max-width: 92rem) {
	#page .one-fourth
	,#page .one-sixth
	{
		width:33.3%;
	} 
	#page div.block_thumbnail_pagelist.small_grid{
		width:25%;
	}
}
@media screen and (max-width: 72rem) {
	#page .one-third
	,#page .one-fourth
	,#page .one-sixth
	{
		width:49.9%;
	} 
	#page div.block_thumbnail_pagelist.small_grid{
		width:33.3%;
	}
}
@media screen and (max-width: 60rem) {
	#page .five-sixths
	,#page .three-fourths
	,#page .two-thirds
	,#page .one-half
	,#page .one-third
	,#page .one-fourth
	,#page .one-sixth
	{
		width:100%;
	}
	#page div.block_thumbnail_pagelist{
		height:auto;
	}
	#page div.block_thumbnail_pagelist.small_grid{
		width:50%;
	}
	#page div.ccm-layout-col{
		width:100% !important;
	}
	#page #page_wrapper{ 
		min-width:15rem;
	}
	#page #central{
		margin:1rem 1rem 0.5rem;
	}
	#page .nav-header{
		padding:0.25rem 0.5rem;
	}
	##page header_search{
		margin: 0 1rem 0.5rem;
		float:right;
	}
	#page .header_pagelist{
		margin: 0.25rem 1rem;
		float:right;
		font-size:0.8rem;
	}
	#page .breadcrumb{
		margin:0 1rem;
	}
	#page #footer .footer_name{
		padding:0.5rem 1rem;
	}
	
	#page #left_sidebar{
		margin-top:1rem;
	}
	#page #body_inner
	,#page .c_no_sidebar #body_inner
	{
		margin-left:0;
	}
	#page .c_both_sidebar #body_inner
	,#page .c_right_sidebar #body_inner
	{
		margin-left:0;
		margin-right:17rem;
	}
	#page #body_wrapper
	{
		margin-left:0;
	}
	#page #left_sidebar{
		width:100%;
	}
}
@media screen and (max-width: 40rem) {
	#page .nav-header{
		padding:0.25rem 0.5rem;
	}
	#page .nav-header li{
		line-height:1.25rem;
	}
	#page .nav-header li a
	,#page .nav-header li a:link
	,#page .nav-header li a:visited
	{
		padding:0 0.5rem;
		height:1.25rem;
	}
	#page #header_logomark{
		margin:0 1rem;
	}
	#page #header_logomark img{
		width:100%;
		margin:0;
	}
	#page #header_statement img{
		height:1rem;
	}
	#page p.header_text{
		font-size:x-small;
	}
	#page .breadcrumb{
		margin:0 0.5rem;
	}
	#page #central{
		margin:0.35rem;
	}
	#page #footer .footer_name{
		padding:0.5rem;
		font-size:0.9rem;
	}
	#page #footer .footer_name .address{
		font-size:0.8rem;
	}
	#page .header_pagelist{
		margin: 0 0.5rem 0.5rem;
	}
	#page #left_sidebar{
		margin-top:1rem;
	}
	#page #right_sidebar{
		margin-top:1rem;
	}
	#page_wrapper{ 
		min-width:12rem;
	}
	#page #body_wrapper{
		margin-left:0;
	}
	#page .c_both_sidebar  #body
	,#page .c_right_sidebar  #body
	{
		margin-right:0;
	}
	#page #body_inner
	,#page .c_both_sidebar #body_inner
	,#page .c_no_sidebar #body_inner
	,#page .c_right_sidebar #body_inner
	{
		margin-right:0;
	}
	#page #body_wrapper
	{
		margin-right:0;
	}
	#page .c_both_sidebar #right_sidebar
	,#page .c_right_sidebar #right_sidebar
	{
		width:100%;
	}
	#page #central div.cai_images
	{
		width:100%;
		float:none;
		margin-left:0;
		margin-right:0;
	}
	#page #left_sidebar div.images_caption,
	#page #right_sidebar div.images_caption
	{
		font-size:1rem;
		line-height:1.25rem;
		margin-bottom:1rem;
	}
	#page #central .images_block .images_box
	,#page #central .images_block .images_box.width_25
	,#page #central .images_block .images_box.width_33
	,#page #central .images_block .images_box.width_50
	{
		float:none;
		width:100%;
	}
	#page .images_block.banners_block img
	{
		width:100%;
		height:auto;
	}
	#page .file_block{
		width:100%;
	}
	#page .file_block img{
		width:3rem;
		height:auto;
	}
	#page .three_column_button{
		width:100%;
		max-width:none;
	}
	#page form.miniSurveyView{
		margin-left:0;
	}
	#page #central form.miniSurveyView table, 
	#page #central form.miniSurveyView tbody, 
	#page #central form.miniSurveyView caption, 
	#page #central form.miniSurveyView tr, 
	#page #central form.miniSurveyView th, 
	#page #central form.miniSurveyView td {
		display:block;
	}

}

/* ●余白調整用クラス */
.add_margin
{
	margin:1rem !important;
}
.add_margin_top
{
	margin-top:1rem !important;
}
.add_margin_right
{
	margin-right:1rem !important;
}
.add_margin_bottom
{
	margin-bottom:1rem !important;
}
.add_margin_left
{
	margin-left:1rem !important;
}
.add_minus_margin_top
{
	margin-top:-1rem !important;
}
.add_minus_margin_right
{
	margin-right:-1rem !important;
}
.add_minus_margin_bottom
{
	margin-bottom:-1rem !important;
}
.add_minus_margin_left
{
	margin-left:-1rem !important;
}
.add_indent
{
	text-indent:1rem !important;
}
.emove_indent
{
	text-indent:0 !important;
}

/* ●その他 */
.clearfix {zoom:1;}
.clearfix:after {
  content: ""; 
  display: block; 
  clear: both;
} 
.float_left{
	float:left;
}
.clear_right{
	clear:right;
}
.clear_left{
	clear:left;
}
.clear_both{
	clear:both;
}
div.code {border: 1px solid #ddd; background: #eee; padding: 10px}
div.spacer,　div.ccm-spacer{ clear:both; font-size:0; line-height:0px }
#page .display-none{
	display:none;
}

