/* ---------------------------------------------------------- */
/*     layout   */
/* ---------------------------------------------------------- */
body {
  padding-top: 95px; }

#header {
  background: rgba(0, 0, 0, 0.6);
  margin: 0;
  padding: 0; }
  #header .logo {
    padding: 0; }
    #header .logo a {
      background: #FFF;
      display: block;
      height: 64px;
      padding: 15px; }
      @media (min-width: 768px) and (max-width: 992px) {
        #header .logo a {
          padding: 20px; } }
      #header .logo a:hover {
        opacity: 0.8;
        filter: alpha(opacity=80); }
  #header .navi {
    padding: 0; }
    #header .navi #nav ul li {
      color: #FFF;
      font-weight: bold;
      font-size: 143%;
      text-align: center;
      padding: 0; }
      #header .navi #nav ul li a {
        color: #FFF;
        display: block;
        line-height: 64px;
        border-right: 1px solid rgba(255, 255, 255, 0.2); }
        #header .navi #nav ul li a:hover {
          background: rgba(0, 88, 170, 0.6);
          text-decoration: none; }
  #header .search {
    padding: 0; }
    #header .search ul li.sitemap {
      color: #FFF;
      font-size: 79%;
      text-align: center;
      padding: 0; }
      #header .search ul li.sitemap a {
        background: rgba(0, 0, 0, 0.4);
        color: #FFF;
        display: block;
        line-height: 64px; }
        #header .search ul li.sitemap a:hover {
          opacity: 0.8;
          filter: alpha(opacity=80);
          text-decoration: none; }
    #header .search ul li.search-in {
      background: rgba(0, 0, 0, 0.8);
      height: 64px;
      padding: 18px 30px 15px 15px; }
      #header .search ul li.search-in .txt input {
        width: 65%;
        float: left;
        margin-right: 5px; }
        @media (max-width: 767px) {
          #header .search ul li.search-in .txt input {
            margin-left: 10%; } }
      #header .search ul li.search-in .button input {
        float: left; }
        @media (min-width: 768px) and (max-width: 992px) {
          #header .search ul li.search-in .button input {
            width: 35px; } }
  #header .sp-navbtn .wrapping {
    display: table;
    float: right; }
    #header .sp-navbtn .wrapping .h-search {
      display: table-cell;
      vertical-align: middle;
      height: 64px;
      width: 64px;
      text-align: center; }
    #header .sp-navbtn .wrapping .h-nav {
      display: table-cell;
      vertical-align: middle;
      height: 64px;
      width: 64px;
      text-align: center; }
  #header h1 {
    font-size: 79%;
    margin-bottom: 10px;
    text-align: right; }
  #header ul.head-nav {
    font-size: 86%;
    margin: 10px 0 0 auto;
    text-align: right; }
    #header ul.head-nav li {
      display: inline;
      background: url(../img_common/arrow_01.png) left 0.45em no-repeat;
      padding: 0 0 0 8px;
      margin: 0 0 0 10px; }
      #header ul.head-nav li:hover {
        background: url(../img_common/arrow_01_on.png) left 0.45em no-repeat; }
      #header ul.head-nav li a.blank {
        background: url(../img_common/icon-blink_01.png) right 0.2em no-repeat !important; }
        #header ul.head-nav li a.blank:hover {
          background: url(../img_common/icon-blink_05.png) right 0.2em no-repeat !important; }
  #header button {
    background: #999;
    margin-bottom: 15px !important;
    color: #FFF;
    font-size: 108%;
    opacity: 0.5;
    filter: alpha(opacity=50); }
    #header button.collapsed {
      opacity: 1;
      filter: alpha(opacity=100);
      background: #555; }
    #header button.h-nav {
      margin-right: 0;
      background: #205DB0; }
      #header button.h-nav img {
        height: 25px;
        width: auto;
        padding: 5px 10px 5px 5px; }
      #header button.h-nav.is-open {
        opacity: 0.5;
        filter: alpha(opacity=50); }
    #header button.h-search img {
      height: 25px;
      width: auto; }
  #header #cse-search-form {
    background: #E8ECE9;
    padding: 5px;
    margin: 0 0 0 auto; }
    @media (min-width: 1200px) {
      #header #cse-search-form {
        width: 230px; } }
    @media (min-width: 993px) and (max-width: 1199px) {
      #header #cse-search-form {
        width: 270px; } }
    @media (min-width: 768px) and (max-width: 992px) {
      #header #cse-search-form {
        width: 250px; } }
    @media (max-width: 767px) {
      #header #cse-search-form {
        margin: 0 -15px 0 !important;
        padding: 10px !important; } }
    #header #cse-search-form .cse .gsc-control-cse,
    #header #cse-search-form .gsc-control-cse {
      margin: 0 !important;
      padding: 0 !important;
      width: 30px !important; }
    #header #cse-search-form .gsc-input {
      width: 100% !important;
      height: 22px !important;
      margin: 0 !important;
      padding: 0 !important; }
      @media (max-width: 767px) {
        #header #cse-search-form .gsc-input {
          height: 40px !important;
          font-size: 115%; } }
    #header #cse-search-form td.gsc-clear-button .gsc-clear-button {
      display: none !important;
      margin: 0;
      padding: 0; }
    #header #cse-search-form input.gsc-search-button {
      background: url(../img_common/btn_search.gif) no-repeat 0 0 !important;
      border: none;
      width: 58px;
      height: 22px;
      text-indent: -9999px;
      display: block;
      padding: 0;
      margin: 0 0 0 3px !important; }
      #header #cse-search-form input.gsc-search-button:active {
        opacity: 0.5;
        filter: alpha(opacity=50); }
      #header #cse-search-form input.gsc-search-button:hover {
        opacity: 0.5;
        filter: alpha(opacity=50); }
      @media (max-width: 767px) {
        #header #cse-search-form input.gsc-search-button {
          background: url(../img_common_sp/btn_search_sp.gif) no-repeat 0 0 !important;
          background-size: 70px 40px !important;
          width: 70px !important;
          height: 40px !important;
          margin: 0 0 0 10px !important; } }
    #header #cse-search-form td.gsc-branding-text .gsc-branding-text,
    #header #cse-search-form td.gsc-branding-img .gsc-branding-img {
      display: none !important; }
    #header #cse-search-form form.gsc-search-box {
      margin: 0;
      padding: 0; }

