@charset "UTF-8";

/* =========================================================
   Base
========================================================= */

/* elements
----------------------------------------------- */
html {
  height: 100%;
  font-size: 85%;
}
body {
  width: 100%;
  height: 100%;
  border: 0px;
  font-size: 87.5%;
  line-height: 1.8;
}
body, td, th, select, option {
  font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
}
input, textarea {
  font-size: 110%;
  _font-size: 100%;
  font-family: Arial, sans-serif;
}
blockquote {
  margin: 10px 20px;
}
h1, h2, h3, h4, h5 {
  font-size: 120%;
}
h1{
  margin: 20px 0;
}
h2{
  margin: 15px 0;
}
h3, h4, h5 h6{
 margin: 15px 0; 
}
img {
  border-style: none;
  max-width:100%;
  vertical-align: bottom;
}
strong {
  font-weight: bold;
}
pre {
  font-family: SimHei, "ＭＳ ゴシック", monospace;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}
ul {
  list-style-type: none;
  list-style-position: outside;
}
li {
  margin: 0;
  padding: 0;
 list-style-position:outside;
}
ol li {
  padding-left: 1.5em;
  text-indent: -1.5em;
  list-style-position: inside;
}
ul li ul {
  padding-left:1em;
}
rp, rt {
  font-size: 80%;
  text-decoration: none;
}
a {
  color: #003399;
}
a:visited {
  color: #660099;
}
a:hover {
  color: #CA0000;
  text-decoration: underline;
}

/* =========================================================
   Common Classes.
========================================================= */

/* blank to clear
----------------------------------------------- */
div.clearBlank {
  clear: both;
  height: 1px;
  font-size: 1px;
  line-height: 1px;
}

/* icon
----------------------------------------------- */
img.fileIcon {
  position: relative;
  margin-right: 3px;
  vertical-align: middle;
}

/* Notices
----------------------------------------------- */
ul.notices {
  margin: 0px 0px 15px;
  padding: 5px 10px;
  background-color: #ddeeff;
  border: 1px solid #bbddff;
}
ul.notices li {
  color: #3355ff;
}

/* Errors
----------------------------------------------- */
.formError {
  margin: 15px 0;
  padding: 10px;
  border: 1px solid #ee0000;
  color: #ee0000;
}
.elementError {
  margin: 3px 0 0;
  color: #e00;
}
.errorExplanation {
  margin: 20px 20px;
  padding: 10px 15px;
  border-radius: 8px;
  background-color: #fff6f7;
  color: #c20;
}
.errorExplanation h2 {
  margin: -10px -15px 10px;
  padding: 5px 15px;
  font-weight: bold;
  border-radius: 8px 8px 0px 0px;
  background-color: #f56;
  color: #fff;
}
.errorExplanation p {
  margin: 0px 0px 5px;
  font-size: 110%;
  font-weight: bold;
}
.errorExplanation ul {
  margin: 0px 20px;
  list-style-type: disc;
}
.errorExplanation li {
  padding: 1px 0px;
}

/* field with errors
----------------------------------------------- */
.field_with_errors {
  display: inline;
}
.field_with_errors input,
.field_with_errors textarea, 
.field_with_errors select {
  border: 1px solid #e00;
}
.field_with_errors input[type=radio] {
  margin-right: 6px;
  outline: 1px solid #e00;
}
.field_with_errors + .field_with_errors,
.field_with_errors ~ .field_with_errors {
  display: inline;
}
.field_with_errors input[type="hidden"] {
  display: none;
}

/* Table for list
----------------------------------------------- */
table.list {
  width: 100%;
}
table.list th {
  padding: 6px 7px;
  border: 1px solid #bbbbbb;
  background-color: #e4e4e4;
  color: #000000;
  font-weight: lighter;
  text-align: left;
}
table.list td {
  padding: 6px 7px;
  border: 1px solid #cccccc;
}
table.list tr.cycle td {
  background-color: #f7f7f7;
}

/* Table for form
----------------------------------------------- */
table.form {
  width: 100%;
  margin: 10px 0 0;
}
table.form th {
  width: 200px;
  padding: 6px 7px;
  border: 1px solid #bbbbbb;
  background-color: #e4e4e4;
  color: #000000;
  font-weight: lighter;
  text-align: left;
}
table.form td {
  padding: 6px 7px;
  border: 1px solid #cccccc;
}

