@charset "UTF-8";

/* =========================================================
   Pieces
========================================================= */
/* =========================================================
   accessibility-tool
========================================================= */
#accessibilityTool {
  border-top: 5px solid #ccc;
  background-color: #fff;
}

#accessibilityTool .pieceContainer {
  width: 1200px;
  margin: 0 auto;
  text-align: right;
}

#accessibilityTool .pieceBody {
  display: inline-block;
  min-height: 37px;
  padding: 0 8px 3px;
  background-color: #ccc;
  font-size: 90%;
}

/* 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;
  background-color: #f2cfd8;
}

/* tools
----------------------------------------------- */
#accessibilityTool .pieceBody ul {
  float: right;
}

#accessibilityTool .pieceBody li ul {
  float: none;
}

#accessibilityTool .pieceBody ul,
#accessibilityTool .pieceBody li {
  display: inline-block;
}

#accessibilityTool .pieceBody>ul>li {
  margin-left: 5px;
  padding-left: 5px;
  border-left: 1px dotted #000;
  vertical-align: middle;
}

#accessibilityTool .pieceBody>ul>li:first-child {
  margin-left: 0;
  padding-left: 0;
  border-left: 0;
}

#accessibilityTool .pieceBody li.translate,
#accessibilityTool .pieceBody li.search {
  margin: 2px 0 0 5px;
}

.goog-te-gadget-simple {
  border: 0 !important;
}

#accessibilityTool .pieceBody li.search {
  margin-left: 0;
  padding-left: 5px;
  border-left: 0;
}

#accessibilityTool .pieceBody li.search input[type="text"] {
  padding: 2px;
  border: 0;
}

#accessibilityTool .pieceBody li li {
  margin-left: 0;
  padding: 0;
  border-left: 0;
}

#accessibilityTool .pieceBody a {
  color: #000;
  text-decoration: none;
}

#accessibilityTool .pieceBody li span {
  display: inline-block;
}

#accessibilityTool .pieceBody a#navigationRuby:focus,
#accessibilityTool .pieceBody a#navigationRuby:hover {
  color: #0045a4;
}

#accessibilityTool .pieceBody li li a {
  display: inline-block;
  margin: 0 1px;
  padding: 0 3px;
}

#accessibilityTool .pieceBody li li a:focus,
#accessibilityTool .pieceBody li li a:hover {
  color: #000;
}

#accessibilityTool .pieceBody .fontSize a#fontSmall,
#accessibilityTool .pieceBody .fontSize a#fontLarge {
  background-color: #0045a4;
  color: #fff;
}

#accessibilityTool .pieceBody .fontSize a#fontMiddle {
  background-color: #fff;
}

#accessibilityTool .pieceBody .fontSize a:focus,
#accessibilityTool .pieceBody .fontSize a:hover {
  background-color: #fff !important;
  color: #000 !important;
}

#accessibilityTool .pieceBody .themeColor #themeBlack {
  background-color: #000;
  color: #fff;
}

#accessibilityTool .pieceBody .themeColor #themeBlue {
  background-color: #1745cc;
  color: #fff;
}

#accessibilityTool .pieceBody .themeColor #themeWhite {
  background-color: #fff;
}

#accessibilityTool .pieceBody img {
  vertical-align: middle;
}

#accessibilityTool .pieceBody img.kugiri {
  padding: 0 5px;
}

.head-tools {
  width: 100%;
  margin: 0;
  padding: 4px 0 3px;
  background-position: left top;
  text-align: right;
}

#furiganaAttention {
  padding-left: 15px;
  padding-top: 5px;
  background-color: #ececec;
  font-size: 120%;
  text-align: center;
}

.rubyOn #furiganaAttention {
  display: block;
}

.head-tools a {
  margin-right: 8px;
}

.head-tools img {
  margin-right: 3px;
  vertical-align: middle;
}

img.font {
  margin-top: 3px;
}

#navigationNotice {
  padding: 6px 10px;
  background-color: #ddd;
  font-weight: bold;
}

#accessibilityTool .pieceBody li.search {
  width: 13em;
  letter-spacing: -0.4em;
}

@media only screen and (max-width: 600px) {
  #accessibilityTool {
    display: none;
    border: 0;
  }

  #accessibilityTool .pieceContainer {
    width: auto;
  }

  #accessibilityTool .pieceBody {
    min-height: 0;
    padding: 10px 10px 5px;
  }

  #accessibilityTool .pieceBody ul {
    float: none;
  }

  #accessibilityTool .pieceBody li:not(.translate):not(.search) {
    display: none;
  }

  #accessibilityTool .pieceBody>ul>li.translate,
  #accessibilityTool .pieceBody>ul>li.search {
    display: inline-block;
    width: auto;
    margin: 0 0 5px;
    padding: 0;
    border: 0;
  }
}

/* google custom search
----------------------------------------------- */
#___gcse_0 * {
  box-sizing: content-box;
}

#gsearchresult table,
#gsearchresult th,
#gsearchresult td {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

form.gsc-search-box,
table.gsc-search-box {
  margin-bottom: 0 !important;
}

#___gcse_0>.gsc-control-cse {
  background-color: transparent !important;
  border: medium none !important;
  padding: 0 !important;
}

#___gcse_0 .gsc-input-box {
  padding: 0;
  text-indent: 5px;
}

.gsc-search-box-tools .gsc-search-box .gsc-input {
  padding: 0 !important;
}

.gsib_a {
  padding: 0 3px !important;
}

.cse .gsc-search-button input.gsc-search-button-v2,
input.gsc-search-button-v2 {
  padding: 6px !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;
}

.gsib_a,
.gsst_a {
  padding-top: 0 !important;
  vertical-align: baseline !important;
}

.cse .gsc-control-cse,
.gsc-control-cse {
  padding: 0 !important;
}

.gsc-results .gsc-cursor-box {
  text-align: center;
}

/* =========================================================
   common-header
========================================================= */
#commonHeader {
  background-color: #fff;
}

#commonHeader .pieceContainer {
  position: relative;
  width: 1200px;
  margin: -3px auto 0;
  padding: 0 0 15px;
}

#commonHeader .pieceBody {
  display: flex;
  align-items: flex-end;
}

#commonHeader a {
  text-decoration: none;
}

#commonHeader .sitename a {
  display: block;
  color: #000;
}

#commonHeader a:hover,
#commonHeader a:focus {
  opacity: 0.9;
}

#commonHeader .sitename {
  font-size: 130%;
}

#commonHeader .sitename span {
  margin-right: 0.5em;
  font-size: 1.05rem;
}

#commonHeader ul {
  margin-left: auto;
}

#commonHeader li {
  padding-left: 16px;
  background: url("../images/ic-access.png") no-repeat left center;
}