#contents {
  margin-bottom: 30px; }
  #contents #pan {
    margin: 0 0 30px;
    font-size: 86%; }

#footer {
  background: #1F1F1F;
  color: #999; }
  @media (max-width: 767px) {
    #footer {
      text-align: center; } }
  #footer a {
    color: #FFF;
    text-decoration: underline; }
    #footer a:hover {
      text-decoration: none; }
  #footer .company {
    border: 1px solid #000;
    text-align: center; }
    #footer .company .company-box {
      padding: 30px;
      position: relative; }
      #footer .company .company-box .credit h2 {
        color: #999; }
        #footer .company .company-box .credit h2 img {
          display: block;
          margin-bottom: 15px; }
        #footer .company .company-box .credit h2 ul li {
          font-size: 86%;
          line-height: 1.5em; }
  #footer .people,
  #footer .tech,
  #footer .structure,
  #footer .bosai {
    border: 1px solid #000; }
    #footer .people .people-in,
    #footer .people .tech-in,
    #footer .people .structure-in,
    #footer .people .bosai-in,
    #footer .tech .people-in,
    #footer .tech .tech-in,
    #footer .tech .structure-in,
    #footer .tech .bosai-in,
    #footer .structure .people-in,
    #footer .structure .tech-in,
    #footer .structure .structure-in,
    #footer .structure .bosai-in,
    #footer .bosai .people-in,
    #footer .bosai .tech-in,
    #footer .bosai .structure-in,
    #footer .bosai .bosai-in {
      padding: 30px 15px; }
      #footer .people .people-in h2,
      #footer .people .tech-in h2,
      #footer .people .structure-in h2,
      #footer .people .bosai-in h2,
      #footer .tech .people-in h2,
      #footer .tech .tech-in h2,
      #footer .tech .structure-in h2,
      #footer .tech .bosai-in h2,
      #footer .structure .people-in h2,
      #footer .structure .tech-in h2,
      #footer .structure .structure-in h2,
      #footer .structure .bosai-in h2,
      #footer .bosai .people-in h2,
      #footer .bosai .tech-in h2,
      #footer .bosai .structure-in h2,
      #footer .bosai .bosai-in h2 {
        margin-bottom: 15px;
        color: #999; }
      #footer .people .people-in h3,
      #footer .people .tech-in h3,
      #footer .people .structure-in h3,
      #footer .people .bosai-in h3,
      #footer .tech .people-in h3,
      #footer .tech .tech-in h3,
      #footer .tech .structure-in h3,
      #footer .tech .bosai-in h3,
      #footer .structure .people-in h3,
      #footer .structure .tech-in h3,
      #footer .structure .structure-in h3,
      #footer .structure .bosai-in h3,
      #footer .bosai .people-in h3,
      #footer .bosai .tech-in h3,
      #footer .bosai .structure-in h3,
      #footer .bosai .bosai-in h3 {
        color: #999;
        font-weight: bold;
        margin-bottom: 5px; }
      #footer .people .people-in ul li a,
      #footer .people .tech-in ul li a,
      #footer .people .structure-in ul li a,
      #footer .people .bosai-in ul li a,
      #footer .tech .people-in ul li a,
      #footer .tech .tech-in ul li a,
      #footer .tech .structure-in ul li a,
      #footer .tech .bosai-in ul li a,
      #footer .structure .people-in ul li a,
      #footer .structure .tech-in ul li a,
      #footer .structure .structure-in ul li a,
      #footer .structure .bosai-in ul li a,
      #footer .bosai .people-in ul li a,
      #footer .bosai .tech-in ul li a,
      #footer .bosai .structure-in ul li a,
      #footer .bosai .bosai-in ul li a {
        background: url(../img/i_arrow_type1.png) no-repeat left center;
        padding-left: 10px; }
      @media (max-width: 767px) {
        #footer .people .people-in ul,
        #footer .people .tech-in ul,
        #footer .people .structure-in ul,
        #footer .people .bosai-in ul,
        #footer .tech .people-in ul,
        #footer .tech .tech-in ul,
        #footer .tech .structure-in ul,
        #footer .tech .bosai-in ul,
        #footer .structure .people-in ul,
        #footer .structure .tech-in ul,
        #footer .structure .structure-in ul,
        #footer .structure .bosai-in ul,
        #footer .bosai .people-in ul,
        #footer .bosai .tech-in ul,
        #footer .bosai .structure-in ul,
        #footer .bosai .bosai-in ul {
          margin-bottom: 15px; } }
  #footer .structure {
    background: url(../img/footer_bg_structure.jpg) no-repeat top right; }
  #footer .people {
    background: url(../img/footer_bg_people.jpg) no-repeat top right; }
  #footer .bosai {
    background: url(../img/footer_bg_bosai.jpg) no-repeat top right; }
  #footer .tech {
    background: url(../img/footer_bg_tech.jpg) no-repeat top right; }

