@charset "UTF-8";
body {
  text-align: center;
  color: #555555;
  font-size: 14px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
  body a {
    color: #0055c8; }
    body a:visited {
      color: #4249a6; }
    body a:hover {
      color: #1c1f83; }
/*
#outer {
  background: url(../images/bg_outer-upper.png) center bottom repeat-x; }
*/
#mainImage {
  position: relative;
  z-index: 5;
  width: 968px;
  margin: 25px auto 0;
  padding: 10px 0 15px;
  text-align: center;
  line-height: 1;
  background: url(../images/bg_main-image.png) center top no-repeat; }
  #mainImage img {
    vertical-align: top; }
  #mainImage .flexslider {
    position: relative;
    width: 950px;
    margin: 0 auto;
    background: none;
    border: none;
    box-shadow: none; }
  #mainImage ul.slides {
    background: none;
    border: none; }
    #mainImage ul.slides li {
      text-align: center;
      background: none;
      border: none; }
      #mainImage ul.slides li img {
        margin: 0 auto; }
  #mainImage ol.flex-control-nav {
    bottom: 25px; }

#top {
  position: relative;
  width: 960px;
  height: 120px;
  margin: 0 auto;
  text-align: left; }

#siteID {
  position: absolute;
  left: 0;
  top: 50px; }

ul#upperMenu {
  position: absolute;
  right: 5px;
/*  right: 265px; */
  bottom: 22px;
  list-style-type: none;
  font-size: 80%; }
  ul#upperMenu li {
    float: left;
    margin: 0 0 0 10px; }
    ul#upperMenu li a, ul#upperMenu li a:visited {
      color: #0055c8; }

#contactLink {
  position: absolute;
  right: 0;
  top: 8px;
  line-height: 1.1; }
  #contactLink img {
    margin-left: 35px;
    vertical-align: top; }
  #contactLink a {
    font-size: 80% !important; }

#spMenu {
  display: none; }

form#siteSearch {
  position: absolute;
  right: 0;
  bottom: 22px;
  width: 245px; }
  form#siteSearch .searchText {
    float: left;
    width: 200px;
    height: 25px;
    background: url(../images/bg_search-input.png) left top no-repeat; }
    form#siteSearch .searchText input {
      width: 170px;
      margin: 5px 0 0 25px;
      padding: 0;
      background: none;
      border: none; }
  form#siteSearch .searchButton {
    float: right; }
    form#siteSearch .searchButton input {
      display: block;
      width: 40px;
      padding: 4px 0;
      color: #fff;
      text-align: center;
      cursor: pointer;
      line-height: 1.2;
      font-weight: bold;
      background-position: right top;
      background-repeat: no-repeat;
      background-image: url(../images/bg_search-button.png);
      border: none; }
      form#siteSearch .searchButton input:hover {
        text-decoration: underline; }

#globalMenu {
  width: 960px;
  height: 60px;
  margin: 10px auto 0;
  font-size: 110%;
  line-height: 1.2;
  zoom: 1; }
  #globalMenu:before, #globalMenu:after {
    display: block;
    height: 0;
    visibility: hidden;
    content: "\0020"; }
  #globalMenu:after {
    clear: both; }
  #globalMenu ul.parent {
    list-style-type: none;
    zoom: 1; }
    #globalMenu ul.parent:before, #globalMenu ul.parent:after {
      display: block;
      height: 0;
      visibility: hidden;
      content: "\0020"; }
    #globalMenu ul.parent:after {
      clear: both; }
    #globalMenu ul.parent li {
      position: relative;
      float: left;
      height: 60px;
      /* IE8用に分けて記述 */ }
      #globalMenu ul.parent li a {
        display: block;
        height: 40px;
        overflow: hidden;
        color: #fff;
        text-decoration: none;
        background-position: center top;
        background-repeat: no-repeat; }
        #globalMenu ul.parent li a span.outer {
          display: block;
          margin: 10px 0 0;
          padding: 8px 10px;
          cursor: pointer;
          background-position: center center;
          background-repeat: no-repeat; }
        #globalMenu ul.parent li a span.inner {
          display: block; }
      #globalMenu ul.parent li:first-child a, #globalMenu ul.parent li.first a {
        background-position: left top; }
        #globalMenu ul.parent li:first-child a span.outer, #globalMenu ul.parent li.first a span.outer {
          border-left: none; }
      #globalMenu ul.parent li:last-child a {
        background-position: right top; }
      #globalMenu ul.parent li.last a {
        background-position: right top; }
    #globalMenu ul.parent ul.child {
      display: none;
      position: absolute;
      left: 0;
      top: 100%;
      width: 200px;
      font-size: 90%;
      box-shadow: 3px 3px 3px #999;
      behavior: url(../js/lib/PIE/PIE.php); }
      #globalMenu ul.parent ul.child li {
        position: static;
        float: none;
        height: auto;
        text-align: left; }
        #globalMenu ul.parent ul.child li a, #globalMenu ul.parent ul.child li a.visited {
          height: auto;
          overflow: visible;
          padding: 8px 5px 8px 25px;
          color: #0055c8;
          text-decoration: underline; }
          #globalMenu ul.parent ul.child li a:hover, #globalMenu ul.parent ul.child li a.visited:hover {
            text-decoration: none;
            color: #fff; }
           