@media only screen and (max-width: 600px) {
  #commonHeader .pieceContainer {
    width: auto;
    padding: 10px 66px 25px 10px;
  }

  #commonHeader .pieceBody {
    flex-wrap: wrap;
  }

  #commonHeader .description {
    padding-right: 4rem;
  }

  #commonHeader .sitename {
    margin-bottom: 10px;
  }

  #commonHeader ul {
    margin: 0;
  }
}

/* =========================================================
   facility-header
========================================================= */
/* header-color
----------------------------------------------- */
#pageHeaderBody {
  background-color: #0045a4;
}

body[class^="dir-geibun"] #pageHeaderBody {
  background-color: #00837e;
}

body[class^="dir-mjo"] #pageHeaderBody {
  background-color: #a05f01;
}

body[class^="dir-gallery"] #pageHeaderBody {
  background-color: #cd4650;
}

body[class^="dir-seishin"] #pageHeaderBody {
  background-color: #877300;
}

body[class^="dir-kokaido"] #pageHeaderBody {
  background-color: #be5a00;
}

body[class^="dir-yuzo"] #pageHeaderBody {
  background-color: #914b32;
}

body[class^="dir-dazai"] #pageHeaderBody {
  background-color: #6e783c;
}

body[class^="dir-shg"] #pageHeaderBody {
  background-color: #db5e72;
}

body[class^="dir-yoshimura"] #pageHeaderBody {
  background-color: #398eb5;
}

/* header-layout
----------------------------------------------- */
#facilityHeader .pieceContainer {
  width: 1200px;
  margin: 0 auto;
}

#facilityHeader .pieceBody {
  padding: 20px 0 40px;
}

#facilityHeader h2 {
  float: left;
  color: #fff;
  font-size: 150%;
  font-weight: normal;
}

#facilityHeader h2 span {
  display: inline-block;
  vertical-align: middle;
}

#facilityHeader h2 span:first-child {
  margin-right: 0.5em;
  font-size: 1rem;
}

#facilityHeader a {
  color: #fff;
  text-decoration: none;
}

#facilityHeader a:hover,
#facilityHeader a:focus {
  opacity: 0.9;
}

#facilityHeader ul {
  float: right;
}

#facilityHeader li {
  position: relative;
  padding-left: 14px;
}

#facilityHeader li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 3px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(45deg);
}

@media only screen and (min-width: 601px) and (orientation: landscape) {
  #pageHeaderBody {
    min-width: 1200px;
  }
}

@media only screen and (max-width: 600px) {
  #facilityHeader .pieceContainer {
    width: auto;
  }

  #facilityHeader .pieceBody {
    padding: 10px;
  }

  #facilityHeader h1,
  #facilityHeader ul {
    float: none;
  }
}

/* =========================================================
   global-navi
========================================================= */
#pageNavBody {
  position: relative;
  background: url("../images/bg-pattern.gif");
}

body[class^="dir-geibun"] #pageNavBody {
  background: url("../images/bg-pattern-geibun.gif");
}

body[class^="dir-gallery"] #pageNavBody {
  background: url("../images/bg-pattern-gallery.gif");
}

body[class^="dir-kokaido"] #pageNavBody {
  background: url("../images/bg-pattern-kokaido.gif");
}

body[class^="dir-seishin"] #pageNavBody {
  background: url("../images/bg-pattern-seishin.gif");
}

body[class^="dir-yuzo"] #pageNavBody {
  background: url("../images/bg-pattern-yuzo.gif");
}

body[class^="dir-dazai"] #pageNavBody {
  background: url("../images/bg-pattern-dazai.gif");
}

body[class^="dir-shg"] #pageNavBody {
  background: url("../images/bg-pattern-shg.gif");
}

body[class^="dir-yoshimura"] #pageNavBody {
  background: url("../images/bg-pattern-yoshimura.gif");
}

#globalNavi {
  position: absolute;
  top: -25px;
  left: 50%;
  width: 1200px;
  margin-left: -600px;
  border-radius: 8px;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.3);
}

#globalNavi ul {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  letter-spacing: -0.4em;
  text-align: center;
}

#globalNavi li {
  flex-grow: 1;
  vertical-align: top;
  letter-spacing: normal;
  overflow: hidden;
}

#globalNavi li:first-child,
#globalNavi li:first-child a {
  border-radius: 8px 0 0 8px;
}

#globalNavi li:last-child,
#globalNavi li:last-child a {
  border-radius: 0 8px 8px 0;
}

@media only screen and (min-width: 601px) and (max-width: 1200px) and (orientation: landscape) {
  #pageNavBody {
    min-width: 1200px;
  }

  #globalNavi {
    box-shadow: none;
  }
}

@media only screen and (max-width: 600px) {
  #globalNavi {
    position: static;
    width: auto;
    margin: 0 auto;
    border-radius: 0;
  }

  #globalNavi .pieceBody {
    display: none;
    padding-top: 10px;
  }

  #globalNavi ul {
    flex-wrap: wrap;
  }

  #globalNavi li {
    flex-basis: 50%;
  }

  #globalNavi li:first-child,
  #globalNavi li:first-child a,
  #globalNavi li:last-child,
  #globalNavi li:last-child a {
    border-radius: 0;
  }
}

/* link-color
----------------------------------------------- */
#globalNavi li a {
  display: block;
  padding: 14px 0 12px;
  border-top: 1px solid #aaa;
  border-left: 1px solid #fff;
  border-right: 1px solid #aaa;
  border-bottom: 3px solid #0045a4;
  background: linear-gradient(#ffffff 0%, #f0f0f0 50%, #e9e9e9 50%, #dedede);
  box-shadow: 0 3px 0 0 rgba(244, 244, 244, 0.9) inset;
  color: #000;
  font-size: 105%;
  text-decoration: none;
  white-space: nowrap;
}

body[class^="dir-geibun"] #globalNavi li a {
  border-bottom-color: #00837e;
}

body[class^="dir-mjo"] #globalNavi li a {
  border-bottom-color: #a05f01;
}

body[class^="dir-gallery"] #globalNavi li a {
  border-bottom-color: #cd4650;
}

body[class^="dir-seishin"] #globalNavi li a {
  border-bottom-color: #877300;
}

body[class^="dir-kokaido"] #globalNavi li a {
  border-bottom-color: #be5a00;
}

body[class^="dir-yuzo"] #globalNavi li a {
  border-bottom-color: #914b32;
}

body[class^="dir-dazai"] #globalNavi li a {
  border-bottom-color: #6e783c;
}

body[class^="dir-shg"] #globalNavi li a {
  border-bottom-color: #db5e72;
}

body[class^="dir-yoshimura"] #globalNavi li a {
  border-bottom-color: #398eb5;
}

#globalNavi li:first-child a {
  border-left-color: #aaa;
  box-shadow: 1px 3px 0 0 rgba(244, 244, 244, 0.9) inset;
}

#globalNavi li:last-child a {
  border-right-color: #aaa;
  box-shadow: -1px 3px 0 0 rgba(244, 244, 244, 0.9) inset;
}

