@charset "utf-8";
/* CSS Document */



/* ■タグの初期値をリセット
----------------------------------------------------------- */

html {
	overflow-y: scroll;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,p,blockquote,th,td,img {
	margin: 0;
	padding: 0;
	border: 0;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}


/* ■リンクカラー
----------------------------------------------------------- */

a:link {
	color: #B53C3C;
	text-decoration: none;
}

a:visited {
	color: #B41818;
	text-decoration: none;
}

a:hover {
	color: #F06;
	text-decoration: underline;
}

a:active {
	color: #F06;
	text-decoration: none;
}


/* ■body基本設定
----------------------------------------------------------- */

body {
	color: #333; /* テキストカラー */
	font-size: small;  /* 基準となるフォントサイズ */
	font-family: Sans-Serif;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	line-height: 1.5;  /* テキストの行間 */
	background: #FFFFFF;
}

* html body {	/* for IF6 */
	font-family: "ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}


/* ■レイアウト枠　all
----------------------------------------------------------- */

#all {
	background: #FFFFFF;
	text-align: center;
	border-top: 3px solid #5E5E5E;
	zoom: 1;
	min-width: 940px;
}


/* ■レイアウト枠　div940
----------------------------------------------------------- */

.div940 {
	width: 940px;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}


/* ■ヘッダー
----------------------------------------------------------- */

#header {
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	background: #FFFFFF;
}

#header-rapper {
	width: 940px;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	background: url(../img/parts/bg-img.gif) no-repeat right top;
	min-width: 940px;
}

#logo {
	float: left;
}

#logo img {
	vertical-align: middle;
	margin-top: 10px;
	margin-bottom: 10px;
}

#subnavi {
	background: #5E5E5E;
	float: right;
	padding: 3px 5px 5px;
	color:#FFF
}

#subnavi a {
	color:#FFF
}

#header li{
	display:inline;
	list-style-type: none;
	padding-left: 15px;
	padding-right: 15px;
}

.headerli-border {
	border-right: 1px solid #8C8C8C;
}


/* ■グローバルナビゲーションメニュー（上メニュー） 
-------------------------------------------------------------------- */

#navi {
	background: #8C8C8C;
	border-bottom: 2px solid #333;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	min-width: 940px;
}

#navi a {
	color: #FFF;
	display: block;
}

#navi table {
	text-align: center;
	width: 940px;
	border-style: none;
	margin: 0 auto;
	padding: 0;
}

#navi td {
	padding: 4px 20px;  /* メニュー文字から枠までの間隔。上下4px、左右20px */
	margin: 0;
	line-height: 1.3em;
}

.navi-red {
	background: #C74242;
	border-right: 1px solid #333;
}

.navi-yellow {
	background: #A69E0A;
	border-right: 1px solid #333;
}

.navi-green {
	background: #438F14;
	border-right: 1px solid #333;
}

.navi-blue {
	background: #1991B5;
	border-right: 1px solid #333;
}

.navi-purple {
	background: #7346A3;
	border-right: 1px solid #333;
}

.navi-gray {
	background: #5E5E5E;
}


/* ■レイアウト枠　page 
-------------------------------------------------------------------- */

#page {
  width: 940px;
  margin: 0 auto;
  text-align: left;
  background: #FFFFFF;
  zoom: 1;
}


/* ■レイアウト枠　パンくずリスト
-------------------------------------------------------------------- */

#topicpath {
	background: #F3F3F3;
	font-size: 80%;
	padding: 6px 10px;  /* 文字から枠までの間隔　上下6px　左右10px */
	margin-bottom: 10px;  /* 枠からメニューと本文までの間隔 */
}


/* ■レイアウト枠　contents
-------------------------------------------------------------------- */

#contents {
  width: 940px;
  background: #FFFFFF;
  zoom: 1;
}


/* ■左メニュー
-------------------------------------------------------------------- */

#menu {
	width: 230px;
	float: left;
	background: #FFFFFF;
	font-weight: bold;
}

#menu ul {
	width: 228px;
	border-right: 1px solid #CCCCCC;  /* メニューを囲う枠線・右 */
	border-left: 1px solid #CCCCCC;  /* メニューを囲う枠線・左 */
	border-bottom: 1px solid #CCCCCC;  /* メニューを囲う枠線・下 */
	margin-bottom: 10px;
}

#menu ul a {
	color: #333;
}

#menu ul a:hover {
	color: #B53C3C;
}

#menu li {
	list-style-type: none;
}

.menu-yellow {
	padding: 8px;
	list-style-type: none;
	border-top: 3px solid #A69E0A;   /* 上の太い線の色 */
	background: #FAF7BC;
	font-weight: bold;
}

.menu-green {
	padding: 8px;
	list-style-type: none;
	border-top: 3px solid #438F14;   /* 上の太い線の色 */
	background: #E2F0D3;
	font-weight: bold;
}

