@charset "utf-8";

/*-------------------------------------------*/
/*	初期化
/*-------------------------------------------*/
* {
  margin: 0px;
  padding: 0px;
  font-size: 100%;
}
ul,
ol {
  list-style: none;
}
body,
h1,
h2,
h3,
h4,
h5,
p,
ul,
ol,
li,
dl,
dt,
dd,
table,
form,
input {
  margin: 0;
  padding: 0;
}
hr {
  display: none;
}
th {
  font-weight: lighter;
}
img {
  border: none;
  vertical-align: bottom;
}

/*-------------------------------------------*/
/*	基本設定
/*-------------------------------------------*/

body {
  color: #333;
  text-align: center;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
    Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 87.5%;
  line-height: 130%;
  -webkit-text-size-adjust: 100%;
}
/* 20210324追記 見出し行間調整 */
h4 {
  line-height: 1.25;
}
dt {
  font-weight: bold;
}
strong {
  font-weight: bold;
}
pre {
  background: #f7f7f7;
  color: #222;
  line-height: 18px;
  margin-bottom: 18px;
  padding: 1.5em;
}
sup, sub {
  height: 0;
  line-height: 1;
  position: relative;
  vertical-align: baseline;
}
sup {
  bottom: 1ex;
}
sub {
  top: 0.5ex;
}
input[type="date"],
select,
input[type="text"],
input[type="tel"],
input[type="number"],
input[type="email"],
textarea {
  background: #f9f9f9;
  border: 1px solid #ccc;
  padding: 2px;
  font-size: 100%;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
}
a {
  overflow: hidden;
  color: #5ead3c;
  &:hover, &:active {
    color: #5ead3c;
    text-decoration: none;
  }
  &:hover img {
    opacity: 0.6; /* Standard: FF gt 1.5, Opera, Safari */
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
    -khtml-opacity: 0.6; /* Safari 1.x */
    -moz-opacity: 0.6; /* FF lt 1.5, Netscape */
  }
}

/*-------------------------------------------*/
/*	form フォーム
/*-------------------------------------------*/
form {
  & table {
    margin-top: 25px;
  }
  & input[type="text"],
  & input[type="email"],
  & input[type="tel"],
  & input[type="number"],
  & textarea {
    position: relative;
    overflow: hidden;
    padding: 5px 10px;
    margin: 5px 5px 5px 0;
  }
  & input[type="radio"] {
    width: auto;
  }
  & input[type="checkbox"] {
    width: auto;
    margin: 0;
  }

  /* 20240611: フォームのスタイルを修正 */
  & input[type="text"],
  & input[type="tel"],
  & input[type="number"],
  & input[type="email"],
  & input[type="password"],
  & input[type="date"],
  & select,
  & textarea {
    appearance: none;
    -webkit-appearance: none;
    border-color: #ccc;
    border-radius: 0;
  }
  & textarea {
    font-size: 1rem;
    width: auto;
  }

  /* 20250519: 旧BizVektorからフォームの幅を移植 */
  & input[type=email],
  & input[type=number],
  & input[type=tel],
  & input[type=text],
  & textarea {
    max-width: 260px;
  }
}

.adminEdit {
  clear: both;
  float: none;
  display: block;
  overflow: hidden;
  padding: 0px 0px 20px;
}

.assistive-text {
  display: none;
}

/*反転時の文字色・背景色 */
::selection {
  background-color: #5ead3c;
  color: #fff;
}
/* Firefox対応*/
::-moz-selection {
  background-color: #5ead3c;
  color: #fff;
}

#content form {
  & span.wpcf7-form-control-wrap {
    & .wpcf7-list-item, & .wpcf7-list-item label {
      display: block;
      float: left;
    }
  }
  /* プライバシーポリシーに同意するチェックボックス */
  & .pp-agree {
    display: inline-block;
    padding-left: 1em;
  }
}

/*-------------------------------------------*/
/*	Btn ボタン
/*-------------------------------------------*/
#searchform input[type="submit"],
p.form-submit input[type="submit"],
form#searchform input#searchsubmit,
.content form input.wpcf7-submit,
#confirm-button input {
  font-size: 12px;
  line-height: 1;
  text-align: center;
  width: auto;
  border: 1px solid #5ead3c;
  border-radius: 0;
  display: inline-block;
  overflow: hidden;
  position: relative;
  white-space: nowrap;
  padding: 8px 20px;
  text-decoration: none;
}
.content form input.wpcf7-submit {
  margin-top: 0;
}

a.btn,
.linkBtn a,
input[type="button"],
input[type="submit"] {
  color: #fff;
  display: inline-block;
  overflow: hidden;
  margin-top: 15px;
  position: relative;
  padding: 8px 15px 6px;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid #5ead3c;
  background: #5ead3c;
  box-shadow: inset 0px 0px 1px rgba(255, 255, 255, 1);
}

a.btn.btnS,
.linkBtn.linkBtnS a {
  padding: 5px 10px;
  font-size: 85.7%;
}
.linkBtn.linkBtnS a:hover {
  color: #fff;
}

a.btn.btnL,
.linkBtn.linkBtnL a {
  padding: 10px 30px 8px;
  font-size: 114.3%;
  text-align: center;
}

a.btn:hover,
.linkBtn a:hover {
  color: #fff !important;
}

a.btn.btnAdmin,
.linkBtn.linkBtnAdmin a {
  color: #666666 !important;
  background-color: #e5e5e5;
  border-radius: 3px;
  text-decoration: none;
  border: 1px solid #cccccc;
  box-shadow: inset 0 1px 0 #fff;
  background: linear-gradient(
    to bottom,
    #ffffff,
    #e5e5e5
  ); /* IE10, Firefox 16.0+, Opera 12.50+ */
  background: -webkit-gradient(linear, 0 0, 0 bottom, from(#fff), to(#e5e5e5));
  background: -moz-linear-gradient(#fff, #e5e5e5);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(StartColorStr=#ffffff, EndColorStr=#e5e5e5)";
  filter: progid: DXImageTransform.Microsoft.Gradient(StartColorStr=#ffffff, EndColorStr=#e5e5e5);
}

#searchform input[type="submit"],
p.form-submit input[type="submit"] {
  padding: 6px 15px;
}

#searchform label {
  display: none;
}
form#searchform input#searchsubmit {
  padding: 6px 5px;
}

.moreLink {
  margin-bottom: 3px;
  height: auto;
  display: block;
  & a {
    text-align: center;
  margin-top: 15px;
  display: inline-block;
  overflow: hidden;
  font-size: 11px;
  line-height: 105%;
  text-decoration: none;
  background: #efefef;
  color: #333;
  border-left: 4px solid #5ead3c;
  padding: 5px 15px 5px 11px;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.25);
  white-space: nowrap;
  &:hover {
      color: #fff;
      text-decoration: none !important;
      background: #666;
    }
  }
}


/*-------------------------------------------*/
/*	レイアウト
/*-------------------------------------------*/
html,
body,
#wrap {
  height: 100%;
  min-height: 100%;
}
#header,
#pagetop,
#footMenu,
#footer {
  text-align: center;
  clear: both;
}
.innerBox {
  text-align: left;
  width: 94%;
  margin: 0px 3%;
  & img {
    max-width: 100%;
  }
}
#main {
  width: 100%;
  margin: 0px auto;
  & #container {
    overflow: visible;
    & .content {
      margin: 0 0px 0px 0px;
      padding-bottom: 30px;
      &.wide {
        width: 99%;
        float: none;
        padding-bottom: 30px;
        overflow: visible;
      }
    }
    & #sideTower {
      display: block;
      overflow: hidden;
      padding: 0 1px 30px 1px;
      width: 100%;
    }
  }
}


/*-------------------------------------------*/
/*	#headerTop ヘッダートップ
/*-------------------------------------------*/
#headerTop {
  display: none;
  color: #fff;
  border-top: 3px solid #333;
  background: #8dc44a;
  overflow: hidden;
  width: 100%;
  padding: 2px 0px;
  clear: both;
  font-size: 85.7%;
  & #site-description {
    padding: 2px 0;
    font-size: 12px;
    line-height: 120%;
  }
}


/*-------------------------------------------*/
/*	#header ヘッダー
/*-------------------------------------------*/
#header {
  display: block;
  overflow: hidden;
  padding-top: 15px;
  text-align: left;
  & #site-title {
    font-size: 24px;
    line-height: 45px;
    margin: 0px;
    padding-bottom: 10px;
    position: relative;
    font-weight: lighter;
    text-align: left;
    & a {
      color: #000;
      font-weight: bold;
      text-decoration: none;
      & img {
        max-height: 60px;
        margin-top: 3px;
      }
    }
  }
  & #headContact {
    font-size: 100%;
    line-height: 110%;
    margin: 0px 0px 10px;
    white-space: nowrap;
    text-align: center;
    & #headContactTxt, & #headContactTime {
      font-size: 10px;
    }
    & #headContactTxt {
      letter-spacing: 0px;
      margin-bottom: 1px;
    }
    & #headContactTel {
      font-size: 18px;
      line-height: 21px;
      margin-bottom: 2px;
      font-family: "Lato", sans-serif;
      color: #5ead3c;
    }
    & #headContactTime {
      font-size: 12px;
      line-height: 15px;
    }
  }
  & #headContactInner {
    color: #333;
  }
}

@media (max-width: 660px) {
  #header #site-title {
    text-align: center;
  }
}


/*-------------------------------------------*/
/*	#gMenu グローバルメニュー
/*-------------------------------------------*/