/* link-color active
----------------------------------------------- */
#globalNavi li a.cur,
#globalNavi li a:hover,
#globalNavi li a:focus {
  padding: 14px 0;
  border-color: #0045a4;
  border-left-color: transparent;
  border-bottom-width: 1px;
  background: linear-gradient(to bottom, #015bc8 0%, #317ad3 100%);
  box-shadow: 0 1px 0 0 rgba(81, 142, 218, 0.9) inset, 0 -1px 0 0 rgba(81, 142, 218, 0.9) inset;
  color: #fff;
}

body[class^="dir-geibun"] #globalNavi li a.cur,
body[class^="dir-geibun"] #globalNavi li a:hover,
body[class^="dir-geibun"] #globalNavi li a:focus {
  border-color: #009f97;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #009591 0%, #47aeab 100%);
  box-shadow: 0 1px 0 0 rgba(110, 190, 189, 0.9) inset, 0 -1px 0 0 rgba(110, 190, 189, 0.9) inset;
  text-shadow: 0 0 3px #009f97;
}

body[class^="dir-mjo"] #globalNavi li a.cur,
body[class^="dir-mjo"] #globalNavi li a:hover,
body[class^="dir-mjo"] #globalNavi li a:focus {
  border-color: #a15f00;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #ae6e02 0%, #c29846 100%);
  box-shadow: 0 1px 0 0 rgba(206, 172, 109, 0.9) inset, 0 -1px 0 0 rgba(206, 172, 109, 0.9) inset;
}

body[class^="dir-gallery"] #globalNavi li a.cur,
body[class^="dir-gallery"] #globalNavi li a:hover,
body[class^="dir-gallery"] #globalNavi li a:focus {
  border-color: #cd4650;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #d2535e 0%, #e08290 100%);
  box-shadow: 0 1px 0 0 rgba(227, 158, 163, 0.9) inset, 0 -1px 0 0 rgba(227, 158, 163, 0.9) inset;
}

body[class^="dir-seishin"] #globalNavi li a.cur,
body[class^="dir-seishin"] #globalNavi li a:hover,
body[class^="dir-seishin"] #globalNavi li a:focus {
  border-color: #887300;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #998500 0%, #b2a547 100%);
  box-shadow: 0 1px 0 0 rgba(193, 184, 109, 0.9) inset, 0 -1px 0 0 rgba(193, 184, 109, 0.9) inset;
}

body[class^="dir-kokaido"] #globalNavi li a.cur,
body[class^="dir-kokaido"] #globalNavi li a:hover,
body[class^="dir-kokaido"] #globalNavi li a:focus {
  border-color: #be5a00;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #c96902 0%, #d49545 100%);
  box-shadow: 0 1px 0 0 rgba(220, 170, 109, 0.9) inset, 0 -1px 0 0 rgba(220, 170, 109, 0.9) inset;
}

body[class^="dir-yuzo"] #globalNavi li a.cur,
body[class^="dir-yuzo"] #globalNavi li a:hover,
body[class^="dir-yuzo"] #globalNavi li a:focus {
  border-color: #914b32;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #a1573a 0%, #b88a73 100%);
  box-shadow: 0 1px 0 0 rgba(198, 161, 143, 0.9) inset, 0 -1px 0 0 rgba(198, 161, 143, 0.9) inset;
}

body[class^="dir-dazai"] #globalNavi li a.cur,
body[class^="dir-dazai"] #globalNavi li a:hover,
body[class^="dir-dazai"] #globalNavi li a:focus {
  border-color: #6e783b;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #808b46 0%, #a1a97a 100%);
  box-shadow: 0 1px 0 0 rgba(180, 186, 150, 0.9) inset, 0 -1px 0 0 rgba(180, 186, 150, 0.9) inset;
}

body[class^="dir-shg"] #globalNavi li a.cur,
body[class^="dir-shg"] #globalNavi li a:hover,
body[class^="dir-shg"] #globalNavi li a:focus {
  border-color: #db5e72;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #db5e72 0%, #f29c9f 100%);
  box-shadow: 0 1px 0 0 rgba(227, 158, 163, 0.9) inset, 0 -1px 0 0 rgba(227, 158, 163, 0.9) inset;
}

body[class^="dir-yoshimura"] #globalNavi li a.cur,
body[class^="dir-yoshimura"] #globalNavi li a:hover,
body[class^="dir-yoshimura"] #globalNavi li a:focus {
  border-color: #398eb5;
  border-left-color: transparent;
  background: linear-gradient(to bottom, #398eb5 0%, #72b7d8 100%);
  box-shadow: 0 1px 0 0 rgba(114, 183, 216, 0.9) inset, 0 -1px 0 0 rgba(114, 183, 216, 0.9) inset;
}

/* link-color active first-list
----------------------------------------------- */
#globalNavi li:first-child a.cur,
#globalNavi li:first-child a:hover,
#globalNavi li:first-child a:focus {
  border-left-color: #0045a4;
  box-shadow: 1px 1px 0 0 rgba(81, 142, 218, 0.9) inset, 0 -1px 0 0 rgba(81, 142, 218, 0.9) inset;
}

body[class^="dir-geibun"] #globalNavi li:first-child a.cur,
body[class^="dir-geibun"] #globalNavi li:first-child a:hover,
body[class^="dir-geibun"] #globalNavi li:first-child a:focus {
  border-left-color: #009f97;
  box-shadow: 1px 1px 0 0 rgba(110, 190, 189, 0.9) inset, 0 -1px 0 0 rgba(110, 190, 189, 0.9) inset;
}

body[class^="dir-mjo"] #globalNavi li:first-child a.cur,
body[class^="dir-mjo"] #globalNavi li:first-child a:hover,
body[class^="dir-mjo"] #globalNavi li:first-child a:focus {
  border-left-color: #a15f00;
  box-shadow: 1px 1px 0 0 rgba(206, 172, 109, 0.9) inset, 0 -1px 0 0 rgba(206, 172, 109, 0.9) inset;
}

body[class^="dir-gallery"] #globalNavi li:first-child a.cur,
body[class^="dir-gallery"] #globalNavi li:first-child a:hover,
body[class^="dir-gallery"] #globalNavi li:first-child a:focus {
  border-left-color: #cd4650;
  box-shadow: 1px 1px 0 0 rgba(227, 158, 163, 0.9) inset, 0 -1px 0 0 rgba(227, 158, 163, 0.9) inset;
}

body[class^="dir-seishin"] #globalNavi li:first-child a.cur,
body[class^="dir-seishin"] #globalNavi li:first-child a:hover,
body[class^="dir-seishin"] #globalNavi li:first-child a:focus {
  border-left-color: #887300;
  box-shadow: 1px 1px 0 0 rgba(193, 184, 109, 0.9) inset, 0 -1px 0 0 rgba(193, 184, 109, 0.9) inset;
}