/* Form relation
----------------------------------------------- */
div.submitters {
  margin: 20px 10px;
}
div.submitters input, div.submitters a {
  margin: 0 10px;
}
div.submitters input {
  padding: 2px 20px;
}

/* feed
----------------------------------------------- */
.feed {
  position: relative;
  right: 0px;
  float: right;
  background-color: transparent;
}
.feed a, .feed a {
  display: inline-block;

} 
.feed a.rss, .feed a.atom, a.feedRss, a.feedAtom {
  margin-right: 5px;
  padding: 0 5px;
  padding: 1px 4px 1px;
  border-radius: 3px;
  background-color: #BF4500;
  color: #FFF;
  text-decoration: none;
}

/* pagination
----------------------------------------------- */
.pagination {
  text-align: center;
}
.pagination a,
.pagination .disabled {
  padding: 0 6px;
}
.pagination em {
  padding: 0 3px;
  font-weight: bold;
  font-size: 150%;
  font-style: normal;
}

.iconFile, .iconDefault {
  min-height: 16px;
  padding-left: 22px;
  background-image: url("/_common/images/icons/default.png");
  background-repeat: no-repeat;
}
.iconBmp {
  background-image: url("/_common/images/icons/bmp.png");
}
.iconCsv, .iconTxt {
  background-image: url("/_common/images/icons/default.png");
}
.iconDoc, .iconDocx {
  background-image: url("/_common/images/icons/doc.png");
}
.iconGif {
  background-image: url("/_common/images/icons/gif.png");
}
.iconJpg, .iconJpe, .iconJpeg {
  background-image: url("/_common/images/icons/jpg.png");
}
.iconJtd {
  background-image: url("/_common/images/icons/jtd.png");
}
.iconLzh {
  background-image: url("/_common/images/icons/lzh.png");
}
.iconPdf {
  background-image: url("/_common/images/icons/pdf.png");
}
.iconPng {
  background-image: url("/_common/images/icons/png.png");
}
.iconPpt, .iconPptx {
  background-image: url("/_common/images/icons/ppt.png");
}
.iconXls, .iconXlsx {
  background-image: url("/_common/images/icons/xls.png");
}
.iconZip {
  background-image: url("/_common/images/icons/zip.png");
}

/* CKEditor templates
----------------------------------------------- */
.temp1,
.temp2,
.temp3,
.temp4 {
  clear: both;
  margin-bottom: 20px;
}
.temp1 .thumb {
  float: left;
  margin-bottom: 10px;
  margin-right: 20px;
}
.temp1 ul,
.temp1 ol {
  display: inline-block;
  vertical-align: top;
}
.temp2 .thumb {
  float: right;
  margin-bottom: 10px;
  margin-left: 20px;
}
.temp3,
.temp4 {
  display: flex;
  justify-content: center;
}
.temp3 dl,
.temp4 dl {
  margin: 0 5px;
  padding: 0;
  vertical-align: bottom;
}
.temp3 dl {
  max-width: 48%;
}
.temp4 dl {
  max-width: 31%;
}
.temp3 dl dt,
.temp4 dl dt {
  margin-bottom: 10px;
  text-align: center;
}
.temp3 dl dd,
.temp4 dl dd {
  margin: 0;
  text-align: center;
}
table.temp5,
table.temp6 {
  margin-bottom: 30px;
}
.temp5 caption,
.temp6 caption {
  text-align: center;
}
.temp5 th,
.temp5 td,
.temp6 th,
.temp6 td {
  padding: 6px 10px;
  border: 1px solid #b3b3b3;
  text-align: center;
}

/* adobeReader download
----------------------------------------------- */
.adobeReader, .temp7 {
  clear: both;
  margin: 0 0 20px;
  padding: 10px 20px 10px 196px;
  border: 1px solid #faa;
  background: #fff3f3 url("../images/adobe_bn.png") no-repeat 20px center;
}
.adobeReader p, .temp7 p {
  margin: 0 0 10px;
}

/* clearfix
----------------------------------------------- */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

#nocssread a {
  display: block;
  width: 0px;
  height: 0px;
  overflow: hidden;
}
.aboutBlock {
  margin-bottom: 30px;
}


/* =========================================================
   content
========================================================= */

/* navigationNotice
----------------------------------------------- */
#navigationNotice{
  background: #DDDDDD;
  font-weight: bold;
  padding: 6px 10px;
}