#gMenu {
  border-top: 1px solid #333;
  clear: both;
  display: block;
  border-bottom: none;
  overflow: visible;
  position: relative;
  width: 100%;
  background-color: #f9f9f9;
  /* 閉じている時 */
  &.itemClose{
    & .menu {
      display: none;
    }
    & .assistive-text span {
      background: url(images/iconMenuClose.png) left 50% no-repeat;
    }
  }
  /* 開いている時 */
  &.itemOpen {
    & .menu {
      display: block;
    }
    & .assistive-text span {
      background: url(images/iconMenuOpen.png) left 50% no-repeat;
    }
  }
  & .assistive-text {
    box-shadow: inset 0px 0px -1px rgba(200, 215, 200, 0.6);
    display: block;
    overflow: hidden;
    position: relative;
    left: 0px;
    font-weight: lighter;
    text-align: left;
    font-family: "Lato", sans-serif;
    cursor: pointer;
    color: #ffffff;
    background-color: #333;
    & span {
      display: block;
      overflow: hidden;
      padding: 14px 0 12px 24px;
      width: 94%;
      margin: 0px 3%;
    }
  }
  & .screen-reader-text {
    position: absolute;
    left: -9000px;
  }
  & #gMenuInner {
    overflow: visible;
    display: block;
    position: relative;
    padding: 0px;
    &.innerBox {
      margin: 0px;
      width: 100%;
    }
  }
  & .menu {
    font-size: 13px;
    list-style: none;
    margin: 0px 0px 0px;
    padding: 0px;
    display: block;
    overflow: visible;
    border-top: 1px solid #ccc;
    & li {
      text-shadow: 0 1px #fff;
      position: relative;
      width: 100%;
      display: block;
      & a {
        color: #333;
        display: block;
        overflow: hidden;
        padding: 20px 15px 18px;
        margin: 0px;
        line-height: 140%;
        text-decoration: none;
        letter-spacing: 0px;
        text-align: left;
        position: relative;
        border-bottom: 1px solid #ccc;
        & strong {
          font-weight: bold;
        }
        & span {
          color: #5ead3c;
          display: block;
          font-size: 10px;
          line-height: 140%;
          letter-spacing: 1px;
          font-family: verdana, Arial, Helvetica, sans-serif;
          display: none;
        }
      }
      &.current_page_item > a,
      &.current-menu-item > a,
      & > a:hover {
        background: #e5e5e5;
      }
      & li {
        & span {
          display: none;
        }
        & a {
          padding-left: 25px;
        }
        & li {
          & a {
            padding-left: 35px;
          }
          & li a {
            padding-left: 45px;
          }
        }
      }
    }
  }
}

/* 20210330 メニュー項目の2行落ち対応 */
@media (min-width: 770px) and (max-width: 874px) {
  #gMenu .menu li a {
    padding-left: 4px;
    padding-right: 4px;
  }
}


/*-------------------------------------------*/
/*	#panList パンくずリスト
/*-------------------------------------------*/
#panList {
  clear: both;
  font-size: 10px;
  color: #999;
  padding: 0px;
  display: block;
  overflow: hidden;
  width: 100%;
  & ul {
    display: inline-block;
    & li {
      display: inline-block;
      padding-right: 5px;
    }
  }
  & #panListInner {
    display: block;
    overflow: hidden;
    text-align: left;
    padding: 0px 0 10px 0;
    line-height: 24px;
    border-bottom: 1px solid #fff;
  }
}
.home #panList {
  display: none;
}


/*-------------------------------------------*/
/*	#pageTitBnr ページタイトルバナー（非表示）
/*-------------------------------------------*/
#pageTitBnr {
  background-color: #f5f5f5;
  box-shadow: inset 0px 1px 5px rgba(0, 0, 0, 0.2);
  margin: 0px;
  clear: both;
  border-bottom: 1px solid #e5e5e5;
  z-index: 0;
  & #pageTitInner {
    display: block;
    overflow: hidden;
    /* position:relative; を使うとIE7でプルダウンメニューがおかしくなる*/
    & #pageTit {
      font-size: 22px;
      display: none;
      float: left;
      margin: 25px 0 21px;
      line-height: 110%;
      width: 100%;
      text-shadow: 0 1px #ffffff;
    }
    /*  各ページタイトル非表示  */
    & #titleTxtSub {
      text-align: left;
      color: #999;
      font-family: "Comfortaa", cursive;
      font-size: 14px;
      letter-spacing: 3px;
      float: left;
      margin-top: 25px;
      line-height: 105%;
      display: none;
    }
  } 
}


/*-------------------------------------------*/
/*	#main メイン
/*-------------------------------------------*/
#main {
  display: block;
  overflow: visible;
  clear: both;
  zoom: 1;
  /* facebookコメント欄が消えるのでhiddenではなくclearfix */
  &:before,
  &:after {
    content: "";
    display: table;
  }
  &:after {
    clear: both;
  }
  & #container {
    padding-top: 15px;
  }
}


/*-------------------------------------------*/
/*		.content コンテンツ
/*-------------------------------------------*/
.content {
  margin-bottom: 36px;
  text-align: left;
  display: block;
  overflow: visible;
  & h1 {
    font-size: 2em;
    margin-bottom: 2em;
    &.entryPostTitle {
      margin: 0px 0px 5px;
    }
  }
  & h1,
  & h2 {
    margin: 0px 0px 25px;
  }
  & h2,
  & h1.contentTitle,
  & h1.entryPostTitle {
    text-shadow: 0 1px #ffffff;
    clear: both;
    font-size: 128.6%;
    padding: 20px 15px 15px;
    font-weight: bold;
    color: #333;
    border-top: 1px solid #e5e5e5;
    border-bottom: 3px solid #333;
    position: relative;
    line-height: 114.3%;
    background: url(images/line_wh.png) left top repeat-x;
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2);
  }
  & h2 {
    &.imageTit {
      margin: 0px 0px 30px;
      border: none;
      padding: 0px;
      background: none;
    }
    & a {
      text-decoration: none;
    }
  }
  & h3 {
    text-shadow: 0 1px #ffffff;
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.1);
    position: relative;
    clear: both;
    font-size: 18px;
    margin: 40px 0px 35px;
    padding: 10px 10px 7px;
    background-color: #f4f4f4;
    border-left: 3px solid #5ead3c;
  }
  & h4 {
    padding-top: 8px;
    text-shadow: 0 1px #ffffff;
    padding-bottom: 5px;
    color: #5ead3c;
    position: relative;
    clear: both;
    font-size: 18px;
    margin: 30px 0px 20px;
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    background: url(images/line_wh.png) left top repeat-x;
  }
  & h5 {
    color: #5ead3c;
    clear: both;
    font-size: 16px;
    margin: 30px 0px 20px;
    padding: 10px 0px 5px;
    border-bottom: 1px dotted #eeeeee;
  }
  & h6 {
    clear: both;
    font-size: 14px;
    margin: 30px 0px 20px;
    padding: 10px 0px 0px;
  }
  & p {
    margin-bottom: 20px;
    padding: 0px 5px;
    &.ex {
      margin: 20px;
    }
  }
  & blockquote,
  & .sectionFrame {
    border: 3px solid #e6e6e6;
    padding: 20px 15px 0px;
    margin-bottom: 20px;
    clear: both;
    box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.15);
    display: none;
  }
  & strong {
    font-weight: bold;
  }
  & address {
    margin-bottom: 20px;
  }

  & ul {
    margin: 0px 0px 20px 20px;
    & li {
      padding: 0px;
      list-style: none;
    }
    & ul {
      margin-top: 10px;
    }
    /*  sitemap,linkページのul,liスタイル  */
    &#menu-sitemap li,
    &._linkblock li {
      list-style: none;
      margin-bottom: 3px;
    }
    &#menu-sitemap,
    &._linkblock,
    &#menu-category_0,
    &#menu-category_1,
    &#menu-category_2,
    &#menu-category_3,
    &#menu-category_4,
    &#menu-category_5 {
      & li a {
        display: block;
        text-decoration: none;
        padding: 5px 0 5px 10px;
        font-size: 16px;
        font-weight: 500;
        margin-bottom: 0 5px 3px 0;
        background-color: #f4eeeb;
        border: 1px solid #fff;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        &:hover {
          background-color: #61a237;
          color: #fff;
          transition: ease-in-out 0.4s;
        }
      }
    }
  }

  & ol {
    margin: 0px 0px 20px 25px;
    & li {
      list-style: decimal;
      padding: 0px;
    }
  }

  & li {
    margin-bottom: 10px;
  }
  & hr {
    clear: both;
    display: block;
    margin: 1em 0;
  }

  & table {
    margin: 10px -1px 24px 0;
    text-align: left;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 85.7%;
    line-height: 141.7%;
    & thead tr th {
      font-weight: bold;
    }
    & tr th,
    & thead tr th {
      padding: 9px 24px;
    }
    & tfoot tr {
      & th, & td {
        font-weight: bold;
      }
    }
    & tr {
      & th {
        padding: 10px 15px;
        vertical-align: top;
      }
      & td {
        padding: 10px 15px;
        & p {
          margin: 0px 0px 5px;
          padding: 0px;
        }
      }
    }
    & ol, & ul {
      margin-bottom: 5px;
      margin-left: 15px;
      & li {
        margin: 2px 0px;
      }
    }
    &.mobile-block {
      &th, &td {
        border-top: none;
        display: block;
      } 
    }
  }
  & dt {
    color: #000;
    padding-bottom: 3px;
    margin-bottom: 10px;
    color: #5ead3c;
  }
  & dd {
    margin: 0px 0px 30px;
    padding: 0px;
  }
  /*& iframe	{ border:1px solid #ccc; }*/

  & .post {
    padding-bottom: 25px;
  }
  & .alert {
    color: #f00;
  }
  & .caption {
    font-size: 11px;
    line-height: 110%;
  }
  & .center {
    text-align: center;
  }
  & .right {
    text-align: right;
  }
  & .nowrap {
    white-space: nowrap;
  }
  & .sectionBox {
    margin-bottom: 30px;
    display: block;
    overflow: hidden;
  }
  & .entry-meta {
    margin: 15px 0;
    font-size: 11px;
    color: #666;
  }
}