body[class^="dir-kokaido"] #globalNavi li:first-child a.cur,
body[class^="dir-kokaido"] #globalNavi li:first-child a:hover,
body[class^="dir-kokaido"] #globalNavi li:first-child a:focus {
  border-left-color: #be5a00;
  box-shadow: 1px 1px 0 0 rgba(220, 170, 109, 0.9) inset, 0 -1px 0 0 rgba(220, 170, 109, 0.9) inset;
}

body[class^="dir-yuzo"] #globalNavi li:first-child a.cur,
body[class^="dir-yuzo"] #globalNavi li:first-child a:hover,
body[class^="dir-yuzo"] #globalNavi li:first-child a:focus {
  border-left-color: #914b32;
  box-shadow: 1px 1px 0 0 rgba(198, 161, 143, 0.9) inset, 0 -1px 0 0 rgba(198, 161, 143, 0.9) inset;
}

body[class^="dir-dazai"] #globalNavi li:first-child a.cur,
body[class^="dir-dazai"] #globalNavi li:first-child a:hover,
body[class^="dir-dazai"] #globalNavi li:first-child a:focus {
  border-left-color: #6e783b;
  box-shadow: 1px 1px 0 0 rgba(180, 186, 150, 0.9) inset, 0 -1px 0 0 rgba(180, 186, 150, 0.9) inset;
}

body[class^="dir-shg"] #globalNavi li:first-child a.cur,
body[class^="dir-shg"] #globalNavi li:first-child a:hover,
body[class^="dir-shg"] #globalNavi li:first-child a:focus {
  border-left-color: #db5e72;
  box-shadow: 1px 1px 0 0 rgba(227, 158, 163, 0.9) inset, 0 -1px 0 0 rgba(227, 158, 163, 0.9) inset;
}

body[class^="dir-yoshimura"] #globalNavi li:first-child a.cur,
body[class^="dir-yoshimura"] #globalNavi li:first-child a:hover,
body[class^="dir-yoshimura"] #globalNavi li:first-child a:focus {
  border-left-color: #398eb5;
  box-shadow: 1px 1px 0 0 rgba(114, 183, 216, 0.9) inset, 0 -1px 0 0 rgba(114, 183, 216, 0.9) inset;
}

/* link-color active last-list
----------------------------------------------- */
#globalNavi li:last-child a.cur,
#globalNavi li:last-child a:hover,
#globalNavi li:last-child a:focus {
  border-right-color: #0045a4;
  box-shadow: -1px -1px 0 0 rgba(81, 142, 218, 0.9) inset, 0 1px 0 0 rgba(81, 142, 218, 0.9) inset;
}

body[class^="dir-geibun"] #globalNavi li:last-child a.cur,
body[class^="dir-geibun"] #globalNavi li:last-child a:hover,
body[class^="dir-geibun"] #globalNavi li:last-child a:focus {
  border-right-color: #009f97;
  box-shadow: -1px -1px 0 0 rgba(110, 190, 189, 0.9) inset, 0 1px 0 0 rgba(110, 190, 189, 0.9) inset;
}

body[class^="dir-mjo"] #globalNavi li:last-child a.cur,
body[class^="dir-mjo"] #globalNavi li:last-child a:hover,
body[class^="dir-mjo"] #globalNavi li:last-child a:focus {
  border-right-color: #a15f00;
  box-shadow: -1px -1px 0 0 rgba(206, 172, 109, 0.9) inset, 0 1px 0 0 rgba(206, 172, 109, 0.9) inset;
}

body[class^="dir-gallery"] #globalNavi li:last-child a.cur,
body[class^="dir-gallery"] #globalNavi li:last-child a:hover,
body[class^="dir-gallery"] #globalNavi li:last-child a:focus {
  border-right-color: #cd4650;
  box-shadow: -1px -1px 0 0 rgba(227, 158, 163, 0.9) inset, 0 1px 0 0 rgba(227, 158, 163, 0.9) inset;
}

body[class^="dir-seishin"] #globalNavi li:last-child a.cur,
body[class^="dir-seishin"] #globalNavi li:last-child a:hover,
body[class^="dir-seishin"] #globalNavi li:last-child a:focus {
  border-right-color: #887300;
  box-shadow: -1px -1px 0 0 rgba(193, 184, 109, 0.9) inset, 0 1px 0 0 rgba(193, 184, 109, 0.9) inset;
}

body[class^="dir-kokaido"] #globalNavi li:last-child a.cur,
body[class^="dir-kokaido"] #globalNavi li:last-child a:hover,
body[class^="dir-kokaido"] #globalNavi li:last-child a:focus {
  border-right-color: #be5a00;
  box-shadow: -1px -1px 0 0 rgba(220, 170, 109, 0.9) inset, 0 1px 0 0 rgba(220, 170, 109, 0.9) inset;
}

body[class^="dir-yuzo"] #globalNavi li:last-child a.cur,
body[class^="dir-yuzo"] #globalNavi li:last-child a:hover,
body[class^="dir-yuzo"] #globalNavi li:last-child a:focus {
  border-right-color: #914b32;
  box-shadow: -1px -1px 0 0 rgba(198, 161, 143, 0.9) inset, 0 1px 0 0 rgba(198, 161, 143, 0.9) inset;
}

body[class^="dir-dazai"] #globalNavi li:last-child a.cur,
body[class^="dir-dazai"] #globalNavi li:last-child a:hover,
body[class^="dir-dazai"] #globalNavi li:last-child a:focus {
  border-right-color: #6e783b;
  box-shadow: -1px -1px 0 0 rgba(180, 186, 150, 0.9) inset, 0 1px 0 0 rgba(180, 186, 150, 0.9) inset;
}

body[class^="dir-shg"] #globalNavi li:last-child a.cur,
body[class^="dir-shg"] #globalNavi li:last-child a:hover,
body[class^="dir-shg"] #globalNavi li:last-child a:focus {
  border-right-color: #6e783b;
  box-shadow: -1px -1px 0 0 rgba(227, 158, 163, 0.9) inset, 0 1px 0 0 rgba(227, 158, 163, 0.9) inset;
}

body[class^="dir-yoshimura"] #globalNavi li:last-child a.cur,
body[class^="dir-yoshimura"] #globalNavi li:last-child a:hover,
body[class^="dir-yoshimura"] #globalNavi li:last-child a:focus {
  border-right-color: #398eb5;
  box-shadow: -1px -1px 0 0 rgba(114, 183, 216, 0.9) inset, 0 1px 0 0 rgba(114, 183, 216, 0.9) inset;
}

#globalNavi li a.cur span,
#globalNavi li a:hover span,
#globalNavi li a:focus span {
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
}

/* toggle-menu
----------------------------------------------- */
#toggleNavi {
  display: none;
  position: absolute;
  top: 10px;
  right: 10px;
  text-align: center;
}