/* category, article
----------------------------------------------- */
.contentGpCategoryCategoryTypes section h2 {
  margin-bottom: 15px;
  padding: 5px 0 5px 15px;
  font-size: 140%;
  font-weight: bold;
}
.contentGpArticleDocs .docs li,
.contentGpCategory ul li {
  margin-bottom: 3px;
  padding: 1px 0 1px 10px;
  background-position: left center;
  background-repeat: no-repeat;
}
.contentGpArticleDoc .date {
  margin: -10px 0 18px;
}
p.indent {
  text-indent: 1em;
  margin-bottom: 10px;
}

/* midashi
----------------------------------------------- */
.body h2 {
  margin-bottom: 15px;
  padding: 5px 0 5px 15px;
  font-size: 140%;
  font-weight: bold;
}
.body h2 + p img {
  margin-bottom: 10px;
}
.body h3 {
  padding: 5px 0 5px 10px;
  border-bottom: 1px solid #B3B3B3;
}
.body h4 {
  font-size: 110%;
}
.body table, .body th, .body td {
  border-color: #ccc;
}
.maps h2, .rels h2, .tags h2 {
  margin-bottom: 15px;
  padding: 5px 0 5px 10px;
  border-left: 10px solid #808080;
  background: #E6E6E6;
  font-weight: normal;
}
.maps h3 {
  padding: 5px 0;
  font-weight: normal;
}
.rels ul, .tags ul {
  list-style-type: none;
}
.rels ul li, .tags ul li {
  margin-bottom: 3px;
  padding: 1px 0 1px 10px;
  background-position: left center;
  background-repeat: no-repeat;
}
.inquiry {
  border-radius: 0;
  border-color: #808080;
}
.inquiry h2 {
  background: #E6E6E6;
  padding: 5px 10px;
  margin-top: 20px;
}

/* back-btn
----------------------------------------------- */
.back {
  margin: 40px 0 20px;
}
.back a {
  border-radius: 0;
}
.back a {
    display: block;
    width: 100px;
    margin: 0px auto;
    padding: 10px 15px 13px;
    border-radius: 0px;
    background-color: #E6E6E6;
    color: #000;
    text-decoration: none;
    text-align: center;
}

/* old google map for convert
----------------------------------------------- */
.body #map_canvas {
  position: relative;
  max-width: 100%;
  background-color: #ccc;
}
.body #map_canvas:after {
  content: "地図タブでGoogleマップを設定してください。";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  margin-top: -0.5em;
  font-size: 130%;
  }
  
/* google custom search
----------------------------------------------- */
#___gcse_0 > .gsc-control-cse {
  padding: 0 !important;
  background-color: transparent !important;
  border: none !important;
}
#___gcse_0 .gsc-input-box {
  width: 100%;
  padding: 0;
  border-color: #ccc;
}
.gsc-search-box-tools .gsc-search-box .gsc-input {
  max-height: 100%;
  padding: 0 !important;
}
.gsib_a {
  padding: 2px 8px !important;
}
table.gsc-search-box td {
  vertical-align: bottom !important;
}
.cse .gsc-search-button input.gsc-search-button-v2, input.gsc-search-button-v2,
input.gsc-search-button, input.gsc-search-button:hover, input.gsc-search-button:focus {
  margin: 0 !important;
  padding: 6px 18px !important;
  border-color: #4d4d4d !important;
  background-image: none !important;
  background-color: #4d4d4d !important;
  filter: none !important;
}
.gsc-results .gsc-cursor-box {
  text-align: center;
}
.cse .gsc-control-cse, .gsc-control-cse {
  padding: 0 !important;
  border: none !important;
  background: none !important;
}
form.gsc-search-box {
  margin: 0 !important;
}
table.gsc-search-box {
  margin: 0 !important;
}
input.gsc-search-button {
  filter: none !important;
}
/* IE11で検索語入力中に×が二個表示される問題 */
@media all and (-ms-high-contrast:none){
  .gsst_b { display: none; }
}

@media screen and (max-width: 768px) {
  #___gcse_0:before, #___gcse_0:after {
    content: "";
    display: table;
  }
  #___gcse_0:after {
    clear: both;
  }
  #___gcse_0 {
    float: none;
    width: 100%;
    margin: 0 0 10px;
    zoom: 1;
  }
  #___gcse_0 .gsc-input-box {
    width: auto !important;
  }
}

.category {
  margin-bottom: 20px;
}