.single-post .content h2 {
  border: none;
  padding: 0;
  box-shadow: none;
  font-size: 171.4%;
  margin-top: 10px;
}

/* 20210329 レスポンシブ・スマホ対応 */
@media (max-width: 480px) {
  .content ul {
    margin: 0 auto 20px;
  }
}


/*-------------------------------------------*/
/*			.child_page_block
/*-------------------------------------------*/
.content .child_page_block {
  display: block;
  overflow: hidden;
  margin-bottom: 15px;
  width: 100%;
  border-top: 1px solid #eeeeee;
  background: url(images/line_wh.png) left top repeat-x;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.15);
  &.layout_even {
    float: right;
  }
  & .child_page_blockInner {
    display: block;
    overflow: hidden;
    padding: 15px 15px;
  }
  & h4 {
    font-size: 16px;
    background: url(images/line_grd.png) left bottom repeat-x;
    padding: 0 0 3px 0;
    margin: 0px;
    margin-bottom: 10px;
    border: none;
    & a {
      border-bottom: 2px solid #5ead3c;
      text-decoration: none;
      color: #333;
      display: block;
      overflow: hidden;
      line-height: 118.8%;
      padding-bottom: 2px;
      &:hover {
        text-decoration: none;
        color: #5ead3c;
      }
    }
  }
  & .childText {
    display: block;
    overflow: hidden;
  }
  & p {
    line-height: 141.7%;
    font-size: 12px;
    margin-bottom: 0px;
    padding: 0px;
    & a {
      text-decoration: none;
      color: #666;
      &:hover {
        text-decoration: underline;
        color: #5ead3c;
      }
    }
  }
  & .thumbImage {
    float: left;
    display: block;
    margin-right: 15px;
    & .thumbImageInner {
      display: block;
      overflow: hidden;
      width: 80px;
      border: 4px solid #fff;
      box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.15);
    }
    & img {
      width: 80px;
      height: 80px !important /* ie8 */;
    }
  }
}


/*-------------------------------------------*/
/*			.childPageBox
/*-------------------------------------------*/
.content .childPageBox {
  display: none;
  & .textBox {
    overflow: hidden;
  }
}


/*-------------------------------------------*/
/*			.mainFoot メイン下部
/*-------------------------------------------*/
.content {
  & .mainFoot {
    display: none;
    overflow: hidden;
    margin-top: 35px;
    margin-bottom: 30px;
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    padding: 15px 0;
  }
  & .mainFootContact {
    display: block;
    overflow: hidden;
    text-align: center;
    & p.mainFootTxt {
      font-size: 10px;
      letter-spacing: 0px;
      margin-bottom: 5px;
      & span {
        display: block;
        &.mainFootCatch {
          line-height: 120%;
        }
        &.mainFootTel {
          font-size: 24px;
          font-family: "Lato", sans-serif;
          margin-bottom: 2px;
          line-height: 100%;
        }
        &.mainFootTime {
          line-height: 120%;
        }
      }
    }
    & .mainFootBt a {
      display: block;
      overflow: hidden;
      background-color: #5ead3c;
      max-width: 350px;
      margin: 0px auto;
      &:hover {
        opacity: 0.8;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
        -khtml-opacity: 0.8;
        -moz-opacity: 0.8;
      }
      & img {
        max-width: 100%;
        opacity: 1 !important;
        opacity: 1 !important;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
        -khtml-opacity: 0.1; /* Safari 1.x */
        -moz-opacity: 0.1; /* FF lt 1.5, Netscape */
      }
    }
  }
}


/*-------------------------------------------*/
/*			images 画像
/*-------------------------------------------*/
.content {
  & img {
    margin: 0;
    max-width: 100% !important;
    height: auto; /* height:auto;がimportantでなくてはならない理由があるかも */
  }
  & .attachment img {
    max-width: 900px;
    /* single attachment images should be centered */
    display: block;
    margin: 0 auto;
  }
  & .alignleft,
  & img.alignleft {
    display: inline;
    float: left;
    margin-right: 20px;
    margin-top: 4px;
  }
  & .alignright,
  & img.alignright {
    display: inline;
    float: right;
    margin-left: 20px;
    margin-top: 4px;
  }
  & .aligncenter,
  & img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  & img.alignleft,
  & img.alignright,
  & img.aligncenter {
    margin-bottom: 12px;
  }

  & .wp-caption {
    background: #f1f1f1;
    line-height: 18px;
    margin-bottom: 20px;
    padding: 0 0 5px;
    text-align: center;
    border: 1px solid #e5e5e5;
    max-width: 100% !important;
    & img {
      margin: 5px 0 2px;
      max-width: 95% !important;
      height: auto !important;
    }
    & p.wp-caption-text {
      color: #888;
      font-size: 12px;
      margin: 5px;
    }
  }
  & .wp-smiley {
    margin: 0;
  }
}
& .gallery {
  margin: 0 auto 18px;
  & img {
    /* border: 2px solid #cfcfcf; */
      border: 10px solid #f1f1f1;
  }
  & .gallery-item {
    float: left;
    margin-top: 0;
    text-align: center;
    width: 33%;
  }
  & .gallery-caption {
    color: #888;
    font-size: 12px;
    margin: 0 0 12px;
  }
  & dl {
    margin: 0;
  }
  & br + br {
    display: none;
  }
}


/*-------------------------------------------*/
/*			.navigation ナビゲーション
/*-------------------------------------------*/
.navigation {
  color: #888;
  font-size: 12px;
  line-height: 18px;
  overflow: hidden;
  border-top: 1px solid #ccc;
  padding: 10px 0px 15px;
  clear: both;
  & a {
    &:link, &:visited {
      color: #888;
      text-decoration: none;
    }
    &:active, &:hover {
      color: #ff4b33;
    }
  }
}

.nav-previous {
  float: left;
  width: 50%;
}
.nav-next {
  float: right;
  text-align: right;
  width: 50%;
}
#nav-above {
  margin: 0 0 18px 0;
  display: none;
}
.paged, .single {
  & #nav-above {
    display: block;
  }
}


/*-------------------------------------------*/
/*			.paging ページ送り
/*-------------------------------------------*/
.paging {
  display: block;
  overflow: hidden;
  padding: 20px 0px 20px;
  text-align: center;
  & span, & a {
    margin: 0 1px;
    padding: 6px 10px;
    color: #5ead3c;
    border: 1px solid #5ead3c;
    text-decoration: none;
  }
  & span.current, & a:hover {
    background-color: #5ead3c;
    color: #fff;
    text-decoration: none;
  }
  & span.txt_hellip {
    border: none;
    margin: 0;
    padding: 6px 0px;
  }
}

/*---------------------------- */
/*			.infoList
/*---------------------------- */
.content .infoList {
  padding-bottom: 20px;
  & ul {
    margin: 10px 0px 5px;
    list-style: none;
    & li {
      border-bottom: 1px dotted #ccc;
      padding: 12px 0px;
      list-style: none;
      margin-bottom: 0px;
      & a:hover {
        color: #f00;
      }
      & .infoTxt {
        margin-top: 3px;
        display: block;
        overflow: hidden;
        clear: both;
        & a {
          text-decoration: none;
          color: #333;
          display: block;
          overflow: hidden;
          &:hover {
            color: #5ead3c;
            text-decoration: underline;
          }
        }
      }
    }
  }
  & .infoDate {
    margin-right: 8px;
    color: #d00;
  }
  & .infoCate a {
    background-color: #efefef;
    border: 1px solid #e5e5e5;
    color: #666;
    font-family: "MS UI Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 10px;
    line-height: 14px;
    margin-right: 4px;
    padding: 1px 5px 2px;
    position: relative;
    text-decoration: none;
    top: -2px;
    &:hover {
      background-color: #5ead3c;
      color: #fff;
      text-decoration: none;
    }
  }
}


/*-------------------------------------------*/
/*				.infoListBox
/*-------------------------------------------*/
.content .infoList .infoListBox {
  display: block;
  overflow: hidden;
  padding: 20px 0px;
  border-bottom: 1px solid #eeeeee;
  position: relative;
	&:not(:first-child) {
		margin-block: 15px;
	}
  & div.entryTxtBox {
    margin: 0px;
    display: block;
    overflow: hidden;
    &.haveThumbnail {
      float: left;
    }
    & p {
      margin-bottom: 3px;
      padding: 0px;
      line-height: 1.5;
      &.entryMeta {
        margin-bottom: 4px;
        & .infoDate,
        & .infoCate {
          color: #666;
        }
      }
      &.moreLink {
        margin: 0px;
        padding: 0px;
      }
    }
    & h4.entryTitle {
      border-top: none;
      margin: 0px 0px 10px;
      padding: 0px 0px 10px;
      display: block;
      line-height: 120%;
      font-size: 114.3%;
      & a {
        color: #5ead3c;
        text-decoration: none;
        &:hover {
          text-decoration: underline;
        }
      }
    }
  }
  & div.thumbImage {
    display: block;
    overflow: hidden;
    float: right;
    text-align: right;
    & div.thumbImageInner {
      display: block;
      overflow: hidden;
      margin: 1px;
      padding: 3px;
      & img {
        width: 98px;
        height: auto;
        border: 4px solid #fff;
        box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
      }
    }
  }
}


