@charset "UTF-8";

/* ======================

基本文字

====================== */

html > * {

    font-size: 13px; }



@media screen and (min-width: 768px) {

    html > * {

        font-size: 14px; } }

@media screen and (min-width: 1024px) {

    html > * {

        font-size: 15px; } }

body {

    color: #fff;

    line-height: 1.6;

    background: #1e0000; }

body.setting_bg {

    background: initial; }



/* =====================

見出しデザイン

====================== */

h1, h2, h3, h4, h5, h6 {

    font-weight: bold;

    text-shadow: 1px 1px 1px #ad7a00, -1px 1px 1px #ad7a00, 1px -1px 1px #ad7a00, -1px -1px 1px #ad7a00; }

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {

    color: inherit !important; }

h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {

    text-shadow: none; }



.alert h1, .alert h2, .alert h3, .alert h4, .alert h5, .alert h6 {

    text-shadow: none; }



h1 {

    font-size: 150%;

    color: #fff; }



h2 {

    font-size: 140%;

    color: #fff; }



h3 {

    font-size: 110%;

    color: #fff; }



h4 {

    font-size: 105%;

    color: #fff; }



.main-page-header {

    margin: 0;

    padding: 0;

    border: 0; }

.main-page-header h2 {

    padding: 10px 5px;

    margin: 0;

    margin-bottom: 20px;

    position: relative;

    padding-left: 15px;

    text-shadow: none; }

.main-page-header h2:before {

    content: url(../img/h2_icon.png);

    position: absolute;

    top: -15px;

    left: -10px; }



section h2 {

    border: 0;

    position: relative;

    padding: 0px 0px 5px;

    font-size: 110%;

    text-shadow: none;

    background: url(../images/h3_icon.png) repeat-x left bottom; }

section h2:before {

    content: ""; }



.label {

    color: #836900; }



.label[class*="label-"] {

    color: #fff; }



/* ======================

ヘッダー

====================== */

#header {

    margin: 0 auto;

    font-size: 85%;

    color: #fff;

    /* logo */

    /* logoあるときのメインテキスト */

    /* logoがないとき x アイキャッチあり */

    /* eye_catch */ }

#header a {

    text-decoration: none; }

#header .background {

    background-image: url(./../images/bg_header_background.png);

    background-repeat: no-repeat;

    background-position: right top; }

@media (max-width: 767px) {

    #header .background {

        background-size: 120px auto; } }

#header h1 {

    font-size: 120%;

    margin: 0;

    padding: 3px;

    color: #fff; }

#header h1 span {

    font-size: 70%; }

#header h1 a {

    color: #fff; }

#header .header_img_discription {

    font-size: 80%;

    display: block;

    line-height: 1.4;

    padding: 3px; }

#header .carousel {

    padding: 20px 0; }

#header .page-title {

    margin-top: 1%; }

#header .page-title h1 {

    font-size: 200%; }

#header .page-title h1 a {

    color: #fff; }

#header .logo-area {

    margin: 10px 0;

    max-width: 26%;

    float: left;

    text-align: center; }

#header .logo-area .header-logo {

    max-width: 100%;

    width: auto; }

#header .logo-text {

    width: 68%;

    margin-left: 1%;

    float: left;

    box-sizing: border-box;

    padding: 1%; }

#header .logo-text.with-eyecatch {

    width: 43%; }

#header .with-eyecatch {

    width: 65%;

    float: left; }

#header .eyecatch {

    width: 30%;

    float: right;

    padding: 1%;

    box-sizing: border-box;

    margin-top: 1%;

    margin-bottom: 1%;

    background: rgba(0, 0, 0, 0.5);

    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#7f000000,EndColorStr=#7f000000);

    /*IE8以下用*/ }