#toggleNavi>span {
  display: block;
  margin-top: -5px;
  color: #0045a4;
  font-weight: bold;
}

@media only screen and (max-width: 600px) {
  #toggleNavi {
    display: inline-block;
  }
}

/* =========================================================
   menu-trigger
========================================================= */
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}

.menu-trigger {
  position: relative;
  width: 32px;
  height: 30px;
  cursor: pointer;
}

.menu-trigger span {
  display: inline-block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 6px;
  border-radius: 6px;
  background-color: #0045a4;
}

.menu-trigger span:nth-of-type(1) {
  top: 0;
}

.menu-trigger span:nth-of-type(2) {
  top: 12px;
}

.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(12px) rotate(-45deg);
}

.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}

/* =========================================================
   keyvisual
========================================================= */
#keyvisual .pieceContainer {
  width: 1200px;
  margin: 0 auto;
  padding: 50px 0 25px;
}

#keyvisual ul {
  letter-spacing: -0.4em;
  text-align: center;
}

#keyvisual .pieceBody>ul {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

#keyvisual li {
  vertical-align: bottom;
  letter-spacing: normal;
  overflow: hidden;
}

#keyvisual .pieceBody>ul>li {
  flex: 1;
  margin-left: 0.1%;
}

#keyvisual .pieceBody>ul>li:first-child {
  margin-left: 0;
}

#keyvisual li li {
  display: block;
  margin-top: 1px;
}

#keyvisual li a {
  display: block;
  position: relative;
  color: #fff;
  font-family: "Source Han Serif JP", "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-weight: bold;
  text-decoration: none;
}

#keyvisual ul:not(.bxslider) li a::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

#keyvisual ul:not(.bxslider) li a:hover::after,
#keyvisual ul:not(.bxslider) li a:focus::after {
  background-color: rgba(0, 0, 0, 0.6);
}

#keyvisual ul:not(.bxslider) li a img {
  width: 100%;
  height: 100%;
}

#keyvisual ul:not(.bxslider) li a span {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 42px;
  padding: 10px 0;
  background: rgba(0, 0, 0, 0.6);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.9) 100%);
}

#keyvisual .pieceBody>ul:not(.bxslider)>li:last-child>a>span {
  line-height: 1.2;
  padding: 4px 0;
}

#keyvisual li li a span {
  min-height: 23px;
  padding: 1px 0;
}

@media only screen and (max-width: 600px) {
  #keyvisual .pieceContainer {
    width: auto;
    padding: 0;
  }

  #keyvisual .pieceBody {
    display: none;
    padding: 10px 0;
  }

  #keyvisual .pieceBody>ul {
    flex-wrap: wrap;
  }

  #keyvisual .pieceBody>ul>li {
    flex-basis: 50%;
  }

  #keyvisual li {
    vertical-align: bottom;
  }

  #keyvisual .pieceBody>ul>li,
  #keyvisual li li {
    margin: 0;
  }

  #keyvisual .pieceBody>ul>li:first-child {
    width: 100%;
  }

  #keyvisual li a,
  #keyvisual .pieceBody>ul>li:first-child>a,
  #keyvisual li li a {
    height: auto;
  }

  #keyvisual li a span,
  #keyvisual li li a span,
  #keyvisual .pieceBody>ul>li:last-child>a>span {
    min-height: 0;
    padding: 10px 0;
  }
}

/* =========================================================
   special
========================================================= */
#special ul {
  letter-spacing: -0.4em;
}

#special li {
  display: inline-block;
  width: 50%;
  margin-bottom: 20px;
  letter-spacing: normal;
}

#special li:last-child {
  text-align: right;
}

#special p {
  margin-bottom: 1em;
}

@media only screen and (max-width: 600px) {
  #special ul {
    text-align: center;
  }

  #special li {
    width: auto;
  }
}

/* =========================================================
   recent-docs
========================================================= */
div[id^="recent"] {
  margin-bottom: 20px;
}

div[id^="recent"][id$="Add"] {
  margin-top: -21px;
}

/* header-border-color
----------------------------------------------- */
div[id^="recent"] .pieceHeader {
  border-bottom: 2px solid #0045a4;
}

body[class^="dir-geibun"] div[id^="recent"] .pieceHeader {
  border-color: #00837e;
}

body[class^="dir-mjo"] div[id^="recent"] .pieceHeader {
  border-color: #a05f01;
}

body[class^="dir-gallery"] div[id^="recent"] .pieceHeader {
  border-color: #cd4650;
}

body[class^="dir-seishin"] div[id^="recent"] .pieceHeader {
  border-color: #877300;
}

body[class^="dir-kokaido"] div[id^="recent"] .pieceHeader {
  border-color: #be5a00;
}

body[class^="dir-yuzo"] div[id^="recent"] .pieceHeader {
  border-color: #914b32;
}

body[class^="dir-dazai"] div[id^="recent"] .pieceHeader {
  border-color: #6e783c;
}

body[class^="dir-shg"] div[id^="recent"] .pieceHeader {
  border-color: #db5e72;
}

body[class^="dir-yoshimura"] div[id^="recent"] .pieceHeader {
  border-color: #398eb5;
}

/* header-color
----------------------------------------------- */
div[id^="recent"] h2 {
  padding: 2px;
  color: #0045a4;
}

body[class^="dir-geibun"] div[id^="recent"] h2 {
  color: #00837e;
}

body[class^="dir-mjo"] div[id^="recent"] h2 {
  color: #a05f01;
}

body[class^="dir-gallery"] div[id^="recent"] h2 {
  color: #cd4650;
}

body[class^="dir-seishin"] div[id^="recent"] h2 {
  color: #877300;
}

body[class^="dir-kokaido"] div[id^="recent"] h2 {
  color: #be5a00;
}

body[class^="dir-yuzo"] div[id^="recent"] h2 {
  color: #914b32;
}

body[class^="dir-dazai"] div[id^="recent"] h2 {
  color: #6e783c;
}

body[class^="dir-shg"] div[id^="recent"] h2 {
  color: #db5e72;
}

body[class^="dir-yoshimura"] div[id^="recent"] h2 {
  color: #398eb5;
}

div[id^="recent"] h2 span {
  margin-left: 1em;
  font-size: 80%;
}

div[id^="recent"] .pieceBody {
  border: 1px solid #bbb;
  border-top: 0;
}

div[id^="recent"] .more {
  padding: 6px 10px;
}

div[id^="recent"] a {
  color: #000;
}

div[id^="recent"] a:hover,
div[id^="recent"] a:focus {
  text-decoration: none;
}

/* pickup-color
----------------------------------------------- */
#recentPickup .pieceHeader {
  margin-bottom: 15px;
}

#recentPickup h2 {
  display: inline-block;
  padding: 1px 5px;
  border-radius: 4px 4px 0 0;
  background-color: #0045a4;
  color: #fff;
  font-size: 105%;
  font-weight: normal;
}