/*-------------------------------------------*/
/*	#sideTower サイドバー
/*-------------------------------------------*/
#sideTower {
  clear: both;
}

.sideTower {
  & .localSection {
    margin-bottom: 50px;
  }
  & .localHead {
    font-size: 14px;
    padding: 15px;
    font-weight: bold;
    position: relative;
    color: #333;
    border-top: 1px solid #e5e5e5;
    border-bottom: 3px solid #5ead3c;
    background: url(images/line_wh.png) left top repeat-x;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.15);
    text-shadow: 0 1px #fff;
    & a {
      text-decoration: none;
      color: #333;
      &:hover {
        text-decoration: underline;
      }
    }
  }
  & .sideWidget {
    margin: 0 0 20px;
    /* 見出しブロック（.wp-block-heading）が含まれる場合下マージンを0にする */
    &:has(.wp-block-heading) {
      margin-bottom: 0;
    }
    & h4 {
      clear: both;
      font-size: 14px;
      margin: 0px 0px 15px;
      padding: 4px 0px 2px 12px;
      border-left-style: solid;
      border-left-width: 3px;
      background-color: #f5f5f5;
    }
    & img {
      display: block;
      margin-left: auto;
      margin-right: auto;
    }
    & ul {
      &#recentcomments li {
        padding: 13px 10px 11px 10px;
        background: url(images/icon_arrow1_gray.gif) 10px 50% no-repeat;
        & a {
          padding: 0;
          background: none;
        }
      }
    }
    & li {
      list-style: none;
      border-bottom: 1px solid #eee;
      line-height: 128.6%;
      & a {
        display: block;
        padding: 13px 10px 11px 10px;
        text-decoration: none;
        color: #666;
        background: url(images/arrow_gray.png) right bottom no-repeat;
      }
      &.current_page_item a,
      &.current-cat a,
      & a:hover {
        background: url(images/arrow_bk.png) right bottom no-repeat #f5f5f5;
      }
      & ul {
        display: block;
        margin: 0px;
        & li {
          display: block;
          border-bottom: none;
          border-top: 1px solid #eee;
          & a {
            background: url(images/arrow_gray.png) right bottom no-repeat;
          }
          /* 曾孫 */
          & ul li a {
            padding-left: 33px;
          }
        }
      }
    }

    /* 親ページのアクティブだと背景色が子ページにも適応される為 */
    & li ul li a,
    & li.current-cat ul li a,
    & li.current_page_item ul li a {
      font-size: 75%;
      padding: 11px 10px 9px 22px;
      background: url(images/arrow_gray.png) right bottom no-repeat;
      &:hover {
        background-color: #f5f5f5;
      }
    }
    & li.current_page_item ul li a:hover {
      background: url(images/arrow_bk.png) right bottom no-repeat;
    }

    & select {
      margin: 10px 0;
      padding: 5px;
      width: 100%;
      border: 1px solid #ccc;
      & option {
        padding: 2px 5px;
      }
    }

    & .textwidget {
      padding-bottom: 10px;
    }
  } /* /.sideWidget */

  & li ul {
    margin-left: 15px;
  }
  & li.sideBnr {
    margin-bottom: 10px;
    &#sideContact a {
      display: block;
      overflow: hidden;
      width: 250px;
      margin: 0px auto;
      text-align: center;
      background-color: #5ead3c;
      &:hover {
        opacity: 0.8; /* Standard: FF gt 1.5, Opera, Safari */
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
        -khtml-opacity: 0.8; /* Safari 1.x */
        -moz-opacity: 0.8; /* FF lt 1.5, Netscape */
        & img {
          opacity: 1 !important;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
          filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
          -khtml-opacity: 0.1; /* Safari 1.x */
          -moz-opacity: 0.1; /* FF lt 1.5, Netscape */
        }
      }
    }
  }
  & ul#snsBnr {
    border-top: 1px solid #eee;
    margin-bottom: 20px;
    text-align: center;
    & li {
      border-bottom: 1px solid #eee;
    }
  }
  & .ttBoxSection {
    padding: 0;
    & .ttBox {
      padding: 13px 0 11px;
      border-bottom: 1px solid #eee;
      font-size: 85.7%;
      line-height: 135.7%;
      & a {
        color: #666;
      }
      & .ttBoxThumb {
        width: 64px;
        & img {
          border: 1px solid #eee;
        }
      }
    }
  }
}

/*-------------------------------------------*/
/*	#searchform 検索フォーム
/*-------------------------------------------*/
form#searchform {
  padding: 5px 0px 5px 7px;
  background-color: #f3f3f3;
  display: block;
  overflow: hidden;
  position: relative;
  & input{
    &#s {
      margin: 0px 0px 0px 5px;
      padding: 5px;
      width: 60%;
      float: left;
    }
    /*  ※検索フォームのスタイル調整  */
    &#searchsubmit {
      border: 1px solid #999;
      background-image: none;
      margin: 0px 10px 0px 0px;
      float: right;
      background-color: #666;
      width: 20%;
      color: #fff;
      /* padding-right: 10px; */
    }
  }
}

#header form {
  width: 220px;
}

@media not all and (min-width: 660px) {
  form#searchform {
    background-color: #fff;
  }
  #header form {
    margin: 0 auto 5px;
  }
}
@media (min-width: 660px) {
  /*  header search box  */
  #header form {
    float: right;
    margin-right: 10px;
    margin-bottom: 5px;
  }
}
/* form#searchform input#searchsubmit	{ border: 1px solid #5ead3c; background-image: none; background-color:#5ead3c; width:auto; color:#fff; } */

/*-------------------------------------------*/
/*	#pagetop ページトップへ戻る
/*-------------------------------------------*/
#pagetop {
  display: block;
  overflow: hidden;
  clear: both;
  z-index: 5;
  & a {
    color: #333;
    background: url(images/icon_arrow_top_gry.png) center bottom no-repeat #e6e6e6;
    float: right;
    display: block;
    position: relative;
    padding: 5px 15px 5px 15px;
    font-size: 11px;
    text-decoration: none;
    margin-bottom: 0px;
    font-family: "Lato", sans-serif;
    letter-spacing: 1px;
    &:hover {
      background: url(images/icon_arrow_top.png) center bottom no-repeat #5ead3c;
      color: #fff;
    }
  }
}


/*-------------------------------------------*/
/*	#footMenu フッターメニュー
/*-------------------------------------------*/
#footMenu {
  border-bottom: 1px solid #e6e6e6;
  display: block;
  overflow: hidden;
  width: 100%;
  z-index: 10;
  position: relative;
  font-size: 85.7%;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -moz-box-shadow: inset 0 1px 0 #fff;
  -webkit-box-shadow: inset 0 1px 0 #fff;
  box-shadow: inset 0 1px 0 #fff;

  & .innerBox {
    width: 100%;
    margin: 0;
  }

  & .menu {
    display: block;
    overflow: hidden;
    & li {
      list-style: none;
      display: block;
      margin: 0px;
      padding: 0px;
      line-height: 100%;
      font-size: 12px;
      & a {
        background: url(images/arrow_gray.png) right bottom no-repeat;
        color: #333;
        border-bottom: 1px solid #e6e6e6;
        padding: 15px 3%;
        display: block;
        overflow: hidden;
        text-decoration: none;
        &:hover {
          background: url(images/arrow_bk.png) right bottom no-repeat #e6e6e6;
        }
      }
    }
  }
}


/*-------------------------------------------*/
/*	#footer フッター
/*-------------------------------------------*/
#footer {
  margin: 0px;
  padding: 20px 0px 20px;
  display: block;
  overflow: hidden;
  font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif;
  background: #fff2ea;
  text-align: left;

  & dl#footerOutline {
    margin: 0px;
    line-height: 1.5;
    width: 250px;
    & dt {
      color: #d2d2d3;
      margin-bottom: 8px;
      line-height: 1.5;
      & img {
        margin-bottom: 5px;
        max-width: 250px;
      }
    }
    & dd {
      color: #d2d2d3;
      font-size: 85.7%;
      line-height: 1.5%;
      display: none;
    }
  }
}


/*-------------------------------------------*/
/*		#footerSiteMap
/*-------------------------------------------*/
#footerSiteMap {
  display: block;
  overflow: hidden;
  width: 100%;
  padding-top: 15px;
}
#footerSiteMap .menu {
  font-size: 87.5%;
  vertical-align: text-top;
  & a {
    color: #666;
    text-decoration: none;
    &:hover {
      color: #5cab3a;
    }
  }
  /* 親リスト */
  & li {
    display: block;
    margin-bottom: 6px;
    line-height: 116.7%;
    & a {
      border-bottom: 1px solid #e0e0e0;
      box-shadow: 0px 1px #d1d1d1;
      font-weight: bold;
      padding: 8px 0px;
      overflow: hidden;
      display: block;
    }
    & ul {
      margin-top: 6px;
    }
    /* 子リスト */
    & li {
      display: block;
      padding: 0px 0px;
      & a {
        font-size: 12px;
        box-shadow: none;
        border-bottom: none;
        background: none;
        font-weight: normal;
        border-bottom: 1px solid #d1d1d1;
      }
      /* 孫リスト */
      & li {
        margin-right: 0;
        border-bottom: none;
        background: none;
        & a {
          font-size: 10px;
          background: none;
          background-position: 6px 12px;
        }
      }
    }
  }
}


