@charset "utf-8";
/**************************
property reset,tool
**************************/

* {
  margin: 0;
  padding: 0;
  line-height: 100%;
  box-sizing: border-box;
}
ul, li {
  list-style-type: none;
}
img {
  border: 0;
}
table, th, td {
  border: none;
}
form {
  display: inline;
}
br.clear, p.clear {
  clear: both;
  font-size: 0;
  line-height: 0;
  height: 0;
  margin: 0;
}
#contents p.clear {
  clear: both;
  font-size: 0;
  line-height: 0;
  height: 0;
  margin: 0 1em 0;
}
.clear {
  clear: both;
}
.skipmenu {
  position: absolute;
  right: 0pt;
  top: -10em;
}
a {
  overflow: hidden;
}
.clearfix:after {
  content: '';
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  zoom: 1; /* for IE6/7 */
}
a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}


body {
  font-family: "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  padding: 0;
  text-align: center;
  min-width: 1000px;
}
header {
  text-align: left;
  display: table;
  width: 1000px;
  height: 140px;
  margin: 0 auto;
}
#headerLeft {
  display: table-cell;
  vertical-align: middle;
}
header h1,
header p#siteID {
  margin: 0;
}
header h1 img,
header p#siteID img {
  width: 330px;
  height: auto;
}
#headerRight {
  display: table-cell;
  vertical-align: middle;
  width: 50%;
  overflow: hidden;
}
#headerRight ul {
  float: left;
  padding-top: 4px;
}
#headerRight ul li {
  display: inline;
  font-size: 14px;
  margin-right: 10px;
}
#headerRight ul li a {
  color: #007440;
}
#headerRight ul li a:hover {
  color: #e86f0d;
}
#searchArea {
  float: right;
  width: 291px;
  background: #EEE;
  padding: 2px;
  overflow: hidden;
}
#searchBox {
  width: 218px;
  height: 28px;
  float: left;
}
#searchButton {
  border: 1px solid #141313;
  width: 66px;
  height: 28px;
  background: url(images/searchButton.png) no-repeat center center #A5A5A5;
  float: right;
  cursor: pointer;
}


#toggle {
  display: none;
}
nav#gNavi {
  background: #6db27f;
  background: -moz-linear-gradient(top, #6db27f 0%, #007440 100%);
  background: -webkit-linear-gradient(top, #6db27f 0%,#007440 100%);
  background: linear-gradient(to bottom, #6db27f 0%,#007440 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6db27f', endColorstr='#007440',GradientType=0 );
}
#menu {
  *zoom: 1;
  width:1000px;
  margin:0 auto;
  display: block;
}
#menu::before, #menu::after {
  content: '';
  display: table;
}
#menu::after {
  clear: both;
}

#menu li {
  position: relative;
  float:left;
  border-left: 1px solid #999;
  border-bottom: 1px solid #999;
  width: 250px;
}
#menu li:first-child {
  border-left: none;
}
#menu a {
  display:block;
  background: #FFF;
  font-size: 20px;
  padding: 15px;
  color: #666;
  text-decoration: none;
}
#menu li a:hover,
#menu li a.active {
  background: #808080;
  color: #FFF;
}

#menu li ul {
  position: absolute;
  z-index: 9999;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
  width: 250px;
  box-shadow: 1px 1px 10px #999;
}
#menu li:last-child ul {
  left: inherit;
  right: 0;
  width: 250px;
}
#menu li ul li {
  width: 100%;
  border-left: none;
  border-bottom: none;
}
#menu li ul li a {
  padding: 13px 15px;
  border-top: 1px solid #acc2b7;
  background: #E2ECE0;
  text-align: left;
  font-weight: normal;
  color: #107444;
  font-size: 14px;
  line-height: 1.4;
}
/* #menu li:hover ul li a:hover {
  background: #feeece;
} */

#menu li ul li {
  overflow: hidden;
  height: 0;
  transition: .2s;
}
#menu li:hover ul li {
  overflow: visible;
  height: auto;
}

#menu li ul li a.active {
  background: #E2ECE0;
}

#slideArea {
  border-bottom: 2px solid #FFF;
}
#slideArea img {
  opacity: 0.4;
}
#slideArea .sp-selected img {
  opacity: 1;
}

#topContents {
  background: #DCEDD8;
  padding: 30px 0;
}
#topContents section {
  width: 1000px;
  margin: 0 auto;
}

#topContents ul.gNaviLink {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
  position: relative;
}

