@charset "UTF-8";

/* =========================================================
   Base
========================================================= */

/* elements
----------------------------------------------- */
html {
  height: 100%;
}
body {
  width: 100%;
  height: 100%;
  line-height: 1.5;
  border: 0;
  font-size: 87.5%;
  overflow-wrap: break-word;
  -webkit-text-size-adjust: 100%;
}
body, td, th, select, option, input, button, textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Source Han Sans JP", "Noto Sans JP", "Helvetica Neue", "Hiragino Kaku Gothic ProN", Verdana, Meiryo, sans-serif;
  font-weight: normal;
}
input, textarea, select {
  max-width: 100%;
  font-size: 110%;
}
input[type="image"], input[type="submit"], button {
  cursor: pointer;
}
blockquote {
  margin: 10px 20px;
}
h1, h2, h3, h4, h5 {
  font-size: 115%;
  font-weight: bold;
}
img {
  width: auto;
  height: auto;
  max-width: 100%;
  border: 0;
  vertical-align: bottom;
}
img.external {
  margin: 0 0.25em;
  vertical-align: middle;
}
.maps img, #map_canvas img, #canvas img {
  max-width: none;
}
@media only screen and (max-width: 600px) {
  .body img:not(.external):not(.spacer) {
    width: auto !important;
    height: auto !important;
  }
}
address, cite, dfn, em, var {
  font-style: normal;
  font-weight: normal;
}
strong {
  font-weight: bold;
}
pre {
  font-family: -apple-system, BlinkMacSystemFont, "源ノ角ゴシック code JP", Osaka-mono, "メイリオ", monospace;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: auto;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}
ul {
  list-style-position: outside;
  list-style-type: none;
}
li {
  list-style-position: outside;
}
rp, rt {
  font-size: 80%;
  text-decoration: none;
}
a {
  background-color: transparent;
  color: #0032a0;
}
a:visited {
  background-color: transparent;
  color: #8232a0;
}
a:hover, a:focus {
  background-color: transparent;
  color: #be1e32;
}
a img:hover,
a img:focus {
  opacity: 0.9;
}

/* =========================================================
   Common Classes.
========================================================= */

/* Icons.
----------------------------------------------- */
.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");
}

/* Common
----------------------------------------------- */
/* more
---------------------- */
.more {
  text-align: right;
}
.more span {
  padding-right: 10px;
}

/* pagination
---------------------- */
.pagination {
  margin-top: 20px;
  text-align: center;
}
.pagination a, .pagination em, .pagination span {
  display: inline-block;
  padding: 0 6px;
  vertical-align: middle;
}
.pagination .current {
  font-size: 150%;
  font-weight: bold;
  padding: 0 3px;
}

/* breadCrumbs
---------------------- */
#breadCrumbs:after {
  content: "";
  clear: both;
  display: block;
}
#breadCrumbs ol,
#breadCrumbs li {
  list-style: none;
}
#breadCrumbs li {
  display: inline-block;
}
#breadCrumbs li:not(:first-child):before {
  content: ">";
  margin: 0 5px;
}
@media only screen and (max-width: 1200px) {
  #breadCrumbs {
    margin: 0 10px 10px;
  }
}
@media only screen and (max-width: 600px) {
  #breadCrumbs ol:not(:first-child) {
    display: none;
  }
}

/* feed
---------------------- */
.feed {
  text-align: right;
}
ul.feed li {
  display: inline-block;
  padding: 0;
}
ul.feed li:first-child {
  margin-right: 2px;
}
ul.feed li a {
  display: block;
  line-height: 18px;
  padding: 0 3px;
  border-radius: 4px;
  background-color: #c85000;
  background-position: 3px center;
  background-repeat: no-repeat;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
}
ul.feed li:first-child a {
  padding-left: 16px;
  background-image: url("./images/ic-feed.svg");
}
.fb-wrapper {
  display: inline-block;
}
#sns.piece {
  margin: 20px auto;
  padding: 0;
}
.twitter-wrapper, .g-wrapper, .fb-wrapper, .mixi-wrapper, .line-wrapper {
  display: inline-block;
  line-height: 10px;
  vertical-align: top;
}
.twitter-wrapper iframe {
  width: 90px !important;
}
.g-wrapper div {
  width: 60px !important;
}
.dir-docs #sns {
  display: none;
}
#sns .pieceBody .fb-wrapper {
  display: inline;
  vertical-align: top;
}
.dir-docs .back-btn {
  display: none;
}
.back-btn, .surveyForm .back {
  margin: 13px 0 20px;
  text-align: center;
}
.back-btn a, .surveyForm .back a {
  background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #ffffff 0%, #f2f2f2 100%) repeat scroll 0 0;
  border: 1px solid #ccc;
  color: #000;
  display: block;
  margin: 0 auto;
  padding: 8px 0;
  text-decoration: none;
  width: 100px;
}
.pageTop {
  margin: 5px 0 30px;
  text-align: right;
}
.pageTop a {
  background-image: url("./images/ic-top.gif");
  background-position: left center;
  background-repeat: no-repeat;
  padding: 0 0 0 15px;
}