/*-------------------------------------------*/
/*	#siteBottom サイト下部
/*-------------------------------------------*/
#siteBottom {
  background-color: #fff2ea;
  clear: both;
  padding: 15px 0 20px;
  font-family: Arial, Helvetica, sans-serif;
  color: #999;
  border-top: 1px solid #8a898c;

  & a {
    color: #999;
    text-decoration: none;
  }
  & #copy {
    text-align: center;
  }
  & #powerd,
  & #powerd a {
    color: #ccc;
  }
}

#siteBottomInner {
  text-align: center;
}


/*-------------------------------------------*/
/*	▼各テンプレートごとの設定
/*-------------------------------------------*/

/*-------------------------------------------*/
/*	top
/*-------------------------------------------*/
.home{
  & #main {
    padding-top: 0px;
  }
  & .content {
    padding-bottom: 40px;
  }
}

/* ----------
  スライダー
---------- */
#topMainBnr {
  background-color: #fff;
  box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.25);
  display: block;
  padding: 0 0;
}

#topMainBnrFrame {
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.15);
  border: 4px solid #fff;
  height: auto;
  margin: 0 auto;
  width: 96%;
  & img {
    width: 100%;
    /*position:relative;*/
  }
  & ul.slides li {
    overflow: hidden;
    /*display:block; */
  }
  & .slideFrame {
    display: block;
    overflow: hidden;
  }
  & #topManiBnrInnerFrame {
    box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.2) inset;
    overflow: hidden;
  }
}

/* スライダーナビ */
.flex-direction-nav li {
  .prev {
    left: 0;
  }
  .next {
    right: 0;
  }
}

/* トップコンテンツ */
#topFreeArea {
  display: block;
  overflow: hidden;
  padding-bottom: 25px;
}

/* 3PRエリア */
#topPr {
  & h3 {
    margin: 0px 0px 14px;
    line-height: 120%;
    font-size: 16px;
    padding: 0;
    border: none;
    background: url(images/line_grd.png) left bottom repeat-x;
    box-shadow: none;
    display: block;
    overflow: hidden;
    /* a に高さを揃えるjsが動作するのでblock指定で上下は余白をつけない */
    & a {
      text-decoration: none;
      color: #333;
      padding: 0 0 3px;
      display: block;
      overflow: hidden;
      border-bottom: 2px solid #5ead3c;
      &:hover {
        color: #5ead3c;
        text-decoration: none;
      }
    }
  }
  & p {
    &.topPrDescription {
      margin-bottom: 0px;
      font-size: 14px;
      line-height: 120%;
      padding: 0px;
    }
    & a {
      display: block;
      text-decoration: none;
      line-height: 16px;
      color: #333;
      &:hover {
        text-decoration: underline;
      }
    }
  }
  & .topPrOuter {
    display: block;
    overflow: hidden;
    margin-bottom: 20px;
    padding-bottom: 10px;
  }
  & .prImage {
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
    float: left;
    width: 70px;
    margin-right: 10px;
    overflow: hidden;
    margin-bottom: 20px;
    border: 4px solid #fff;
    & img {
      &.imageWide {
        display: none;
      }
      &.imageSmall {
        display: block;
      }
    }
  }
  & .topPrTxtBox {
    display: block;
    overflow: hidden;
  }
  & .topPrDescription a:hover {
    color: #5ead3c;
  }
}

.content {
  & .infoList {
    position: relative;
    & .rssBtn {
      text-align: right;
      position: absolute;
      right: 0px;
      top: 17px;
      & a {
        color: #333;
        border: 1px solid #e6e6e6;
        font-family: "Lato", sans-serif;
        line-height: 24px;
        font-weight: bold;
        text-decoration: none;
        padding: 2px 10px;
        margin-right: 15px;
        position: relative;
        box-shadow: inset 0 1px 0px rgba(255, 255, 255, 1);
        background: linear-gradient(to bottom, #fcfcfc, #efefef
        );
        /* IE10, Firefox 16.0+, Opera 12.50+ */
        background: -webkit-gradient(linear, 0 0, 0 bottom, from(#fcfcfc), to(#efefef));
        background: -moz-linear-gradient(#fcfcfc, #efefef);
        background: linear-gradient(#fcfcfc, #efefef);
        -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(StartColorStr=#fcfcfc, EndColorStr=#efefef)";
        filter: progid: DXImageTransform.Microsoft.Gradient(StartColorStr=#fcfcfc, EndColorStr=#efefef);
        &:hover {
          box-shadow: inset 0 1px 0px rgba(255, 255, 255, 1);
          background: linear-gradient(to bottom, #fcfcfc, #d5e9cc);
          /* IE10, Firefox 16.0+, Opera 12.50+ */
          background: -webkit-gradient(linear, 0 0, 0 bottom, from(#fcfcfc), to(#d5e9cc));
          background: -moz-linear-gradient(#fcfcfc, #d5e9cc);
          background: linear-gradient(#fcfcfc, #d5e9cc);
          -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(StartColorStr=#fcfcfc, EndColorStr=#d5e9cc)";
          filter: progid: DXImageTransform.Microsoft.Gradient(StartColorStr=#fcfcfc, EndColorStr=#d5e9cc);
        }
      }
    }
  }
  & #topInfo, & #topBlog {
    margin-bottom: 50px;

    & h2{
      margin-bottom: 0px;
    }
  }
  
  & #topBlog.infoList ul li {
    &.infoDate {
      display: block;
      float: left;
    }
    & .infoTxt {
      clear: none;
    }
  }
}

#topContentsBottom {
  margin-bottom: 20px;
}

/* 20250520追加: フロントページ画像の余白（pで囲まれなくなったため） */
figure.targets,
.ec-banner {
  display: block;
  margin-bottom: 20px;
}


/*-------------------------------------------*/
/*	post 投稿
/*-------------------------------------------*/
.content .entry-content {
  display: block;
  overflow: hidden;
  margin-bottom: 25px;
  padding: 0 1px;

  &.post-content h1.entryPostTitle {
    margin-bottom: 0px;
  }
}

.content .entry-utility {
  clear: both;
  margin-top: 15px;
  & dl.tag-links {
    display: inline;
  
    & dt, & dd {
      display: inline;
      font-size: 85.7%;
      line-height: 120%;
    }
    & dt {
      display: inline-block;
      border: 1px solid #e5e5e5;
      font-weight: lighter;
      margin-right: 10px;
      padding: 0px 10px;
      background-color: #e5e5e5;
      color: #999;
    }
  }
}


/*-------------------------------------------*/
/*			#comments コメント
/*-------------------------------------------*/
#comments {
  clear: both;
  & ol.commentlist {
    margin: 0px 0px 15px 0px;
    & li {
      list-style: none;
    }
  }
}
& li.comment {
  & .commentBox {
    border: 4px solid #e5e5e5;
    padding: 15px;
    margin-bottom: 10px;
  }
  & .comment-author {
    & img {
      float: left;
      border: 2px solid #ccc;
      margin-right: 10px;
    }
    & cite.fn {
      font-style: normal;
      line-height: 120%;
    }
  }
  & .comment-meta.commentmetadata {
    font-size: 85.7%;
    line-height: 120%;
  }
  & .comment-body {
    margin-left: 50px;
    margin-top: 10px;
    & p {
      margin-bottom: 10px;
    }
  }
  & #respond .required {
    color: #e50000;
  }
}

.content #commentform {
  & p {
    margin-bottom: 5px;
    &.form-allowed-tags {
      font-size: 10px;
      line-height: 120%;
      color: #666;
      width: 95%;
      margin-bottom: 10px;
    }
    &.form-submit input {
      width: auto;
      padding: 10px 20px;
    }
  }
  & input,
  & textarea {
    display: block;
    width: 95%;
    padding: 4px;
  }
}

.content ol.commentlist li.post.pingback {
  padding-bottom: 0;
}

/*-------------------------------------------------------*/
/*	sitemap & 404 & Search サイトマップ・404ページ・検索結果
/*-------------------------------------------------------*/
.content.wide {
  display: block;
  overflow: hidden;
}

.content #sitemapPostList {
  margin-top: 20px;
}

#content #sitemapPostList h5 {
  margin: 0px;
  padding: 0px;
  font-weight: lighter;
  font-size: 14px;
  & a {
    color: #5ead3c;
  }
}

.content ul.linkList {
  margin: 0px;
  padding: 0px;
  font-size: 85.7%;

  & li {
    list-style: none;
    margin-bottom: 0px;
    & a {
      background: url(images/icon_arrow_bk.png) left 8px no-repeat;
      padding: 5px 15px;
      display: block;
      text-decoration: none;
      color: #666;
      &:hover {
        text-decoration: underline;
        color: #5ead3c;
      }
    }
    /* 孫リスト項目 */
    & li li a {
      background: none;
    }
  }
  & ul {
    margin-bottom: 0px;
    margin-top: 0px;
    margin-left: 10px;
  }
}

.content .error404 {
  text-align: center;
  padding-bottom: 30px;

  /* 20210330追加： 404ページの検索フォームのスタイリング */
  & form#searchform {
    background: #fff;
    padding: 5px 0;
    width: auto;
    & > div {
      margin: 0 auto;
      overflow: hidden;
      width: auto;
    }
    & input {
      &#s {
        width: calc(80% - 25px);
        margin-left: 0;
        max-width: none;
      }
      &#searchsubmit {
        float: left;
        margin: 0 0 0 10px;
      }
    }
  }
}

#sitemapOuter {
  border: 4px solid #e5e5e5;
  padding: 20px;
  display: block;
  overflow: hidden;
  margin: 0px auto;
}

.content form#searchform {
  & label {
    display: none;
  }
  & input#s {
    width: 70%;
  }
}