#topContents ul.gNaviLink li {
  width: 24%;
  text-align: center;
  font-size: 1.25rem;
}

#topContents ul.gNaviLink li a {
  text-decoration: none;
  color: #FFF;
  background: #0D955A;
  display: block;
  padding: 20px 0;
  position: relative;
}

#topContents ul.gNaviLink li a::after {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
  transform: rotate(45deg);
  position: absolute;
  top: calc(50% - 3px);
  right: 14px;
}

#topContents ul.gNaviLink li a:hover {
  background: #1E9D66;
}

#topContents ul.gNaviLink::after {
  content: '';
  position: absolute;
  bottom: -40px;
  left: calc(50% - 55px);
  background: #0D955A;
  width: 110px;
  height: 1px;
}

#topContents ul.serviceLink {
  /* overflow: hidden; */
  display: flex;
  justify-content: center;
}
#topContents ul.serviceLink li {
  display: table;
  /* float: left; */
  width: 300px;
  height: 84px;
  background: url(images/topContentsBack.png) no-repeat left top;
  margin-right: 10px;
  border-radius: 10px;
}
/* #topContents ul.serviceLink li:nth-child(even) {
  margin-right: 10;
} */
#topContents ul.serviceLink li:nth-child(4n) {
  margin-right: 0;
}
#topContents ul.serviceLink li a {
  display: table-cell;
  vertical-align: middle;
  color: #FFF;
  text-decoration: none;
  font-size: 20px;
  padding-left: 10px;
  background: url(images/topContentsTriangle.png) no-repeat 15px center;
}
#topContents ul.serviceLink li a:hover {
  background: url(images/topContentsTriangle.png) no-repeat 15px center rgba(255, 255, 255, 0.1);
}


/*#topContents ul {
  overflow: hidden;
}
#topContents ul li {
  float: left;
  width: 225px;
  height: 225px;
  background-color: #4BA461;
  background-image: url(images/menuBack1.png), url(images/menuBack2.png);
  background-position: left top, right bottom;
  background-repeat: no-repeat;
  text-align: left;
  margin-right: 33px;
  display: table;
  position: relative;
}
#topContents ul li:last-child {
  margin-right: 0;
}
#topContents ul li a {
  display: table-cell;
  vertical-align: middle;
  color: #FFF;
  text-decoration: none;
  font-size: 18px;
  padding-left: 10px;
}
#topContents ul li:hover {
  background-color: #68B47B;
  background-image: url(images/menuBack1.png), url(images/menuBack2.png);
  background-position: left top, right bottom;
  background-repeat: no-repeat;
}*/

#newsArea {
  width: 770px;
  margin: 0 auto;
  padding: 25px 0;
}
#newsArea h2 {
  /*background:url(images/newsBack.png) no-repeat center center;*/
  background: #999;
  height: 48px;
  line-height: 48px;
  color: #FFF;
  font-size: 20px;
}
/* #newsArea ul {
  text-align: left;
  margin: 20px 0;
}
#newsArea ul li {
  margin-bottom: 15px;
} */

#newsArea table {
  width: 100%;
  margin: 20px 0 10px;
  text-align: left;
}
#newsArea table th {
  font-weight: normal;
  padding: 0 10px 15px 0;
  width: 140px;
  white-space: nowrap;
  color: #666;
  text-align: left;
}
#newsArea table td {
  padding: 0 0 15px;
}

#panphArea {
  background: #D0E4AC;
  padding: 10px 0;
}
#panphArea ul li {
  display: inline;
  margin: 0 10px;
}
#panphArea ul li img {
  vertical-align: bottom;
}


footer {
  background: #0D955A;
  color: #FFF;
  padding: 17px 0;
}

#footerMenu {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1000px;
  margin: 20px auto 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #FFF;
  text-align: left;
}
#footerMenu > div {
  width: 23%;
}
#footerMenu a {
  color: #FFF;
  text-decoration: none;
}
#footerMenu p {
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 10px;
  border-bottom: 1px solid #44AC7F;
}

#footerMenu p a {
  display: block;
  padding: 10px 0;
}

#footerMenu ul {
  font-size: 0.8125rem;
}
#footerMenu ul li {
  margin-bottom: 8px;
  line-height: 1.3;
}