#topicPath {
  width: 960px;
  margin: 0 0 20px 20px;
  text-align: left;
  font-size: 90%; }

#substance {
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  text-align: left; }
  body.home #substance {
    width: 960px;
    margin-top: 15px; }
  body.regular #substance {
    width: 968px;
    margin-top: 20px; }

.mainContents {
  min-height: 200px;
  padding: 0 0 15px;
  line-height: 1.5; }
  body.home .mainContents {
    float: left;
    width: 640px; }
  body.regular .mainContents {
    float: right;
    width: 728px; }
  body.noAside .mainContents {
    float: none;
    width: auto; }
  .mainContents .spCategoryMenu,
  .mainContents .spMoreLink {
    display: none; }

.subContents {
  min-height: 200px; }
  body.home .subContents {
    float: right;
    width: 280px; }
  body.regular .subContents {
    float: left;
    width: 228px; }
  .subContents #localMenu {
    margin: 0 0 40px;
    padding: 0 4px 4px;
    line-height: 1.2;
    font-weight: bold;
    background: url(../images/bg_local-menu.png) center bottom no-repeat; }
    .subContents #localMenu ul.parent {
      list-style-type: none; }
      .subContents #localMenu ul.parent li .localTop {
        display: block;
        padding: 20px 15px 20px 20px;
        font-size: 115%;
        font-weight: bold;
        color: #555;
        background-position: center top;
        background-repeat: repeat; }
    .subContents #localMenu ul.child li {
      padding: 1px 0 0;
      font-size: 105%;
      background: url(../images/bg_local-menu-line.png) center top no-repeat; }
      .subContents #localMenu ul.child li:first-child {
        background-image: none; }
      .subContents #localMenu ul.child li a {
        display: block;
        padding: 20px 20px 20px 30px;
        background: url(../images/ico_link-bullet2.png) 20px 24px no-repeat; }
    .subContents #localMenu ul.child li.current a {
      text-decoration: none;
      color: #555555;
      background-image: url(../images/ico_link-bullet5.png);
      background-position: 20px 24px;
      background-repeat: no-repeat; }

.pageTopLink {
  clear: both;
  overflow: hidden;
  width: 960px;
  margin: 0 auto;
  font-size: 85%;
  line-height: 1.1;
  text-align: left; }
  .pageTopLink a {
    display: block;
    float: right;
    padding: 0 0 0 35px;
    background: url(../images/bg_page-top.png) left top no-repeat; }
    .pageTopLink a span {
      display: block;
      padding: 8px 20px 5px 0;
      background: url(../images/bg_page-top.png) right top no-repeat; }

#bottom {
  min-height: 100px;
  margin: 15px 0 0;
  text-align: center;
  line-height: 1.3; }

#footerMenu {
  padding: 30px 0 0; }
  #footerMenu ul.parent {
    width: 960px;
    overflow: hidden;
    margin: 0 auto;
    text-align: left;
    list-style-type: none; }
    #footerMenu ul.parent li {
      float: left;
      width: 135px;
      padding-bottom: 13px; }
      #footerMenu ul.parent li a, #footerMenu ul.parent li a:visited {
        display: block;
        margin-right: 20px;
        margin-bottom: 15px;
        padding-left: 10px;
        font-weight: bold;
        font-size: 105%;
        color: #0055c8;
        background: url(../images/ico_link-bullet2.png) left 5px no-repeat; }
        #footerMenu ul.parent li a:hover, #footerMenu ul.parent li a:visited:hover {
          color: #1c1f83; }
  #footerMenu ul.child li {
    float: none;
    width: auto;
    font-size: 85%; }
    #footerMenu ul.child li a, #footerMenu ul.child li a:visited {
      height: auto;
      min-height: 1px;
      margin-bottom: 0;
      font-weight: normal;
      color: #555555;
      background: url(../images/ico_link-bullet3.png) left 5px no-repeat; }

#kawaiJukuGroup {
  padding: 15px 0 20px;
  border-top: 1px solid #e5e5e5; }
  #kawaiJukuGroup .inner {
    overflow: hidden;
    width: 960px;
    margin: 0 auto;
    text-align: left; }
  #kawaiJukuGroup h2 {
    float: left;
    padding-top: 5px; }
  #kawaiJukuGroup dl.groupMenu {
    float: right;
    margin: 0 -10px 0 0;
    line-height: 1.2; }
    #kawaiJukuGroup dl.groupMenu dt {
      margin: 0 0 3px; }
    #kawaiJukuGroup dl.groupMenu dd {
      float: left;
      font-size: 85%;
      margin-right: 5px;
      padding-right: 5px;
      border-right: 1px solid #555555; }
      #kawaiJukuGroup dl.groupMenu dd a, #kawaiJukuGroup dl.groupMenu dd a:visited {
        display: block;
        color: #0055c8; }
p.copyrights {font-size:90%;
        margin:30px 0;
                     }