@charset "UTF-8";

/* =========================================================
   Base
========================================================= */

/* elements
----------------------------------------------- */
html {
  height: 100%;
  font-size: 90%;
}

body {
  width: 100%;
  height: 100%;
  border: 0px;
  color: #382100;
  font-size: 87.5%;
  line-height: 1.5;
  _display: inline;
  _zoom: 1;
}

body,
td,
th,
select,
option {
  font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
}

@media (min-resolution: .001dpcm) {

  /* opera12 */
  _:-o-prefocus,
  body,
  td,
  th,
  select,
  option {
    font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro W3", Osaka, sans-serif;
  }

  ;
}

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%;
  font-weight: bold;
}

img {
  border-style: none;
  vertical-align: bottom;
}

img.external {
  margin-left: 0.25em;
  vertical-align: middle;
}

strong {
  font-weight: bold;
}

pre {
  font-family: SimHei, "ＭＳ ゴシック", monospace;
}

table {
  border-collapse: collapse;
  border-spacing: 0px;
  empty-cells: show;
}

ul {
  list-style-type: none;
  list-style-position: outside;
}

li {
  list-style-position: outside;
}

rp,
rt {
  font-size: 80%;
  text-decoration: none;
}

sup {
  font-size: 80%;
  vertical-align: super;
}

a {
  color: #005299;
  background-color: transparent;
  text-decoration: none;
}

a:visited {
  background-color: transparent;
}

a:hover,
a:focus {
  color: #003366;
  background-color: transparent;
  text-decoration: underline;
}

a[name] {
  color: #000;
}

a img[src$=".gif"]:hover,
a img[src$=".gif"]:focus,
a img[src$=".jpg"]:hover,
a img[src$=".jpg"]:focus {
  opacity: 0.9;
  filter: alpha(style=0, opacity=90);
}

/* midashi
----------------------------------------------- */
.body h2,
.body h3,
.body h4,
.body h5 {
  margin: 0 0 10px;
}

.body h2 {
  position: relative;
  margin-bottom: 10px;
  padding: 15px 15px 10px;
  background: #E3DECB;
  font-size: 140%;
  font-weight: normal;
  line-height: 1.1;
  zoom: 1;
}

.body h2:after {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
}

.body h3 {
  position: relative;
  z-index: 10;
  padding: 4px 5px;
  background: #FFF28A;
  font-size: 130%;
  font-weight: bold;
  line-height: 1.1;
}

.body h3:after {
  content: "";
  position: absolute;
  bottom: 10px;
  left: -1px;
  right: -1px;
  z-index: -1;
  display: block;
  height: 100%;
  background: #fff;
}

.body h4 {
  padding: 2px 0 2px 5px;
  border-left: 5px solid #ADA797;
  font-size: 110%;
  font-weight: bold;
}

.body h5 {
  font-size: 110%;
  font-weight: bold;
}

.body p {
  margin-bottom: 1em;
}

.body p.indent {
  text-indent: 1em;
}

.body p.hanging-indent {
  padding-left: 1em;
  text-indent: -1em;
}

.body p img {
  margin-bottom: 0;
}

.body img {
  margin-bottom: 10px;
}

.body hr {
  height: 0px;
  border: none;
  border-bottom: 1px dotted #ccc;
}

.body ul {
  margin: 0 15px 15px 2em;
  list-style-type: disc;
}

.body ul ul {
  list-style-type: circle;
}

.body ol {
  margin: 0 15px 15px 2.5em;
}

.body dl {
  margin: 5px 1em 15px;
}

.body dl dt {
  margin-top: 10px;
  font-weight: bold;
}

.body table {
  width: auto;
  max-width: 100%;
  margin: 0 0 15px;
  border: 1px solid #ADA797;
}

.body table th,
.body table td {
  padding: 10px;
  border: 1px solid #ADA797;
}

.body table th {
  background-color: #E3DECB;
  text-align: center;
}

.body strong {
  color: #000;
}

/* 表のプロパティの行揃え */
.body table[align="center"] {
  margin-left: auto;
  margin-right: auto;
}

.body table[align="right"] {
  margin-left: auto;
  margin-right: 0;
}

.body table[align="left"] {
  margin-left: 0;
  margin-right: auto;
}

.body table caption {
  font-weight: bold;
  text-align: center;
}

.body th,
.body td {
  padding: 5px 20px 5px 0;
  vertical-align: middle;
  word-wrap: break-word;
}

.body th {
  text-align: left;
}

.body table p {
  margin-left: 0;
  padding: 0;
  text-indent: 0;
}

.body table ul,
.body table ol {
  margin: 0 0 5px 20px;
}

.pagination {
  text-align: center;
}

/* RSS Atom
---------------------- */
.feed {
  text-align: right;
}

.feed a {
  display: inline-block;
  /display: inline;
  /zoom: 1;
  padding: 0px 4px 3px;
  background-color: #BF4500;
  color: #fff;
  text-decoration: none;
}

/* mceTmpl
----------------------------------------------- */
.mceTmpl:before,
.mceTmpl:after {
  content: "";
  display: table;
}

.mceTmpl:after {
  clear: both;
}

.mceTmpl {
  zoom: 1;
}


/* clearfix
----------------------------------------------- */
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