#footerContents {
  width: 1000px;
  margin: 0 auto;
  text-align: left;
  display: table;
}
#footerLeft {
  width: 50%;
  display: table-cell;
}
#footerID {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}
address {
  font-size: 14px;
  font-style: normal;
}
#footerRight {
  width: 50%;
  display: table-cell;
  text-align: right;
}
#footerRight ul li {
  display: inline;
  font-size: 14px;
  padding: 0 15px 0 15px;
  font-size: 14px;
  border-left: 1px solid #FFF;
}
#footerRight ul li:last-child {
  border-right: 1px solid #FFF;
}
#footerRight ul li a {
  color: #FFF;
  text-decoration: none;
}
#footerRight ul li a:hover {
  color: #e86f0d;
}
#copyright {
  font-size: 12px;
  text-align: right;
  padding: 20px 0 0;
}



#contentsWrap {
  width: 1000px;
  margin: 0 auto 60px;
  font-size: 90%;
  text-align: left;
  overflow: hidden;
}
#topicPath {
  width: 1000px;
  padding: 17px 0;
  box-sizing: border-box;
  font-size: 12px;
}
#wide #topicPath {
  padding: 17px 0;
}
#contents {
  width: 710px;
  float: right;
}
#wide #contents {
  width: 100%;
  float: none;
}
#contents * {
  line-height: 150%;
}
aside {
  width: 250px;
  float: left;
}

.gsc-search-button {
  box-sizing: content-box !important;
}
.gsc-control-cse {
  padding: 0 !important;
}
.gsc-search-box-tools .gsc-search-box .gsc-input {
  padding:0 !important;
}
.cse .gsc-search-button input.gsc-search-button-v2, input.gsc-search-button-v2 {
  padding: 5px 27px !important;
}
table.gsc-search-box td.gsc-input {
  padding-right: 0 !important;
}
input.gsc-input {
  height: 23px !important;
}

#localNavi p {
  background: #BFDFC0;
  position: relative;
  font-size: 16px;
  border-bottom: 2px solid #006F47;
}
#localNavi p a {
  display: block;
  padding: 10px;
  color: #333;
  text-decoration: none;
}
#localNavi ul {
  border-left: 1px solid #A5A5A5;
  border-right: 1px solid #A5A5A5;
}
#localNavi ul li ul {
  border: none;
}
#localNavi ul li {
  position: relative;
  font-size: 16px;
  border-bottom: 1px solid #A5A5A5;
}
#localNavi ul li.plus a {
  padding: 10px 30px 10px 10px;
}
#localNavi ul li.plus a::after {
  content: '＋';
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -8px;
  color: #666;
}
#localNavi ul li a.active::after {
  content: '';
}
#localNavi ul li a {
  display: block;
  padding: 10px;
  color: #333;
  text-decoration: none;
  line-height: 1.5;
  font-size: 14px;
}
#localNavi ul li a.active {
  border: none;
  background: #fffede;
}
#localNavi ul li ul {
  background: #FFF;
}
#localNavi ul li ul li:last-child {
  border-bottom: none;
}
#localNavi ul li.plus ul li a {
  padding: 10px 30px 10px 30px;
  color: #666;
}
#localNavi ul li.plus ul li a::after {
  content: '';
}
#localNavi ul li ul li a.active {
  background: #FFF;
}
#localNavi ul li ul li a.active::after {
  content: '＜';
  color: #cc0101;
}
#localNavi ul li ul li a.active {
  color: #cc0101;
}

#localNavi p:hover {
  background: #B0D1B1;
}
#localNavi ul li:hover {
  background: #fffede;
}



#contents h1 {
  color: #FFF;
  text-align: center;
	font-size: 18px;
  height: 34px;
  line-height: 34px;
	margin-bottom: 20px;
  background-color: #006F47;
  background-image: url(images/h1Back1.png), url(images/h1Back2.png);
  background-repeat: no-repeat;
  background-position: left top, right bottom;
  font-weight: normal;
}
#contents h2 {
	color: #333;
	font-size: 18px;
	margin-bottom: 30px;
  padding: 2px 23px 1px;
  background: #CCC;
  border-bottom: 2px solid #333;
  font-weight: normal;
}
#contents h3 {
	font-size:18px;
	color: #333;
	margin-bottom: 15px;
  padding: 2px 15px 1px;
  border-bottom: 2px solid #333;
  border-left: 8px solid #333;
  font-weight: normal;
}
#contents h4 {
	font-size:18px;
	color:#333;
  padding: 2px 0 1px;
	margin-bottom: 10px;
  border-bottom: 2px solid #333;
  font-weight: normal;
}
#contents h5 {
	font-size: 16px;
	color: #006F47;
	margin: 0 0 10px;
  font-weight: normal;
}
#contents h5::before {
  content: '■';
  margin-right: 0.5em;
}
#contents h6 {
	font-size: 16px;
	color: #006F47;
	margin: 0 0 10px;
  font-weight: normal;
}
#contents h6::before {
  content: url(images/greenRound.png);
  margin-right: 0.5em;
}
#contents p {
	margin:0 0 1em;
  line-height: 1.8;
  overflow: hidden;
}