body[class^="dir-geibun"] #recentPickup h2 {
  background-color: #00837e;
}

body[class^="dir-mjo"] #recentPickup h2 {
  background-color: #a05f01;
}

body[class^="dir-gallery"] #recentPickup h2 {
  background-color: #cd4650;
}

body[class^="dir-seishin"] #recentPickup h2 {
  background-color: #877300;
}

body[class^="dir-kokaido"] #recentPickup h2 {
  background-color: #be5a00;
}

body[class^="dir-yuzo"] #recentPickup h2 {
  background-color: #914b32;
}

body[class^="dir-dazai"] #recentPickup h2 {
  background-color: #6e783c;
}

body[class^="dir-shg"] #recentPickup h2 {
  background-color: #db5e72;
}

body[class^="dir-yoshimura"] #recentPickup h2 {
  background-color: #398eb5;
}

/* pickup-body
----------------------------------------------- */
#recentPickup .pieceBody {
  border: 0;
}

#recentPickup ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  /*margin: 0 -10px 0 0;*/
  text-align: center;
  letter-spacing: -0.4em
}

#recentPickup li {
  /*flex-basis: 18.9%;*/
  width: calc(20% - 8px);
  margin: 0 10px 10px 0;
  vertical-align: top;
  letter-spacing: normal;
}

#recentPickup li:nth-child(5n) {
  margin-right: 0;
}

#recentPickup li a {
  display: block;
  position: relative;
  height: 100%;
  border: 2px solid #ccc;
  border-radius: 6px;
  text-align: center;
  text-decoration: none;
  overflow: hidden;
}

#recentPickup li a:hover img,
#recentPickup li a:focus img {
  opacity: 0.9;
}

#recentPickup li span {
  display: block;
}

#recentPickup li .title {
  padding: 5px;
}

#recentPickup li .image {
  max-height: 150px;
  text-align: center;
  overflow: hidden;
}

#recentPickup li .image img {
  width: 100%;
}

@media only screen and (max-width: 600px) {
  div[id^="recent"] .more a {
    display: block;
    text-align: center;
  }

  #recentPickup ul {
    justify-content: space-between;
    margin: 0;
  }

  #recentPickup li {
    /*flex-basis: 49%;*/
    width: calc(50% - 5px);
    margin: 0 0 10px;
  }

  #recentPickup li .image {
    max-height: none;
  }
}

/* =========================================================
   recent-information
========================================================= */
#recentInformation li,
#recentHotnews li {
  padding: 6px 14px;
  border-bottom: 1px dotted #bbb;
}

.publish_date+.title_link {
  margin-left: 1em;
}

/* =========================================================
   calendar
========================================================= */
#calendar {
  padding-top: 32px;
  background: url("../images/bg-calendar-top.png") no-repeat center top;
  text-align: center;
}

#calendar .pieceContainer {
  padding: 2px 2px 0;
  border: 1px solid #bbb;
  border-bottom: 0;
  border-radius: 6px 6px 0 0;
}

/* header-color
----------------------------------------------- */
#calendar .pieceHeader {
  padding: 4px 0;
  background-color: #0045a4;
  color: #fff;
}

/* body-color
----------------------------------------------- */
#calendar .pieceBody {
  background-color: #d9e3f1;
}

/* table
----------------------------------------------- */
#calendar h3 {
  padding: 5px 0;
  background-color: #fff;
}

#calendar table {
  width: 86%;
  margin: 0 7%;
  border-collapse: separate;
  border-spacing: 2px;
}

#calendar th,
#calendar td {
  padding: 1px;
}

#calendar th {
  padding: 5px 0;
}

#calendar td {
  border: 1px solid transparent;
  background-color: #fff;
}

#calendar td.sat {
  background-color: #d7ffff;
}

#calendar td.sun {
  background-color: #ffe6f0;
}

#calendar .prevMonth,
#calendar .nextMonth {
  color: transparent;
}

#calendar .prevMonth a,
#calendar .nextMonth a {
  display: none;
}

#calendar a {
  color: #000;
}

#calendar table a:hover,
#calendar table a:focus {
  text-decoration: none;
}

#calendar h3 a {
  text-decoration: none;
}

#calendar h3 a:hover,
#calendar h3 a:focus {
  text-decoration: underline;
}

#calendar .pagination {
  display: flex;
  justify-content: space-between;
  margin-top: 12px;
  padding: 0 14px;
}

@media only screen and (max-width: 600px) {
  #calendar .pagination {
    margin-bottom: 0;
  }
}

#calendar .pagination .separator {
  display: none;
}

#calendar .pagination a {
  flex: 1 1 0%;
}

#calendar .pagination a:nth-of-type(2) {
  margin: 0 10px;
}

/* =========================================================
   side button
========================================================= */
div[id^="btn"],
#sideNavi,
#sideMenu {
  margin-bottom: 20px;
}

/* container-color
----------------------------------------------- */
div[id^="btn"] .pieceContainer,
#sideNavi .pieceContainer {
  padding: 2px;
  border: 1px solid #bbb;
  border-top: 2px solid #0045a4;
}

#sideMenu .pieceContainer {
  padding: 2px;
  border: 1px solid #bbb;
  border-radius: 6px;
}

#btnEvent .pieceContainer {
  padding: 0 2px 2px;
  border-top: 0;
  border-radius: 0 0 6px 6px;
}

body[class^="dir-geibun"] #sideNavi .pieceContainer {
  border-top-color: #00837e;
}

body[class^="dir-gallery"] #sideNavi .pieceContainer {
  border-top-color: #cd4650;
}

body[class^="dir-seishin"] #sideNavi .pieceContainer {
  border-top-color: #877300;
}

body[class^="dir-kokaido"] #sideNavi .pieceContainer {
  border-top-color: #be5a00;
}

body[class^="dir-yuzo"] #sideNavi .pieceContainer {
  border-top-color: #914b32;
}

body[class^="dir-dazai"] #sideNavi .pieceContainer {
  border-top-color: #6e783c;
}

body[class^="dir-shg"] #sideNavi .pieceContainer {
  border-top-color: #db5e72;
}

body[class^="dir-yoshimura"] #sideNavi .pieceContainer {
  border-top-color: #398eb5;
}

#btnReservation .pieceContainer {
  border-top-color: #826400;
}

#btnTicket .pieceContainer {
  border-top-color: #aa0044;
}

/* header-color
----------------------------------------------- */
div[id^="btn"] .pieceHeader,
#sideNavi .pieceHeader,
#sideMenu .pieceHeader {
  padding: 6px 0;
  text-align: center;
}

div[id^="btn"] h2,
#sideNavi h2,
#sideMenu h2 {
  color: #0045a4;
}

body[class^="dir-geibun"] #sideNavi h2,
body[class^="dir-geibun"] #sideMenu h2 {
  color: #00837e;
}