#likeBox {
  border: 1px solid #0f0;
  width: 100% !important;
}

.fbConnectWidgetTopmost {
  border: 1px solid #0f0;
  width: 100% !important;
}


/*-------------------------------------------*/
/*	Responsive Structure レスポンシブ
/*-------------------------------------------*/

/*-------------------------------------------*/
/* コンテンツ推奨サイズより大きい場合
/*-------------------------------------------*/
@media (min-width: 660px) {
  /* スクロール分余裕に20px */
  #headerTop {
    display: block;
  }

  #header {
    padding-top: 30px;

    & #site-description {
      line-height: 1.5;
    }
    & #site-title {
      padding-bottom: 15px;
      float: left;
      text-align: left;
    }
    /*  header logo下余白調整  */
    & #headContact {
      float: right;
      text-align: right;
      & #headContactTxt {
        font-size: 11px;
      }
      & #headContactTime {
        font-size: 12px;
      }
      & #headContactTel {
        font-size: 24px;
        margin-bottom: 4px;
      }
    }
  }

  #main #container {
    padding-top: 20px;
    & .content {
      margin: 0px auto;
    }
  }
  .content {
    & p {
      line-height: 170%;
    }
    & .mainFootContact {
      & p.mainFootTxt {
        float: left;
        margin-bottom: 0px;
        text-align: left;
        & .mainFootCatch {
          font-size: 120%;
        }
      }
      & .mainFootBt {
        float: right;
        & a {
          width: 350px;
          min-height: 50px;
          & img {
            width: auto;
          }
        }
      }
    }
    & table.mobile-block {
      & th, & td {
        display: table-cell;
      }
    }

    & .child_page_block {
      width: 48%;
      padding: 0 1px;
      &.layout_odd {
        float: left;
        clear: both;
      }
    }
  }

  .paging span.pageIndex {
    display: inline;
  }

  #topPr {
    display: block;
    overflow: hidden;
    margin-bottom: 50px;
    & .topPrOuter {
      padding-bottom: 0px;
      border-bottom: none;
    }
    & .topPrInner {
      text-align: left;
      width: 95%;
      & p {
        padding: 0px;
        &.topPrDescription {
          font-size: 12px;
        }
      }
    }
    & #topPrLeft {
      width: 33.1%;
      text-align: left;
      float: left;
      display: block;
      overflow: visible;
      & .topPrInner {
        float: left;
      }
    }
    & #topPrCenter {
      width: 33.1%;
      text-align: center;
      float: left;
      display: block;
      overflow: visible;
      & .topPrInner {
        margin: 0px auto;
      }
    }
    & #topPrRight {
      width: 33.1%;
      text-align: right;
      float: right;
      display: block;
      overflow: visible;
      & .topPrInner {
        float: right;
      }
    }
    & .prImage {
      float: none;
      width: 96%;
      margin-right: 0px;
      & a {
        display: block;
      }
      & img {
        height: auto;
        &.imageWide {
          display: block;
        }
        &.imageSmall {
          display: none;
        }
      }
    }
  }
}

/*-------------------------------------------*/
/* pc iPad3より大きい場合
/*-------------------------------------------*/
@media (min-width: 770px) {
  body {
    /* line-height: 1.5; */
    line-height: 150%;
  }
  
  /* グローバルメニュー */
  #gMenu {
    border-top: 1px solid #e5e5e5;
    background-color: #fff;
    &::after {
      content: ".";
      display: block;
      clear: both;
      height: 0;
      visibility: hidden;
    }
    &.itemClose, &.itemOpen {
      & .menu {
        display: block;
      }
    }
    & #gMenuInner.innerBox {
      margin: 0px 3%;
      width: 94%;
    }
    & .menu {
      border-left: 1px solid #e5e5e5;
      border-top: none;
      &::after {
        content: ".";
        display: block;
        clear: both;
        height: 0;
        visibility: hidden;
      }
      & li {
        float: left;
        width: 20%; /*  navのwidthサイズ追記  */
        border-bottom: none;
        overflow: visible;
        box-shadow: inset 1px 0px 0px #fff;
        &:hover {
          & ul {
            display: block;
            position: absolute;
            z-index: 1000;
            border-top: 1px solid #ccc;
            width: 200px;
            box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
            opacity: 0.97;
            & li {
              &:hover {
                & ul {
                  border-top: 1px solid #ccc;
                }
                & ul,
                & ul li {
                  display: block;
                }
              }
              & ul {
                position: absolute;
                left: 200px;
                top: 10px;
                border-top: none;
              }
              & ul, & ul li {
                display: none;
              }
            }
          }
  
          & li {
            background: #fff;
            width: 200px;
            position: relative;
            text-align: left;
          }
          & li a {
            text-align: left;
          }
        }
  
        & a {
          text-align: center;
          border-right: 1px solid #e5e5e5;
          box-shadow: inset 1px 0px 0px #fff;
          & span {
            display: block;
          }
        }
        & ul {
          display: none;
        }
        & li a,
        & li li a,
        & li li li a {
          padding-left: 15px;
        }
        & a:hover,
        &.current_page_item > a,
        &.current-menu-ancestor > a,
        &.current-page-ancestor > a,
        &.current_page_ancestor > a {
          background-color: #f5f5f5;
        }
        &:hover,
        &.current_page_item,
        &.current-menu-ancestor,
        &.current-page-ancestor,
        &.current_page_ancestor {
          & li a {
            background: none;
            background-color: #fff;
            color: #4d4d4d;
            text-align: left;
            border-right: none;
            &:hover {
              background-color: #f5f5f5;
            }
          }
        }
      }
    }
    & .assistive-text {
      /* display:noneだと読み上げない / 横にオフセットするとIEで読み込みまでの間表示される */
      position: absolute;
      top: -9000px;
    }
  }

  /* IE7のみドロップダウン非表示 */
  * + html #gMenu .menu li:hover ul {
    display: none;
  }

  #footerSiteMap .menu {
    font-size: 12px;
    /* 親リスト */
    & li {
      width: 22%;
      margin-right: 2%;
      display: block;
      overflow: hidden;
      display: block;
      float: left;
      & a {
        padding: 2px 20px 6px 0px;
      }
      /* 子リスト */
      & li {
        width: 100%;
        margin-right: 0%;
        float: none;
        & a {
          background-position: 0px 3px;
        }
        /* 孫リスト */
        & li a {
          padding-left: 10px;
          display: block;
          background-position: 0px 3px;
        }
      }
    }
  }

  .content form span.wpcf7-form-control-wrap .wpcf7-list-item {
    padding-top: 2px;
    padding-bottom: 2px;
  }


  /* サイトマップ */
  #sitemapOuter {
    padding: 20px 50px;
  }

  .content {
    & #sitemapPageList {
      float: left;
      width: 49%;
    }
  
    & #sitemapPostList {
      float: right;
      width: 49%;
      margin-top: 0px;
    }

    & ul.linkList li a {
      padding: 3px 15px;
    }
  }

  /* フッターメニュー */
  #footMenu {
    padding: 0px;
    & .innerBox {
      margin: 0px 3%;
      width: 94%;
    }
    & .menu li {
      list-style: none;
      display: block;
      margin: 0px;
      padding: 0px;
      float: left;
      line-height: 100%;
      font-size: 12px;
      &:first-child a {
        border-left: 1px solid #ccc;
      }
      & a {
        background: none;
        padding: 0px 15px 0px;
        line-height: 1em;
        text-decoration: none;
        border-right: 1px solid #ccc;
        border-bottom: none;
        &:hover {
          color: #5ead3c;
          text-decoration: underline;
          background: none;
        }
      }
    }
  }

  #topMainBnr {
    padding: 15px 0;
  }
}