.menu-blue {
	padding: 8px;
	list-style-type: none;
	border-top: 3px solid #1991B5;   /* 上の太い線の色 */
	background: #D8F0F8;
	font-weight: bold;
}

.menu-purple {
	padding: 8px;
	list-style-type: none;
	border-top: 3px solid #7346A3;   /* 上の太い線の色 */
	background: #EFE4F8;
	font-weight: bold;
}

.menu-gray {
	padding: 8px;
	list-style-type: none;
	border-top: 3px solid #5E5E5E;   /* 上の太い線の色 */
	background: #E6E6E6;
	font-weight: bold;
}

.menu-ico01 {
	list-style-type: none;
	border-bottom: 1px solid #CCCCCC;
	background: #FFF url(../img/parts/menu-ico01.gif) no-repeat 10px 13px;   /* 四角いアイコン */
	padding: 8px 10px 8px 28px;
	zoom: 1;
}

.menu-ico02 {
	list-style-type: none;
	border-bottom: 1px solid #CCCCCC;
	background: #FFF url(../img/parts/menu-ico02.gif) no-repeat 15px 13px;   /* 小さい三角のアイコン */
	padding: 8px 10px 8px 28px;
	zoom: 1;
}

.menu-ico-noline01 {
	list-style-type: none;
	background: #FFF url(../img/parts/menu-ico01.gif) no-repeat 10px 13px;   /* 四角いアイコン下線なし */
	padding: 8px 10px 8px 28px;
	zoom: 1;
}

.menu-ico-noline02 {
	list-style-type: none;
	background: #FFF url(../img/parts/menu-ico02.gif) no-repeat 15px 13px;   /* 小さい三角のアイコン下線無し */
	padding: 8px 10px 8px 28px;
	zoom: 1;
}


/* ■携帯・RSSなど */

.menu-mobile01 {
	padding: 8px;
	list-style-type: none;
	border-top: 1px solid #CCCCCC;
	background: #FEE;
	font-weight: bold;
}

.menu-mobile02 {
	list-style-type: none;
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
}


/* ■メイン（本文エリア）
-------------------------------------------------------------------- */

#main {
	float: right;
	width: 690px;
	background: #FFFFFF;
}

#main table,   
#main ol,   
#main ul,   
#main dl,   
#main blockquote,   
#main pre,   
#main p {   
    margin-bottom: 1em;   
}

#area {
	width: 670px;   /* 本文エリア横幅 */
	margin-right: 10px;   /* 本文エリア横幅余白 */
	margin-left: 10px;   /* 本文エリア横幅余白 */
}

#main ol,   
#main ul {
	margin-left: 25px;
}

#main li {
	margin-bottom: 0.1em;
}

#main dt {
	margin-top: 5px;
}

#main dd {
	margin-left: 1em;
}


/* ■ページアップ
-------------------------------------------------------------------- */

#pageup {
	clear: both;
	width: 940px;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	background: #FFFFFF;
	padding-top: 15px;
}

#pageup p {
	text-align: right;
}


/* ■フッター
-------------------------------------------------------------------- */

#footer {
	border-top: 3px solid #B53C3C;
	background: #FFF url(../img/parts/bg-line.gif) repeat-x bottom;
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
	min-width: 940px;
}

#footer ul {
	width: 940px;
	text-align: center;
	display:inline;
}

#footer li{
	display:inline;
	list-style-type: none;
	padding-left: 10px;
	padding-right: 10px;
}

.footerli-border {
	border-right: 1px solid #8C8C8C;
}


/* ■お問い合わせ部分
-------------------------------------------------------------------- */

#contact {
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	min-width: 940px;
	background: #FFF;
	padding-top: 15px;
	padding-bottom: 15px;
}

#contact table {
	border-style: none;
	width: 500px;
	margin-right: auto;
	margin-left: auto;
}

.ct-01 {
	vertical-align: middle;
	text-align: right;
	padding-right: 20px;
}

.ct-02 {
	text-align: left;
	white-space: nowrap;
}

.contactlist {
	padding-left: 12px;
	background: url(../img/parts/list-icon.gif) no-repeat left center;
	list-style-type: none;
}


/* ■コピーライト
-------------------------------------------------------------------- */

#copyright {
	background: #B53C3C url(../img/parts/copyright.gif) repeat-x center top;
	color: #FFF;
	text-align: center;
	padding-top: 12px;
	padding-bottom: 12px;
	min-width: 940px;
}


/* ■見出し
-------------------------------------------------------------------- */

h1 {
	background: #FFF url(../img/parts/h1.jpg) no-repeat left top;
	border-bottom: 2px solid #C74242;
	padding: 21px 10px 20px 45px;
	margin-bottom: 20px;
	font-size: 140%;
	zoom: 1;
}