#contents ul {
	margin:0 0 20px 20px;
}
#contents ul li {
	background:url(images/liRound.png) no-repeat left 7px;
	padding-left:12px;
  margin-bottom: 8px;
}
#contents ol {
	margin:0 0 20px 30px;
}
#contents ol li {
	list-style-type:decimal;
	margin-left:0.5em;
}
#contents ol.alpha li {
	list-style-type:lower-alpha;
}
#contents ul li ul {
	margin:5px 0;
	font-size:110%;
}
#contents ul li ul li {
	background:url(images/liStandard.png) no-repeat left 6px;
}
#contents ol li ul {
	margin:10px 0;
	font-size:110%;
}
#contents ol li ul li {
	list-style-type:none;
	background:url(images/liRound.png) no-repeat left 6px;
}
#contents dl {
	margin-left:20px;
}
#contents dl.mailform {
  margin-left: 0;
}
#contents dt {
	font-weight:bold;
}
#contents dd {
	margin:10px 0 30px 1em;
}

hr {
	border:dotted #999;
	border-width:1px 0px 0px 0px;
	height:1px;
	overflow:hidden;
	margin:8px 0 16px;
	clear:both;
}
#contents table {
	max-width: 100%;
	margin:0 0 20px;
	border-collapse:collapse;
	border:2px solid #FFF;
	empty-cells:show ;
}
#contents caption {
	color:#000;
	text-align:left;
	margin-bottom:5px;
}
#contents td,
#contents th {
	border:4px solid #FFF;
	padding:5px 10px;
	vertical-align:top;
	line-height:130%;
}
#contents th {
	color:#FFF;
	background:#008A38;
  font-weight: normal;
	text-align:left;
}
#contents td {
  background: #CDE6CC;
}
#contents th p,
#contents td p {
	margin:0;
	padding:0;
	font-size:100%;
  text-align: left;
}
#contents td ul {
	margin:0;
	padding:0;
	font-size:110%;
}
#contents td ol {
	margin:0 0 0 15px;
	padding:0;
	font-size:110%;
}
#contents th.thCenter {
	text-align:center;
}
#contents th.thRignt {
	text-align:right;
}
#contents table td.vMiddle {
	vertical-align:middle;
}
#contents th a {
  color: #FFF;
}

#contents table.design2 th {
  background: #CDE6CC;
  color: #333;
}
#contents table.design2 td {
  background: #FFF;
}

#contents blockquote {
	color:#333;
	margin:10px 0 10px 40px;
	font-style:italic;
}

.otoiawase {
	border:1px solid #666;
	padding-bottom:5px;
	margin: 50px 0 10px;
}
#contents .otoiawase  h2 {
	background:#ddd;
  color: #000;
	font-size:16px;
	padding:5px 15px;
	margin: 4px 4px 15px;
  text-align: left;
  border: none;
}
#contents .otoiawase p {
	margin:0 10px 10px 20px;
	font-size:90%;
}
#contents .otoiawase p img {
	vertical-align:middle;
}
#contents .otoiawase ul {
	margin:10px 30px;
}
.dottedLine {
	border:dotted 2px #999;
	padding:10px 30px;
}
.kakomiSingle {
	margin:0 0 20px;
	border:1px #CCC solid;
	padding:10px 10px 0;
}
#contents .kakomiSingle h2 {
	background:#F5F4F2;
	padding:4px 15px;
	font-size:100%;
	font-weight:normal;
	margin-bottom: 10px;
  color: #006F47;
  text-align: left;
  border: none;
}
#contents .kakomiSingle p {
	margin:0 10px 15px;
}
#contents .kakomiSingle ol {
  margin: 15px 20px 20px 30px;
}
#contents .kakomiSingle ol li {
  margin-bottom: 10px;
}

.kakomiDouble {
  margin:0 0 20px;
	border:3px #CCC double;
	padding:20px 20px 0 10px;
  background: #FEFEFE;
}
#contents .kakomiDouble h2 {
  background: none;
  padding: 0;
}

