/*
    Document   : common
    Created on : 2012/07/07, 10:43:33
    Author     : tomoki
    Description:
        Purpose of the stylesheet follows.

key color:
blue: 6e9bd7
red: ff5151
*/

/************************************************************************************
RESET
*************************************************************************************/
html, body, div, span, applet, object, iframe, strong, 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, tt, var, dl, dt, dd, ol, ul, li,
fieldset, form, legend, caption, tbody, tfoot, thead, table, label, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-style: inherit;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
    list-style: none;
}

/* set html5 elements to block */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

.clear {
    clear: both;
}
.noscript {
    display: none;
    text-align: center;
    padding: 10px 0;
    background: #fde;
    color: #c00;
}

/* set img max-width */
img {
    /*max-width: 100%;*/
    height: auto;
}

/* ie 8 img max-width */
@media \0screen {
    img { width: auto;}
}

/************************************************************************************
GENERAL STYLING
*************************************************************************************/
body {
    font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, Sans-Serif;
    /*font-family: "MS PGothic","Osaka",Arial,sans-serif;*/
    /*font-size: 12px;*/
    color: #666;
    font-size: 75%;
    background: #f7f7f7;
}
a {
    color: #6e9bd7;
    text-decoration: none;
    outline: none;
}
a:hover {
    text-decoration: underline;
}

/*
a:visited {
    color: #b9d0ee;
}
*/

table,
table tr,
table tr th,
table tr td {
    border-collapse: collapse;
    text-align: left;
    vertical-align: top;
}

/* LIST
================================================ */
ul, ol {
    list-style: none;
}
li {
    list-style: none;
}

/* HEADINGS
================================================ */
h1, h2, h3, h4, h5, h6 {
}

/************************************************************************************
CLASS
*************************************************************************************/

.arrow_01 {
    background: url("../images/common/arrow_01.png") left center no-repeat;
    padding-left: 10px;
}

/* Tinymceで設定可能 */
.blue_arrow {
    background: url("../images/common/arrow_02.png") left center no-repeat;
    padding-left: 10px;
}

/************************************************************************************
STRUCTURE
*************************************************************************************/
/* main page width */
.pagewidth {
    width: 940px;
    margin: 0 auto;
}

#pagewrap {
    position: relative;
}
/* content */
#content {
    width: 655px;
    float: left;
}

/* sidebar */
#sidebar {
    width: 220px;
    float: right;
}

/************************************************************************************
HEADER
*************************************************************************************/

#header_wrapper {
    background: url("../images/common/bg_header.png") repeat-x;
    height: 88px;
}

header {
    position: relative;
}

header a {
    font-size: 12px;
}

header a,
header a:hover,
header a:visited {
    color: #666;
}

header a.external_icon {
    background: none;
    padding-right: 0;
}
/*
SITE LOGO
================================================ */
#logo {
    position: absolute;
    top: 13px;
    left: 3px;
}

/*
ヘッダーナビ
================================================ */

header .social_link {
    position: absolute;
    top: 11px;
    right: 0;
    text-align: right;
}

header .social_link ul li {
    display: inline;
    margin-left: 5px;
}

header .hnavi {
    position: absolute;
    top: 34px;
    right: 0;
    text-align: right;
    overflow: hidden; /* 最後のliの装飾を隠す */
}

header .hnavi ul {
    margin-right: -11px; /* 最後のliの装飾を隠す */

}
header .hnavi ul li {
    display: inline;
    border-right: #ccc solid 1px;
    padding-right: 5px;
    margin-right: 5px;
}

header .my_search {
    position: absolute;
    top: 55px;
    right: 0;
    text-align: right;
}

header .my_search .inner {
    background: url("../images/common/bg_header_search.png") no-repeat;
    width: 190px;
    height: 22px;
    position: absolute;
    top: 0;
    right: 68px;
    text-align: left;
}

header .my_search .inner input.kw {
    background: transparent;
    border: none;
    width: 144px;
    padding: 2px 10px;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0;
	color: #666;
}

header .my_search .inner input.btn {
    position: absolute;
    top: 0;
    right: 0;

}

header .my_search .link_more_search {
    width: 65px;
    text-align: right;
    position: absolute;
    top: 3px;
    right: 0;
}

/*
MAIN NAVIGATION
================================================ */
#gnavi_wrapper {
    height: 44px;
    background: url("../images/common/bg_gnavi_wrapper.png") repeat-x;
    position: relative;
    z-index: 10;
}