h2 {
	background: #FFF url(../img/parts/h2.gif) no-repeat left top;
	padding: 5px 15px;
	margin-top: 15px;
	margin-bottom: 15px;
	font-size: 108%;
	border: 1px solid #CCC;
	zoom: 1;
}

h3 {
	background: url(../img/parts/h3.gif) no-repeat left bottom;
	margin-top: 15px;
	margin-bottom: 15px;
	font-size: 100%;
	padding-left: 15px;
	zoom: 1;
}

h4 {
	background: url(../img/parts/h4-line.gif) repeat-x left bottom;
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 100%;
	zoom: 1;
	padding-bottom: 5px;
}


/* ■リンクアイコン
-------------------------------------------------------------------- */

.linkicon {
	list-style-type: none;
	background: url(../img/parts/link-icon.gif) no-repeat left 2px;
	padding-left: 22px;
	padding-bottom: 10px;
	zoom: 1;
}

.linkicon-right {   
    text-align: right;
	list-style-type: none;
}   

.linkicon-right a {
	background: url(../img/parts/link-icon.gif) no-repeat left center;
	padding-left: 22px;
	padding-top: 5px;
	padding-bottom: 5px;
	zoom: 1;
}  


/* ■表（TABLE）
-------------------------------------------------------------------- */

#area table {
	width: 99%;
	margin-right: auto;
	margin-left: auto;
	border-style: none;
	border: 1px #CCCCCC solid;
    border-collapse: collapse;
    border-spacing: 0;
}

#area table th {
	padding: 3px;
	border: 1px #CCCCCC solid;
	border-width: 0 0 1px 1px;
	background: #F3F3F3;
	font-weight: normal;
	text-align: left;
}

#area table td {
    padding: 3px;
    border: 1px #CCCCCC solid;
    border-width: 0 0 1px 1px;
}

#area table caption {
	text-align: left;
	font-weight: bold;
}


/* ■コラム
-------------------------------------------------------------------- */

.column {
	padding: 15px;
	border: 1px solid #7DC431;
}


/* ■画像ボーダー
-------------------------------------------------------------------- */

.imgborder {
	border: 1px solid #CCCCCC;
}

/* ■FLEX画像
-------------------------------------------------------------------- */

.falfimg {
	width: 50% !important;
	height: auto;
}

.fullimg {
	width: 100%;
	height: auto;
}

/* ■水平線HR
-------------------------------------------------------------------- */

.hrborder {
	border: 1px dotted #CCCCCC;
	margin-bottom: 10px;
}


/* ■左右に並べる
-------------------------------------------------------------------- */

.boxleft {
	float: left;
	margin-right: 10px;
}

.boxright {
	float: right;
}

.imgleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}

.center {
	margin-right: 0px;
	margin-bottom: 0px;
	text-align: center;
}


/* ■マージン
-------------------------------------------------------------------- */

.margin-r10 {
	margin-right: 10px;
}


/* ■テキスト装飾
-------------------------------------------------------------------- */

.txtright {
	text-align: right;
}

.txtred {
	color: #C00 !important;
	font-weight: bold;
}

.txtgreen {
	color: #096 !important;
	font-weight: bold;
}

.txtblue {
	color: #06F !important;
	font-weight: bold;
}

.txtbold {
	font-weight: bold;
}

.txt-bigbold {
	font-size: 140%;
	font-weight: bold;
}

.txt-big140 {
	font-size: 140%;
}

.txt-big120 {
	font-size: 120%;
}

.txt-small {
	font-size: 70%;
}


/* ■回り込み防止
-------------------------------------------------------------------- */

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.clearfix {
	display: inline-block;
}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

.clear {
	clear: both;
}


/* ■English専用設定
-------------------------------------------------------------------- */

#english {
	width: 940px;
}

#english p {
	margin-bottom: 15px;
}

#englisharea {
	margin-right: 150px;
	margin-left: 150px;
}

#english table,   
#english ol,   
#english ul,   
#english dl,   
#english blockquote,   
#english pre,   
#english p {   
    margin-bottom: 1em;   
}

#english ol,   
#english ul {
	margin-left: 25px;
}

#english li {
	margin-bottom: 0.1em;
}

#english dt {
	margin-top: 5px;
}

#english dd {
	margin-left: 1em;
}

#english table {
	width: 99%;
	margin-right: auto;
	margin-left: auto;
	border-style: none;
	border: 1px #CCCCCC solid;
    border-collapse: collapse;
    border-spacing: 0;
}

#english table th {
	padding: 3px;
	border: 1px #CCCCCC solid;
	border-width: 0 0 1px 1px;
	background: #F3F3F3;
	font-weight: normal;
	text-align: left;
}

#english table td {
    padding: 3px;
    border: 1px #CCCCCC solid;
    border-width: 0 0 1px 1px;
}

#english table caption {
	text-align: left;
	font-weight: bold;
}
