@charset "UTF-8";

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

基本文字

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

html > * {

  font-size: 16px; }



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

  html > * {

    font-size: 14px; } }

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

  html > * {

    font-size: 15px; } }

body {

  color: #000000;

  line-height: 1.6;

  background: ; }

  body.setting_bg {

    background: initial; }



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

見出しデザイン

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

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

  font-weight: bold;

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

  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: #000000; }



h2 {

  font-size: 140%;

  color: #000000; }



h3 {

  font-size: 110%;

  color: #fffefe; }



h4 {

  font-size: 105%;

  color: #ffffff; }



.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 {

      position: absolute;

      top: -15px;

      left: -10px; }



section h2 {

  border: 0;

  position: relative;

  padding: 0px 0px 5px;

  font-size: 110%;

  text-shadow: none;

  background: url(../img/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(../img/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: #000000; }



#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 #ca6993;

      right: 0; }

    .breadcrumb li a {

      width: 100%;

      background: #ca6993;

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

      float: left;

      text-decoration: none;

      color: #fff;

      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: #eb72a8;

  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: #0a0a0a url(../img/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: 0px;

  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: #fdfdfb solid 1px;

  border-bottom: #fdfdfb solid 1px; }

  .navbar.navbar-inverse {

    background: url(../img/bg_menu.png); }

  .navbar .navbar-nav {

    margin: 0px -15px;

    border-left: #fdfdfb solid 1px;

    margin-bottom: -1px; }

    .navbar .navbar-nav li {

      border-bottom: #fdfdfb solid 1px;

      border-top: #fdfdfb solid 1px;

      margin-top: -1px; }

    .navbar .navbar-nav a {

      border-right: #fdfdfb solid 1px;

      color: #fff;

      background: #f4b3b9; }

    .navbar .navbar-nav .active a {

      background: #040404; }



.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: #fea8b9;

  color: #000000; }

  table.table th.danger {

    /* 日曜 */

    background-color: #c90026 !important; }

  table.table th.success {

    /* 土曜 */

    background-color: #005fc9 !important; }

table.table td {

  background: rgba(221, 192, 192, 60%);

  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-left: 30px; }

  .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 1px #000000; }*/

  #main_wrap:before {

    content: "";

    position: absolute;


    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;

   

    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(../img/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); }