.kakomiGray {
	margin:0 0 20px;
	border:1px #CCC solid;
	padding:10px 10px 0;
  background: #eee;
}
#contents .kakomiGray h2 {
	background:#F5F4F2;
	padding:4px 15px;
	font-size:100%;
	font-weight:normal;
	margin-bottom: 10px;
  color: #006F47;
  text-align: left;
  border: none;
}
#contents .kakomiGray p {
	margin:0 10px 15px;
}

.textRight {text-align:right;}
.textCenter {text-align:center;}
#contents p.textRight {text-align:right;}
#contents p.textCenter {text-align:center;}

.textRed {color:red;}
.textRedUnderlineBold {color:red; text-decoration: underline; font-weight:bold;}
.textUnderlineBold {text-decoration: underline; font-weight:bold;}
.textPurple {color:#6A5ACD;}
.textGreen {color:#20B2AA;}
.textGray {color:#999;}
.textGraySmall {color:#999; font-size:80%;}
.textSmall {font-size:80%;}
.textSmallRight {font-size:80%; text-align:right;}
.textBackBlue {color:#FFF; background-color:#036; padding:2px 5px;}
.textLarge {font-size:130%;}

#contents .textRed {color:red;}
#contents .textPurple {color:#6A5ACD;}
#contents .textGreen {color:#20B2AA;}
#contents .textGray {color:#999;}
#contents .textGraySmall {color:#999; font-size:80%;}
#contents .textSmall {font-size:80%;}
#contents .textSmallRight {font-size:80%; text-align:right;}
#contents .textBackBlue {color:#FFF; background-color:#036; padding:2px 5px;}
#contents .textLarge {font-size:130%;}

.backYellow {background:#FFFFE1}
.backGreen {background:#EEFFF7}
.backBlue {background:#E6F7FF}
.backPink {background:#FFEEFF}
.backPurple {background:#EEEEFF}

#contents .blueLargeCenter {
  color: #292D78;
  font-size: 20px;
  text-align: center;
  line-height: 2;
  font-family: 'Hiragino Mincho ProN', 'Yu Mincho', serif;
}

#contents .textIndent,
#contents .kakomiSingle p.textIndent {
  margin-left: 3em;
}


#contents table.tableBorderNone,
#contents .tableBorderNone th,
#contents .tableBorderNone td {
	border:none;
	padding:0;
}

a.pdfLink {
	padding:5px 0 5px 24px;
	background:url(images/pdf.png) no-repeat left 2px;
}
a.wordLink {
	padding:5px 0 5px 22px;
	background:url(images/word.png) no-repeat left 5px;
}
a.excelLink {
	padding:5px 0 5px 22px;
	background:url(images/excel.png) no-repeat left 5px;
}
#contents ul li.pdfLink {
	padding:5px 0 5px 25px;
	background:url(images/pdf.png) no-repeat left 5px;
}
#contents p.comment {
	background:url(images/diamonds.gif) no-repeat left 3px;
	padding-left:20px;
}
#contents p.comment2 {
	text-indent:-1em;
	margin-left:2em;
}

.arrowRight {
	background:url(images/arrowRight.gif) no-repeat left center;
	padding-left:20px;
}
.arrowRight2 {
	background:url(images/arrowRight.gif) no-repeat left 7px;
	padding-left:20px;
}

#contents .indexMenu {
	overflow: hidden;
	margin:20px;
}
#contents .indexMenu ul {
	margin: 0 0 20px;
}
#contents .indexMenu ul li {
	background: none;
	margin-bottom: 10px;
	padding: 0;
}
#contents .indexMenu ul li a {
	border: 1px solid #CCC;
	border-radius: 6px;
	display: block;
	padding: 10px 20px 10px 30px;
	background: url(images/liStandard.png) no-repeat 10px center;
}
#contents .indexMenu ul li a:hover {
	background: url(images/liHover.png) no-repeat 10px center #EEE;
}
#contents .indexMenu ul li ul li {
	margin:5px 0 0 40px;
}
#contents .indexMenu ul li ul li a {
	background:url(images/liStandard.png) no-repeat 10px center;
}

#contents .menuList ul {
  margin: 0;
}
#contents .menuList ul li {
  background: none;
  padding: 0;
}


.linkBox {
	background:#F5F4F2;
	padding:20px 20px 15px;
	margin:20px;
}
#contents .linkBox p {
	background:url(images/linkBoxBack.gif) no-repeat right center #FFF;
	border:1px solid #CCC;
	padding:8px 20px;
	margin:0 0 5px;
}
#contents .linkBox p a {
	display:block;
}

