/*
Mixin用css
---------------*/
.w100 {
  width: 100%;
  margin: 0;
  padding: 0;
  display: block;
  clear: both;
}
.container {
  width: 940px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  display: block;
}
.mp0 {
  margin: 0;
  padding: 0;
}
.radius10 {
  -moz-border-radius: 1em;
  -webkit-border-radius: 1em;
  border-radius: 1em;
}
.radius05 {
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
  border-radius: 0.5em;
}
.radius03 {
  -moz-border-radius: 0.3em;
  -webkit-border-radius: 0.3em;
  border-radius: 0.3em;
}
.box-shadow {
  -moz-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}
/* ---------------------
		common
---------------------- */
a:link {
  color: #06C;
  text-decoration: none;
}
a:visited {
  color: #06F;
}
a:hover {
  color: #3CF;
}
A IMG {
  border: none;
}
P {
  margin: 0px 0px 5px;
  padding: 0px;
}
table {
  font-size: inherit;
  /* not IE */
  font: 100%;
  /* IE */
}
#main-contents a:hover img,
#side-contents a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70 )";
}
#font-size a:hover img,
#font-size a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70 )";
}
a:focus {
  outline: none;
}
a {
  overflow: hidden;
}
#main-contents .twtr-widget h3 {
  background-image: none;
  font-size: medium;
  margin: 0px;
  padding: 0px;
  font-weight: normal;
  height: auto;
  width: auto;
}
#main-contents .twtr-widget h4 {
  font-size: medium;
  font-weight: normal;
  background-image: none;
  margin: 0px;
  padding: 0px;
  height: auto;
  width: auto;
}
.error {
  background: #ff6699;
  padding: 20px;
  text-align: center;
}
.render-mode-switch {
  font-size: 40px !important;
  text-align: center;
  color: #FFF;
  background-color: #333;
  padding-top: 40px;
  padding-bottom: 40px;
}
/*HTML5用*/
header,
footer,
nav,
section,
article,
figure,
aside {
  display: block;
}
.txg-tgallery-wrapper IMG {
  border: 3px solid #CCC;
}
.txg-tgallery-wrapper TD {
  vertical-align: top;
}
.scrollFixIt {
  color: #666;
  margin-right: 3px;
}
.thp_pc-none {
  display: block;
}
/*	scrollbar CSS3対応ブラウザでのみ対応
-------------------------------------*/
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track-piece {
  background-color: #dcdcdc;
  /*スクロール部分背景色*/
}
::-webkit-scrollbar-thumb:active {
  background-color: #ffffff;
  /* スクロールバー アクティブ時 */
  cursor: pointer;
}
::-webkit-scrollbar-thumb {
  background: #004c83;
  /* スクロールバー本体の色 */
}
::-webkit-scrollbar-thumb:window-inactive {
  background: #ffe8f0;
  /*ウィンドウがアクティブでないときの色*/
}
/* 	Design
-------------------------------------*/
BODY {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.4em;
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 12px;
  color: #000000;
}
/*
	header
----------------------------------------*/
header {
  width: 100%;
  margin: 0;
  padding: 0;
  display: block;
  clear: both;
  height: auto;
  background-color: #ffffff;
}
header #header-top {
  width: 100%;
  margin: 0;
  padding: 0;
  clear: both;
  display: block;
}
header #header-contents {
  width: 940px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  display: block;
  color: #000000;
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
  height: auto;
  font-size: 90%;
  margin-bottom: 3px;
}
header #header-contents div {
  float: left;
  padding: 12px 0 0;
}
header #header {
  width: 940px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  display: block;
  margin-bottom: 13px;
}
header #header #site-title {
  float: left;
  display: block;
  margin: 0;
  padding: 0;
  margin-top: 0px;
}
header #header .header-tel {
  margin-top: 8px;
  float: right;
  display: block;
}
header .title-wrap {
  clear: both;
}
header .title-wrap:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
header:after {
  content: "";
  height: 8px;
  display: block;
  clear: both;
  background-image: url(../img/header-shadow.png);
  background-repeat: repeat-x;
  background-position: left top;
  z-index: 10000;
}
#header:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
#font-size {
  color: #004c83;
  list-style-type: none;
  margin: 0;
  padding: 8px 0 0;
  height: auto;
  width: 150px;
  text-align: right;
  float: right;
}
#font-size #font-size-text {
  float: left;
  margin: 4px;
  padding: 4px 0px 0 8px;
  display: block;
  line-height: 1.1em;
  font-weight: bold;
  font-size: 12px;
}
#font-size #s,
#font-size #m,
#font-size #l {
  float: right;
  margin: 2px 1px 0 0;
  font-size: 90%;
}
#font-size #s a,
#font-size #m a,
#font-size #l a {
  background-image: url(../img/font-size-button.png);
  background-repeat: no-repeat;
  background-position: left top;
  width: 16px;
  height: 16px;
  display: block;
  color: #535353;
  text-decoration: none;
  font-size: 120%;
  text-align: center;
  vertical-align: middle;
  padding: 3px;
}
#font-size #s a:hover,
#font-size #m a:hover,
#font-size #l a:hover {
  background-image: url(../img/font-size-button-active.png);
  color: #fff;
}
/* header navigation */
#header-nav {
	float: right;
	list-style: none;
	margin: 0;
	color: #000000;
	width: 400px;
}
#header-nav li {
	font-size: 110%;
	line-height: 1em;
	float: right;
	text-align: center;
	margin-top: 5px;
	margin-right: 0;
	margin-bottom: 4px;
	margin-left: 0;
}
#header-nav li:last-child a {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
/*  border: none;
  padding-right: 0;*/
}
#header-nav li a {
	display: block;
	text-decoration: none;
	color: #000000;
	border-left-width: 1px;
	border-left-style: solid;
	padding-top: 0;
	padding-right: 0px;
	padding-bottom: 0;
	padding-left: 15px;
	margin-left: 15px;
}
#header-nav li a:hover,
#header-nav li a:active {
  text-decoration: underline;
}
/*
	groval Navigation
----------------------------------------*/
#groval {
  width: 100%;
  margin: 0;
  padding: 0;
  display: block;
  clear: both;
  background-image: url(../img/groval-nav-back.png);
  background-repeat: repeat-x;
  background-position: center top;
}
#groval #groval-nav {
  width: 940px;
  text-align: center;
  margin: 0 auto;
  padding: 0 2px;
  display: block;
  list-style: none;
  overflow: hidden;
  color: #000;
}
#groval #groval-nav a:hover,
#groval #groval-nav .active {
  background-image: url(../img/groval-nav-button-active.png);
  background-repeat: no-repeat;
  background-position: left center;
}
#groval #groval-nav li {
  background-image: url(../img/groval-nav-button.png);
  background-repeat: no-repeat;
  background-position: left center;
  float: left;
  text-align: center;
  display: block;
}
#groval #groval-nav li a,
#groval #groval-nav li .text:link,
#groval #groval-nav li .text:visited,
#groval #groval-nav li:visited {
  width: 156px;
  height: 42px;
  line-height: 3.5em;
  color: #000000;
  text-decoration: none;
  display: block;
  text-align: center;
  font-weight: normal;
  font-size: 120%;
  margin-right: auto;
  margin-left: auto;
  padding: 8px 0 6px 0;
}
#groval #groval-nav li a:hover,
#groval #groval-nav li .text:link:hover,
#groval #groval-nav li .text:visited:hover,
#groval #groval-nav li:visited:hover,
#groval #groval-nav li a:active,
#groval #groval-nav li .text:link:active,
#groval #groval-nav li .text:visited:active,
#groval #groval-nav li:visited:active,
#groval #groval-nav li a .active:link,
#groval #groval-nav li .text:link .active:link,
#groval #groval-nav li .text:visited .active:link,
#groval #groval-nav li:visited .active:link,
#groval #groval-nav li a .active:visited,
#groval #groval-nav li .text:link .active:visited,
#groval #groval-nav li .text:visited .active:visited,
#groval #groval-nav li:visited .active:visited,
#groval #groval-nav li a .active:active,
#groval #groval-nav li .text:link .active:active,
#groval #groval-nav li .text:visited .active:active,
#groval #groval-nav li:visited .active:active,
#groval #groval-nav li a .active:hover,
#groval #groval-nav li .text:link .active:hover,
#groval #groval-nav li .text:visited .active:hover,
#groval #groval-nav li:visited .active:hover {
  padding: 8px 0 6px 0;
}
#groval:before {
  content: "";
  display: block;
  height: 4px;
  background-image: url(../img/groval-nav-top.png);
  background-repeat: repeat;
  background-position: center top;
}
#main-contents h3 {
	font-size: 170%;
	color: #fff;
	font-weight: normal;
	height: 40px;
	display: block;
	position: relative;
	background-image: url(../img/h3.jpg);
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 0;
	padding-top: 28px;
	padding-right: 28px;
	padding-bottom: 0;
	padding-left: 28px;
}
#main-contents h4 {
	font-size: 150%;
	color: #000;
	font-weight: bold;
	border-top: 4px solid #004c83;
	border-bottom: 1px solid #004c83;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 0;
	padding-top: 22px;
	padding-right: 0;
	padding-bottom: 16px;
	padding-left: 0;
}
#main-contents h5 {
	font-size: 130%;
	color: #fff;
	font-weight: normal;
	background-color: #004c83;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 0;
	padding-top: 13px;
	padding-right: 0;
	padding-bottom: 8px;
	padding-left: 11px;
}
#main-contents h6 {
  font-size: 130%;
  font-weight: bold;
  background-position: left center;
  color: #242424;
  padding: 4px 0 0 9px;
  margin: 0 0 10px 0;
  border-left: 4px solid #0c75ad;
}
#main-contents #sitemap-section h4 {
	font-size: 150%;
	color: #000;
	font-weight: bold;
	border-top: 4px solid #004c83;
	border-bottom: 1px solid #004c83;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 0;
	padding-top: 22px;
	padding-right: 0;
	padding-bottom: 16px;
	padding-left: 0;
}
#main-contents #sitemap-section li {
  list-style-type: circle;
  text-decoration: none;
}
IMG.qrcode {
  border: 1px solid #cccccc;
}
/* お問い合わせフォーム */
#tx_form_0 {
  margin: 0;
  padding: 0;
  display: block;
  width: 670px;
}
#mailform-section {
  margin: 0;
  color: #036;
}
#mailform-section div.form-layout {
  display: block;
  margin: 0 auto;
  width: 600px;
}
#mailform-section div.form-layout div.form-items {
  border: 1px solid #adacac;
  width: 600px;
  overflow: hidden;
  background-color: #efefef;
  margin: 0 auto;
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
  border-radius: 0.5em;
}
#mailform-section div.form-layout div.form-items div.form-item {
  clear: both;
  overflow: hidden;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: #adacac;
}
#mailform-section div.form-layout div.form-items div.form-item div.label {
  float: left;
  width: 150px;
  text-align: left;
  vertical-align: top;
  font-size: 10pt;
  background-color: #efefef;
  padding-top: 9px;
  padding-right: 8px;
  padding-bottom: 0px;
  padding-left: 8px;
  color: #003366;
}
#mailform-section div.form-layout div.form-items div.form-item div.field {
  float: left;
  width: 413px;
  text-align: left;
  vertical-align: top;
  padding: 8px;
  border-left-width: 1px;
  border-left-style: dotted;
  border-left-color: #adacac;
}
#mailform-section div.form-layout div.form-items div.form-item div.field p.description {
  margin: 3px 0px 0px 0px;
  font-size: 9pt;
}
#mailform-section div.form-layout div.form-items .field-textarea {
  width: 405px;
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
  border-radius: 0.5em;
  border: 1px solid #adacac;
}
#mailform-section input.input-text {
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
  border-radius: 0.5em;
  width: 410px;
  border: 1px solid #adacac;
  height: 30px;
}
#mailform-section textarea.input-textarea {
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
  border-radius: 0.5em;
  border: 1px solid #adacac;
}
#mailform-section input.input-select {
  border: 1px solid #adacac;
}
#mailform-section .required {
  color: red;
  font-weight: normal;
}
#mailform-section .error {
  background-color: #fcf;
  padding: 0px;
  text-align: left;
}
#mailform-section .error-message {
  color: #f00;
}
#mailform-section .completion-message {
  border: 1px solid #adacac;
  padding: 30px;
}
#mailform-section div.submitee {
  clear: both;
  text-align: center;
}
#mailform-section div.submitee button {
  cursor: pointer;
  background-image: url(../img/form_submit.jpg);
  border-width: 0px;
  height: 51px;
  width: 144px;
  background-color: #FFF;
  margin-top: 5px;
}
#mailform-section div.submitee button span {
  display: none;
}
/* ドキュメントビュー用 --- */
.txg-doclist ul {
  list-style-type: none;
}
.txg-doclist li {
  list-style-type: none;
  margin-bottom: 0.5em;
  border-bottom: 1px dotted #5c4930;
}
a.txg-doclist-link,
a.txg-doclist-embed {
  padding-left: 20px;
  padding-top: 5px;
  background: transparent url(../icons/icon_txt.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.pdf'],
a.txg-doclist-embed[href$='.pdf'] {
  background: transparent url(../icons/icon_pdf.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.xls'],
a.txg-doclist-embed[href$='.xls'] {
  background: transparent url(../icons/icon_xls.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.xlsx'],
a.txg-doclist-embed[href$='.xlsx'] {
  background: transparent url(../icons/icon_xls.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.doc'],
a.txg-doclist-embed[href$='.doc'] {
  background: transparent url(../icons/icon_doc.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.docx'],
a.txg-doclist-embed[href$='.docx'] {
  background: transparent url(../icons/icon_doc.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.ppt'],
a.txg-doclist-embed[href$='.ppt'] {
  background: transparent url(../icons/icon_pps.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.pptx'],
a.txg-doclist-embed[href$='.pptx'] {
  background: transparent url(../icons/icon_pps.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.zip'],
a.txg-doclist-embed[href$='.zip'] {
  background: transparent url(../icons/icon_archive.gif) no-repeat center left;
}
a.txg-doclist-link[href$='.rar'],
a.txg-doclist-embed[href$='.rar'] {
  background: transparent url(../icons/icon_archive.gif) no-repeat center left;
}
/*	お知らせ記事
------------------------*/
/* リスト--*/
#main-contents #topic-headline-section {
  clear: both;
  width: 654px;
  height: 136px;
  overflow: auto;
  font-size: 100%;
  margin-top: 57px;
  margin-bottom: 12px;
}
#main-contents #topic-headline-section dl {
  width: 96%;
  margin: 0 auto;
}
#main-contents #topic-headline-section dt {
  margin: 0px;
  font-size: 110%;
  color: #055d94;
}
#main-contents #topic-headline-section dt .date {
  color: #000;
  float: none;
  display: block;
  font-size: 80%;
  margin: 0 10px 10px 0;
  padding: 0;
  float: left;
}
#main-contents #topic-headline-section dt .date:before {
  content: url(../img/topic-icon.png);
  vertical-align: baseline;
  padding: 0 8px 0 5px;
}
#main-contents #topic-headline-section dt a {
  color: #055d94;
  text-decoration: underline;
}
#main-contents #topic-headline-section dd {
  padding: 0 0 5px 96px;
  color: #777;
  margin: 0 0 10px 0;
  border-bottom: 1px dotted #D4D5D5;
  display: block;
  float: none;
  clear: both;
}
/*
	Footer
------------------------------------- */
footer {
  margin-top: 30px;
  font-size: 100%;
  /* footer navigation */
}
footer #footer {
  color: #000000;
  width: 100%;
  margin: 0;
  padding: 0;
  display: block;
  clear: both;
}
footer #footer #footer-contents {
  display: block;
}
footer #footer-nav-wrap {
  background-image: url(../img/footer-nav-back.png);
  background-repeat: repeat-x;
  background-position: left top;
}
footer #footer-nav {
  clear: both;
  width: 940px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  display: block;
  padding: 0;
  list-style: none;
  color: #000000;
}
footer #footer-nav li {
  float: left;
  text-align: center;
  vertical-align: middle;
  margin: 8px 30px 2px 0;
  padding: 5px 0;
}
footer #footer-nav li a {
  padding: 0 10px 0 0;
  display: block;
  margin: 0;
  text-decoration: none;
  color: #000000;
}
footer #footer-nav li a:before {
  vertical-align: top;
  content: url(../img/header-nav-icon.png);
  padding-right: 5px;
}
footer #footer-nav #toPageTop {
  font-size: 90%;
  margin: 8px 0 0 0;
  padding-bottom: 0;
  text-align: right;
  float: right;
  display: block;
}
footer #footer-nav #toPageTop a {
  padding: 0;
  border: none;
}
footer #footer-nav #toPageTop a:before {
  vertical-align: sub;
  content: url(../img/topagetop-icon.png);
  padding-right: 5px;
}
/* フッターメニュー */
div#footer-address-wrap {
  background-image: url(../img/footer-address-back.png);
  background-repeat: repeat-x;
  background-position: left top;
}
div#footer-address {
  width: 940px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  display: block;
  padding: 28px 0 16px;
}
div#footer-address b {
  font-size: 120%;
  font-weight: normal;
}
div#footer-address span#address {
  font-weight: bold;
}
div#footer-address #address-block {
  float: left;
}
div#footer-address #tel-block {
  float: right;
  font-weight: bold;
  text-align: right;
}
div#footer-address #tel-block b {
  font-size: 160%;
}
div#copyright {
  color: #fff;
  font-size: 80%;
  letter-spacing: 0.09em;
  background-image: url(../img/footer-copyright-back.jpg);
  background-repeat: repeat-x;
  background-position: center top;
  text-align: center;
  padding-top: 17px;
  padding-bottom: 16px;
}
.side_text-information_02-01 {
  border: none;
  width: 230px;
}
.side_text-information_02-01 span.side-info_main {
  width: 230px;
  margin: 0;
}
.side_text-information_02-01 span.side-info_main:after {
  content: url(../img/side-info-bottom.png);
  display: block;
  margin-top: 2px;
}
.side_text-information_02-01 span.side-info_image {
  width: 230px;
  line-height: 0;
}
.side_text-information_02-01 SPAN.side-info_text {
  margin-top: 0;
  padding: 0;
  color: #000000;
  font-size: 120%;
}
.side-info-header {
  color: #000;
  display: block;
  padding: 2px 0 3px;
}
.side-info-header:before {
  content: url(../img/side-info-icon.png);
  width: 8px;
  display: block;
  float: left;
  margin-right: 10px;
}