.carousel-fade .carousel-inner .item {
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity; }

.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  opacity: 0; }

.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
  opacity: 1; }

.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.carousel-fade .carousel-control {
  z-index: 2; }

@media print {
  #header,
  #footer {
    display: none; }
  body {
    padding-top: 0; }
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left; }
  .col-sm-12 {
    width: 100%; }
  .col-sm-11 {
    width: 91.66666667%; }
  .col-sm-10 {
    width: 83.33333333%; }
  .col-sm-9 {
    width: 75%; }
  .col-sm-8 {
    width: 66.66666667%; }
  .col-sm-7 {
    width: 58.33333333%; }
  .col-sm-6 {
    width: 50%; }
  .col-sm-5 {
    width: 41.66666667%; }
  .col-sm-4 {
    width: 33.33333333%; }
  .col-sm-3 {
    width: 25%; }
  .col-sm-2 {
    width: 16.66666667%; }
  .col-sm-1 {
    width: 8.33333333%; }
  .col-sm-pull-12 {
    right: 100%; }
  .col-sm-pull-11 {
    right: 91.66666667%; }
  .col-sm-pull-10 {
    right: 83.33333333%; }
  .col-sm-pull-9 {
    right: 75%; }
  .col-sm-pull-8 {
    right: 66.66666667%; }
  .col-sm-pull-7 {
    right: 58.33333333%; }
  .col-sm-pull-6 {
    right: 50%; }
  .col-sm-pull-5 {
    right: 41.66666667%; }
  .col-sm-pull-4 {
    right: 33.33333333%; }
  .col-sm-pull-3 {
    right: 25%; }
  .col-sm-pull-2 {
    right: 16.66666667%; }
  .col-sm-pull-1 {
    right: 8.33333333%; }
  .col-sm-pull-0 {
    right: auto; }
  .col-sm-push-12 {
    left: 100%; }
  .col-sm-push-11 {
    left: 91.66666667%; }
  .col-sm-push-10 {
    left: 83.33333333%; }
  .col-sm-push-9 {
    left: 75%; }
  .col-sm-push-8 {
    left: 66.66666667%; }
  .col-sm-push-7 {
    left: 58.33333333%; }
  .col-sm-push-6 {
    left: 50%; }
  .col-sm-push-5 {
    left: 41.66666667%; }
  .col-sm-push-4 {
    left: 33.33333333%; }
  .col-sm-push-3 {
    left: 25%; }
  .col-sm-push-2 {
    left: 16.66666667%; }
  .col-sm-push-1 {
    left: 8.33333333%; }
  .col-sm-push-0 {
    left: auto; }
  .col-sm-offset-12 {
    margin-left: 100%; }
  .col-sm-offset-11 {
    margin-left: 91.66666667%; }
  .col-sm-offset-10 {
    margin-left: 83.33333333%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-8 {
    margin-left: 66.66666667%; }
  .col-sm-offset-7 {
    margin-left: 58.33333333%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-5 {
    margin-left: 41.66666667%; }
  .col-sm-offset-4 {
    margin-left: 33.33333333%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-2 {
    margin-left: 16.66666667%; }
  .col-sm-offset-1 {
    margin-left: 8.33333333%; }
  .col-sm-offset-0 {
    margin-left: 0%; }
  .visible-xs {
    display: none !important; }
  .hidden-xs {
    display: block !important; }
  table.hidden-xs {
    display: table; }
  tr.hidden-xs {
    display: table-row !important; }
  th.hidden-xs,
  td.hidden-xs {
    display: table-cell !important; }
  .hidden-xs.hidden-print {
    display: none !important; }
  .hidden-sm {
    display: none !important; }
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }
