@charset "UTF-8";
body {
  font-family: Roboto, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Helvetica, Arial, sans-serif; }
  body * {
    line-height: 1.7em; }
  iframe {
    max-width: 100%; }
  div, h1, h2, h3, h4, p, li, dt, dd, table, caption,
  tr, th, td, legend, label, select, input, textarea {
    font-size: 14px; }
  body a {
    font-size: inherit;
    font-weight: inherit;
    text-decoration: none; }
  body span {
    font-size: inherit;
    font-weight: inherit; }
  body li {
    list-style: none; }
  .archive, .post, .page, .blog, .home, .sitemap {
    overflow: hidden; }

  table {
    margin: 15px 0;
    width: 100%; }
  thead {
    display: none; }
  th, td {
    display: block; }
  th {
    padding: 3px 5px;
    text-align: center; }
  td {
    padding: 3px 5px;
    text-align: left; }

.clearfix {
  display: table;
  line-height: 0;
  overflow: visible; }
  .clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    font-size: 0;
    visibility: hidden; }

/* page layout */
#wrapper {
  overflow: hidden; }

/* header content */
header {
  position: relative; }
.logo {
  max-height: 50px;
  max-width: 200px;
  display: inline;
  vertical-align: middle;
  background-repeat: no-repeat; }

/* menu */
.sub-menu, .sub-menu {
  display: none; }

#panel-menu-link {
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -0.8em; }
  #panel-menu-link img {
    display: inline-block;
    height: 25px;  }

#panel-menu {
  display: none;
  width: 100%;
  background: #FAFAFA;
  padding: 10px 0 0; }
#panel-menu li {
  border-bottom: 1px dotted #CCC; }
#panel-menu li a {
  display: block;
  padding: 7px 15px; }

#top-nav {
  overflow: hidden;
  margin-bottom: 20px; }

#top-nav li, #footer-nav li {
  background-image: url(../img/back/navi_back.png);
  background-position: 0 0;
  background-repeat: repeat;
  width: 50%;
  float: left;
  display: inline-block; }

  #top-nav li a, #footer-nav li a {
    padding: 8px 15px;
    display: block;
    overflow: hidden;
    white-space: nowrap; }

/* footer contents */
#footer-nav {
  overflow: hidden; }

#copyright {
  text-align: center;
  padding: 8px 0; }

/** main content **/
.headline {
  font-size: 16px;
  margin: 5px 10px; }

.box {
  padding: 10px 5px; }
  .box a {
    overflow: hidden; }
  .box .box-pic {
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
    display: table-cell;
    padding-left: 5px;
    width: 105px; }
    .box .box-pic img {
      display: block;
      width: 100px; }
  .box .box-detail {
    display: table-cell;
    width: 100%;
    padding: 0 8px 0 15px; }

  .box-wide {
    text-align: center; }
  .box .box-wide-image {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
  .box .box-wide-title,
  .box .box-wide-desc {
    padding: 0 8px; }
  .box .box-wide-title {
    padding: 8px 0;
    font-size: 16px; }
  .box .box-wide-desc {
    text-align: left; }

#next {
  text-align: center; }
#next a {
  display: block;
  padding: 10px 0; }
#loading {
  display: none; }

/** Top Page **/
#slider {
  position: relative;
  width: 100%;
  overflow: hidden; }
.carousel {
  line-height: 1em; }
.nivo-controlNav {
  display: none; }

.news-release dl {
  margin-bottom: 20px; }
  .news-release dt {
    padding: 7px 0 0 1em;
    width: 7em;
    clear: left;
    float: left; }
  .news-release dd {
    border-bottom: 1px solid #AAAAAA;
    padding: 7px 0;
    padding-left: 8em; }


/** sitemap **/
.sitemap h2 {
  font-size: 16px;
  margin-bottom: 10px;
  padding: 15px 0 8px 10px; }
.sitemap .sub-content {
  margin: 5px 0 5px 20px; }
  .sitemap .sub-content li {
    display: inline-block;
    margin: 5px 0;
    padding-left: 15px; }

/** map **/
.mapp-layout {
  width: 100% !important;
  margin: 15px auto; }
.mapp-map-links {
  display: none; }

.aligncenter {
  display: block;
  margin-top: 20px;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto; }

.wp-caption {
  padding-top: 5px;
  text-align: center; }