/*-------------------------------------------*/
/*	フルサイズ
/*-------------------------------------------*/
@media (min-width: 1024px) {
  /* スクロール分余裕に20px */
  .innerBox,
  #gMenu #gMenuInner.innerBox {
    width: 1024px;
    margin: 0px auto;
  }


  /* メインコンテナ */
  #main #container {
    padding-top: 15px;
    & .content {
      float: left;
      width: 750px;
    }
    & #sideTower {
      float: right;
      width: 250px;
      clear: none;
    }
  }

  /* 左サイドバー */
  body.left-sidebar #main #container {
    & .content {
      float: right;
    }
    & #sideTower {
      float: left;
    }
  } 

  /* 1カラム */
  body.home.one-column #main #container {
    & .content {
      float: none;
      width: 100%;
    }
    & #sideTower {
      float: none;
      display: none;
    }
  }

  #main #container .content.wide,
  body.left-sidebar #main #container .content.wide {
    float: none;
  }

  /* 検索フォーム */
  form#searchform input{
    &#s {
      width: 120px;
    }
    &#searchsubmit {
      width: 20%;
    }
  }

  .content form#searchform input#searchsubmit {
    width: 20%;
  }

  /* メインビジュアル */
  #topMainBnr {
    width: 100%;
    & img {
      width: 1024px !important;
    }
  }
  #topMainBnrFrame {
    width: 1024px;
    min-height: 250px;
  }

  /*-------------------------------------------*/
  /*			.childPageBox
  /*-------------------------------------------*/
  .content .childPageBox {
    margin-top: 20px;
    border: 1px solid #e6e6e6;
    padding: 0px;
    display: block;
    overflow: hidden;
    margin-bottom: 20px;
    & h4 {
      border-top: none;
      background: none;
      font-weight: lighter;
      margin: 15px 20px 10px;
      padding: 0px 0px 3px;
      font-size: 14px;
      & a {
        text-decoration: none;
        color: #666;
      }
    }
    & ul {
      margin: 0px 20px 15px;
      padding: 0px;
      display: block;
      overflow: hidden;
      font-size: 85.7%;
      line-height: 125%;
      & li {
        float: left;
        display: block;
        width: 33%;
        list-style: none;
        margin: 0px;
        & a {
          background: url(images/icon_arrow_bk.png) left 5px no-repeat;
          padding: 3px 5px 3px 10px;
          text-decoration: none;
          display: block;
          overflow: hidden;
          color: #666;
        }
        & a:hover,
        &.current_page_item a {
          background-image: url(images/icon_arrow_bk.png);
          text-decoration: underline;
          color: #5ead3c;
        }
        & ul {
          margin: 0px;
          font-size: 91.7%;
          & li {
            float: none;
            width: auto;
            & a {
              background: url(images/icon_arrow_bk_s.png) left 6px no-repeat;
              padding: 3px 5px 3px 10px;
              text-decoration: none;
            }
            & a:hover,
            &.current_page_item a {
              background: url(images/icon_arrow_bk_s.png) left 6px no-repeat;
            }
            & ul {
              padding-left: 8px;
              font-size: 100%;
              line-height: 120%;
            }
          }
        }
        &.current_page_item ul li a {
          color: #666;
          text-decoration: none;
          background-image: url(images/icon_arrow2_gray.gif);
          &:hover {
            color: #5ead3c;
            text-decoration: underline;
            background-image: url(images/icon_arrow2_red.gif);
          }
        }
      }
    }
  }

  .content .mainFootContact .mainFootBt a img {
    width: 100%;
  }

  #footMenu .innerBox {
    margin: 0px auto;
    width: 950px;
  }
  #footerSiteMap {
    width: 680px;
    padding-top: 0px;
    font-size: 12px;
    float: left;
  }
  /* #footer dl#footerOutline	{ float:left; } */
  #footer dl#footerOutline {
    float: right;
  }
}


/*------------------------------------------ */
/* =Print Style 印刷時のスタイル
/*------------------------------------------ */

@media print {
  body {
    background: none !important;
  }
  #wrapper {
    clear: both !important;
    display: block !important;
    float: none !important;
    position: relative !important;
  }
  #headerTop,
  #header,
  #panList,
  #gMenu,
  #pagetop,
  .sideTower,
  #footMenu,
  #footer,
  #siteBottom {
    display: none !important;
  }

  #pageTitBnr,
  .content table th {
    box-shadow: none !important;
  }

  #access,
  #branding img,
  #respond,
  .comment-edit-link,
  .edit-link,
  .navigation,
  .page-link,
  .widget-area {
    display: none !important;
  }
  #container {
    margin: 0;
    width: 100%;
  }
}



/*-------------------*/
/* 追記  */
/*-------------------*/

/*  h1#site-name  */
#headerTop h1#site-name {
  font-size: 12px;
  font-weight: normal;
}
/*  sidebar bannar  */
p.side_bannar {
  margin-bottom: 10px;
}
p.side_bannar img {
  vertical-align: bottom;
}
/*  footer copy調整  */
#footer #copy {
  text-align: center;
  color: #999;
  font-family: Arial, Helvetica, sans-serif; /*text-shadow: 0 -1px #333;*/
  border-top: 1px solid #8a898c;
  padding-top: 15px;
  clear: both;
}
/*  3prエリア見出しスタイル  */
#topPr h3 a {
  text-decoration: none;
  color: #333;
  padding: 0 0 3px;
  display: block;
  overflow: hidden;
  border-bottom: 2px solid #333;
}
/*  #footer logo  */
#footerInner #f_logo {
  width: 250px;
  float: right;
}
/*  sidebar内ウィジェット、ローカルnav  */
div#sideTower .pageListSection {
  display: none;
}
/*  カレンダーエリアのSNSボタン非表示  */
#calendar .wp_social_bookmarking_light {
  display: none;
}
/*  セミナー詳細  */
div#seminor_details {
  width: 60%;
  float: left;
  margin-bottom: 15px;
}
div.content div#seminor_details table {
  border: 0 !important;
  min-width: 310px;
  width: 98%;
  & tr {
    width: 100%;
    min-width: 30px;
  }
  & td {
    border-bottom: 1px dotted #ccc;
    border-top: none;
    border-left: none;
    border-right: none;
    &:first-child {
      width: 4em;
      color: #f00;
    }
  }
}

/*  mobile表示時のセミナー案内tableスタイル  */
@media only screen and (max-width: 480px) {
  div#seminor_details {
    margin-bottom: 0;
    width: 100%;
    margin: 0 auto;
  }
  div.content div#seminor_details table {
    border: none;
    width: 90%;
    & tr {
      display: block;
      margin-bottom: 10px;
      width: 95%;
    }
    & td {
      display: list-item;
      list-style: none;
      width: 90%;
      /*margin-left: 20px;*/
      height: 100%;
      padding-left: none;
      border: none;
      &:first-child {
        display: block;
        width: 95%;
        margin: 0 auto 10px;
        background: #999999;
        color: #ffffff;
        border: none;
        border-radius: 3px;
        padding: 5px 15px;
      }
    }
  }
}

/*------------*/
/* セミナー投稿ページとカレンダー詳細 */
/*------------*/

/*  カレンダー  */
div#calendar {
  width: 260px;
  float: left;
  padding: 0 5px 10px 5px;
  margin-left: 15px;
}
div#_calendar1 {
  background: url("images/calendar1-.png") top right no-repeat;
  margin-bottom: 10px;
  width: 100%;
  height: 300px;
}
div#_calendar2 {
  background: url("images/calendar2.png") top right no-repeat;
  margin-bottom: 10px;
  width: 100%;
  height: 300px;
}
div#_calendar3 {
  background: url("images/calendar3.png") top right no-repeat;
  margin-bottom: 10px;
  width: 100%;
  height: 300px;
}

/*  ---------------------------------------*/
/*  浜田記述 カレンダーtable  ------------*/
/*  ---------------------------------------*/
.content #calendar {
  line-height: 0;
  text-align: none;
  font-family: "メイリオ";
}
.content #calendar table tr th {
  vertical-align: middle;
  text-align: center;
}
#calendar table {
  width: 248px;
  margin: 0 0 0 9px;
}
.content #calendar table tr td {
  padding: 0;
}
#calendar .month_box {
  width: 248px;
  height: 51px;
}

#calendar .month {
  color: #fff !important;
  font-weight: bold;
  font-size: 24px;
  padding: 1px 0 13px;
}
#calendar .date {
  width: 248px;
  height: 38px;
}

#calendar td {
  width: 36px;
  height: 40px;
  font-size: 13px;
  text-align: center;
  line-height: 70%;
}

#calendar td a {
  color: #0c8bcd;
  text-decoration: none;
}
#calendar .small_text {
  font-size: 10px;
  line-height: 100%;
  vertical-align: top;
}

/*  追記tooltips  */
div#_calendar1,
div#_calendar2,
div#_calendar3 {
  position: relative;
}

#calendar a.tooltip span.hidden {
  display: none;
  padding: 2px 3px;
  margin-left: 8px;
  text-align: left;
  font-size: 12px;
  line-height: 160%;
  width: 220px;
  border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -webkit-border-radius: 5px;
}
#calendar a.tooltip:hover span.hidden {
  display: block;
  width: 220px;
  position: absolute;
  top: 10px;
  left: 10px;
  border: 1px solid #cccccc;
  background: #ffffff;
  color: #6c6c6c;
  background-color: #fff2ea;
}
#calendar .event_outline {
  display: block;
  text-align: left;
  font-size: 10px;
}

/*  ----------------------------------------*/
/*  end 浜田記述　カレンダーtable  ---------*/
/*  ----------------------------------------*/


/*  下層ページでのnav下調整  */
body.single-post div#pageTitBnr {
  /*display: none;*/
  height: 1px;
}
#pageTitInner #pageTit {
  display: none;
}


/*------------------------------ */
/*        ☆list style☆ */
/*------------------------------ */
.content ul.list li {
  list-style-type: none;
  padding-bottom: 3px;
  border-bottom: 1px dotted #666;
  text-indent: 1em;
}


/*------------------------------*/
/*       ☆heading style☆ */
/*------------------------------*/

