@charset "UTF-8";

body {
  margin: 0;
  padding: 0;
  background: #fff url(/images/bg.gif);
  color: #333;
  font: 13px "ＭＳ Ｐゴシック", arial, helvetica, clean, sans-serif;
  text-align: center;
}

table { font-size: inherit; font: 100%; }

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

.iepngfix {
  behavior: expression(IEPNGFIX.fix(this));
}/* 透過PNGをIE6や5.5のバージョンでも綺麗に表示 */

h1 { height: 19px; _height: 24px; margin: 0 0 0 30px; padding: 5px 0 0; font-size: 77%; font-weight: normal; line-height: 1em; overflow: hidden; }
h2, h3, h4 { margin: 0; padding: 0; }

p, ul, dl { margin: 0; padding: 0; }
ul { list-style-type: none; }

img { vertical-align: top; }
a img { border: none; }

a { color: #000099; text-decoration: none; outline: none; }
a:visited { color: #000099; text-decoration: none; }
a:hover { text-decoration: underline; }
a:active { color: #000099; text-decoration: none; }

#container { width: 850px; margin: 0 auto; padding: 0; background: url(../images/header_bg.png) no-repeat; text-align: left; }

.ptop:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ptop { zoom: 1; }
.ptop a { display: block; float: right; width: 81px; height: 10px; background-image: url(../images/btn_ptop.gif); font-size: 1px; text-indent: -9999px; overflow: hidden; }
#container .ptop a {  margin: 5px 10px 7px 0; }

.bol { font-weight: bold; }
a.txtlink { margin: 0 0.5em; font-weight: bold; }



/* header */

#header { height: 145px; }
#header #title { float: left; width: 262px; padding-top: 10px; text-align: right; }

ul#inquiry { float: right; width: 196px; margin-right: 30px; }
ul#inquiry li { padding-bottom: 10px; text-align: right; }

#navi { clear: both; margin-left: 14px; }
#navi .mainmenu { float: left; margin: 0 25px 0 0; padding: 0; list-style: none; }
#navi .mainmenu a.menu { display: block; text-align: center; padding: 0; margin: 0; text-decoration: none; }
#navi .mainmenu a.menu img { filter: alpha(Opacity=40); opacity: 0.4; }
#navi .mainmenu a.menu:hover img { filter: alpha(Opacity=100); opacity: 1; }
#navi .submenu { visibility: hidden; position: absolute; z-index: 3; margin-top: 3px; }
#navi .submenu a { display: block; min-width: 100px; _width: 100px; margin-left: 8px; padding: 4px 5px; border-bottom: dotted 1px #fff; text-align: left; background-color: #fcd7de; color: #666; font-size: 93%; line-height: 1; font-weight: bold; }
#navi .submenu a:hover { background-color: #f38bbe; color: #000; text-decoration: none; }
/*#navi .submenu a { filter: alpha(Opacity=70); opacity: 0.7; }*/



/* main */

#main {
  font-size: 93%; line-height: 1.5;
}
#main .f01 { background: url(../images/f01_body.png) repeat-y; }
#main .f02 { background: url(../images/f02_body.png) repeat-y; }
.f03 { background: url(../images/f03_body.png) repeat-y; }

p.f01tail { padding-top: 21px; background: url(../images/f01_tail.png) no-repeat left top; }
p.f02tail { padding-top: 21px; background: url(../images/f02_tail.png) no-repeat left top; }
p.f03tail { padding-top: 21px; background: url(../images/f03_tail.png) no-repeat left top; }

#main > p.end { font-size: 1px; }

#main .f01 hr { margin: 20px 30px; border: none; background: url(../images/border01.gif) repeat-x; }
#main .f02 hr { margin: 20px 30px; border: none; background: url(../images/border02.gif) repeat-x; }

#main h3 { margin: 0 0 15px 30px; }

#search { position: relative; padding-top: 19px; background: url(../images/f03_head.png) no-repeat left top; }
#search .fuki { position: absolute; right: 30px; top: 25px; }
#search table { height: 53px; }
#search table td { vertical-align: top; }
#search .f03 { padding-top: 9px; }
#search .submit_button { position: relative; margin: 8px 15px 0 0; z-index: 10; }
#search .submit_button:hover {
  filter: alpha(opacity=80); /*IE用*/
  -moz-opacity: 0.8; /*Ff etc用*/
  opacity: 0.8; /*Opera etc用*/ 
}
#search .sunit { width: 818px; margin-left: 32px; }
#search form img { margin-bottom: 5px; }
#search form select { display: block; /*width: 135px;*/ width: 202px; margin: 0 10px 0 0; background-color: #fce3d7; }
#search form .tcd { width: 110px; margin: 15px 10px 0; background-color: #fce3d7; vertical-align: top; }
#search .s02 { background: url(../images/vbar03.gif) repeat-y; padding-right: 10px; text-align: right; }

.rbn span:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }
.rbn span, .rbn li { zoom: 1; display: block; padding-right: 15px; background: url(/images/btn_ribbon_tail.png) no-repeat right top; }
.rbn a { display: block; float: right; height: 19px; padding: 7px 0 0 22px; background: url(/images/btn_ribbon.png) no-repeat; font-weight: bold; line-height: 1; color: #333; }

ul.rbn:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }
ul.rbn { zoom: 1; }
.rbn li { float: right; margin-left: 10px; }