#contents #siteResult table,
#contents #siteResult th,
#contents #siteResult td {
	border:none;
  margin: 0;
}

.photoAreaL {
	float:left;
	margin:0 20px 30px 0;
}
.photoAreaR {
	float:right;
	margin:0 0 30px 20px;
}
#contents .photoAreaL p, #contents .photoAreaR p {
	margin:0;
	padding:5px;
	background:#EEE;
	font-size:80%;
	line-height:120%;
	color:#333;
}
#contents p.marginZero {
	margin:0;
	padding:1px;
}
#contents p.marginZero img {
	border:4px solid #FFF;
}
#contents p.imgLeft {
	float:left;
	margin-right:20px;
  color: #666;
}
#contents p.imgRight {
	float:right;
	margin-left:20px;
  color: #666;
}

#toPageTop {
  position: fixed;
  bottom: 40px;
  right: 20px;
}
#toPageTop a {
  display: inline-block;
  padding: 10px;
  border-radius: 10px;
  background: rgba(0,0,0,0.3);
}

.acMenu {
  margin-bottom: 20px;
}
#contents .acMenu h2 {
  display: block;
  cursor: pointer;
  margin-bottom: 0;
}
.acMenu div.acContents {
  padding: 20px 20px 10px;
  background: #f2f2f2;
  border: #CCC 1px solid;
  display: none;
}

#contents ul.indexMenu {
  overflow: hidden;
  margin: 20px 0 50px;
}
#contents ul.indexMenu li {
  width: 49%;
  float: left;
  padding: 0;
  border-left: 15px solid #7EC195;
  display: table;
  margin-bottom: 20px;
}
#contents ul.indexMenu li:nth-child(even) {
  float: right;
}
#contents ul.indexMenu li a {
  display: table-cell;
  vertical-align: middle;
  color: #333;
  background: #D3E7CD;
  text-decoration: none;
  padding: 10px;
  box-sizing: content-box;
}
#contents ul.indexMenu li a:hover {
  background: #d2f0cb;
}
#contents ul.indexMenu li a strong {
  display: block;
  font-weight: normal;
  color: #999;
  font-size: 80%;
}


.overflow {
  overflow: hidden;
}
.spShow {
  display: none !important;
}

.horizon {
  display: table;
}
.horizon p {
  display: table-cell;
  vertical-align: middle;
  padding-right: 40px;
}
.columnWrap {
  overflow: hidden;
}
.columnL {
  width: 345px;
  float: left;
}
.columnR {
  width: 345px;
  float: right;
}

#contents ul.indexButton {
  overflow: hidden;
  margin: 0;
}
#contents ul.indexButton li {
  background: none;
  margin: 0;
  padding: 30px;
  width: 50%;
  float: left;
}
#contents ul.indexButton li:nth-child(n+3) {
  border-top: 1px solid #CCC;
}
#contents ul.indexButton li:nth-child(odd) {
  border-right: 1px solid #CCC;
}
#contents ul.indexButton li a {
  display: table;
  width: 100%;
  text-align: center;
  border: 1px solid #CCC;
  color: #333;
  text-decoration: none;
}
#contents ul.indexButton li a span {
  display: table-cell;
  vertical-align: middle;
  padding: 20px 30px 30px;
  background: #E3F0E2 url(images/indexButtonBack.png) repeat-x bottom;
}
#contents ul.indexButton li a span:hover {
  background: #BFDFC0 url(images/indexButtonBack.png) repeat-x bottom;
}
.underLine {
  border-bottom: 1px solid #CCC;
}
.indexButton span strong {
  display: block;
  font-weight: normal;
  color: #999;
  font-size: 80%;
}
#contents p.question {
    background: url(images/question.gif) no-repeat 5px 6px #FAFAFA;
    border-top: 2px solid #CCC;
    border-bottom: 1px dotted #CCC;
    margin: 0;
    padding: 2px 5px 2px 40px;
}
#contents p.answer {
    background: url(images/answer.gif) no-repeat 5px 15px;
    margin: 0 0 1em;
    padding: 10px 15px 10px 40px;
}
.photo200R {
  width: 200px;
  float: right;
  margin: 0 0 20px 30px;

}
.photo200L {
  width: 200px;
  float: left;
  margin: 0 30px 20px 0;
}