@media (max-width: 767px) {

    #header {

        /* logoがないとき x アイキャッチあり */ }

    #header .logo-area {

        float: none;

        width: 100%;

        max-width: 100%;

        text-align: center; }

    #header .logo-area .header-logo {

        margin: 0;

        max-width: 60%;

        width: auto; }

    #header .logo-text {

        width: 100%;

        margin-top: 1%;

        float: none; }

    #header .logo-text.with-eyecatch {

        width: 100%;

        margin-top: 1%;

        float: none; }

    #header .with-eyecatch {

        width: 100%;

        float: none;

        padding: 0% 1%; }

    #header .eyecatch {

        width: 100%;

        margin-top: 0%;

        float: none;

        clear: both; } }



.mainvisual {

    margin: 0 auto;

    color: #fff; }

.mainvisual h1 {

    font-size: 200%; }

.mainvisual p {

    font-size: 100%; }

.mainvisual img {

    width: 100%; }



.mainvisual_container {

    padding: 0 15px; }

@media (min-width: 768px) {

    .mainvisual_container {

        width: 750px; } }

@media (min-width: 992px) {

    .mainvisual_container {

        width: 970px; } }

@media (min-width: 1200px) {

    .mainvisual_container {

        width: 1170px; } }



.mainvisual_full {

    width: 100%;

    padding: 0 15px; }



/* ======================

　フッター

====================== */

.footer-credits {

    padding: 5px;

    text-align: center;

    color: #fff; }



#footer {

    padding-top: 10px; }

#footer .background {

    padding: 20px 5px 30px; }

#footer .img-thumbnail {

    padding: 0;

    background: transparent; }

#footer h4.footer-title span {

    font-size: 80%; }

#footer .sitemap {

    padding: 0 0 0 10px;

    margin-bottom: 20px;

    overflow: hidden; }

#footer .sitemap li {

    width: 49%;

    float: left; }

#footer .sitemap li:nth-child(odd) {

    clear: left; }



/* ======================

　透過背景

====================== */

.background-wrap {

    padding: 5px; }

@media screen and (min-width: 768px) {

    .background-wrap {

        padding: 0px; } }

@media screen and (min-width: 1024px) {

    .background-wrap {

        padding: 0px; } }



.background-padding01 {

    padding: 8px 8px 20px;

    border-radius: 5px; }

@media screen and (min-width: 768px) {

    .background-padding01 {

        padding: 30px 30px; } }



.thumbnail, .well, .img-thumbnail {

    background: rgba(0, 0, 0, 0.6);

    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#99000000,EndColorStr=#99000000);

    /*IE8以下用*/

    border: none;

    box-shadow: none;

    -webkit-box-shadow: none; }



/* ====================== */

main {

    padding: 10px 0 20px; }



/* パンくず */

.breadcrumb {

    padding: 0;

    overflow: hidden;

    width: 100%;

    font-size: 12px; }

.breadcrumb li {

    float: left;

    margin: 0;

    position: relative;

    padding-right: 1em;

    padding-left: 1em;

    max-width: 30%;

    margin-left: -5px; }

.breadcrumb li.active {

    font-weight: bold;

    background: none;

    padding: .7em 0 .7em .5em;

    margin: 0;

    overflow: hidden;

    white-space: nowrap;

    text-overflow: ellipsis;

    color: #fff; }

.breadcrumb li.active:before, .breadcrumb li.active:after {

    border: 0; }

.breadcrumb li + li:before {

    content: "";

    padding: 0; }

.breadcrumb li:first-child {

    margin: 0;

    padding-left: 0; }

.breadcrumb li:first-child:before {

    content: "";

    border: none; }

.breadcrumb li:first-child.active {

    padding-left: .5em; }

.breadcrumb li:first-child a {

    padding: .7em 0em .7em .5em; }

.breadcrumb li:before {

    content: "";

    position: absolute;

    top: 50%;

    margin-top: -1.5em;

    border-width: 1.5em 0 1.5em 1em;

    border-style: solid;

    border-color: #d0a600 #d0a600 #d0a600 transparent;

    left: 0; }

.breadcrumb li:after {

    content: "";

    position: absolute;

    top: 50%;

    margin-top: -1.5em;

    border-top: 1.5em solid transparent;

    border-bottom: 1.5em solid transparent;

    border-left: 1em solid #d0a600;

    right: 0; }

.breadcrumb li a {

    width: 100%;

    background: #d0a600;

    padding: .7em 0em .7em .2em;

    float: left;

    text-decoration: none;

    color: #444;

    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);

    position: relative;

    overflow: hidden;

    white-space: nowrap;

    text-overflow: ellipsis; }