#gnavi {
    height: 44px;
}

#gnavi li.first {
    width: 188px;
    height: 41px;
    float: left;
    position: relative;
}

#gnavi li.first a.first {
    width: 100%;
    height: 100%;
    display: block;
    text-align: left;
    text-indent: -9999px;
    outline: 0;
    background: url("../images/common/gnavi.png") no-repeat;
}

#gnavi li.first.first01 a.first {
    background-position: 0 0;
}

#gnavi li.first.first02 a.first {
    background-position: -188px 0;
}

#gnavi li.first.first03 a.first {
    background-position: -376px 0;
}

#gnavi li.first.first04 a.first {
    background-position: -564px 0;
}

#gnavi li.first.first05 a.first {
    background-position: -752px 0;
}

/* 第２階層 */
#gnavi li.first ul.menu {
    z-index: 10;
    visibility: hidden;
    width: 184px;
    height: auto;
    border: #f4f8f5 solid 2px;
    border-top: none;
    position: absolute;
    top: 41px;
    left: 0;
}

#gnavi li.first ul.menu li {
    width: 100%;
    height: 100%;
    line-height: 0; /* IEの隙間防止 */
}

#gnavi li.first ul.menu li a {
    width: 164px;
    color: #fff;
    font-size: 12px;
    display: block;
    margin: 0;
    padding: 10px;
    border-top: #f4f8f5 solid 1px;
    line-height: normal; /* IEの隙間防止 */
    background: #6e9bd7;
    filter: alpha(opacity=95);
    -moz-opacity:0.95;
    opacity:0.95;
}

#gnavi li.first ul.menu li a:hover {
    text-decoration: none;
    background: #477cc1;
    filter: alpha(opacity=100);
    -moz-opacity:1;
    opacity:1;
}

/************************************************************************************
TOPIC PATH
*************************************************************************************/
.topicpath {
    margin: 10px auto 25px;
    line-height: 1.4;
}

/************************************************************************************
PAGE
*************************************************************************************/
/* page title */
.page-title {
    font-size: 24px;
    margin: 0 0 30px;
    padding: 0;
    line-height: 110%;
}

/************************************************************************************
SIDEBAR
*************************************************************************************/
#sidebar {
    line-height: 1.4;
}

.widget {
    margin: 0 0 30px;
    word-wrap: break-word;
}


.widgettitle_wrapper {
    background: url("../images/common/bg_side_hd.png") left bottom no-repeat;
    padding: 0 0 3px 0;
    position: relative;
    margin: 0 0 10px 0;
}

.widgettitle_wrapper .widgettitle {
    color: #6e9bd7;
    padding: 0 0 0 5px;
    font-size: 18px;
	height: 22px;
}

.widgettitle_wrapper .link_right {
    position: absolute;
    bottom: 7px;
    right: 8px;
    text-align: right;
}
.widgettitle_wrapper .link_right a {
    background: url("../images/common/arrow_02.png") left center no-repeat;
    padding-left: 10px;
    font-size: 12px;
}

/* ローカルナビ */
.widget.lnavi {
    line-height: 1;
}

.widget.lnavi  a,
.widget.lnavi  a:hover,
.widget.lnavi  a:visited {
    color: #666;
    text-decoration: none;
}

.widget.lnavi .widgettitle {
    margin: 0;
    border-top: #ccc solid 2px;
    border-bottom: #ccc solid 2px;
    font-size: 14px;
}

.widget.lnavi .widgettitle a {
    display: block;
    padding: 10px 12px;
}

.widget.lnavi .widgettitle a:hover {
    background: #ececec;
}

.widget.lnavi .widgettitle a.current {
    background-color: #dce9fa; /* 水色 */
}

.widget.lnavi .menu li {
    width: 100%;
    border-bottom: #ccc dotted 1px;
    line-height: 0; /* IEの隙間防止 */
}

.widget.lnavi .menu li a {
    width: 196px; /* total=220 */
    height: auto;
    font-size: 14px;
    padding: 9px 12px;
    display: block;
    line-height: normal; /* IEの隙間防止 */
}

.widget.lnavi .menu li a:hover {
    background: #ececec;
}

/* 第２階層 */
.widget.lnavi .menu .sub-menu {
    display: none;
    padding-bottom: 5px;
    background: #f7f7f7;
}

.widget.lnavi .menu .sub-menu li {
    width: 100%;
    border: none;
    line-height: 0; /* IEの隙間防止 */
}

