@charset "utf-8";
/*
Theme Name: responsive_237
Theme URI: http://c-tpl.com/
Description: responsive_237
Version: 1.0
Author: Cloud template
Author URI: http://c-tpl.com/
Tags: simple	

	Cloud template v1.0
	 http://c-tpl.com/

	This theme was designed and built by Cloud template,
	whose blog you will find at http://c-tpl.com/

	The CSS, XHTML and design is released under GPL:
	http://www.opensource.org/licenses/gpl-license.php

*/
/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc {
  display: block !important;
  margin: 0 auto;
}
.sp {
  display: none !important;
}
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
	  width: 100%;
  }
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}
:focus {
  outline: 0;
}
ol, ul {
  list-style: none;
}
table {
  border-collapse: separate;
  border-spacing: 0;
}
caption, th, td {
  font-weight: normal;
  text-align: left;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
}
blockquote, q {
  quotes: """";
}
a img {
  border: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  font: 12px/1.5 "メイリオ", "Lucida Sans Unicode", "Lucida Grande", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  color: #333;
  -webkit-text-size-adjust: none;
	overflow-x: hidden;
}
/* リンク設定
------------------------------------------------------------*/
a {
  margin: 0;
  padding: 0;
  text-decoration: none;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-size: 100%;
  color: #060;
}
a:hover, a:active {
  outline: none;
  color: #111;
}
a img:hover {
  opacity: .8;
}
/**** Clearfix ****/
nav#mainNav ul:after, nav#mainNav .inner:after, .newsTitle:after, .post:after, .inner:after, ul.news:after {
  content: "";
  display: table;
  clear: both;
}
nav#mainNav ul, .newsTitle, .post, nav#mainNav .inner, ul.news {
  zoom: 1;
}
/* フォーム
------------------------------------------------------------*/
input[type="text"], textarea {
  vertical-align: middle;
  max-width: 90%;
  line-height: 30px;
  height: 30px;
  padding: 1px 5px;
  border: 1px solid #d4d4d7;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  font-size: 100%;
  color: #555;
  background: #fcfcfc;
}
textarea {
  height: auto;
  line-height: 1.5;
}
input[type="submit"], input[type="reset"], input[type="button"], p.readon a {
  vertical-align: top;
  padding: 0 10px;
  background: #111;
  background: -moz-linear-gradient(top, #111 0%, #222 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #111), color-stop(100%, #222));
  background: -webkit-linear-gradient(top, #111 0%, #222 100%);
  background: -o-linear-gradient(top, #111 0%, #222 100%);
  background: linear-gradient(to bottom, #111 0%, #222 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#111', endColorstr='#222', GradientType=0);
  border: 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  line-height: 28px;
  height: 28px;
  font-size: 120%;
  color: #fff;
}
input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover, p.readon a:hover {
  background: #222;
  background: -moz-linear-gradient(top, #222 0%, #111 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #222), color-stop(100%, #111));
  background: -webkit-linear-gradient(top, #222 0%, #111 100%);
  background: -o-linear-gradient(top, #222 0%, #111 100%);
  background: linear-gradient(to bottom, #222 0%, #111 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#222', endColorstr='#111', GradientType=0);
  cursor: pointer;
}
*:first-child + html input[type="submit"] {
  padding: 3px;
}
/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner {
  margin: 0 auto;
  width: 1200px;
}
#content {
  float: left;
  width: 100%;
  height: auto;
  padding: 20px 0 50px;
}
#toppage #content {
  width: 73%;
  float: left;
}
#sidebar {
  float: right;
  width: 25%;
  padding: 20px 0 50px;
}
#footer {
  clear: both;
}
/* ヘッダー
*****************************************************/
.bg {
  background: #eee;
}
/* サイト説明文
----------------------------------*/
#header h1 {
  padding: 5px 0;
  font-size: 80%;
  color: #333;
  font-weight: normal;
  width: 1200px;
  margin: 0 auto;
}
/* ロゴ とメニューナビ(サイトタイトル)
----------------------------------*/
#midashi {
  width: 1200px;
  margin: 0 auto;
}
#midashi_l {
  float: left;
  width: 30%;
}
#midashi_r {
  float: right;
  width: 70%;
}
/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2 {
  float: left;
  padding: 20px 0;
  color: #515151;
  font-size: 160%;
  font-weight: bold;
}
/* SNS
----------------------------------*/
.sns {
  float: right;
  padding: 20px 0;
}
.sns img {
  margin-left: 5px;
}
/* トップページ　メイン画像
----------------------------------*/
#mainImg {
  clear: both;
  margin-top: 0px;
  line-height: 0;
  text-align: center;
  z-index: 0;
}
#secondImg_l {
  margin-top: 0px;
  line-height: 0;
  text-align: center;
  z-index: 0;
  width: 50%;
  float: left;
}
#secondImg_r {
  margin-top: 0px;
  line-height: 0;
  text-align: center;
  z-index: 0;
  width: 50%;
  float: right;
}
.post {
  margin: 0 0 20px 0;
}
.toppage h4 {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: normal;
  color: #333;
}
/* 記事ループ
*****************************************************/
.list {
  padding: 10px 0;
  border-bottom: 1px dashed #e4e4e4;
}
.list:last-child {
  border: 0;
}
.post .list p {
  padding: 0;
}
.list span {
  padding-left: 10px;
}
/* タイポグラフィ
*****************************************************/
h2.title {
  clear: both;
  margin: 0 0 10px;
  padding: 5px 0;
  font-size: 150%;
  border-bottom: 1px solid #093;
}
.dateLabel {
  text-align: center;
  font-family: Georgia, "Times New Roman", Times, serif;
}
.post p {
  padding-bottom: 15px;
}
.post ul {
  margin: 0 0 10px 10px;
}
.post ul li {
  margin-bottom: 5px;
  padding-left: 15px;
  background: url(images/bullet.png) no-repeat 0 8px;
}
.post ol {
  margin: 0 0 10px 30px;
}
.post ol li {
  list-style: decimal;
}
.post h1 {
  margin: 20px 0;
  padding: 5px 0 5px 15px;
  font-size: 150%;
  border-bottom: 2px solid #222;
  background: url(images/headingBg.png) no-repeat 0 50%;
}
.post h2 {
  margin: 10px 0;
  padding-bottom: 2px;
  font-size: 130%;
  font-weight: normal;
  border-bottom: 2px solid #222;
}
.post h3 {
  margin: 10px 0;
  font-size: 150%;
  font-weight: normal;
  border-bottom: none;
  color: #093;
}
.post blockquote {
  clear: both;
  padding: 10px 0 10px 15px;
  margin: 10px 0 25px 30px;
  border-left: 5px solid #ccc;
}
.post blockquote p {
  padding: 5px 0;
}
.post table {}
.post table th {}
.post table td {}
.post dt {
  font-weight: bold;
}
.post dd {
  padding-bottom: 10px;
}
.post img {
  max-width: 100%;
  height: auto;
}
img.aligncenter {
  display: block;
  margin: 5px auto;
}
img.alignright, img.alignleft {
  margin: 0 10px 15px 15px;
  display: inline;
}
img.alignleft {
  margin: 10px 15px 15px 10px;
}
.alignright {
  float: right;
}
.alignleft {
  float: left;
}
#gallery-1 img {
  border: 1px solid #eaeaea !important;
  padding: 5px;
  background: #fff;
}
#gallery-1 img:hover {
  background: #fffaef;
}
/* サイドバー　ウィジェット
*****************************************************/
.widgetWrap, section.widget ul {
  margin: 0px 0 20px 0;
  padding: 5px 10px 0 10px;
}
section.widget ul ul {
  border: 0;
  margin: 0;
  padding: 0 0 0 10px;
  box-shadow: none;
}
#sidebar ul#banners {
  width: 220px;
  margin: 10px 0;
}
#sidebar ul#banners li {
  float: none;
  margin: 0 0 10px;
}
#sidebar ul#banners li {
  float: none;
  margin: 0 0 10px;
}
section.widget h3 {
  clear: both;
  margin: 0 0 -5px;
  padding: 5px 0;
  font-size: 110%;
  border-bottom: 1px solid #eee;
}
section.widget li a {
  display: block;
  padding: 7px 0 7px 12px;
  background: url(images/arrow2.png) no-repeat 0 12px;
  border-bottom: 1px dashed #e4e4e4;
}
section.widget li a:hover {
  background-position: 2px 12px;
}
section.widget li:last-child a {
  border: 0;
}
#searchform input[type="text"] {
  width: 100px;
  line-height: 22px;
  height: 22px;
  margin-right: 3px;
}
#searchform {
  padding: 20px 0;
}
/* カレンダー */
#calendar_wrap table {
  margin: 0 auto;
  width: 90%;
}
#calendar_wrap table caption {
  padding: 10px 0;
  text-align: center;
  font-weight: bold;
}
#calendar_wrap table th, #calendar_wrap table td {
  padding: 3px;
  text-align: center;
}
#calendar_wrap table th:nth-child(6) {
  color: #000;
}
#calendar_wrap table th:nth-child(7) {
  color: #950000;
}
#calendar_wrap a {
  color: #111;
  font-weight: bold;
  font-weight: bold;
  border-bottom: 1px solid #fff;
}
#calendar_wrap table td#prev {
  text-align: left;
}
#calendar_wrap table td#next {
  text-align: right;
}
#calendar_wrap table td#prev a {
  text-align: left;
  border: 0;
}
#calendar_wrap table td#next a {
  text-align: right;
  border: 0;
}
/* お知らせ　
-------------*/
.news {
  clear: both;
  width: 100%;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
  border-bottom: 1px solid #eee;
}
.newsTitle {
  clear: both;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
}
.newsTitle h3 {
  float: left;
  font-weight: normal;
}
.newsTitle p {
  float: right;
  padding: 0 0 0 10px;
  font-size: 80%;
  background: url(images/arrow2.png) no-repeat 0 5px;
}
.news p {
  clear: both;
  padding-bottom: 2px;
  border-bottom: 1px dashed #e4e4e4;
  margin-bottom: 5px;
}
.news p:last-child {
  border: 0;
}
.news p a {
  display: block;
  padding: 5px 0;
  color: #093;
  font-size: 120%;
}
.news p a:hover {
  display: block;
  padding: 5px 0;
  color: #0C3;
  font-size: 120%;
}
.news a span {
  color: #fff;
  font-size: 100%;
  background: #093;
  margin: 5px 15px 5px 0;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
}
.news span {
  padding: 5px;
  width: 20%;
}
.news a:hover span {
  color: #111;
}
/* 音館　
-------------*/
.otokan {
  width: 100%;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
}
.otokan h4 {
  width: 100%;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
  border-top: #CCC dotted 1px;
  color: #090;
}
.otokan_box {
  width: 45%;
  float: left;
  padding: 10px;
  font-size: 150%;
  color: #92A923;
  height: 200px;
  margin: 10px 0;
  vertical-align: middle;
}
.otokan_box ul {
  position: relative;
}
.otokan_box ul li {
  padding: 0 0 0 15px;
}
.otokan_box ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.otokan_box_r {
  width: 45%;
  padding: 10px;
  float: right;
  background: #FEF0C9;
  font-size: 150%;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  margin: 10px 0;
  height: 200px;
  vertical-align: middle;
}
.otokan_box_r ul {
  position: relative;
}
.otokan_box_r ul li {
  padding: 0 0 0 15px;
}
.otokan_box_r ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.otokan_box_l {
  width: 45%;
  float: left;
  background: #FEF0C9;
  font-size: 150%;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  margin: 10px 0;
  height: 200px;
  vertical-align: middle;
  padding: 10px;
}
.otokan_box_l ul {
  position: relative;
}
.otokan_box_l ul li {
  padding: 0 0 0 15px;
}
.otokan_box_l ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.otokanTitle {
  clear: both;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
}
.otokanTitle h3 {
  float: left;
  font-weight: normal;
}
.otokanTitle p {
  float: right;
  padding: 0 0 0 10px;
  font-size: 80%;
  background: url(images/arrow2.png) no-repeat 0 5px;
}
.otokan p {
  clear: both;
  padding-bottom: 2px;
  border-bottom: 0px dashed #e4e4e4;
  margin-bottom: 5px;
}
.otokan p:last-child {
  border: 0;
}
.otokan p a {
  display: block;
  padding: 5px 0;
  color: #093;
  font-size: 120%;
}
.otokan p a:hover {
  display: block;
  padding: 5px 0;
  color: #0C3;
  font-size: 120%;
}
.otokan a span {
  color: #fff;
  font-size: 100%;
  background: #093;
  margin: 5px 15px 5px 0;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
}
.otokan span {
  padding: 5px;
  width: 20%;
}
.otokan a:hover span {
  color: #111;
}
.otokan_sub_l {
  width: 45%;
  float: left;
  font-size: 150%;
  margin: 10px 0;
  padding: 10px;
  border: none;
}
.otokan_sub_l ul {
  position: relative;
}
.otokan_sub_l ul li {
  padding: 0 0 0 15px;
}
.otokan_sub_l ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.otokan_sub_r {
  width: 45%;
  float: right;
  font-size: 150%;
  margin: 10px 0;
  padding: 10px;
  border: none;
}
.otokan_sub_r ul {
  position: relative;
}
.otokan_sub_r ul li {
  padding: 0 0 0 15px;
}
.otokan_sub_r ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.otokan_sub_r p {
  text-align: center;
  border: none;
}
/* グループホームありがとう　
-------------*/

.taisyosya{
	width: 95%;
	overflow: hidden;
	margin: 0 auto 20px;
}

.taisyosya_title {
    font-size: 30px;
    color: #92a924;
    font-weight: bold;
    border-bottom: 3px solid #92a924;
    margin-bottom: 15px;
    text-align: center;
}

.taisyosya_comm {
    font-size: 20px;
    text-align: center;
    margin-bottom: 20px;
}

.taisyosya li {
    list-style-type: decimal;
    font-size: 16px;
    padding: 5px 0;
    background: unset!important;
    margin-left: 15px;
}


.home {
  width: 100%;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
}

.home_box_all {
  width: 100%;
overflow: hidden;
	margin-bottom: 20px;
}


.home_box {
  width : calc(100% / 3) ;
  color: #92A923;
  margin: 5px 0;
  float: left;
}
.home_box ul {
  position: relative;
}
.home_box ul li {
  padding: 0 0 0 15px;
}
.home_box ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.home_box_r {
  width: 45%;
  padding: 10px;
  float: right;
  background: #FEF0C9;
  font-size: 150%;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  margin: 10px 0;
  height: 200px;
  vertical-align: middle;
}
.home_box_r ul {
  position: relative;
}
.home_box_r ul li {
  padding: 0 0 0 15px;
}
.home_box_r ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.home_box_l {
  width: 45%;
  float: left;
  background: #FEF0C9;
  font-size: 150%;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  margin: 10px 0;
  height: 200px;
  vertical-align: middle;
  padding: 10px;
}
.home_box_l ul {
  position: relative;
}
.home_box_l ul li {
  padding: 0 0 0 15px;
}
.home_box_l ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.homeTitle {
  clear: both;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
}
.homeTitle h3 {
  float: left;
  font-weight: normal;
}
.homeTitle p {
  float: right;
  padding: 0 0 0 10px;
  font-size: 80%;
  background: url(images/arrow2.png) no-repeat 0 5px;
}
.home p {
  clear: both;
  padding-bottom: 2px;
  margin-bottom: 5px;
}
.home p:last-child {
  border: 0;
}
.home p a {
  display: block;
  padding: 5px 0;
  color: #093;
  font-size: 120%;
}
.home p a:hover {
  display: block;
  padding: 5px 0;
  color: #0C3;
  font-size: 120%;
}
.home a span {
  color: #fff;
  font-size: 100%;
  background: #093;
  margin: 5px 15px 5px 0;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
}
.home span {
  padding: 5px;
  width: 20%;
}
.home a:hover span {
  color: #111;
}
.home_sub_l {
  width: 45%;
  float: left;
  font-size: 150%;
  margin: 10px 0;
  padding: 10px;
  border: none;
}
.home_sub_l ul {
  position: relative;
}
.home_sub_l ul li {
  padding: 0 0 0 15px;
}
.home_sub_l ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.home_sub_r {
  width: 45%;
  float: right;
  font-size: 150%;
  margin: 10px 0;
  padding: 10px;
  border: none;
}
.home_sub_r ul {
  position: relative;
}
.home_sub_r ul li {
  padding: 0 0 0 15px;
}
.home_sub_r ul li:before { /*疑似要素*/
  left: 1em; /*左端からのアイコンまでの距離*/
}
.home_sub_r p {
  text-align: left;
  border: none;
}
/* 会社概要
-------------*/
.tbl_style {
  margin: 20px auto;
  font-family: 游明朝, "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 120%;
  width: 980px;
}
.tbl_style th {
  width: 30%;
  background-color: #e0f3dd;
  color: #373737;
  font-weight: bold;
  border: #CCC 1px solid;
}
.tbl_style td {
  text-align: left;
  border: #CCC 1px solid;
  background: #FFF;
}
.tbl_style th, .tbl_style td {
  padding: 18px 40px 14px;
  vertical-align: top;
}
h4 {
  margin: 20px 0 0;
  font-weight: normal;
  font-size: 100%;
}
h5 {
  margin: 0px 0 20px 0;
  font-weight: bold;
  font-size: 130%;
}
figure#head-office {
  margin: 0 20px 0 0;
  width: 270px;
  float: left;
}
figure#head-office img {
  margin: 0;
  width: 270px;
}
/* お問い合せ
-------------*/
.info {
  margin: 20px auto;
  font-size: 120%;
  width: 608px;
}
/* お知らせサイドバー
-------------*/
.news_side {
  clear: both;
  width: 100%;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
  border-bottom: 1px solid #eee;
}
.news_sideTitle {
  clear: both;
  margin: 0;
  padding: 7px 10px 7px 0;
  font-size: 110%;
  border-bottom: 1px solid #eee;
}
.news_sideTitle h3 {
  float: left;
  font-weight: normal;
}
.news_sideTitle p {
  float: right;
  padding: 0 0 0 10px;
  font-size: 80%;
  background: url(images/arrow2.png) no-repeat 0 5px;
}
.news_side p {
  clear: both;
  padding-bottom: 2px;
  border-bottom: 1px dashed #e4e4e4;
}
.news_side p:last-child {
  border: 0;
}
.news_side p a {
  display: block;
  padding: 5px 0;
  color: #333;
  font-style: italic;
  font: italic 110% "Palatino Linotype", "Book Antiqua", Palatino, serif;
}
.news_side a span {
  color: #515151;
  font: normal 90% Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
}
.news_side span {
  padding-left: 10px;
}
.news_side a:hover span {
  color: #111;
}
/* お知らせ下バナー
-------------*/
.colom {
  clear: both;
  width: 100%;
  margin: 0px 0 10px 0;
  font-size: 110%;
}
.colom_r {
  float: right;
  width: 50%;
  margin: 10px 0;
  font-size: 110%;
}
.colom_l {
  float: left;
  width: 50%;
  margin: 10px 0;
  font-size: 110%;
}
/* トップページ */
#content .newsTitle h3 {
  font-size: 120%;
	padding: 0 15px;
}
/* フッター
*****************************************************/
#footer a {
  color: #333;
}
#footer .boxWrap {
    width: 100%;
    display: flex;
    max-width: 1100px;
    /* justify-content: space-between; */
    margin: 0 auto;
}
#footer .box {
  padding: 20px;
}

#footer .yhks {
	margin:0 auto;
}

#footer .yhks img {
  max-width: 300px;
}

.box .widgetWrap, .box section.widget ul {
  padding: 0 0 0 7px;
  margin-top: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.box section.widget li a {
  background: url(images/arrowWhite.png) no-repeat 0 12px;
  border: 0;
}
.box section.widget li a:hover {
  background-position: 2px 12px;
}
#footer h3 {
  padding: 5px;
  margin-bottom: 10px;
  font-size: 120%;
  border-bottom: 1px solid #eee;
}
.contact p {
  padding: 3px 0 3px 32px;
  margin-bottom: 3px;
  font-size: 110%;
  background: url(images/iconHome.png) no-repeat 4px 0;
}
.contact p.mail {
  background-image: url(images/iconMail.png);
}
.contact p.tel {
  background-image: url(images/iconTel.png);
}
.contact p.fax {
  background-image: url(images/iconFax.png);
}
.contact p.tw {
  background-image: url(images/iconTW.png);
}
.contact p.fb {
  background-image: url(images/iconFB.png);
}
#copyright {
  color: #fff;
  clear: both;
  padding: 10px 0;
  text-align: center;
  font-size: 90%;
  background: #222;
}
/* page navigation
------------------------------------------------------------*/
.pagenav {
  clear: both;
  width: 100%;
  height: 30px;
  margin: 5px 0 20px;
}
.prev {
  float: left
}
.next {
  float: right;
}
#pageLinks {
  clear: both;
  color: #4f4d4d;
  text-align: center;
}
/* トップページ 最新記事3件
------------------------------------------------------------*/
ul#banners, ul.post {
  width: 1200px;
  margin-right: -20px;
  padding-bottom: 20px;
  margin-top: 10px;
  margin-left: 10px;
}
ul#banners li, ul.post li {
  float: left;
  width: 380px;
  margin-right: 20px;
}
ul.post {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
ul.post img {
  max-width: 380px;
  height: auto;
}
ul.post h3 {
  margin: 10px 0;
  padding-bottom: 5px;
  font-size: 14px;
  font-weight: normal;
  color: #333;
  border: 0;
}
p.readon a {
  padding: 3px 10px;
  font-size: 95%;
}
ul#banners:after {
  content: "";
  display: table;
  clear: both;
}
ul#banners {
  zoom: 1;
}
/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width:1025px) {
  div.panel {
    display: block !important;
    margin: 45px 0 0 20px;
  }

  a#menu {
    display: none;
  }

  nav#mainNav ul {
    clear: both;
    position: relative;
    z-index: 200;
    width: 100%;
    margin: 0 auto;
  }

  nav#mainNav li {
    float: left;
    margin-right: 20px;
    position: relative;
  }

  nav#mainNav li.hassub a {
    background: url(images/arrowDown2.png) no-repeat 100% 50%;
  }

  nav#mainNav li a {
    display: block;
    _float: left;
    font-size: 130%;
    font-weight: bold;
    line-height: 45px;
    padding: 0 10px 0 10px;
    color: #006834;
    border-bottom: 1px solid #eee;
  }

  nav#mainNav li.current-menu-item a,
  nav#mainNav li a:hover,
  nav#mainNav li.current-menu-parent a {
    color: #099;
    border-color: #099;
  }

  nav#mainNav li.hassub.current-menu-item a,
  nav#mainNav li.hassub a:hover,
  nav#mainNav li.hassub.current-menu-parent a {
    background: url(images/arrowDown.png) no-repeat 100% 50%;
  }

  nav#mainNav li.hassub li a,
  nav#mainNav li.hassub.current-menu-item li a,
  nav#mainNav li.hassub.current-menu-parent li a,
  nav#mainNav li.hassub li a:hover {
    background: none;
  }

  nav#mainNav ul ul {
    width: 220px;
    background: #fff;
  }

  nav#mainNav li ul {
    display: none;
    opacity: 0;
  }

  /* sub-menu 表示制御 */
  nav#mainNav li ul.sub-menu {
    display: none;
    opacity: 0;
    width: 100%;
    background: #fff;
    position: absolute;
    top: 46px;
    left: 0;
    z-index: 500;
    transition: opacity 0.3s ease;
  }

  nav#mainNav li:hover > ul.sub-menu {
    display: block;
    opacity: 1;
  }

  nav#mainNav li li {
    margin: 0;
    float: none;
    width: 100%;
  }

  nav#mainNav li li a,
  nav#mainNav li.current-menu-parent li a,
  nav#mainNav li.current-menu-item li a {
    padding: 0 0 0 5px;
    height: 35px;
    font-size: 95%;
    line-height: 35px;
  }

  nav#mainNav li.current-menu-item li a,
  nav#mainNav li.current-menu-parent li a {
    color: #adadad;
    border-bottom: 1px solid #adadad;
  }

  nav#mainNav li li.current-menu-item a,
  nav#mainNav li li a:hover {
    color: #222;
    border-color: #222;
  }

  /* sub-menu スタイル調整 */
  nav#mainNav ul.sub-menu li {
    width: 100%;
  }

  nav#mainNav ul.sub-menu li a {
    font-size: 14px;
    padding: 5px 10px;
    display: block;
    color: #006834;
    background: #fff;
    border-bottom: 1px solid #eee;
    transition: background 0.2s;
	  text-align: center;
  }

  nav#mainNav ul.sub-menu li a:hover {
    background: #f4f4f4;
    color: #099;
  }
}

/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px) {
  nav#mainNav {
    clear: both;
    width: 100%;
    margin: 0 auto 10px;
  }
  nav#mainNav a.menu {
    width: 100%;
    display: block;
    height: 37px;
    line-height: 37px;
    font-weight: bold;
    text-align: left;
    border-top: 1px solid #d5d5d5;
    border-bottom: 1px solid #d5d5d5;
    background: url(images/menuOpen.png) no-repeat 5px 8px;
  }
  nav#mainNav a#menu span {
    padding-left: 35px;
  }
  nav#mainNav a.menuOpen {
    border-bottom: 0;
    background: url(images/menuOpen.png) no-repeat 5px -34px;
  }
  nav#mainNav a#menu:hover {
    cursor: pointer;
  }
  nav .panel {
    display: none;
    width: 100%;
    position: relative;
    right: 0;
    top: 0;
    z-index: 1;
  }
  nav#mainNav ul {
    margin: 0;
    padding: 0;
  }
  nav#mainNav ul li {
    float: none;
    clear: both;
    width: 100%;
    height: auto;
    line-height: 1.2;
  }
  nav#mainNav ul li:first-child {
    border-top: 1px solid #d5d5d5;
  }
  nav#mainNav ul li li:first-child {
    border-top: 0;
  }
  nav#mainNav ul li a, nav#mainNav ul li.current-menu-item li a {
    display: block;
    padding: 15px 10px;
    text-align: left;
    border-bottom: 1px dashed #ccc;
    background: #fff;
  }
  nav#mainNav ul li:last-child a {
    border: 0;
  }
  nav#mainNav ul li li:last-child a {
    border: 0;
  }
  nav#mainNav ul li li:last-child a {
    border-bottom: 1px dashed #ccc;
  }
  nav#mainNav ul li a span {
    display: none;
  }
  nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover, nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:active, nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li.current-menu-item li a:hover, nav#mainNav ul li.current-menu-item li a:active {
    background: #f6f6f6;
  }
  nav#mainNav ul li li {
    float: left;
    border: 0;
  }
  nav#mainNav ul li li a, nav#mainNav ul li.current-menu-item li a, nav#mainNav ul li li.current-menu-item a {
    padding-left: 40px;
    background: #fff url(images/sub1.png) no-repeat 20px 18px;
  }
  nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li li a:hover, nav#mainNav ul li.current-menu-item li a:hover {
    background: #f6f6f6 url(images/sub1.png) no-repeat 20px -62px;
  }
  nav#mainNav ul li li:last-child a {
    background: #fff url(images/subLast.png) no-repeat 20px 20px;
  }
  nav#mainNav ul li li:last-child.current-menu-item a, nav#mainNav ul li li:last-child a:hover, nav#mainNav ul li.current-menu-item li:last-child a:hover {
    background: #f6f6f6 url(images/subLast.png) no-repeat 20px -65px;
  }
  nav div.panel {
    float: none;
  }
  #mainImg {
    margin-bottom: 20px;
  }
}
/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width:959px) {
  #header {
    width: 100%
  }
  .inner, #footer .boxWrap, #wrapper {
    width: 96%;
  }
  #mainImg img {
    width: 96%;
    height: auto;
  }
  #secondImg_l {
    clear: both;
    margin-top: 0px;
    line-height: 0;
    text-align: center;
    z-index: 0;
    width: 100%;
    float: none;
    margin: 5px 0;
  }
  #secondImg_r {
    margin-top: 0px;
    line-height: 0;
    text-align: center;
    z-index: 0;
    width: 50%;
    width: 100%;
    float: none;
    margin: 5px 0;
  }
  #content, #sidebar {
    clear: both;
    width: 95%;
    float: none;
    margin: 0 auto;
    padding: 10px 0;
  }
  #sidebar {
    background: url(images/border.png) repeat-x;
    padding-top: 30px;
  }
  ul.post, ul#banners, #sidebar ul#banners {
    width: 100%;
    display: table-row;
    margin: 0;
  }
  ul.post li, ul#banners li, #sidebar ul#banners li {
    float: left;
    width: 23%;
    margin: 0 1%;
    padding: 0 0 20px;
  }
  ul.post img, ul#banners li img, #sidebar ul#banners img {
    max-width: 98%;
    height: auto;
  }
  #calendar_wrap table {
    width: 260px;
    margin: 0;
  }
  #footer .boxWrap {
    margin: 0;
    padding: 20px;
	  flex-direction: column;
	  box-sizing: border-box;
  }
  #footer .box {
    float: none;
    width: 100%;
    margin: 5px 0;
	  padding: 5px;
	  box-sizing: border-box;
  }
	
  #footer .box h2 img {
    width: 100%;
  }
#footer .yhks{
	text-align: center;
	}
#footer .yhks img {
    max-width: 200px;
}
}
/* 幅620px以下から
------------------------------------------------------------*/
@media only screen and (max-width:620px) {
  ul.post li, ul#banners li, #sidebar ul#banners li {
    width: 88%;
    margin: 0 6% 0 6%;
  }
  ul.post li:nth-child(2n+1) {
    clear: left;
  }
  .post img {
    max-width: 100%;
    height: auto;
  }
  img.alignright, img.alignleft {
    display: block;
    margin: 5px 2%;
    max-width: 96%;
    height: auto;
  }
  .alignright, .alignleft {
    float: none;
  }
  .colom {
    clear: both;
    width: 100%;
    margin: 10px 0;
    font-size: 110%;
    z-index: 1;
  }
  #toppage #content {
    width: 100%;
    float: left;
  }
  #toppage #content img {
    width: 100%;
    float: left;
  }
  #midashi {
    width: 100%;
    margin: 0 auto;
  }
  #midashi_l {
    float: left;
    width: 60%;
  }
  #midashi_l img {
    float: left;
    width: 100%;
  }
  #midashi_r {
    float: right;
    width: 30%;
    margin-right: 10px;
    margin-top: 20px;
  }
  .news_sideTitle h3 {
    font-weight: normal;
    margin: 0 auto;
  }
  #sidebar {
    background: url(images/border.png) repeat-x;
    padding-top: 30px;
    width: 290px;
  }
  #mainImg img {
    width: 96%;
    height: auto;
    margin: 0 auto;
  }
  /* グループホーム
------------------------------------------------------------*/
  .home_sub_l {
    width: 90%;
    font-size: 100%;
    margin: 0px auto;
    padding: 0px 10px;
    border: none;
    float: left;
  }
  .home_sub_l img {
    width: 30%;
    font-size: 100%;
    margin: 10px auto;
    padding: 10px;
    border: none;
    float: left;
  }
  .home_sub_l ul {
    position: relative;
  }
  .home_sub_l ul li {
    padding: 0 0 0 15px;
  }
  .home_sub_l ul li:before { /*疑似要素*/
    left: 1em; /*左端からのアイコンまでの距離*/
  }
  .home_sub_r {
    width: 90%;
    font-size: 100%;
    margin: 0px auto;
    padding: 0px 10px;
    border: none;
    float: left;
  }
  .home_sub_r img {
    width: 60%;
    font-size: 100%;
    margin: 10px auto;
    padding: 10px;
    border: none;
    float: left;
  }
  .home_sub_r ul {
    position: relative;
  }
  .home_sub_r ul li {
    padding: 0 0 0 15px;
  }
  .home_sub_r ul li:before { /*疑似要素*/
    left: 1em; /*左端からのアイコンまでの距離*/
  }
  .home_box {
    width: 100%;
    color: #92A923;
    margin: 5px 0;
    float: left;
  }
  /* 音館　
-------------*/
  .otokan {
    width: 100%;
    margin: 0;
    padding: 7px 10px 7px 0;
    font-size: 110%;
  }
  .otokan h4 {
    width: 100%;
    margin: 0;
    padding: 7px 10px 7px 0;
    font-size: 110%;
    border-top: #CCC dotted 1px;
    color: #090;
  }
  .otokan_box {
    width: 90%;
    float: left;
    padding: 10px;
    font-size: 120%;
    color: #92A923;
    height: auto;
    margin: 10px 0;
    vertical-align: middle;
  }
  .otokan_box ul {
    position: relative;
  }
  .otokan_box ul li {
    padding: 0 0 0 15px;
  }
  .otokan_box ul li:before { /*疑似要素*/
    left: 1em; /*左端からのアイコンまでの距離*/
  }
  .otokan_box_r {
    width: 90%;
    padding: 10px;
    float: left;
    background: #FEF0C9;
    font-size: 100%;
    border-radius: 10px; /* CSS3草案 */
    -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
    -moz-border-radius: 10px; /* Firefox用 */
    margin: 10px auto;
    vertical-align: middle;
    height: auto;
  }
  .otokan_box_r ul {
    position: relative;
  }
  .otokan_box_r ul li {
    padding: 0 0 0 15px;
  }
  .otokan_box_r ul li:before { /*疑似要素*/
    left: 1em; /*左端からのアイコンまでの距離*/
  }
  .otokan_box_l {
    width: 90%;
    padding: 10px;
    float: left;
    background: #FEF0C9;
    font-size: 100%;
    border-radius: 10px; /* CSS3草案 */
    -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
    -moz-border-radius: 10px; /* Firefox用 */
    margin: 10px auto;
    vertical-align: middle;
    height: auto;
  }
  .otokan_box_l ul {
    position: relative;
  }
  .otokan_box_l ul li {
    padding: 0 0 0 15px;
  }
  .otokan_box_l ul li:before { /*疑似要素*/
    left: 1em; /*左端からのアイコンまでの距離*/
  }
  .otokanTitle {
    clear: both;
    margin: 0;
    padding: 7px 10px 7px 0;
    font-size: 110%;
  }
  .otokanTitle h3 {
    float: left;
    font-weight: normal;
  }
  .otokanTitle p {
    float: right;
    padding: 0 0 0 10px;
    font-size: 80%;
    background: url(images/arrow2.png) no-repeat 0 5px;
  }
  .otokan p {
    clear: both;
    padding-bottom: 2px;
    border-bottom: 0px dashed #e4e4e4;
    margin-bottom: 5px;
  }
  .otokan p:last-child {
    border: 0;
  }
  .otokan p a {
    display: block;
    padding: 5px 0;
    color: #093;
    font-size: 120%;
  }
  .otokan p a:hover {
    display: block;
    padding: 5px 0;
    color: #0C3;
    font-size: 120%;
  }
  .otokan a span {
    color: #fff;
    font-size: 100%;
    background: #093;
    margin: 5px 15px 5px 0;
    border-radius: 10px; /* CSS3草案 */
    -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
    -moz-border-radius: 10px; /* Firefox用 */
  }
  .otokan span {
    padding: 5px;
    width: 20%;
  }
  .otokan a:hover span {
    color: #111;
  }
  .otokan_sub_l {
    width: 90%;
    float: left;
    font-size: 150%;
    margin: 0px 0;
    padding: 0 10px;
    border: none;
  }
  .otokan_sub_l ul {
    position: relative;
  }
  .otokan_sub_l ul li {
    padding: 0 0 0 15px;
  }
  .otokan_sub_l ul li:before { /*疑似要素*/
    left: 1em; /*左端からのアイコンまでの距離*/
  }
  .otokan_sub_r {
    width: 90%;
    float: left;
    font-size: 100%;
    margin: 0px 0;
    padding: 0 10px;
    border: none;
  }
  .otokan_sub_r ul {
    position: relative;
  }
  .otokan_sub_r ul li {
    padding: 0 0 0 15px;
  }
  .otokan_sub_r ul li:before { /*疑似要素*/
    left: 1em; /*左端からのアイコンまでの距離*/
  }
  .otokan_sub_r p {
    text-align: left;
    border: none;
  }
  /* 会社概要
-------------*/
  .tbl_style {
    margin: 5px auto;
    font-family: 游明朝, "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 120%;
    width: 90%;
  }
  .tbl_style th {
    width: 90%;
    background-color: #e0f3dd;
    color: #373737;
    font-weight: bold;
    border: #CCC 1px solid;
    display: block;
  }
  .tbl_style td {
    text-align: left;
    border: #CCC 1px solid;
    background: #FFF;
    display: block;
    width: 90%
  }
  .tbl_style th, .tbl_style td {
    padding: 18px 20px 14px;
    vertical-align: top;
  }
  h4 {
    margin: 20px 0 0;
    font-weight: normal;
    font-size: 100%;
  }
  h5 {
    margin: 0px 0 20px 0;
    font-weight: bold;
    font-size: 130%;
  }
  figure#head-office {
    margin: 0 20px 0 0;
    width: 270px;
    float: left;
  }
  figure#head-office img {
    margin: 0;
    width: 270px;
  }
  /* お問い合せ
-------------*/
  .info {
    margin: 20px auto;
    font-size: 120%;
    width: 100%;
  }
  /* サイト説明文
----------------------------------*/
  #header h1 {
    padding: 5px 0;
    font-size: 50%;
    color: #333;
    font-weight: normal;
    width: auto;
    margin: 0 auto;
  }
}

.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
	margin: 0 0 30px;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.top_comment {
    width: 100%;
    text-align: center;
    font-size: 30px;
    color: #01913a;
    border-bottom: 3px solid #01913a;
    padding: 10px 0;
    margin: 10px 0 5px;
    border-top: 4px double #01913a;
    font-weight: bold;
}

.sidebar_title {
    font-size: 22px;
    border-bottom: 3px solid #060;
    font-weight: bold;
    margin: 20px 0;
    padding: 0 10px;
    box-sizing: border-box;
 position: relative;
}
.sidebar_title::before {
    content: '';
    position: absolute;
    bottom: -3px;
    width: 50%;
    height: 3px;
    background: #90c320;
    left: 0;
}

.sidebar_bn{
	width: 100%;
	display: block;
}

.link_bn{
	width: 100%;
	margin: 10px 0;
	border: 1px solid #ccc;
}
.link_bn_nb {
    border: none;
}

.link_bn img{
	width: 100%;
}

.ksskk {
	width: 100%;
	text-align: center;
	margin: 10px 0;
}

.ksskk_btn {
	display: inline-block;
}

.ksskk_btn a {
	display: inline-block; /* ← 追加推奨 */
	font-size: 24px;
	padding: 20px 50px;
	color: #FFF;
	border-radius: 15px;
	border: 1px solid #01913a;
	background: #01913a;
	text-decoration: none; /* ← 追加推奨 */
	transition: all 0.3s ease; /* ← スムーズなhover */
}

.ksskk_btn a:hover {
	border: 1px solid #01913a;
	background: #FFF;
	color: #01913a;
}
@media (max-width: 768px) {
  .ksskk_btn a {
    font-size: 18px;
    padding: 15px;
  }
}