#contents #sitemap h2 {
  background: none;
}
#contents #sitemap h2 a {
  text-decoration: none;
}
#sitemap {
  overflow: hidden;
}
#sitemap .sitemapBox {
  float: left;
  width: 48%;
  margin-bottom: 40px;
}
#sitemap .sitemapBox:nth-child(even) {
  float: right;
}

@media screen and (max-width:1020px) {
  #footerMenu,
  #footerContents {
    padding: 0 20px 20px;
  }
}


@media screen and (max-width:479px) {
  body {
    min-width: 100%;
    -webkit-text-size-adjust: 100%;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  .pcShow {
    display: none !important;
  }

  header,
  #headerLeft,
  #headerRight {
    width: 100%;
    height: auto;
    display: block;
  }
  header {
    border-bottom: 2px solid #107444;
  }
  header h1, header p#siteID {
    margin: 0 20px;
    padding-top: 20px;
  }
  header h1 img, header p#siteID img {
    width: 200px;
  }
  #headerRight {
    padding: 10px 20px 10px;
    display: table;
  }
  #headerRight ul {
    display: table-cell;
    width: 50%;
  }
  #headerRight ul li {
    font-size: 12px;
    margin-right: 5px;
  }
  #searchArea {
    display: table-cell;
    width: 50%;
  }
  #searchBox {
    width: 65%;
    height: 20px;
  }
  #searchButton {
    width: 35%;
    height: 20px;
    background-size: 30px auto;
  }

  nav#gNavi {
    background: #FFF;
  }
  #menu {
    display: none;
    width: 100%;
  }
  #toggle {
    position: absolute;
    top: 20px;
    right: 20px;
    margin: 0;
    display: block;
    height: 0;
    z-index: 9999;
  }
  nav.fixed #toggle {
    position: fixed;
    animation: fadeIn 1s ease 0s 1 normal;
  }
  @keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
  }
  #toggle a {
    display: block;
    width: 45px;
    height: 45px;
    overflow: hidden;
    padding-top: 45px;
    background: url(images/spButton.png) no-repeat;
  }
  #toggle a.open,
  nav.fixed #toggle a.open {
    background: url(images/spButtonClose.png) no-repeat;
  }
  nav.fixed #toggle a {
    background: url(images/spButton2.png) no-repeat;
  }
  #menu {
    position: fixed;
    top: 0;
    padding-top: 65px;
    padding-bottom: 10px;
    background: rgba(255, 255, 255, 0.9);
    /*top: 65px;*/
    z-index: 8888;
  }
  #menu li ul {
    display: none !important;
  }
  #toggle a {
    position: relative;
  }
  #menu li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0 10px;
    border-left: none;
  }
  #menu li a {
    display: block;
    padding: 14px 0 14px 20px;
    background: #999;
    color: #FFF;
    border-bottom: 1px solid #FFF;
    text-decoration: none;
    text-align: left;
    height: auto;
    font-size: 14px;
  }

  #topicPath {
    padding: 17px 10px;
    width: 100%;
    line-height: 1.5;
  }
  #contentsWrap {
    width: 100%;
  }
  #contents {
    float: none;
    width: 100%;
    padding-bottom: 20px;
  }

  #contents .tableWrap {
    overflow-x: scroll;
  }

  #contents h1 {
    height: auto;
    line-height: 1.5;
    padding: 2px 25px;
  }
  #contents p,
  #contents h3,
  #contents h4,
  #contents h5,
  #contents h6,
  #contents table,
  #contents .otoiawase,
  .horizon,
  .kakomiSingle,
  .kakomiDouble,
  .otoiawase {
    margin-left: 10px;
    margin-right: 10px;
  }
  #gmapsWrap {
    padding: 0 10px;
  }
  #contents ul,
  #contents ol {
    margin-right: 10px;
  }

  #contentsWrap {
    margin: 0;
  }

  aside {
    width: 100%;
  }
  #localNavi ul li a {
    padding: 10px 20px 10px 15px;
  }
  #localNavi ul li a::after,
  #localNavi ul li.plus ul li a::after {
    content: '＞';
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -8px;
    color: #CCC;
    font-size: 10px;
  }
  #localNavi ul li ul li a.active::after {
    content: '';
  }

  #contents ul.indexMenu {
    margin: 20px 20px 60px;
  }

  footer {
    padding: 0 0 17px;
  }
  .mobOpen {
    display: none;
  }
  #footerMenu {
    display: block;
    margin: 0 auto 20px;
    padding: 0;
  }
  #footerMenu p {
    padding: 0;
    margin: 0;
  }
  #footerMenu p a {
    display: block;
    padding: 20px;
  }
  #footerMenu > div {
    width: 100%;
  }
  #footerMenu p a {
    pointer-events: none;
    position: relative;
  }
  #footerMenu p a::before {
    content: '';
    display: block;
    width: 15px;
    height: 1px;
    background: #E1E1E1;
    position: absolute;
    top: 50%;
    right: 10px;
  }
  #footerMenu p a::after {
    content: '';
    display: block;
    width: 1px;
    height: 15px;
    background: #E1E1E1;
    position: absolute;
    top: calc(50% - 7px);
    right: 17px;
  }
  #footerMenu p.isOpen a::after {
    display: none;
  }
  #footerMenu ul {
    margin: 0;
    padding: 10px 20px;
    background: #FFF;
    color: #0D955A;
    display: none;
  }
  #footerMenu ul li {
    border-bottom: 1px solid #E1E1E1;
  }
  #footerMenu ul li a {
    display: block;
    padding: 6px 20px;
    line-height: 1.5;
    color: #0D955A;
    position: relative;
  }
  #footerMenu ul li a::after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 1px solid #CCC;
    border-right: 1px solid #CCC;
    transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 6px);
    right: 4px;
  }

  #footerContents {
    width: 100%;
    display: block;
  }
  #footerLeft,
  #footerRight {
    display: block;
    width: 100%;
    padding: 0 20px;
    text-align: center;
  }
  address {
    line-height: 1.5;
    border-bottom: 1px solid #8BA586;
    padding-bottom: 10px;
  }
  address span {
    display: inline-block;
  }
  #footerRight {
    padding-top: 10px;
  }
  #footerRight ul li {
    font-size: 12px;
    display: inline-block;
    padding: 5px;
    border: none;
  }
  #footerRight ul li:last-child {
    border: none;
  }
  #copyright {
    text-align: center;
  }

  #topContents {
    background: none;
    padding: 10px 15px;
  }
  #topContents section {
    width: 100%;
  }

  #topContents ul.gNaviLink {
    flex-wrap: wrap;
    margin-bottom: 50px;
  }
  #topContents ul.gNaviLink li {
    width: 49%;
    margin-bottom: 8px;
    font-size: 1rem;
  }
  #topContents ul.gNaviLink li a {
    padding: 17px 0;
  }
  #topContents ul.gNaviLink::after {
    bottom: -22px;
  }

  #topContents ul.serviceLink {
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #topContents ul.serviceLink li {
    width: 49%;
    height: auto;
    margin: 0 0 8px 0;
    background-size: cover;
    border-radius: 4px;
    background: url(images/topContentsBackSP.png) no-repeat right bottom;
  }
  /* #topContents ul.serviceLink li:nth-child(even) {
    float: right;
  } */
  #topContents ul.serviceLink li a {
    font-size: 13px;
    padding: 10px 5px 10px 25px;
    text-align: left;
    background-size: 5px;
  }
  #newsArea {
    width: 100%;
    padding: 0 15px 15px;
  }
  #newsArea h2 {
    font-size: 18px;
    height: auto;
    line-height: 28px;
  }
  /* #newsArea ul li {
    line-height: 1.5;
  } */
  #newsArea table {
    border-collapse: collapse;
  }
  #newsArea th,
  #newsArea td {
    display: block;
  }
  #newsArea tr {
    border-bottom: 1px dotted #999;
  }
  #newsArea table th {
    padding: 10px 0 5px;
  }
  #newsArea table td {
    padding: 0 0 10px;
    line-height: 1.5;
  }
  #panphArea ul li {
    margin: 0;
    display: block;
    padding: 10px;
  }
  .spNoWrap th,
  .spNoWrap td {
    white-space: nowrap;
  }

  #contents ul.indexMenu li {
    float: none;
    width: 100%;
  }

  .textBackBlue a {color:#FFF !important;}
  .columnL, .columnR {
    width: 100%;
    float: none;
    margin-bottom: 30px;
  }

  #contents ul.indexButton li {
    padding: 10px 30px;
    width: 100%;
    float: left;
  }
  #contents ul.indexButton li:nth-child(n+3) {
    border-top: none;
  }
  #contents ul.indexButton li:nth-child(odd) {
    border-right: none;
  }
  .underLine {
    border-bottom: none;
  }

  #contents p.imgLeft,
  #contents p.imgRight {
    float: none;
    text-align: center;
    margin: 0 0 20px;
  }
}