body.page h3.prim {
  position: relative;
  color: #111;
  line-height: 1;
  border-radius: 22px 0 0 22px;
  &::before {
    content: "";
    position: absolute;
    background: #eee;
    top: 50%;
    left: 14px;
    margin-top: -10px;
    height: 20px;
    width: 20px;
    border-radius: 50%;
    box-shadow: 1px 1px 1px #777 inset;
  }
  /*  h3が長い・改行が必要時にspan.long追記  */
  & span.long {
    display: block;
    padding: 0 0 0 40px;
  }
}
/*  small  */
.small {
  font-size: 90%;
}
body.page .content h5.prim {
  color: #333;
  border-bottom: 2px solid #333;
  box-shadow: rgba(113, 135, 164, 0.0470588) 6px 7px 3px -4px;
  -webkit-box-shadow: rgba(113, 135, 164, 0.0470588) 6px 7px 3px -4px;
  -moz-box-shadow: rgba(113, 135, 164, 0.0470588) 6px 7px 3px -4px;
  margin: 0 0 10px;
}
/*  .img_layout3  */
.content li {
  &.img_layout3 {
    width: 30%;
    float: left;
    text-indent: 0em;
    margin: 10px 7px 10px 2px;
    padding: 2px;
    border: 3px solid #ddd;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  /*  .img_layout4  */
  &.img_layout4 {
    width: 21%;
    float: left;
    text-indent: 0em;
    margin: 10px 7px 10px 2px;
    padding: 2px;
    border: 3px solid #ddd;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
}

/*  マガジンスタイル  */
.content div.magazine {
  width: 95%;
  margin: 0 auto 10px;
}
.content p {
  /*  マガジンスタイル左  */
  &.magimg_left {
    width: 300px;
    float: left;
    margin: 0 15px 15px 2px;
    padding: 2px;
    border: 3px solid #ddd;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
  &.magtext_right {
    padding-right: 10px;
  }
  /*  マガジンスタイル右  */
  &.magimg_right {
    width: 300px;
    float: right;
    margin: 0 2px 15px 15px;
    padding: 2px;
    border: 3px solid #ddd;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
}
/*  枠画像並列  */
.content li.border_img {
  float: left;
  margin-left: 15px;
  & img {
    padding: 7px;
    border: 5px solid #ddd;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
}
/* 20210329 レスポンシブ・スマホ対応 */
@media (max-width: 480px) {
  .content li.border_img {
    margin-left: 0;
    & img {
      display: block;
      margin: 0 auto;
    }
  }
}
/*  各ページ下部リストのborder-bottom非表示  */
.content div.childPageBox ul li {
  border-bottom: none;
}

/*------------------------
  ☆float☆
------------------------ */
.content {
  & div, & p {
    &.float_left, &.float_right {
      width: 360px;
    }
    &.float_left {
      float: left;
    }
    &.float_right {
      float: right;
    }
  }
}
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
}

/*-----------------
  ☆tot☆
----------------- */
.content h5.tot {
  background: url(images/tot_mark.png) left top no-repeat;
  margin: 0 0 10px;
  padding-top: 30px;
  text-indent: 2em;
}
.content ul.mb {
  margin-bottom: 0;
  & li.bb {
    border-bottom: 1px solid #c8c8c8;
  }
}

/*-------------------
  ☆media☆
-------------------*/
@media (max-width: 800px) {
  .content {
    /*  左右レイアウト  */
    & div, & p {
      &.float_left, &.float_right {
        float: none;
        width: 90%;
        margin: 0 auto;
      }
    }
    /*  3画像レイアウト  */
    & li {
      &.img_layout3, &.img_layout4 {
        width: 46%;
        float: left;
        text-indent: 0em;
        margin: 10px 7px 10px 2px;
        padding: 2px;
        border: 3px solid #ddd;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
      }
    }
  }
}

@media (max-width: 530px) {
  .content {
    /*  3画像レイアウト  */
    & li {
      &.img_layout3, &.img_layout4 {
        width: 90%;
        float: none;
        text-indent: 0em;
        margin: 10px 7px 10px 2px;
        padding: 2px;
        border: 3px solid #ddd;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
      }
    }
  }
}

@media (max-width: 480px) {
  .content p {
    &.magimg_left, &.magimg_right {
      width: 60%;
    }
  }
}

/*  カテゴリー一覧ページ  */
.content p._button {
  width: 90%;
  text-align: center;
  margin: 0 auto;
  & a {
    display: block;
    text-decoration: none;
    padding: 15px 10px;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 0 5px 3px 0;
    background-color: #f4eeeb;
    border: 1px solid #8cc349;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    &:hover {
      background-color: #61a237;
      color: #fff;
      border: 1px solid #fff;
      transition: ease-in-out 0.4s;
    }
  }
}
/*  #double_box  */
.content div.double_box {
  & div.float_left, & div.float_right {
    background-color: #f4eeeb;
    border: solid 1px #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    overflow: auto;
    & h5 {
      margin: 10px 5px 5px 5px;
      border-bottom: 2px solid #fff;
      padding-left: 15px;
    }
  }
}
/*  dl.enterprie  */
.content dl.enterprise {
  & dt {
    margin-bottom: 5px;
  }
  & dd {
    margin-bottom: 10px;
  }
}
/*  dl.summary  */
.content dl.summary {
  & dt {
    width: 95%;
    margin: 0 auto 5px;
    padding: 0 10px;
    border-bottom: 2px solid #5ead3c;
  }
  & dd {
    width: 95%;
    margin: 0 auto;
    padding: 10px;
    background-color: #f4eeeb;
    border: 1px solid #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
}
/*  table.role  */
.content table.role {
  font-size: 13px;
  & tr {
    &.caps {
      background-color: #5ead5a;
      color: #fff;
      border-bottom: 2px solid #fff;
    }
    &.first {
      background-color: #fff2ea;
    }
    &.second {
      background-color: #f4f4f4;
    }
  }
  & th {
    border-right: 1px solid #fff;
  }
  & th,
  & td.name {
    font-weight: bold;
  }
  & td.details {
    font-size: 11px;
  }
}

@media (max-width: 480px) {
  .content table.role {
    & tr,
    & tr th {
      text-align: left;
    }
  }
}

/*  form layout  */
.content form span.wpcf7-form-control-wrap {
  display: inline;
}

/* ----------
  group home グループホーム
---------- */
.content div {
  &.clearfix ul.home_image {
    float: left;
    width: 210px;
    margin-right: 10px;
  }
  &.home_details ul.list {
    font-size: 12px;
    padding-left: 230px;
  }
}

@media (max-width: 570px) {
  .content {
    & div {
      &.float_right, &.float_left {
        float: none;
        overflow: auto;
      }
      &.clearfix ul.home_image {
        float: none;
        width: 80%;
        margin: 0 auto;
        display: block;
      }
      &.home_details ul.list {
        font-size: 12px;
        padding-left: 0;
        width: 90%;
        margin: 0 auto;
      }
    }
    & li.border_img {
      float: none;
    }
  }
}

/*  p.home_sample  */
.content p.home_sample {
  float: left;
  margin-right: 10px;
  margin-left: 5px;
}

@media (max-width: 480px) {
  .content p.home_sample {
    float: none;
  }
}

/*  bold  */
.content dd span.bold {
  font-weight: bold;
}

body.category-5 .content .infoList .infoListBox div.entryTxtBox p.entryMeta .infoDate,
body.category-1 .infoList .infoListBox div.entryTxtBox p.entryMeta .infoDate,
body.category-9 .content .infoList .infoListBox div.entryTxtBox p.entryMeta .infoDate {
  display: none;
}

/* ----------
  npo 認定NPO法人について
---------- */

div.large_center {
  width: 95%;
  margin: 0 auto;
  padding: 30px 10px;
  background: url(images/large_center.png) top left repeat;
  font-size: 25px;
  text-align: center;
  line-height: 2.5;
  color: #fff;
  font-weight: bold;
  border: 2px solid #ccc;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
}

/* テーブル */
.content table{
  /* #npo1: 所得税より控除 */
  &#npo1 {
    font-size: 16px;
    margin-top: 45px;
    & tr {
      background-color: transparent;
      &.caps {
        & th {
          border-right: 1px solid #fff;
          background-color: #5ead5a;
        }
        & td {
          background-color: #fff2ea;
          color: #000;
        }
      }
      &.first {
        & th {
          border-right: none;
        }
        & td {
          background-color: #fff2ea;
        }
      }
      &.first th, &.caps th {
        text-align: left;
      }
    }
    & th {
      width: 35%;
      padding-top: 35px;
      border-right: 1px solid #fff;
      &._grey {
        background-color: #f4f4f4;
      }
    }
  }
  /* #npo2: 法人の場合 */
  &#npo2 {
    font-size: 16px;
    & tr {
      &.caps {
        color: #fff;
        & th {
          background-color: #5ead5a;
          border-right: 1px solid #fff;
        }
        & td {
          background-color: #5ead5a;
        }
      }
      &.first {
        color: #333;
        & th {
          background-color: #fff2ea;
          border-right: 1px solid #fff;
        }
        & td {
          background-color: #fff2ea;
        }
      }
    }
  }
}

h6#rec {
  padding: 0;
  margin: 0;
  position: absolute;
  top: -45px;
  left: 10px;
  z-index: 500;
}


@media only screen and (max-width: 530px) {
  div.large_center {
    font-size: 20px;
    width: auto;
  }
  .content table {
    /* #npo1 */
    &#npo1 {
      & th {
        display: block;
        width: auto;
        border-bottom: 1px solid #fff;
      }
      & tr{
        &.caps td {
          display: block;
          width: auto;
          font-size: 14px;
          padding: 10px 5px;
        }
        &.first {
          & th {
            display: block;
            border-bottom: 1px solid #fff;
          }
          & td {
            display: block;
            font-size: 14px;
            padding: 10px 5px;
          }
        }
      }
    }
    /* #npo2 */
    &#npo2 {
      &.caps, &first {
        & th, & td {
          display: block;
          text-align: center;
          padding-right: 5px;
          border: none;
        }
        & th {
          border-bottom: 1px solid #fff;
          border-right: none;
        }
      }
    }
  }
}