@charset "utf-8";

/* ==========================================================

	ブラウザリセット

========================================================== */

body,div,dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,
p,blockquote,table,th,td {margin: 0; padding: 0;}

html {background: #FFF; color: #333; -webkit-text-size-adjust: 100%;}

body {font:13px/1 Arial, Helvetica, sans-serif;}
* html body {font-size: small; font: x-small;}
*:first-child+html body {font-size: small; font: x-small;}

img {border: 0; vertical-align: bottom;}

h1,h2,h3,h4,h5,h6 {font-size: 100%;}

ul,dl,ol {text-indent: 0;}
ul {list-style: none;}

address,caption,cite,code,dfn,em,strong,th,var {font-style: normal; font-weight: normal;}

sup {vertical-align: text-top;}
sub {vertical-align: text-bottom;}

input,textarea,select {font-family: inherit; font-size: inherit; font-weight:inherit;}
* html input,* html textarea,* html select {font-size: 100%;}
*:first-child+html+input,*:first-child html+textarea,*:first-child+html select {font-size: 100%;}

table {border-collapse: collapse; border-spacing: 0; font-size: inherit; font: 100%;}
th,td {text-align: left; vertical-align: top;}
caption {text-align: left;}

pre,code,kbd,samp,tt {font-family: monospace;}
* html pre,* html code,* html kbd,* html samp,* html tt {font-size: 108%; line-height: 100%;}
*:first-child+html pre,*:first-child html+code,*:first-child html+kbd,*:first-child+html+samp,*:first-child+html tt {font-size: 108%; line-height: 100%;}

input,select,textarea {font-size: 100%; font-family: Verdana, Helvetica, sans-serif;}


a { text-decoration:none; color:#333333;}
a:visited {text-decoration:underline; color:#696969;}
a:hover {
	text-decoration:underline; color:#6666aa;
}


/* clearfix
===========================================================*/
.clearfix:after {
  content: "."; 
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  /min-height: 1%;
}

* html .clearfix {
  height: 1%;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}




/* ==========================================================

	定義

========================================================== */

/* フォントサイズ
===========================================================*/
.fs10 {font-size: 77%;}
.square {
	color: #FFCC33;
	margin-right: 2px;
}
img.strength-square {
	vertical-align: middle;
	margin-right: 5px;
}


.fs11 {font-size: 85%;}
.fs12 {font-size: 93%;}
.fs13 {font-size: 100%;}
.fs14 {font-size: 108%;}
.fs15 {font-size: 116%;}
.fs16 {font-size: 123.1%;}
.fs17 {font-size: 131%;}
.fs18 {font-size: 138.5%;}
.fs19 {font-size: 146.5%;}
.fs20 {font-size: 153.9%;}
.fs21 {font-size: 161.6%;}
.fs22 {font-size: 167%;}
.fs23 {font-size: 174%;}
.fs24 {font-size: 182%;}
.fs25 {font-size: 189%;}
.fs26 {font-size: 197%;}

.lh16 { line-height:1.6;}


/* フォント太さ
===========================================================*/
.fb { font-weight: bold;}
.fn { font-weight: normal;}



/* フォントカラー・背景色・ボーダー
===========================================================*/
.red { color:#C00;}
.Dblue { color:#1313a0;}
.Mgreen { color:#795F07;}
.blown { color:#8c5b15;}
.Dblown { color:#402a04;}

.bg_Dred { background:#bc4545; color:#fff;}
.bg_Dblue { background:#1313a0; color:#fff;}
.bg_beige { background:#f2eddf;}
.bg_Pbeige { background:#fcfaf8;}
.bg_gl_gray { background:#dadada url(img/bg_gl_gray.png) repeat-x left top; border:solid 2px #afafaf;}
.bg_gl_pink { background:#f7e0ea url(img/bg_gl_pink.png) repeat-x left top; border:solid 2px #f0a4c2;}
.bg_gl_beige { background:url(img/bg_gl_beigeL.png) repeat-x left top;}

.style_Tyellow { padding-left:20px; background:url(img/bg_yellow2.png) no-repeat left 2px;}

.underline { text-decoration:underline;}

.bd_none { border:none;}
.bd_s1 { border:solid 1px #d4d0bf;}
.bdt_s1 { border-top:solid 1px #d4d0bf;}


/* margin
===========================================================*/
.mt05 { margin-top: 5px;}
.mt10 { margin-top: 10px;}
.mt15 { margin-top: 15px;}
.mt20 { margin-top: 20px;}
.mt30 { margin-top: 30px;}
.mt40 { margin-top: 40px;}
.mt50 { margin-top: 50px;}

.mb05 { margin-bottom: 5px;}
.mb10 { margin-bottom: 10px;}
.mb15 { margin-bottom: 15px;}
.mb20 { margin-bottom: 20px;}
.mb25 { margin-bottom: 25px;}
.mb30 { margin-bottom: 30px;}
.mb40 { margin-bottom: 40px;}
.mb50 { margin-bottom: 50px;}

.mr05 { margin-right: 5px;}
.mr10 { margin-right: 10px;}
.mr15 { margin-right: 15px;}
.mr20 { margin-right: 20px;}

.ml05 { margin-left: 5px;}
.ml10 { margin-left: 10px;}
.ml15 { margin-left: 15px;}
.ml20 { margin-left: 20px;}
.ml30 { margin-left: 30px;}
.ml40 { margin-left: 40px;}
.ml45 { margin-left: 45px;}
.ml60 {
	margin-left: 60px;
}


.ml-15 { margin-left: -15px;}

.mtb10 { margin-top:10px; margin-bottom:10px;}
.mtb20 { margin-top:20px; margin-bottom:20px;}

.mrl10 { margin-right: 10px; margin-left: 10px;}
.mrl20 { margin-right: 20px; margin-left: 20px;}
.mrl-10 { margin-right: -10px; margin-left: -10px;}



/* padding
===========================================================*/
.pt15 { padding-top:15px;}
.pt20 { padding-top:20px;}
.pt25 { padding-top:25px;}

.ptb05 { padding-top:5px; padding-bottom:5px;}
.ptb15 { padding-top:15px; padding-bottom:15px;}

.prl05 { padding-right:5px; padding-left:5px;}
.prl10 { padding-right:10px; padding-left:10px;}
.prl20 { padding-right:20px; padding-left:20px;}

.p20 { padding:20px;}
.p30 { padding:30px;}
.p30-20 { padding:30px 20px;}



/* width・height
===========================================================*/
.w15 { width:15px;}
.w58 { width:58px;}
.w106 { width:106px;}
.w113 { width:113px;}
.w138 { width:138px;}
.w200 { width:130px;}
.w203 { width:203px;}
.w250 { width:250px;}
.w500 { width:500px;}
.w792 { width:792px;}

.w3em { width:3em;}
.w7em { width:7em;}
.w8em { width:8em;}
.w9em { width:9em;}
.w11em { width:11em;}

.w100p { width:100%;}

.lh31 { line-height:31px;}



/* text-align・vertical-align・float
===========================================================*/
.taL { text-align: left;}
.taC { text-align: center;}
.taR { text-align: right;}

.vaT { vertical-align:top;}
.vaM { vertical-align:middle;}
.vaB { vertical-align:bottom;}

.fR { float: right;}
.fL { float: left;}
.clear { clear: both;}


/* display・position
===========================================================*/
.dpI { display:inline;}
.dpB { display:block;}
.dpIB { display:inline-block;}

.positionR { position:relative;}




/* ==========================================================

	全ページ共通

========================================================== */
a { text-decoration:none; color:#333333;}
a:hover {
	text-decoration:underline; color:6666aa;
}

.link_underline a { text-decoration:underline;}
.link_underline a:visited {text-decoration:underline;}
.link_underline a:hover {
	text-decoration:underline;
}

.pageup{
	float:right; margin:10px 0px 0px 0px;
}

/*** マウスオーバー対策 ***/

div.img_o a:hover img {
opacity:0.6;
filter:alpha(opacity=60);
-ms-filter: "alpha( opacity=60 )";
}

/*** マウスオーバー対策 ここまで ***/

/* フォームボタンマウスオーバー */
input.search_btn:hover {
    filter: alpha(opacity=80);
    -moz-opacity:0.8;
    opacity:0.8;
} 

/*検索ページ*/
.search_page { position: relative; }

.google_box_02 { display: none;}
:root *> .google_box_02 { display: none;} /* IE以外ブラウザ */
/*.google_box_02 { position:absolute; right:0; top:56px; z-index: 10; height: 120px;}
:root *> .google_box_02 { position:absolute; right:0; bottom:13px;}*/ /* IE以外ブラウザ */
.google_box_02 .bg_google { width:170px; height:20px; padding-top:5px; padding-left:30px; background:url(img/bg_google.png) no-repeat left 0; border:0;}
:root *> .google_box_02 .bg_google { width:170px; height:20px; padding-top:0; padding-left:30px; background:url(img/bg_google.png) no-repeat left 50%; border:0;} /* IE以外ブラウザ */


body { padding-top:5px; background:#fff url(img/bg.png) repeat-x; width: 100%; min-width: 980px; overflow-x:hidden;}
.body_inner { padding-top:5px; background:#fff; position: relative; z-index: -20; width: 100%; min-width: 725px;}
#wrapper { width:950px; margin:0 auto; position: relative;}
#wrapper:after { content:' '; display:block; width: 1500px; height:16px; position: absolute; top:94px; right:-1500px; background:url(img/bg_header_arc_right.png) repeat-x;}
#wrapper:before { content:' '; display:block; width: 1500px; height:1px; position: absolute; top:109px; left:-1500px; background:#cc0022;}

/* #header
===========================================================*/
#header { height:85px; position:relative; color:#727171; z-index: 3; padding-bottom: 16px;}
#header .js_area { width:544px; height:85px; position:absolute; right:0; top:5px; font-size:93%; text-align:right;}
#header .js_area #sjnh { position:absolute; top:10px; right:0;}
#header .js_area .language { position:absolute; right:241px; bottom:55px;}
#header .js_area .textsize { position:absolute; right:280px; bottom:14px; line-height:17px;}
#header .js_area .textsize img { margin-left:5px;}
#header .js_area .site_search_box { position:absolute; right:0; bottom:8px; }
:root *> #header .js_area .site_search_box { position:absolute; right:0; bottom:13px;} /* IE以外ブラウザ */
#header .js_area .site_search_box .bg_search { width:170px; height:20px; padding-top:5px; padding-left:30px; background:url(img/bg_search.png) no-repeat left 0; border:0;}
:root *> #header .js_area .site_search_box .bg_search { width:170px; height:20px; padding-top:0; padding-left:30px; background:url(img/bg_search.png) no-repeat left 50%; border:0;} /* IE以外ブラウザ */
#header .js_area .site_search_box .search_btn { vertical-align: middle;}
#header a { color:#727171;}
#header:after { content:' '; display:block; width: 100%; height:16px; position: absolute; bottom:-9px; left:0; background:url(img/bg_header_arc_center.png) no-repeat;}

/* 文字サイズ 大・中・小 */
#fontSize img { cursor:pointer;}


/* #gnav
===========================================================*/
#gnav { margin-top:9px; margin-right:-1px; position: relative; z-index:9997;}
#gnav li { float:left; position: relative;}
#gnav ul li ul { display:none; position:absolute; top:54px; left:1px; border-top:solid 1px #a0a199;}
#gnav ul li ul li { display:block; float:none;}


/* #container
===========================================================*/
#container { position:relative;}

#container:after {
  content: "."; 
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

#container {
  /min-height: 1%;
}

* html #container {
  height: 1%;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.breadcrumb { float:left; margin-top:18px; font-size:93%;}
.breadcrumb li { float:left;}
.breadcrumb li a { color:#333;}
.breadcrumb li a:after { content:' > ';}

#breadcrumb_h {
	height: 45px;
}

.btn_print { margin-top:12px; margin-bottom:9px; float:right; position: relative; z-index: 6;}

.btn_top { cursor:pointer; position:absolute; bottom:0; right:69px;}

.btn_top_contact { cursor:pointer; position:absolute; bottom:0; right:200px;}
.btn_back_contact { cursor:pointer; position:absolute; bottom:0; right:69px;}


.breadcrumb a { text-decoration:none;}
.breadcrumb a:visited {text-decoration:none;}
.breadcrumb a:hover {
	text-decoration:underline;
}


/* #footer
===========================================================*/
#footer { }
#footer h3 { width:950px; margin:0 auto 10px;}
#footer ul { width:950px; margin:auto;}

#footer1 { background:url(img/bg_footer.png) repeat-x; font-size:93%;}
#footer1 li { float:left; margin-right:28px; margin-bottom:15px;}
#footer1 li a { padding-left:11px; background:url(img/arr_s01.png) no-repeat left 50%; color:#333333;}
#footer1 li a:hover { color:#666aaa;}

#footer2 { padding-bottom:5px; color: #333333; font-size:93%;}
#footer2 a { color:#fff;}
#footer2 ul { width:964px; margin:15px auto 0px;}
#footer2 li { float:left; margin-left:7px; margin-bottom:25px; width: 314px;}
#footer2 li a { padding-left: 18px; background: url('img/arr_c01.png') no-repeat scroll left 50% transparent; padding-bottom:1px; }

#footer3 { border-top: 1px solid #CCC; font-size:90%; }
#footer3 #footer3_wrap { width: 950px; margin: 10px auto; }
#footer3 p { line-height: 120%;	float: left;	margin-top: 2.5em;}
#footer3 #footer_num { line-height:140%; text-align: right; float: right; }

#footer4 {background:#ce002c; height: 35px; }
#footer4 #footer4_wrap { width: 950px; margin: 10px auto; }
#footer4 #footer4_wrap #footer_logo { margin-top: 10px; float: left; }
#footer4 #footer4_wrap #copyright { margin-top: 12px; float: right; color:#fff; font-size:12px;}

#footer a { text-decoration:none; color:#333333;}
#footer a:visited {text-decoration:none; color:#696969;}
#footer a:hover {
	text-decoration:underline; color:#6666aa;
}

.w90 {
	width:90px;
}
.fs15-b {
	font-weight: bold;
	font-size: 15px;
}