.widget.lnavi .menu .sub-menu li a {
    width: 190px; /* total=220 */
    height: auto;
    padding: 4px 5px 4px 25px;
    display: block;
    background: url("../images/common/arrow_03.png") 15px center no-repeat;
    line-height: normal; /* IEの隙間防止 */
}

.widget.lnavi .menu .sub-menu li a:hover {
    background-color: #ececec; /* グレー */
}


.widget.lnavi .menu li.current-menu-parent {
    background: transparent;
}

.widget.lnavi .menu li.current-menu-item > a {
    background-color: #dce9fa; /* 水色 */
}

.widget.lnavi .menu li.current-menu-item > a:hover {
    background-color: #dce9fa; /* 水色 */
}

.widget.lnavi .menu li.current-menu-item ul {
}

/* カレント処理 */
.widget.lnavi .menu li.current-menu-item ul.sub-menu {
    /* カレントメニューの子ulを表示 */
    display: block;
}

.widget.lnavi .menu li.current-menu-ancestor ul.sub-menu {
    /* カレントメニューが含まれるulを表示 */
    display: block;
}

/* イベント */
.widget .my_event {
    margin: 0 0 15px 0;
}

.widget .my_event .my_calendar {
    background: url("../images/common/icon_calendar.png") left top no-repeat;
    padding: 1px 0 1px 20px;
}
.widget .my_event .my_date {
}

.widget .my_event .my_countdown {
    color: #ff5151;
    line-height: 140%;
}

.widget .my_event .my_title {
    font-size: 14px;
    line-height: 120%;
    margin: 5px 0;
}

.widget .my_event .my_thumbnail {
    float: right;
    width: 50px;
    height: 50px;
    overflow: hidden;
    margin: 0 0 3px 3px;
}

/* アクセスの多い記事 */
.widget.popular ul li {
    margin: 5px 0;
}

.widget.popular ul li .wpp-post-title {
    font-size: 14px;
}

/* フリーエリア */
.sidebar_free_area {
    line-height: 1;
    margin: 0 0 30px 0;
	text-align: center;
	font-size: 10px;
}

.sidebar_free_area a.external_icon {
    background: none;
    padding-right: 0;
}

.sidebar_free_area p {
    margin: 0 0 8px 0;
}

.sidebar_free_area .wp-caption-text {
	font-size: 10px;
}


/************************************************************************************
FOOTER
*************************************************************************************/
#footer_wrapper {
    background: url("../images/common/bg_footer_wrapper.png") repeat-x;
    margin: 100px 0 0 0;
}

footer {
    position: relative;
    padding: 30px 0;
}

footer,
footer a,
footer a:visited {
    color: #fff;
}

footer .fnavi_wrapper {
    margin: 0 0 25px 0;
}

footer .fnavi {
    width: 15%;
    float: left;
    margin-right: 10px;
    font-size: 12px;
}

footer .fnavi .first {
    margin: 0 0 20px 0;
    font-weight: bold;
}

footer .fnavi .menu li {
    line-height: 13px;
    margin-bottom: 8px;
}

footer .lower_box {
    overflow: hidden;
}

footer .lower_box .copyright {
    width: 39%;
    float: left;
}

footer .lower_box .menu {
    width: 59%;
    float: right;
    text-align: right;
    margin-right: -11px;
}

footer .lower_box .menu li {
    display: inline;
    border-right: #fff solid 1px;
    padding-right: 5px;
    margin-right: 5px;
}

footer .pagetop {
    position: absolute;
    top: -28px;
    right: 0;
}


/************************************************************************************
CLEAR & ALIGNMENT
*************************************************************************************/
.clear {
    clear: both;
}
.left {
    float: left;
}
.right {
    float: right;
}
.textleft {
    text-align: left;
}
.textright {
    text-align: right;
}
.textcenter {
    text-align: center;
}

/* clearfix */
.clearfix:after, .widget li:after, #body:after, #footer:after, footer:after, .pagenav:after, #main-nav:after, .menu:after, .gallery:after, #content:after
{ visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.clearfix, .widget li, #body, #footer, footer, .pagenav, #main-nav, .menu, .gallery, #content
{ display: inline-block; }
/* clearfix for ie7 */
.clearfix, .widget li, #body, #footer, footer, .pagenav, #main-nav, .menu, .gallery, #content
{ display: block; zoom: 1; }





