@charset "UTF-8";


/*--------------------------------------------------------------------
初期設定
--------------------------------------------------------------------*/


/* --------------- 標準化 */

/* framework */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, img, ins, kbd, q, samp, var, i, dl, dt, dd, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary,time, mark, audio, video
{margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; font-style:normal;}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {display:block;}
audio, canvas, video {display:inline-block;}
html {-ms-text-size-adjust:100%; -webkit-text-size-adjust:100%; overflow-y:scroll;}

/* block elements */
ul {margin:0; padding:0 0 0 1.5em;}
ol {margin:0; padding:0 0 0 2em;}
p {margin:0 0 0.6em;}

/* inline elements */
a {outline:none; background:transparent;}
a:focus, a:active, a:hover {outline:none;}
b, strong, em {font-weight:bold; font-style:normal;}
small {font-size:80%;}
sub, sup {font-size:75%; line-height:0; position:relative; vertical-align:baseline;}
sup {top:-0.5em;}
sub {bottom:-0.25em;}
img {border:0; vertical-align:bottom;}

/* form */
button, input, select, textarea {font-family:inherit; font-size:100%; margin:0;}
button, input {line-height:normal;}
button, select {text-transform:none;}
button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance:button; cursor:pointer;}
button[disabled], html input[disabled] {cursor:default;}
input[type="checkbox"], input[type="radio"] {box-sizing:border-box; padding:0;}
input[type="search"] {-webkit-appearance:textfield; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box;}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {-webkit-appearance:none;}
button::-moz-focus-inner, input::-moz-focus-inner {border:0; padding:0;}
textarea {overflow:auto; vertical-align:top;}

/* table */
table {border-collapse:collapse; border-spacing:0;}
caption {text-align:left;}


/* --------------- class設定 */

.clear {clear:both;}
.center{text-align:center;}
.bold {font-weight:bold;}
.it {font-style:italic;}