body[class^="dir-gallery"] #sideNavi h2,
body[class^="dir-gallery"] #sideMenu h2 {
  color: #cd4650;
}

body[class^="dir-seishin"] #sideNavi h2,
body[class^="dir-seishin"] #sideMenu h2 {
  color: #877300;
}

body[class^="dir-kokaido"] #sideNavi h2,
body[class^="dir-kokaido"] #sideMenu h2 {
  color: #be5a00;
}

body[class^="dir-yuzo"] #sideNavi h2,
body[class^="dir-yuzo"] #sideMenu h2 {
  color: #914b32;
}

body[class^="dir-dazai"] #sideNavi h2,
body[class^="dir-dazai"] #sideMenu h2 {
  color: #6e783c;
}

body[class^="dir-shg"] #sideNavi h2,
body[class^="dir-shg"] #sideMenu h2 {
  color: #db5e72;
}

body[class^="dir-yoshimura"] #sideNavi h2,
body[class^="dir-yoshimura"] #sideMenu h2 {
  color: #398eb5;
}

#btnReservation h2 {
  color: #826400;
}

#btnTicket h2 {
  color: #aa0044;
}

/* body-color
----------------------------------------------- */
div[id^="btn"] .pieceBody,
#sideNavi .pieceBody {
  padding: 18px 14px 12px;
  background-color: #d9e3f1;
}

#btnEvent .pieceBody {
  padding: 12px 14px;
  text-align: center;
}

#btnEvent a,
#calendar .pagination a {
  display: block;
  padding: 4px 0;
  border: 1px solid #bbb;
  background: #fcfcfc;
  background: linear-gradient(to bottom, #ffffff 0%, #e8e8e8 100%);
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

#btnEvent a:hover,
#btnEvent a:focus,
#calendar .pagination a:hover,
#calendar .pagination a:focus {
  background: #ccdaed;
}

#btnEvent a:not(:first-of-type) {
  margin-top: 10px;
}

body[class^="dir-geibun"] #sideNavi .pieceBody {
  background-color: #daeeed;
}

body[class^="dir-gallery"] #sideNavi .pieceBody {
  background-color: #f8e1e7;
}

body[class^="dir-seishin"] #sideNavi .pieceBody {
  background-color: #edead9;
}

body[class^="dir-kokaido"] #sideNavi .pieceBody {
  background-color: #f8e4d9;
}

body[class^="dir-yuzo"] #sideNavi .pieceBody {
  background-color: #efe4e0;
}

body[class^="dir-dazai"] #sideNavi .pieceBody {
  background-color: #e9eae2;
}

body[class^="dir-shg"] #sideNavi .pieceBody {
  background-color: #f5e0e8;
}

body[class^="dir-yoshimura"] #sideNavi .pieceBody {
  background-color: #c8e2ed;
}

#btnReservation .pieceBody {
  background-color: #f0ece0;
}

#btnTicket .pieceBody {
  background-color: #f5e0e8;
}

/* button-color
----------------------------------------------- */
div[id^="btn"] .pieceBody>p a {
  display: block;
  width: 218px;
  height: 38px;
  line-height: 38px;
  margin: 0 auto;
  padding-left: 24px;
  background: url("../images/bt-eventyoyaku.png") no-repeat left top;
  color: #000;
  text-decoration: none;
  overflow: hidden;
}

#btnReservation .pieceBody>p a {
  background-image: url("../images/bt-shisetsuyoyaku.png");
}

#btnTicket .pieceBody>p a {
  background-image: url("../images/bt-tickeyoyaku.png");
}

/*
body[class^="dir-geibun"] #btnEvent .pieceBody > p a {
  background-image: url("../images/bt-eventyoyaku-geibun.png");
}
body[class^="dir-gallery"] #btnEvent .pieceBody > p a {
  background-image: url("../images/bt-eventyoyaku-gallery.png");
}
body[class^="dir-kokaido"] #btnEvent .pieceBody > p a {
  background-image: url("../images/bt-eventyoyaku-kokaido.png");
}
body[class^="dir-seishin"] #btnEvent .pieceBody > p a {
  background-image: url("../images/bt-eventyoyaku-seishin.png");
}
body[class^="dir-yuzo"] #btnEvent .pieceBody > p a {
  background-image: url("../images/bt-eventyoyaku-yuzo.png");
}
body[class^="dir-dazai"] #btnEvent .pieceBody > p a {
  background-image: url("../images/bt-eventyoyaku-dazai.png");
}
body[class^="dir-shg"] #btnEvent .pieceBody > p a {
  background-image: url("../images/bt-eventyoyaku-shg.png");
}*/
div[id^="btn"] .pieceBody>p a:hover {
  background-position: left -48px;
}

/* list-style
----------------------------------------------- */
div[id^="btn"] ul {
  margin-top: 10px;
}

div[id^="btn"] li {
  padding-left: 16px;
  background: url("../images/ic-list-eventyoyaku.png") no-repeat left 0.4em;
  white-space: nowrap;
}

#btnReservation li {
  background-image: url("../images/ic-list-shisetsuyoyaku.png");
}

#btnTicket li {
  background-image: url("../images/ic-list-tickeyoyaku.png");
}

div[id^="btn"] li a {
  color: #000;
  text-decoration: none;
}

div[id^="btn"] li a:hover,
div[id^="btn"] li a:focus {
  text-decoration: underline;
}

@media only screen and (max-width: 600px) {
  div[id^="btn"] ul {
    text-align: center;
  }

  div[id^="btn"] li {
    display: inline-block;
    background-position: left 0.25em;
    text-align: left;
  }
}

/* =========================================================
   side-navi
========================================================= */
/*#sideNavi {
  margin-bottom: 20px;
}
#sideNavi .pieceContainer {
  padding: 12px;
  background-color: #d9e3f1;
}
#sideNavi .pieceHeader {
  margin-top: -6px;
  padding: 0 0 6px;
  text-align: center;
}
#sideNavi h2 {
  color: #0045a4;
}*/
#sideNavi li {
  position: relative;
  margin-top: 2px;
  border-radius: 6px;
  border: 1px solid #bbb;
  border-left: 0;
}

#sideMenu li {
  position: relative;
  margin-bottom: 1px;
  background-color: #d9e3f1;
}

#sideMenu li:first-child {
  border-radius: 6px 6px 0 0;
}

#sideMenu li:last-child {
  margin-bottom: 0;
  border-radius: 0 0 6px 6px;
}

#sideNavi li:first-child {
  margin-top: 0;
}

#sideNavi li::before,
#sideMenu li::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 14px;
  height: 100%;
  border: 1px solid #bbb;
  border-right: 0;
  border-radius: 6px 0 0 6px;
  background: #0045a4 url("../images/ic-sidenavi.png") no-repeat center center;
}

#sideMenu li::before {
  top: 0;
  border: 0;
  border-radius: 0;
}