.btn_detail { display: block; width: 130px; height: 26px; background: url(/images/btn_detail.png) no-repeat; text-indent: -9999px; overflow: hidden; }
.btn_detail:hover {
  filter: alpha(opacity=80); /*IE用*/
  -moz-opacity: 0.8; /*Ff etc用*/
  opacity: 0.8; /*Opera etc用*/ 
}


/* footer */

#footer {
  padding-top: 19px;
  background: url(../images/f01_head.png) no-repeat left top;
}
#footerBody { padding-top: 4px; background: url(../images/f01_body.png) repeat-y; }

#footer .bnList:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }
#footer .bnList { zoom: 1; margin: 0 15px 0 30px; }
#footer .bnList li { float: left; width: 176px; margin: 0 15px 13px 0; }
#footer .bnList li.bnMobile { float: right; width: 217px; height: 137px; background: url(../images/bn_mobile.png) no-repeat; }
#footer .bnList li.bnMobile .qr { float: right; margin: 3px 3px 5px; }
#footer .bnList li.bnMobile p { clear: both; margin: 0 20px; font-size: 93%; line-height: 1.3; }
#footer hr { margin: 7px 30px 18px; border: none; background: url(../images/border01.gif) repeat-x; }

#footer dl { float: left; width: 181px; margin-right: 12px; _margin-right: 0; margin-bottom: 10px; }
#footer dl#fArea { width: 567px; margin-bottom: 0; margin-left: 45px; _margin-left: 22px; }
#footer dl#fSatellite { width: 760px; margin-left: 45px; _margin-left: 22px; }

#footer dl#fArea dt,
#footer dl.theme dt,
#footer dl#fSatellite dt { margin-bottom: 5px; padding: 0 5px 2px; border-bottom: 1px dotted #0077cc; font-weight: bold; font-size: 93%; }

#footer dl dd { margin: 0 5px; }
#footer dl dd a { font-size: 85%; line-height: 1.5; }

#footer dl#fArea dd { float: left; width: 177px; margin: 0 10px 0 0; padding: 0; padding-left: 0; background: none; }
#footer dl#fArea dd.left { clear: both; white-space: nowrap; }

#footer dl#fArea dd dl { width: 175px; }
#footer dl#fArea dd dl dt { margin-bottom: 5px; padding: 0 5px; border-bottom: 1px dotted #0077cc; font-weight: bold; font-size: 85%; }
#footer dl#fArea dd dl dd { width: auto; margin-left: 5px; white-space: nowrap; }

#footer dl#fSatellite dd { float: left; white-space: nowrap; }

#footer ul.gaiyo { clear: both; margin: 0 30px; padding: 7px 0; font-size: 85%; text-align: center; border-top: 1px solid #dadada; }
#footer ul.gaiyo li { display: inline; }

.copy { clear: both; text-align: center; letter-spacing: 1px; font-size: 93%; line-height: 1; padding-bottom: 10px; }



/* Q and A */

#qanda { background: url(/qanda/images/illust01.gif) no-repeat right bottom; }
#qanda .lead { margin: 10px; }
#qanda ul { width: 280px; margin-left: 10px; }
#qanda li { float: left; width: 140px; }
#qanda li a {
  display: block;
  background: url("/images/arrow01.gif") no-repeat;
  margin:0 0 5px 0;
  padding:0 0 0 21px;
}



/* present */

#present { width: 600px; }
#present a.btn_detail { display: block; float: right; width: 130px; height: 26px; }
#present #mm { clear: both; height: 172px; padding-top: 20px; background: url(/images/present/img03.png) no-repeat right 20px; }



/* facebox */

#facebox .b {
  background: url(../images/facebox/b.png);
}

#facebox .tl {
  background: url(../images/facebox/fbx-border-sprite.png) 0 0;
  width: 10px; 
  height: 10px;
}

#facebox .tr {
  background: url(../images/facebox/fbx-border-sprite.png) -10px 0;
  width: 10px; 
  height: 10px;
}

#facebox .bl {
  background: url(../images/facebox/fbx-border-sprite.png) -20px 0;
  width: 10px; 
  height: 10px;
}

#facebox .br {
  background: url(../images/facebox/fbx-border-sprite.png) -30px 0;
  width: 10px; 
  height: 10px;
}

#facebox {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  text-align: left;
}

#facebox .popup {
  position: relative;
}

#facebox table {
  border-collapse: collapse;
}

#facebox td {
  border-bottom: 0;
  padding: 0;
}

#facebox .body {
  padding: 20px;
  background: #fff;
  width: 540px;
}

#facebox .loading {
  text-align: center;
}

#facebox .image {
  text-align: center;
}

#facebox img {
  border: 0;
  margin: 0;
}

#facebox .footer {
  border-top: 1px solid #DDDDDD;
  padding-top: 5px;
  margin-top: 10px;
  text-align: right;
}

#facebox .footer img {
  vertical-align: middle;
}

#facebox .tl, #facebox .tr, #facebox .bl, #facebox .br {
  height: 10px;
  width: 10px;
  overflow: hidden;
  padding: 0;
}

#facebox_overlay {
  position: fixed;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
}

.facebox_hide {
  z-index: -100;
}

.facebox_overlayBG {
  background-color: #000;
  z-index: 99;
}

* html #facebox_overlay { /* ie6 hack */
  position: absolute;
  height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}