/** article **/
.content-body {
  margin: 5px 10px 30px; }

  .content-body h2 {
    margin: 10px -10px 10px;
    padding: 5px 0 5px 10px;
    background-position: 0 center;
    background-repeat: no-repeat;
    font-size: 14px; }
  .content-body h2:first-child {
    margin-top: 10px; }

  .content-body h3 {
    margin: 15px 0 10px;
    font-size: 14px; }
  .content-body h4 {
    padding-left: 20px;
    font-size: 14px; }
  .content-body p {
    margin-bottom: 10px;
    line-height: 1.7em; }
  .content-body img {
    margin: 5px auto 10px;
    display: block;
    max-width: 100%;
    height: auto; }

.content-body dl {
  margin-bottom: 10px;
  overflow: hidden; }
  .content-body dt {
    display: list-item;
    list-style: circle;
    font-weight: bold;
    padding: 3px 0 3px 3px;
    width: 100%; }
  .content-body dd {
    padding: 3px 0 3px 15px; }

.content-body ol {
  margin-bottom: 10px;
  padding-left: 25px; }
  .content-body ol li {
    list-style-type: decimal; }
.content-body ul {
  list-style-type: square;
  padding-left: 25px;
  margin-bottom: 10px; }
  .content-body li {
    list-style: inherit; }


.content-body .column-table td {
  border: none; }
.content-body .column-table tr:first-child {
  display: none; }

.content-body .row-table table {
  border-top: none; }

/** comment **/
#comments {
  padding: 10px 0; }
  #commentform, #comments ol {
    margin: 0 10px; }
  #comments h3 {
    font-size: 16px;
    clear: both;
    padding: 10px 0 0 10px;
    margin: 0 0 10px 0; }
    #comments h3 small {
      margin-left: 10px; }
  #comments .comment-box {
    position: relative;
    overflow: hidden; }
  #comments .avatar {
    position: absolute;
    left: 0px;
    top: 0px; }
  #comments .children, #comments .comment-inner {
    margin-left: 60px; }
  #comments .comment-header {
    margin-bottom: 0px;
    padding-left: 10px; }
  #comments .comment-content {
    padding: 5px; }
  #comments .date, #comments .reply {
    float: right;
    margin-right: 10px; }
  #comments table {
    width: 100%; }
    #comments th {
      width: 30%;
      font-weight: normal;
      vertical-align: middle;
      text-align: left;
      padding: 5px 10px; }
    #comments td {
      width: 60%;
      padding: 5px; }
      #comments td input, #comments td #comment {
        height: 1.3em;
        width: 98%; }
      #comments td #comment {
        height: 100px; }
  #commentform th , #commentform td {
    border: none; }

.form-submit {
  margin-top: 10px;
  text-align: right; }
  .form-submit input {
    padding: 5px;
    margin-left: 15px;
    cursor: pointer; }

/* お問い合わせ */
#contact .error {
  display: block;
  margin: 5px 0 0 10px; }
#contact-form input[type="text"],
#contact-form input[type="email"],
#contact-form input[type="tel"],
#contact-form input[type="password"],
#contact-form textarea {
  display: block;
  padding: 0;
  width: 99%; }

#contact-form .wpcf7-submit {
  width: 100px;
  padding: 5px 10px;
  margin: 0 auto; }

#contact-form .wpcf7-list-item {
  display: block; }
#contact-form .submit-form {
  overflow: hidden; }
#contact-form .submit-form input {
  float: right;
  margin-right: 5px; }

/** widget **/
.widget {
  margin: 5px; }
.widget-title {
  margin: 5px -5px;
  padding: 2px 5px; }
.widget li a {
  padding: 3px 5px;
  display: block; }

#footer_language_list{
  text-align: center; }
#footer_language_list ul{
  list-style: none;
  margin: 0;
  padding: 0; }
#footer_language_list ul li img{
  margin-right: 5px; }
#footer_language_list ul li{
  display: inline;
  margin: 0 5px;
  padding: 0; }
#footer_language_list ul li a, #footer_language_list ul li a:visited{
  color: #FFFFFF;
  text-decoration:underline; }
#footer_language_list ul li a:hover, #footer_language_list ul li a:active{
  color: #FFFFFF; }
#flags_language_selector img{
      margin:1px;
      border:1px solid #333;
}

/** temp style **/
.content-body h2, .content-body h4, .content-body ul, .content-body ol {
  overflow: hidden; }
.content-body ol li {
  padding: 2px 0; }