#sideMenu li:first-child::before {
  border-radius: 6px 0 0 0;
}

#sideMenu li:last-child::before {
  border-radius: 0 0 0 6px;
}

body[class^="dir-geibun"] #sideNavi li::before,
body[class^="dir-geibun"] #sideMenu li::before {
  background-color: #00837e;
}

body[class^="dir-gallery"] #sideNavi li::before,
body[class^="dir-gallery"] #sideMenu li::before {
  background-color: #cd4650;
}

body[class^="dir-seishin"] #sideNavi li::before,
body[class^="dir-seishin"] #sideMenu li::before {
  background-color: #877300;
}

body[class^="dir-kokaido"] #sideNavi li::before,
body[class^="dir-kokaido"] #sideMenu li::before {
  background-color: #be5a00;
}

body[class^="dir-yuzo"] #sideNavi li::before,
body[class^="dir-yuzo"] #sideMenu li::before {
  background-color: #914b32;
}

body[class^="dir-dazai"] #sideNavi li::before,
body[class^="dir-dazai"] #sideMenu li::before {
  background-color: #6e783c;
}

body[class^="dir-shg"] #sideNavi li::before,
body[class^="dir-shg"] #sideMenu li::before {
  background-color: #db5e72;
}

body[class^="dir-yoshimura"] #sideNavi li::before,
body[class^="dir-yoshimura"] #sideMenu li::before {
  background-color: #398eb5;
}

#sideNavi li a,
#sideMenu li a {
  display: block;
  margin-left: 14px;
  padding: 4px 0 4px 8px;
  border-radius: 0 6px 6px 0;
  background-color: #fff;
  color: #000;
  text-decoration: none;
}

#sideMenu li a {
  padding: 12px 0 12px 8px;
  border-radius: 0;
  background-color: #ccdaed;
}

#sideMenu li:first-child a {
  border-radius: 0 6px 0 0;
}

#sideMenu li:last-child a {
  border-radius: 0 0 6px 0;
}

#sideNavi li a.cur,
#sideNavi li a:hover,
#sideNavi li a:focus {
  background-color: #f3f3f3;
}

#sideMenu li a.cur,
#sideMenu li a:hover,
#sideMenu li a:focus {
  background-color: #fff;
}

/* =========================================================
   banner
========================================================= */
#banner {
  margin-bottom: 10px;
}

#banner ul {
  margin: 0 -5px;
  letter-spacing: -0.4em;
  text-align: center;
}

#banner li {
  display: inline-block;
  margin: 0 5px 10px;
  vertical-align: bottom;
  letter-spacing: normal;
}

/* =========================================================
   twitter
========================================================= */
#links #twitter {
  margin-bottom: 10px;
  border: 1px solid #adc1db;
  border-radius: 10px;
  overflow: hidden;
}

@media only screen and (max-width: 600px) {
  .twitter-timeline {
    width: 100% !important;
  }
}

/* =========================================================
   page-title
========================================================= */
#pageTitle {
  margin-bottom: 15px;
}

#pageTitle .pieceContainer {
  padding: 6px 18px;
  border: 1px solid #bbb;
  border-top: 2px solid #0045a4;
}

body[class^="dir-geibun"] #pageTitle .pieceContainer {
  border-top-color: #00837e;
}

body[class^="dir-mjo"] #pageTitle .pieceContainer {
  border-top-color: #a05f01;
}

body[class^="dir-gallery"] #pageTitle .pieceContainer {
  border-top-color: #cd4650;
}

body[class^="dir-kokaido"] #pageTitle .pieceContainer {
  border-top-color: #be5a00;
}

body[class^="dir-seishin"] #pageTitle .pieceContainer {
  border-top-color: #877300;
}

body[class^="dir-yuzo"] #pageTitle .pieceContainer {
  border-top-color: #914b32;
}

body[class^="dir-dazai"] #pageTitle .pieceContainer {
  border-top-color: #6e783c;
}

body[class^="dir-shg"] #pageTitle .pieceContainer {
  border-top-color: #db5e72;
}

body[class^="dir-yoshimura"] #pageTitle .pieceContainer {
  border-top-color: #398eb5;
}

#pageTitle h1 {
  font-size: 150%;
}

#breadCrumbs {
  padding: 0 0 20px;
}

#pageTop {
  text-align: right;
}

#pageTop a::before {
  content: "▲";
}

/* =========================================================
   bn-advertisement
========================================================= */
#bnAdvertisement {
  width: 1200px;
  margin: 0 auto 10px;
}

#bnAdvertisement .pieceHeader {
  margin-bottom: 15px;
  border-bottom: 2px solid #0045a4;
}

#bnAdvertisement h2 {
  padding: 2px;
}

#bnAdvertisement ul {
  margin: 0 -5px;
  letter-spacing: -0.4em;
}

#bnAdvertisement li {
  display: inline-block;
  margin: 0 5px 10px;
  letter-spacing: normal;
}

@media only screen and (min-width: 601px) and (orientation: landscape) {
  #bnAdvertisement {
    min-width: 1200px;
  }
}

@media only screen and (max-width: 600px) {
  #bnAdvertisement {
    width: auto;
    margin: 0;
    padding: 10px;
    text-align: center;
  }
}

/* =========================================================
   footer
========================================================= */
#commonFooter .pieceContainer {
  background-color: #666;
}

#commonFooter .pieceBody {
  width: 1200px;
  margin: 0 auto;
  padding: 14px 0;
  color: #fff;
}

#commonFooter .pieceBody>div:first-child {
  float: left;
}

#commonFooter .pieceBody>div:last-child {
  float: right;
}

#commonFooter address p.owner {
  font-size: 105%;
}

#commonFooter address p span {
  margin-right: 1em;
}

#commonFooter ul {
  line-height: 1;
  margin-bottom: 1em;
  text-align: right;
}

#commonFooter li {
  display: inline-block;
  margin-left: -1px;
  margin-top: 0.25em;
  padding: 0 0.7em;
  border-right: 1px solid #fff;
}

#commonFooter li:first-child {
  border-left: 1px solid #fff;
}

#commonFooter a {
  color: #fff;
  text-decoration: none;
}

#commonFooter a:hover,
#commonFooter a:focus {
  text-decoration: underline;
}

@media only screen and (min-width: 601px) and (orientation: landscape) {
  #commonFooter .pieceContainer {
    min-width: 1200px;
  }
}

@media only screen and (max-width: 600px) {
  #commonFooter .pieceBody {
    width: auto;
    padding: 10px 0 0;
    text-align: center;
  }

  #commonFooter .pieceBody>div:first-child,
  #commonFooter .pieceBody>div:last-child {
    display: inline-block;
    float: none;
    padding: 0 10px 10px;
  }

  #commonFooter .pieceBody>div:first-child {
    text-align: left;
  }

  #commonFooter ul {
    text-align: center;
  }
}