/* 追加されるブロック */

.additional_block {

    padding: 10px 0; }



/* メイン画像があるとき */

.top-image {

    text-align: center; }



/* グローバルナビ */

.navbar {

    min-height: initial;

    min-height: auto;

    height: auto;

    margin-bottom: 0; }



.navbar-inverse {

    border: 0; }



.navbar-button {

    width: 100%;

    display: block;

    padding: 8px;

    text-align: center;

    font-size: 140%;

    color: #fff;

    cursor: pointer; }



.navbar-nav > li > a {

    padding-left: 10px; }



/*.navbar-nav > li:first-child > a {*/

/*  padding-left: 15px; }*/



.nav_select_wrap {

    width: 100%;

    border-radius: 5px;

    position: relative;

    padding: 0;

    margin: 10px 0 0;

    background: #c10402 url(./../images/down_arrow.png) no-repeat 95% center;

    background-size: 20px;

    border: transparent;

    color: #fff; }

.nav_select_wrap select {

    -moz-appearance: none;

    -webkit-appearance: none;

    text-indent: 0.01px;

    text-overflow: '';

    appearance: none;

    border-radius: 0;

    border: 0;

    margin: 0;

    padding: 0;

    background: none transparent;

    vertical-align: middle;

    font-size: inherit;

    color: inherit;

    box-sizing: content-box;

    width: 100%;

    padding: 7px 0 7px 10px;

    box-sizing: border-box; }

.nav_select_wrap select::-ms-expand {

    display: none; }

.nav_select_wrap option {

    color: #000; }



/* 下層用ナビ */

.subnav {

    margin-top: -10px;

    margin-bottom: 20px;

    border-radius: 3px;

    padding: 1%; }

.subnav .nav-pills > li {

    display: inline-block;

    float: none;

    margin: 2px 1px 2px; }

.subnav .nav-pills > li a {

    background: #b69200;

    border: solid 1px transparent;

    box-sizing: border-box;

    color: #fff; }

.subnav .nav-pills > li a:hover {

    background: #504000; }

.subnav .nav-pills > li.active > a {

    background: #000;

    border: solid 1px #e9bb00;

    box-sizing: border-box;

    color: #e9bb00; }



.nav-stacked {

    border-radius: 3px;

    padding: 4%;

    background: rgba(0, 0, 0, 0.6);

    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#99000000,EndColorStr=#99000000);

    /*IE8以下用*/ }

.nav-stacked li {

    margin-bottom: 5px; }

.nav-stacked a {

    background: #b69200;

    color: #fff; }

.nav-stacked.active > a {

    background: #836900;

    color: #fff; }

@media (max-width: 991px) {

    .nav-stacked {

        padding: 1%; } }



/* フォーム */

.form-horizontal {

    padding: 20px 0;

    word-break: break-all; }



/* サービスページ */

.panel {

    background: #222; }



/* diary */

.comments {

    margin: auto 10px; }



/* ======================

　ページ上部へ

===================== */

#page-top {

    display: none;

    position: fixed;

    right: 10px;

    bottom: 64px;

    width: 90px;

    height: 117px;

    z-index: 100; }

@media screen and (min-width: 768px) {

    #page-top {

        width: 120px;

        height: 156px; } }

#page-top p {

    text-align: center;

    -webkit-transition: all 0.3s;

    -moz-transition: all 0.3s;

    transition: all 0.3s; }



#move-page-top {

    text-decoration: none;

    display: block;

    cursor: pointer; }

#move-page-top img {

    max-width: 100%;

    height: auto; }



/* ======================

　シャドウ・立体装飾付与

====================== */

.navbar {

    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.5);

    border-top: #ffcc00 solid 1px;

    border-bottom: #ffcc00 solid 1px; }

.navbar.navbar-inverse {

    background: url(./../images/bg_menu.png) repeat 0 0; }

.navbar .navbar-nav {

    margin: 0px -45px;

    border-left: #ffcc00 solid 1px;

    margin-bottom: -1px; }

.navbar .navbar-nav li {

    border-bottom: #ffcc00 solid 1px;

    border-top: #ffcc00 solid 1px;

    margin-top: -1px; }

.navbar .navbar-nav a {

    border-right: #ffcc00 solid 1px;

    color: #fff;

    background: url(./../images/bg_menu.png) repeat 0 0; }

.navbar .navbar-nav .active a {

    background: #c10402; }



.btn, .nav-pills a, .pager a, .pager span {

    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.5); }



.nav-pills li.active a {

    box-shadow: none; }



/* ======================

　カレンダー／表

====================== */

table.table th {

    background: #433600;

    color: #fff; }

table.table th.danger {

    /* 日曜 */

    background-color: #c90026 !important; }

table.table th.success {

    /* 土曜 */

    background-color: #005fc9 !important; }

table.table td {

    background: rgba(0, 0, 0, 0.6);

    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#99000000,EndColorStr=#99000000);

    /*IE8以下用*/ }



/* ======================

　SNS

====================== */

.social-bookmark {

    background: rgba(0, 0, 0, 0.6);

    filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#99000000,EndColorStr=#99000000);

    /*IE8以下用*/ }



/* =============

装飾パーツ設定

========= */

.navbar-nav > li > a {

    position: relative;

    padding: 15px 71.46px;}

.navbar-nav > li > a:before {

    content: url(../img/icon_link.png);

    position: absolute;

    left: 8px; }

.navbar-nav > li:first-child a:before {

    content: "";

    margin-right: 0; }



#main_wrap {

    position: relative;

    margin-top: 5px;

    border: ridge 2px #ffc700; }

#main_wrap:before {

    content: "";

    position: absolute;

    background: url(./../images/before_content.png);

    top: -3px;

    right: -3px;

    width: 90px;

    height: 92px;

    background-size: contain;

    display: inline-block; }

@media screen and (max-width: 767px) {

    #main_wrap:before {

        top: -3px;

        right: -3px;

        width: 47px;

        height: 48px; } }

#main_wrap:after {

    content: "";

    position: absolute;

    background: url(./../images/after_content.png);

    bottom: -3px;

    left: -2px;

    width: 90px;

    height: 92px;

    background-size: contain;

    display: inline-block; }

@media screen and (max-width: 767px) {

    #main_wrap:after {

        bottom: -3px;

        left: -2px;

        width: 47px;

        height: 48px; } }



#footer {

    position: relative; }

#footer:before {

    content: "";

    background: url(./../images/icon_border.png) repeat-x 0 0;

    position: absolute;

    top: -8px;

    left: 0;

    right: 0;

    height: 33px; }



.btn {

    background: #836900; }

.btn:hover {

    background: #504000;

    color: #fff; }



.pager .disabled > a, .pager .disabled > a:hover, .pager .disabled > a:focus, .pager .disabled > span {

    background: #eee; }



.btn, .nav-pills a, .pager a, .pager span {

    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.5);

    color: #fff; }



.nav-pills li.active a {

    box-shadow: none; }



ul.sitemap li, table ul li {

    list-style: none; }

ul.sitemap li:before, table ul li:before {

    content: url(../img/icon_list.png); }