/* pdf
-------------------------------------- */
a.iconFile {
  background-image: url(./ic-hanyo.gif);
  background-position: left 8px;
  background-repeat: no-repeat;
  display: inline-block;
  padding: 6px 0 5px 18px;
}

a.iconPdf {
  background-image: url(./ic-pdf.gif);
  background-position: left 8px;
  background-repeat: no-repeat;
  display: inline-block;
  padding: 6px 0 5px 18px;
}

a.iconDoc,
a.iconDocx {
  background-image: url(./ic-word.gif);
  background-position: left 8px;
  background-repeat: no-repeat;
  display: inline-block;
  padding: 6px 0 5px 18px;
}

a.iconJtd {
  background-image: url(./ic-ichitarou.gif);
  background-position: left 8px;
  background-repeat: no-repeat;
  display: inline-block;
  padding: 6px 0 5px 18px;
}

a.iconXls {
  background-image: url(./ic-excel.gif);
  background-position: left 8px;
  background-repeat: no-repeat;
  display: inline-block;
  padding: 6px 0 5px 18px;
}


/* accessibility-tool
----------------------------------------------- */
#accessibilityTool {
  /float: right;
  max-width: 530px;
  margin: 0 auto;
  padding: 5px 2px 4px;
  text-align: right;
  font-size: 12px !important;
}

#accessibilityTool rp,
#accessibilityTool rt {
  display: none;
}

/* block-skip
---------------------- */
#nocssread {
  float: left;
}

#nocssread a {
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
}

#nocssread a:focus,
#nocssread a.show {
  width: auto;
  height: auto;
  padding: 0 10px;
}

/* tools
---------------------- */
#accessibilityTool>a,
#accessibilityTool span,
#accessibilityTool ul {
  display: inline-block;
  /display: inline;
  /zoom: 1;
  vertical-align: middle;
}

#accessibilityTool ul {
  display: inline-block;
  /display: inline;
  /zoom: 1;
}

#accessibilityTool ul {
  padding-bottom: 5px;
}

#accessibilityTool ul li {
  display: inline-block;
  /display: inline;
  /zoom: 1;
  margin-left: .1em;
  *margin-right: 3px;
  padding: 0;
  vertical-align: middle;
}

#accessibilityTool img {
  margin: 0 2px;
  vertical-align: middle;
}

/* font-size */
#accessibilityTool .fontSize li a {
  display: block;
  height: 0;
  padding-top: 19px;
  overflow: hidden;
}

a#fontSmall {
  width: 46px;
  background-image: url(./text_s01.gif);
  background-repeat: no-repeat;
}

a#fontSmall:hover {
  background-image: url(./text_s02.gif);
}

a#fontMiddle {
  width: 40px;
  background-image: url(./text_m01.gif);
  background-repeat: no-repeat;
}

a#fontMiddle:hover {
  background-image: url(./text_m02.gif);
}

a#fontLarge {
  width: 46px;
  background-image: url(./text_l01.gif);
  background-repeat: no-repeat;
}

a#fontLarge:hover {
  background-image: url(./text_l02.gif);
}

/* theme-color */
#accessibilityTool .themeColor li a {
  display: block;
  width: 17px;
  height: 0;
  padding-top: 19px;
  overflow: hidden;
}

#themeBlack {
  background-image: url(./bg-black.gif);
  background-repeat: no-repeat;
}

#themeBlue {
  background-image: url(./bg-blue.gif);
  background-repeat: no-repeat;
}

#themeWhite {
  background-image: url(./bg-white.gif);
  background-repeat: no-repeat;
}

/* navigationNotice
----------------------------------------------- */
#navigationNotice {
  width: 1000px;
  margin: 0 auto;
  padding: 6px 10px;
  background-color: #dddddd;
  font-weight: bold;
}

#commonHeader+#navigationNotice {
  display: none;
}

/* yomiage
----------------------------------------------- */
#navigationTalkPlayer {
  position: absolute;
}

#navigationTalkPlayer audio {
  position: relative;
  top: 30px;
  left: -55px;
}

/* =========================================================
   google custom search
========================================================= */
#___gcse_0 table.gsc-search-box {
  width: 247px;
  !important;
}

#___gcse_0>.gsc-control-cse {
  padding: 0 !important;
  background-color: transparent !important;
  border: none !important;
}

#___gcse_0 .gsc-input-box {
  width: 195px;
  padding: 0;
  border-color: #ccc;
  text-indent: 5px;
}

.gsc-search-box-tools .gsc-search-box .gsc-input {
  padding: 0 !important;
}

.gsib_a {
  padding: 3px 8px !important;
}

.gsst_a {
  margin-bottom: 5px;
}

table.gsc-search-box td {
  vertical-align: bottom !important;
}

.cse input.gsc-search-button,
input.gsc-search-button {
  margin: 0 !important;
  padding: 6px 18px !important;
  border-color: #4d4d4d !important;
  background-image: none !important;
  background-color: #4d4d4d !important;
  filter: none !important;
}

/* IE11で検索語入力中に×が二個表示される問題 */
@media all and (-ms-high-contrast:none) {
  .gsst_b {
    display: none;
  }
}

/* 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;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
}

.temp2 .thumb {
  float: right;
  margin-bottom: 10px;
  margin-left: 20px;
}

.temp3,
.temp4 {
  text-align: center;
}

.temp3 dl,
.temp4 dl {
  display: inline-block;
  margin: 0 5px;
  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 {
  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;
}