@charset "utf-8";

/* CSS Document */


/*初期設定*/

body {
    color: #333333;
    background: #FFFFFF;
    font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, p, th, td {
    margin: 0;
    padding: 0;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
img {
    border: 0;
    vertical-align: top;
}
address, caption, cite, code, dfn, em, strong, th, var {
    font-style: normal;
    font-weight: normal;
}
li {
    list-style: none;
}
th {
    text-align: left;
}
h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}
a:focus {
    outline: none;
}

/* -----clearfix------ */

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

/* exlude MacIE5 \*/

* html .clearfix {
    height: 1%
}
.clearfix {
    display: block;
}

/* end MacIE5 */

.blue {
    color: #0099CC;
}
.orange {
    color: #FF6600;
}
.gray {
    color: #999999;
}
a {
    color: #333333;
    text-decoration: underline;
}
a:hover {
    text-decoration: none;
}
.clear {
    clear: both;
}

/* margin */

.mt05 {
    margin-top: 5px;
}
.mt10 {
    margin-top: 10px;
}
.mt15 {
    margin-top: 15px;
}
.mt20 {
    margin-top: 20px;
}
.mt30 {
    margin-top: 30px;
}
.mb05 {
    margin-bottom: 5px;
}
.mb10 {
    margin-bottom: 10px;
}
.mb15 {
    margin-bottom: 15px;
}
.mb20 {
    margin-bottom: 20px;
}
.mb30 {
    margin-bottom: 30px;
}
.mb40 {
    margin-bottom: 40px;
}

/* padding */

.plr05 {
    padding: 0 5px;
}
.plr10 {
    padding: 0 10px;
}
.pt05 {
    padding-top: 5px;
}
.pt10 {
    padding-top: 10px;
}
.pt15 {
    padding-top: 15px;
}
.pt20 {
    padding-top: 20px;
}
.pt30 {
    padding-top: 30px;
}
.pb05 {
    padding-bottom: 5px;
}
.pb10 {
    padding-bottom: 10px;
}
.pb15 {
    padding-bottom: 15px;
}
.pb20 {
    padding-bottom: 20px;
}
.pb30 {
    padding-bottom: 30px;
}
.pb40 {
    padding-bottom: 40px;
}
#wrapper {
    width: 800px;
    margin-right: auto;
    margin-left: auto;
    font-size: 80%;
    line-height: 1.4;
    background: url(../image/common/bg.gif) repeat-y left top;
    padding-right: 5px;
    padding-left: 5px;
}
#header {
    background: url(../image/bg_header.gif) repeat-x left bottom;
    height: 84px;
}
#header h1 {
    width: 416px;
    float: left;
}
#header h2 {
    background: url(../image/logo.gif) no-repeat;
    text-indent: -9999px;
    height: 50px;
    width: 330px;
    margin-top: 5px;
    margin-bottom: 5px;
}
#header .right {
    width: 250px;
    text-align: right;
    position: relative;
}
#header .right p {
    color: #666666;
    font-size: 10px;
}
#header p.bcktop {
    padding: 7px 10px 0 0;
    min-height: 12px;
    height: auto !important;
    height: 12px;
}
#header p.bcktop a {
    background: url(../image/common/ico_home.gif) no-repeat left top;
    padding: 0 0 0 15px;
}
#header .right .logo {
    margin-bottom: 3px;
}
#switcher {
    position: absolute;
    top: 45px;
    right: 5px;
    width: 154px;
}
#switcher li {
    float: left;
    height: 23px;
    width: 23px;
    display: block;
    margin-right: 5px;
}
#switcher li.title {
    width: 65px;
}
#switcher li a {
    text-indent: 9999px;
    display: block;
    overflow: hidden;
    height: 23px;
    width: 23px;
    margin: 0;
    padding: 0;
}
#header a.font_s {
    background: url(../image/common/btn_fontsize_s_off.gif) no-repeat;
}
#header a.font_m {
    background: url(../image/common/btn_fontsize_m_off.gif) no-repeat;
}
#header a.font_l {
    background: url(../image/common/btn_fontsize_l_off.gif) no-repeat;
}
#header ul li a.font_s:hover {
    background: url(../image/common/btn_fontsize_s_on.gif) no-repeat;
}
#header ul li a.font_m:hover {
    background: url(../image/common/btn_fontsize_m_on.gif) no-repeat;
}
#header ul li a.font_l:hover {
    background: url(../image/common/btn_fontsize_l_on.gif) no-repeat;
}
#navi {
    height: 35px;
    clear: both;
    position: relative;
}
#navi ul {
    height: 29px;
}
#navi li {
    float: left;
}

/*megamenu*/

ul div {
    display: none;
}
ul li.mega div {
    position: absolute;
    top: 35px;
    right: 0px;
    background: url(../image/common/bg_mega.jpg) repeat-x left bottom;
    background-size: contain;
    width: 243px;
    _width: 210px;
    padding: 10px;
    z-index: 10;
    border-right: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
    border-left: 1px solid #CCCCCC;
}
#navi li.mega div ul {
    float: left;
    margin-right: 10px;
    height: auto;
    width: 243px;
    _width: 210px;
}
#wrapper #navi .mega li {
    clear: both;
    background: url(../image/common/dotline.gif) repeat-x left bottom;
    padding-bottom: 3px;
    padding-top: 3px;
    width: 233px;
    _width: 220px;
}
ul li.mega div a {
    color: #339900;
    text-decoration: none;
    background: url(../image/common/arrow_mega.gif) no-repeat left 3px;
    padding-left: 8px;
}
ul li.mega div a:hover {
    text-decoration: underline;
}
ul li.hovering div {
    display: block;
}
#pankuz {
    clear: both;
    font-size: 80%;
    padding: 20px 10px 10px;
}
#pankuz a {
    color: #339900;
}
#content {
    clear: both;
    padding: 0px 10px;
}
.left {
    float: left;
}
.right {
    float: right;
}
.sec_wrap {
    padding: 0 10px;
}
.main_cont {
    border: 2px solid #fff;
    border-radius: 8px;
    box-shadow: 2px 2px 6px #ccc;
    float: left;
		padding-top: 10px;
    width: 540px;
}
#rcontbox_new {
    width: 220px;
    height: auto;
    float: right;
}
.right_cont {
    width: 198px;
    padding: 10px;
    border: solid 1px #CCCCCC;
}
.info {
    color: #4D5668;
    clear: both;
    margin-bottom: 30px;
}
.info_box {
    background-color: #F4F4E3;
    padding: 10px;
}
.info .left {
    width: 350px;
}
.info .right {
    width: 350px;
    margin-top: 5px;
}
p.totop {
    clear: both;
    text-align: right;
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 80%;
}
p.totop a {
    background: url(../image/common/totop.gif) no-repeat left 2px;
    padding-left: 10px;
}
#footer {
    clear: both;
    padding-top: 10px;
    border-top: 3px solid #339900;
    font-size: 80%;
    padding-bottom: 20px;
}
#footer ul {
    text-align: center;
}
#footer li {
    display: inline;
    color: #999999;
}
#footer .shade {
    clear: both;
    padding: 15px 0 10px 0;
}
#footer.left {
    width: 200px;
}
#footer.right {
    width: 600px;
}
#footer p.bcktop a {
    background: url(../image/common/bck_top.gif) no-repeat left 3px;
    padding: 0 0 0 10px;
}
.copy {
    text-align: right;
    font-size: 10px;
    padding-top: 40px;
}