/* required
---------------------- */
.required {
  color: #ee0000;
}
.nowrap {
  white-space: nowrap;
}
.body p,
#about p {
  margin-bottom: 15px;
  padding: 0 18px;
  background-image: url("./images/toka.gif");
}
#about p {
  padding: 0;
}

/* CKEditor templates
----------------------------------------------- */
.temp1:after, .temp2:after, .temp3:after, .temp4:after {
  content: "";
  clear: both;
  display: block;
}
.temp1, .temp2, .temp3, .temp4 {
  margin-bottom: 20px;
}
.temp1 .thumb {
  float: left;
  margin-bottom: 10px;
  margin-right: 20px;
}
.temp1 .thumb + div {
  float: left;
}
.temp1 ul,
.temp1 ol {
  display: inline-block;
  vertical-align: top;
}
.temp2 .thumb {
  float: right;
  margin-bottom: 10px;
  margin-left: 20px;
}
.temp3, .temp4, .temp8 {
  text-align: center;
  letter-spacing: -0.4em;
}
.temp8 {
  text-align: left;
}
.temp3 dl, .temp4 dl, .temp8 dl {
  display: inline-block;
  margin: 0 1%;
  vertical-align: bottom;
  letter-spacing: normal;
}
.temp3 dl {
  max-width: 49%;
}
.temp4 dl {
  max-width: 32%;
}
.temp8 dl {
  margin-bottom: 1em;
  vertical-align: top;
}
.temp8 dl ul {
  display: inline-block;
  text-align: left;
}
.temp3 dl:first-child,
.temp4 dl:first-child {
  margin-left: 0;
}
.temp3 dl:last-child,
.temp4 dl:last-child {
  margin-right: 0;
}
.temp3 dl dt, .temp4 dl dt, .temp8 dl dt {
  margin-bottom: 10px;
  text-align: center;
}
.temp3 dl dd, .temp4 dl dd, .temp8 dl dd {
  text-align: center;
}
table.temp5 {
  width: 100%;
}
.temp7 {
  margin: 10px 0;
  padding: 10px;
  border: 1px solid #ffaaaa;
  background-color: #fff3f3;
}
.temp7 p {
  margin: 0 0 10px;
}
.body table[border="0"], .body table[border="0"] th, .body table[border="0"] td {
  border: 0;
  background-color: transparent;
}

@media only screen and (max-width: 1200px) {
  .temp3 dl {
    max-width: 48.2%;
  }
  .temp4 dl {
    max-width: 31.5%;
  }
}
@media only screen and (max-width: 600px) {
  .temp1 .thumb,
  .temp1 .thumb + div,
  .temp2 .thumb {
    float: none;
    margin: 0 0 10px;
  }
  .temp3 dl, .temp4 dl,
  .temp3 dl:first-child,
  .temp4 dl:first-child,
  .temp3 dl:last-child,
  .temp4 dl:last-child {
    max-width: 100%;
    margin: 0 1% 2%;
  }
  .temp8 {
    text-align: center;
  }
}

/* adobeReader download
----------------------------------------------- */
.adobeReader, .temp7 {
  clear: both;
  margin: 0 0 20px;
  padding: 10px 20px 10px 196px;
  border: 1px solid #ffaaaa;
  background: #fff3f3 url("./images/adobe_bn.png") no-repeat scroll 20px center;
}
@media only screen and (max-width: 600px) {
  .adobeReader, .temp7 {
    padding: 10px 20px;
    background-image: none;
  }
}

/* clearfix
----------------------------------------------- */
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}