/* table.bordered */
table.bordered th, table.bordered td {padding:0.4em 0.7em; border:1px #ccc solid;}
table.bordered th {background:#f2f2f2;}

/* dl.bordered */
/*
dl.bordered dt {padding-top:0.5em; border-top:1px #ccc dotted;}
dl.bordered dd {margin:-1.5em 0 0 9em; padding-bottom:0.5em;}
*/
dl.bordered dt {padding-top:0.5em; border-top:1px #ccc dotted; padding-bottom:0.5em; float:left; margin:0;}
dl.bordered dd {padding-top:0.5em; margin:0 0 0 7em; border-top:1px #ccc dotted; padding-bottom:0.5em;}
dl.bordered .fol {border:0;}

/* dl.table_like */
dl.table_like {border:1px #ddd solid; border-width:0 1px 1px; background:#f8f8f8;}
dl.table_like dt {padding:0.5em 0 0 0.8em; border-top:1px #ccc solid;}
dl.table_like dd {margin:-2em 0 0 11em; padding:0.5em 0 0.5em 0.8em; border:1px #ddd solid; border-width:0 0 0 1px; background:#fff;}
dl.table_like dd.double {margin-top:-3.5em; min-height:3em;}
dl.table_like dd.triple {margin-top:-5em; min-height:4.5em;}


/*--------------------------------------------------------------------
基本レイアウト
--------------------------------------------------------------------*/


/* --------------- 全体 */

body {font:14px 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif; line-height:1.5; color:#222;}
.ie body {font-size:small;}
.ie6 body {text-align:center;}
.ie6 #header_content, .ie6 #main, .ie6 footer {text-align:left;}

/* リンク装飾 */
a{color:#18d;}
a:hover img {filter:alpha(opacity=80); opacity:0.80;}


/* --------------- ヘッダ */

header {border-bottom:1px #ddd solid; min-width:980px; width:auto!important;}
#header_content {width:980px; margin:0 auto; position:relative; overflow:hidden; zoom:1;}
#header_exp a, #site_title a, header nav a {text-decoration:none;}

/* SEO用見出し */
#header_exp {background:#06b; font-size:0.83em; font-weight:normal; padding:0.2em 0;}
#header_exp span {display:block; width:980px; margin:0 auto; text-align:left; text-indent:10px;}
#header_exp a {color:#fff;}

/* サイトタイトル */
#site_title {float:left; margin:0 10px; font-size:1.71em; vertical-align:bottom;}
#site_title a {color:#222; display:block;}

/* ナビ */
header nav ul {margin:10px; list-style:none; text-align:right; font-size:0.83em;}
header nav li {display:inline; border-right:1px #aaa dotted; padding:0 0.75em;}
header nav li.eol {border-right:none; padding-right:0;}
header nav a {color:#222;}
header nav a:hover {text-decoration:underline;}
header nav img {vertical-align:middle;}

/* 補足テキスト */
header #subinfo {margin:10px; text-align:right;}
header #subinfo p {margin-bottom:0;}


/* --------------- メイン */

#main {width:980px; margin:0 auto; overflow:hidden; zoom:1; padding-top:30px;}
#content {width:720px; float:right; margin-right:10px; display:inline; padding-bottom:50px;}
#side {width:200px; float:left; margin-left:10px; display:inline; padding-bottom:50px;}


/* -- -- -- -- -- コンテンツ部分 */

#content h1 {font-size:2em; margin-bottom:1em;}
#content h2 {font-size:1.2em; background:url(../../images/common/mesh_2x4.gif) repeat-x 0 bottom; padding-bottom:6px; margin:2em 0 1.5em;}
#content h3 {font-size:1.1em; margin:1.5em 0 0.6em; border-left:8px #ddd solid; padding-left:6px;}
#content h4 {font-size:1.03em; margin:1em 0 0.4em;}
#content h5, #content h6 {margin:1em 0 0.3em;}


/* -- -- -- -- -- サイド */

#side nav, #searchbox {margin-bottom:15px;}
#side aside {margin-bottom:25px;}

/* ナビ */ 
#side nav ul {list-style:none; padding:0;}
#side nav li {margin-bottom:2px;}
#side nav .parent {background:#f8f8f8; padding-bottom:0.25em;}
#side nav a, #side nav span {color:#222; display:block; text-decoration:none; padding:0.4em 10px; background:#f8f8f8;}
#side nav a:hover {background-color:#eee;}
#side nav li li a {background:url(../../images/common/arrow_thin.gif) no-repeat 12px 50%; padding:0.15em 0.4em 0.15em 24px;}

/* 検索フォーム */
#searchbox {text-align:center;}
#searchbox input {vertical-align:middle; text-align:left;}
#fs-search-keyword {border:1px #ddd solid; width:170px; margin-right:5px;}

/* バナー */
#side .banners ul {list-style-type:none; padding:0;}
#side .banners li {margin-bottom:8px;}


/* --------------- フッタ */

footer {background:#eee; min-width:980px; width:auto!important;}
footer p {margin-bottom:0;}
#footer_content {width:980px; margin-left:auto; margin-right:auto; padding-top:10px;}
footer .backtotop {display:none; width:1px; height:1px; margin:0; text-indent:10px; overflow:hidden;}

/* ナビ */
footer nav ul {padding:0 10px 10px; list-style:none; font-size:0.92em;}
footer nav li {display:inline; border-right:1px #aaa dotted; padding:0 0.75em;}
footer nav li.fol {padding-left:0;}
footer nav li.eol {border-right:none; padding-right:0;}
footer nav a { text-decoration:none; color:#222;}
footer nav a:hover {text-decoration:underline;}
footer nav img {vertical-align:middle;}

/* 住所 */
footer .address {padding:0 10px 0;}

/* コピーライト */
footer #copyright {font-size:0.83em; text-align:center; padding:0 10px 10px; margin:0.6em 0 0;}




/*--------------------------------------------------------------------
ページ個別
--------------------------------------------------------------------*/


/* !!!! 開発用ダミー !!!! */
#side .banners img {width:200px; height:60px;}
#index #highlights .pic img {width:100%; height:80px;}


/* --------------- トップページ */

#index #main {padding-top:10px;}
#index *.noslider {padding-top:30px!important;}

/* スライダー */
.bx-wrapper {width:980px; margin:0 auto; position:relative;}
.bxslider li {width:980px; overflow:hidden;}

/* 導入文 */
#index #intro {margin-bottom:25px;}

/* 新着情報 */
#home_news {margin-bottom:20px;}
#home_news h2 {background:url(../../images/common/mesh_2x4.gif) repeat-x 0 bottom; padding-bottom:6px; margin:0 0 15px!important; font-size:1.1em;}
#home_news dt {margin-top:0.4em;}
#home_news dd {margin:-1.5em 0 0.4em; padding:0 0 0.4em 10em; border-bottom:1px #ccc dotted;}
#home_news p {text-align:right;}

/* ハイライト記事 */
#index #highlights article {width:345px; overflow:hidden; zoom:1; margin-bottom:25px; cursor:pointer;}
#index #highlights .fLeft {float:left;}
#index #highlights .fRight {float:right;}
#index #highlights h1 {border-left:8px #ddd solid; padding-left:6px; margin-bottom:0.4em; font-size:1.1em;}
#index #highlights h1 a {color:#222; text-decoration:none;}
#index #highlights .pic {height:80px; width:120px; overflow:hidden; margin-bottom:0.4em; float:left;}
#index #highlights p {margin-left:130px;}
#index #highlights p.nopic {margin-left:0;}
#index #highlights article:hover h1 {text-decoration:underline;}
#index #highlights article:hover img {filter:alpha(opacity=80); opacity:0.80;}


/* --------------- 新着情報 */

/* 個別記事 */
#news_post #content .related {margin-top:50px; background:#f8f8f8; padding:0.6em 1.0em;}
#news_post #content .related p {margin-bottom:0;}


/* --------------- メールフォーム */

#mailform .short {width:40%;}
#mailform .middle {width:60%;}
#mailform .long, #mailform textarea {width:97%;}
body#contact .button, #mailform .button {padding-top:15px;}
.wtn_copyright {display:none;}




/*====================================================================
外部スクリプト用 
====================================================================*/


/* --------------- スライダー（bxSlider） */

.bx-wrapper {position:relative; margin:0 auto 20px; padding:0; *zoom:1;}
.bx-wrapper img {max-width:100%; display:block;}
.bx-wrapper .bx-viewport {/*-moz-box-shadow:0 0 5px #ccc; -webkit-box-shadow:0 0 5px #ccc; box-shadow:0 0 5px #ccc;*/ border:solid #fff 5px; left:-5px; background:#fff;}
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {position:absolute; bottom:-25px; width:100%;}
/* Loader */
.bx-wrapper .bx-loading {min-height:50px; background:url(../img/bx_loader.gif) center center no-repeat #fff; height:100%; width:100%; position:absolute; top:0; left:0; z-index:2000;}
/* Pager */
.bx-wrapper .bx-pager {text-align:center; font-size:.85em; font-family:Arial; font-weight:bold; color:#666; padding-top:10px;}
.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {display:inline-block; *zoom:1; *display:inline;}
.bx-wrapper .bx-pager.bx-default-pager a {background:#666; text-indent:-9999px; display:block; width:10px; height:10px; margin:0 5px; outline:0; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {background:#000;}
/* Direction controls (next / prev) */
.bx-wrapper .bx-prev {left:10px; background:url(../img/bx_controls.png) no-repeat 0 -32px;}
.bx-wrapper .bx-next {right:10px; background:url(../img/bx_controls.png) no-repeat -43px -32px;}
.bx-wrapper .bx-prev:hover {background-position:0 0;}
.bx-wrapper .bx-next:hover {background-position:-43px 0;}
.bx-wrapper .bx-controls-direction a {position:absolute; top:50%; margin-top:-16px; outline:0; width:32px; height:32px; text-indent:-9999px; z-index:9999;}
.bx-wrapper .bx-controls-direction a.disabled {display:none;}
/* Auto controls （start / stop） */
.bx-wrapper .bx-controls-auto {text-align:center;}
.bx-wrapper .bx-controls-auto .bx-start {display:block; text-indent:-9999px; width:10px; height:11px; outline:0; background:url(../img/bx_controls.png) -86px -11px no-repeat; margin:0 3px;}
.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {background-position:-86px 0;}
.bx-wrapper .bx-controls-auto .bx-stop {display:block; text-indent:-9999px; width:9px; height:11px; outline:0; background:url(../img/bx_controls.png) -86px -44px no-repeat; margin:0 3px;}
.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {background-position:-86px -33px;}
/* Pager with auto-controls hybrid layout */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {text-align:left; width:80%;}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {right:0; width:35px;}
/* Image captions */
.bx-wrapper .bx-caption {position:absolute; bottom:0; left:0; background:#666\9; background:rgba(80, 80, 80, 0.75); width:100%;}
.bx-wrapper .bx-caption span {color:#fff; font-family:Arial; display:block; font-size:.85em; padding:10px;}


/* --------------- モーダルウインドウ（fancybox） */

.fancybox-wrap, .fancybox-skin, .fancybox-outer, .fancybox-inner, .fancybox-image, .fancybox-wrap iframe, .fancybox-wrap object, .fancybox-nav, .fancybox-nav span, .fancybox-tmp {padding:0; margin:0; border:0; outline:none; vertical-align:top;}
.fancybox-wrap {position:absolute; top:0; left:0; z-index:8020;}
.fancybox-skin {position:relative; background:#f9f9f9; color:#444; text-shadow:none; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px;}
.fancybox-opened {z-index:8030;}
.fancybox-opened .fancybox-skin {-webkit-box-shadow:0 10px 25px rgba(0, 0, 0, 0.5); -moz-box-shadow:0 10px 25px rgba(0, 0, 0, 0.5); box-shadow:0 10px 25px rgba(0, 0, 0, 0.5);}
.fancybox-outer, .fancybox-inner {position:relative;}
.fancybox-inner {overflow:hidden;}
.fancybox-type-iframe .fancybox-inner {-webkit-overflow-scrolling:touch;}
.fancybox-error {color:#444; font:14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; margin:0; padding:15px; white-space:nowrap;}
.fancybox-image, .fancybox-iframe {display:block; width:100%; height:100%;}
.fancybox-image {max-width:100%; max-height:100%;}
#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {background-image:url('../img/fancybox_sprite.png');}
#fancybox-loading {position:fixed; top:50%; left:50%; margin-top:-22px; margin-left:-22px; background-position:0 -108px; opacity:0.8; cursor:pointer; z-index:8060;}
#fancybox-loading div {width:44px; height:44px; background:url('../img/fancybox_loading.gif') center center no-repeat;}
.fancybox-close {position:absolute; top:-18px; right:-18px; width:36px; height:36px; cursor:pointer; z-index:8040;}
.fancybox-nav {position:absolute; top:0; width:40%; height:100%; cursor:pointer; text-decoration:none; background:transparent url('../img/blank.gif'); /* helps IE */ -webkit-tap-highlight-color:rgba(0,0,0,0); z-index:8040;}
.fancybox-prev {left:0;}
.fancybox-next {right:0;}
.fancybox-nav span {position:absolute; top:50%; width:36px; height:34px; margin-top:-18px; cursor:pointer; z-index:8040; visibility:hidden;}
.fancybox-prev span {left:10px; background-position:0 -36px;}
.fancybox-next span {right:10px; background-position:0 -72px;}
.fancybox-nav:hover span {visibility:visible;}
.fancybox-tmp {position:absolute; top:-99999px; left:-99999px; visibility:hidden; max-width:99999px; max-height:99999px; overflow:visible !important;}
/* Overlay helper */
.fancybox-lock {overflow:hidden;}
.fancybox-overlay {position:absolute; top:0; left:0; overflow:hidden; display:none; z-index:8010; background:url('../img/fancybox_overlay.png');}
.fancybox-overlay-fixed {position:fixed; bottom:0; right:0;}
.fancybox-lock .fancybox-overlay {overflow:auto; overflow-y:scroll;}
/* Title helper */
.fancybox-title {visibility:hidden; font:normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; position:relative; text-shadow:none; z-index:8050;}
.fancybox-opened .fancybox-title {visibility:visible;}
.fancybox-title-float-wrap {position:absolute; bottom:0; right:50%; margin-bottom:-35px; z-index:8050; text-align:center; max-width:90%;}
.fancybox-title-float-wrap .child {display:inline-block; margin-right:-100%; padding:2px 20px; background:transparent; /* Fallback for web browsers that doesn't support RGBa */ background:rgba(0, 0, 0, 0.8); -webkit-border-radius:15px; -moz-border-radius:15px; border-radius:15px; text-shadow:0 1px 2px #222; color:#FFF; font-weight:bold; line-height:24px; text-align:left;}
.fancybox-title-outside-wrap {position:relative; margin-top:10px; color:#fff;}
.fancybox-title-inside-wrap {padding-top:10px;}
.fancybox-title-over-wrap {position:absolute; bottom:0; left:0; color:#fff; padding:10px; background:#000; background:rgba(0, 0, 0, .8);}


/* --------------- ページ分割（jPages） */

.pagination {margin:50px 0 25px;}
.pagination a {cursor:pointer; margin:0 5px; color:#333; text-decoration:underline;}
.pagination a:hover {background-color:#555; color:#fff;}
.pagination a.jp-previous {margin-right:15px; text-decoration:none;}
.pagination a.jp-next {margin-left:15px; text-decoration:none;}
.pagination a.jp-current, a.jp-current:hover {color:#bbb; font-weight:bold; text-decoration:none;}
.pagination a.jp-disabled, a.jp-disabled:hover {display:none;}
.pagination a.jp-current, a.jp-current:hover,
.pagination a.jp-disabled, a.jp-disabled:hover {cursor:default;  background:none;}
.pagination span {margin:0 5px;}


/* --------------- JSON検索（flexibleSearch） */

.fs-hidden {display:none;}
