@charset "utf-8";
/*
Theme Name: smart077
Theme URI: http://theme.o2gp.com/
Description: smart077
Version: 1.0
Author: o2 Group
Author URI: http://theme.o2gp.com/

  o2 Group v1.0
   http://theme.o2gp.com/

  This theme was designed and built by o2 Group,
  whose blog you will find at http://theme.o2gp.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
-------------------------------------------------------------- */
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,
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: "" "";
}
img {
  vertical-align: bottom;
}
a img {
  border: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  font: 14px/1.6 "メイリオ", "Meiryo", arial, "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic",
    Sans-Serif;
  color: #333;
  -webkit-text-size-adjust: none;
  /* background:url(images/wall.png) repeat-x; */
}

html {
  background: url(images/bg.png);
}

/* リンク設定
------------------------------------------------------------*/
a {
  background: transparent;
  color: #15c;
  font-size: 100%;
  margin: 0;
  outline: 0;
  padding: 0;
  text-decoration: none;
  vertical-align: baseline;
}

a:hover,
a:active,
a:focus {
  outline: none;
  color: #f60;
}

/**** Clearfix ****/
nav .panel:after,
nav#mainNav:after,
.newsTitle:after,
.bg:after,
.post:after,
ul.post li:after,
nav#mainNav .inner:after {
  content: "";
  display: table;
  clear: both;
}
nav .panel,
nav#mainNav,
.newsTitle,
.bg,
.post,
ul.post li,
nav#mainNav .inner {
  zoom: 1;
}

/* フォーム
------------------------------------------------------------*/
input[type="text"],
textarea {
  vertical-align: middle;
  max-width: 90%;
  line-height: 2em;
  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"] {
  padding: 3px 10px;
  background: #a5c254;
  background: -moz-linear-gradient(top, #a5c254 0%, #87a438 100%);
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(0%, #a5c254),
    color-stop(100%, #87a438)
  );
  background: -webkit-linear-gradient(top, #a5c254 0%, #87a438 100%);
  background: -o-linear-gradient(top, #a5c254 0%, #87a438 100%);
  background: linear-gradient(to bottom, #a5c254 0%, #87a438 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a5c254', endColorstr='#87a438',GradientType=0 );
  border: 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  line-height: 1.5;
  font-size: 120%;
  color: #fff;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
  background: #87a438;
  background: -moz-linear-gradient(top, #87a438 0%, #a5c254 100%);
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(0%, #87a438),
    color-stop(100%, #a5c254)
  );
  background: -webkit-linear-gradient(top, #87a438 0%, #a5c254 100%);
  background: -o-linear-gradient(top, #87a438 0%, #a5c254 100%);
  background: linear-gradient(to bottom, #87a438 0%, #a5c254 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#87a438', endColorstr='#a5c254',GradientType=0 );
  cursor: pointer;
}
*:first-child + html input[type="submit"] {
  padding: 3px;
}

/* レイアウト
------------------------------------------------------------*/
#wrapper,
.inner {
  margin: 0 auto;
  padding: 0 20px;
  width: 960px;
}

#header {
  overflow: hidden;
}

#content {
  float: left;
  width: 690px;
  padding: 5px 0 50px;
}

#sidebar {
  float: right;
  width: 240px;
  padding: 5px 0 50px;
}

#footer {
  clear: both;
}

/* ヘッダー
*****************************************************/

/* サイト説明文
----------------------------------*/
#header h1 {
  padding: 0 0 10px;
  font-weight: normal;
}

/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2 {
  clear: both;
  float: left;
  padding: 18px 8px 9px;
  color: #515151;
  font-size: 160%;
  font-weight: bold;
}

/* コンタクト
----------------------------------*/
.contact {
  float: right;
  font-size: 80%;
  padding: 10px 0 0;
  text-align: right;
}

.contact .tel {
  margin-bottom: -5px;
  font-size: 260%;
  font-weight: bold;
  font-family: Arial, Helvetica, sans-serif;
}

/* トップページ　メイン画像
----------------------------------*/
#mainImg {
  clear: both;
  margin: 20px 0;
  line-height: 0;
  text-align: center;
  z-index: 0;
}

/* #mainImg a:hover{opacity:.8;} */

.post {
  margin: 1px 0 20px 0;
  padding: 20px 10px 20px 20px;
  border: 1px solid #dcdcdc;
  background: #fff;
}

.toppage h4 {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: normal;
  color: #333;
}

.toppage {
  padding: 10px 10px 20px 20px;
}

/* 記事ループ
*****************************************************/
.list {
  padding: 10px 0;
  border-bottom: 1px dashed #dcdcdc;
}

.list:last-child {
  border: 0;
}

.post .list p {
  padding: 0;
}

.list span {
  padding-left: 10px;
}

/* タイポグラフィ
*****************************************************/
/* #content a{color:#84a038;}
#content a:hover{text-decoration:underline;} */

h2.title {
  clear: both;
  margin: 0;
  padding: 7px 10px 7px 17px;
  font-size: 120%;
  color: #fff;
  background: #839e39 url(images/headingBg.png) repeat-x;
}

.dateLabel {
  text-align: right;
  font-weight: bold;
  color: #858585;
}

.post p {
  margin-bottom: 10px;
}

.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;
  font-size: 150%;
  color: #000;
  border-bottom: 3px solid #000;
}

.post h2 {
  margin: 10px 0;
  padding-bottom: 2px;
  font-size: 130%;
  font-weight: normal;
  color: #333;
}

.post h3 {
  margin: 10px 0;
  font-size: 100%;
  font-weight: normal;
  color: #2e2c2c;
  border-bottom: 1px solid #515151;
}

.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 {
  border: 1px #ccc solid;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 10px 0 20px;
}

.post table th {
  padding: 10px;
  border: #ccc solid;
  border-width: 0 0 1px 1px;
  background: #efede7;
}

.post table td {
  padding: 10px;
  border: 1px #ccc solid;
  border-width: 0 0 1px 1px;
  background: #fff;
}

.post dt {
  font-weight: bold;
}

.post dd {
  padding-bottom: 10px;
}

#content .post img {
  max-width: 100%;
  height: auto;
}

img.aligncenter {
  display: block;
  margin: 5px auto;
}

img.alignright,
img.alignleft {
  margin: 10px 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;
}

/* サイドバー　ウィジェット
*****************************************************/
section.widget ul,
.widget_search,
#calendar_wrap,
.textwidget {
  margin: 1px 0 15px 0;
  /* padding:10px 10px 10px 17px;
border:1px solid #dcdcdc;
background: #fff; */
}

section.widget ul ul {
  border: 0;
  margin: 0;
  padding: 0 0 0 10px;
}

p.banner {
  padding-bottom: 15px;
}

p.banner img {
  max-width: 233px;
  height: auto;
}

p.banner img:hover {
  cursor: pointer;
  opacity: 0.8;
}

/* section.widget h3{
clear:both;
margin:0;
padding:7px 10px 7px 17px;
font-size:110%;
color:#fff;
border-bottom:1px solid #a2bd34;
background:#839e39 url(images/headingBg.png) repeat-x;
} */

section.widget li a {
  padding: 7px 0 7px 12px;
  background: url(images/arrow.gif) no-repeat 0 12px;
  border-bottom: 1px dashed #dcdcdc;
}

section.widget li:last-child a {
  border: 0;
}

#searchform input[type="text"] {
  line-height: 1.7;
  height: 24px;
  width: 90px;
  vertical-align: bottom;
}

/* カレンダー */
#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),
#calendar_wrap table td:nth-child(6) {
  color: #0034af;
}
#calendar_wrap table th:nth-child(7),
#calendar_wrap table td:nth-child(7) {
  color: #950000;
}
#calendar_wrap table td#prev {
  text-align: left;
}
#calendar_wrap table td#next {
  text-align: right;
}
#calendar_wrap a {
  color: #84a038;
  font-weight: bold;
}

/* お知らせ　
-------------*/
.newsTitle {
  clear: both;
  margin: 0;
  padding: 7px 10px 7px 17px;
  font-size: 110%;
  color: #fff;
  border-bottom: 1px solid #a2bd34;
  background: #839e39 url(images/headingBg.png) repeat-x;
}

.newsTitle h3 {
  float: left;
  font-weight: normal;
}

.newsTitle p {
  float: right;
  padding: 0 0 0 10px;
  font-size: 80%;
  background: url(images/arrow.gif) no-repeat 0 5px;
}

.newsTitle p a {
  color: #fff;
}

.news p {
  clear: both;
  padding-bottom: 2px;
  border-bottom: 1px dashed #dcdcdc;
}

.news p:last-child {
  border: 0;
}

.news p a {
  display: block;
  padding: 5px 0;
  color: #333;
  font-style: italic;
  font: italic 110% "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.news a span {
  color: #515151;
  font: normal 90% Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
    "ＭＳ Ｐゴシック", sans-serif;
}

.news span {
  padding-left: 10px;
}

.news a:hover span {
  color: #84a038;
}

/* フッター
*****************************************************/
#footer ul {
  padding: 15px 0 10px;
  text-align: center;
}

#footer li {
  display: inline-block;
  padding: 0 16px;
  line-height: normal;
  border-right: 1px solid #666;
}
*:first-child + html #footer li {
  display: inline;
}

#footer li:first-child {
  border-left: 1px solid #666;
}

#footer li a {
  color: #fff;
  text-decoration: none;
}

/* #footer li a:hover{color:#999;} */

#footer ul ul {
  display: none;
}

#copyright {
  clear: both;
  padding: 10px 0 37px;
  text-align: center;
}

/* 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;
}

/* トップページ 最新記事4件
------------------------------------------------------------*/
ul.post {
  padding: 0;
}

ul.post li {
  margin: 0 10px;
  padding: 20px 0 15px;
  border-bottom: 1px dashed #dcdcdc;
}

ul.post li:last-child {
  border: 0;
}

ul.post img {
  float: left;
  margin: 0 15px 5px 10px;
}

ul.post h3 {
  margin: 0 0 10px 10px;
  font-size: 14px;
  font-weight: normal;
  color: #333;
  border: 0;
}

/* メインメニュー　PC用（default breakpoint →1025 ）
------------------------------------------------------------*/
@media only screen and (min-width: 690px) {
  nav#mainNav {
    clear: both;
    position: relative;
    z-index: 89;
    width: 100%;
    padding: 0;
    margin: 0;
    /*  background:url(images/mainNav.png) repeat-x 0 0; */
  }

  nav#mainNav ul li {
    float: left;
    position: relative;
    /*  background:url(images/mainNavSep.png) no-repeat 100% 6px; */
  }

  nav#mainNav ul li a {
    display: block;
    text-align: center;
    _float: left;
    /*  color:#fff;
  height:70px;
  line-height:45px; */
    font-size: 110%;
    font-weight: bold;
    /*  margin-right:2px;
  padding:10px 40px 0;
  background:url(images/mainnavBg.png) repeat-x 0 0; */
  }

  nav#mainNav ul li a span,
  nav#mainNav ul li a strong {
    display: block;
    font-size: 90%;
    line-height: 1.4;
  }

  nav#mainNav ul li a span {
    font-size: 70%;
    color: #fff;
    font-weight: normal;
  }

  nav div.panel {
    display: block !important;
    float: right;
  }

  a#menu {
    display: none;
  }

  nav#mainNav ul li.current-menu-item a,
  nav#mainNav ul li a:hover,
  nav#mainNav ul li.current-menu-parent a {
    /*  background:url(images/mainnavBg.png) repeat-x 0 100%; */
  }

  nav#mainNav ul ul {
    width: 160px;
  }

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

  nav#mainNav ul li:hover ul {
    display: block;
    position: absolute;
    top: 42px;
    left: 0;
    z-index: 500;
  }

  nav#mainNav ul li li {
    margin: 0;
    float: none;
    height: 35px;
    line-height: 35px;
    width: 160px;
    background: none;
  }

  nav#mainNav ul li li a,
  nav#mainNav ul li.current-menu-parent li a,
  nav#mainNav ul li.current-menu-item li a {
    width: 100%;
    height: 35px;
    padding: 0 0 0 10px;
    line-height: 35px;
    font-size: 95%;
    text-align: left;
    background: url(images/mainnavBg.png) repeat-x 0 -6px;
  }

  nav#mainNav ul li li.current-menu-item a,
  nav#mainNav ul li li a:hover {
    background: #87a438;
  }
}

/* メインメニュー iPadサイズ以下から（default breakpoint →1024 ）
------------------------------------------------------------*/
@media only screen and (max-width: 689px) {
  /* ▼Sidr 仕様の際はコメントアウト
  nav#mainNav{
  clear:both;
  width:880px;
  margin:0 auto;
  }
  
  nav#mainNav a.menu{
  width:100%;
  display:block;
  font-weight: bold;
  text-align:left;
  }

  nav#mainNav a.menuOpen{
  }
  
  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;
  }
▲Sidr 仕様の際はコメントアウト */

  nav#mainNav ul li img {
    display: none;
  }
  nav#mainNav ul li a:before,
  nav#mainNav ul li span:before {
    content: attr(data-label);
  }

  /* ▼Sidr 仕様の際はコメントアウト
  nav#mainNav ul li a,
  nav#mainNav ul li.current-menu-item li a,
  nav#mainNav ul li span,
  nav#mainNav ul li.current-menu-item li span {
  display: block;
  padding:15px 10px;
  text-align:left;
  border-bottom:1px dashed #fff;
  color:#fff;
  background: #A7DD40;
  }

  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 #fff;}

   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{
  color:#fff;
  background: #B6E557;
  }

  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:#87a438 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:#a5c254 url(images/sub1.png) no-repeat 20px 18px;}
  
  nav#mainNav ul li li:last-child a{background:#87a438 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:#a5c254 url(images/subLast.png) no-repeat 20px 20px;}

  nav div.panel{float:none;}

▲Sidr 仕様の際はコメントアウト */

  #mainImg {
    margin-bottom: 20px;
  }
}

/* 1000px以下から調整
------------------------------------------------------------*/
@media only screen and (max-width: 1000px) {
  #wrapper,
  .inner {
    width: 100%;
    padding: 0;
  }

  #content {
    clear: both;
    margin: 0 0 0 2%;
    width: 69%;
  }
  #sidebar {
    margin: 0 2% 0 0;
    width: 24%;
  }
  #sidebar img {
    height: auto;
    width: 100%;
  }
}

/* 689px以下から 1カラム表示（default breakpoint →959 ）
------------------------------------------------------------*/
@media only screen and (max-width: 689px) {
  #wrapper,
  .inner {
    width: 100%;
    padding: 0;
  }
  .inner h1,
  .inner p:first-child {
    display: none;
  }
  #header {
    width: 96%;
    padding: 0 2%;
  }

  .contact {
    padding: 10px 0 10px;
  }

  nav#mainNav {
    width: 95%;
  }

  nav#mainNav ul {
    margin: 0 auto;
  }
  nav#mainNav ul ul {
    padding: 0;
  }

  /*  nav div.panel{float:none;} */

  #mainImg img {
    width: 98%;
    height: auto;
  }

  #content {
    clear: both;
    width: auto;
    float: none;
    margin: 0 auto;
    padding: 10px 20px;
  }
  #sidebar {
    clear: both;
    width: 100%;
    max-width: fit-content;
    float: none;
    margin: 0 auto;
    padding: 10px 20px;
  }
  #content > div {
    margin: 0;
  }

  .banner {
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  p.banner img {
    width: 100%;
    height: auto;
  }
  section.widget_search {
    text-align: center;
  }
  #calendar_wrap table {
    width: 240px;
  }

  #footer li {
    margin-bottom: 10px;
  }
}

/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px) {
  nav#mainNav {
    width: 98%;
  }
  #header {
    text-align: center;
    background-image: none;
  }
  #header h2,
  .contact {
    float: none;
  }
  .contact {
    padding: 0 0 20px;
  }
  .contact p {
    text-align: center;
  }
  #headerInfo {
    width: 250px;
    margin: 0 auto;
  }
  img.alignright,
  img.alignleft {
    display: block;
    margin: 5px auto;
  }
  .alignright,
  .alignleft {
    float: none;
  }
}

/* --------------------------------------------------------------------------------------------------------
    テーマカスタマイズ
-------------------------------------------------------------------------------------------------------- */

/* サイト背景
----------------------------------------------- */

body {
  background: #f0f0f0;
}
@media only screen and (max-width: 689px) {
  body {
    background: #fff;
    font-size: 16px;
  }
}

#wrapper {
  background: #fff url(/img/default/arch.gif) center bottom no-repeat;
  padding-bottom: 11px;
}

.page-template-sidebar-page-no-php #content,
#wrapper .no-sidebar {
  box-sizing: border-box;
  float: none;
  margin: 0;
  width: 100%;
}

/* ヘッダ
----------------------------------------------- */

#header {
  background: #fff;
}

#header .inner {
}

#header .inner h1 {
  padding: 0.2em 0 0;
  margin: 0 0 0.2em;
  text-align: left;
}

#header .panel {
  background: #fff;
}

/* ロゴ */
#site-logo {
  float: left;
  width: 35%;
  margin: 0 0 10px;
  padding-top: 20px;
  position: relative;
  z-index: 89;
}

/* Pマーク */
#site-pm {
  float: left;
  width: 8%;
  margin: 0 0 10px 10px;
  padding-top: 20px;
  position: relative;
  z-index: 89;
}
#site-pm img {
  max-width: 100%;
  height: auto;
}

/* コンタクト */
.contact {
  float: right;
  width: 30%;
  margin: 0 0 10px;
  padding: 5px 0 0;
  text-align: right;
}

.contact img {
  margin-left: 1em;
}

/* ナビ */
nav#mainNav {
}
nav#mainNav .inner {
  margin: 0 auto;
  padding: 0;
  width: auto;
}
nav#mainNav div.inner:first-child {
  background: url(/img/default/nav-bg.gif) center top repeat-x;
  background-size: auto 100%;
}

nav div.panel {
  float: none;
}

nav#mainNav .inner ul {
  margin: 0 auto;
  width: 960px;
}

nav#mainNav div.inner + div.inner ul {
  padding: 0.5em 0;
}
nav#mainNav div.inner + div.inner ul li {
  padding: 0 1%;
  width: 18%;
}
nav#mainNav div.inner + div.inner ul li a {
  background: #000;
  border-radius: 0.8em;
  color: #fff;
  display: block;
}
nav#mainNav div.inner + div.inner ul li a:hover {
  background: #1b9aaa;
}

nav#mainNav .inner ul ul {
  background: #fff;
  border-right: 2px #f0f0f0 solid;
  border-bottom: 2px #f0f0f0 solid;
  border-left: 2px #f0f0f0 solid;
  width: 170px;
}
nav#mainNav .inner ul li li {
  height: auto;
}
nav#mainNav .inner ul li li a {
  border-bottom: 1px #ccc dotted;
  line-height: 1.2em;
  height: auto;
  padding-top: 1em;
  padding-bottom: 1em;
}
nav#mainNav ul li:hover ul {
  top: 100%;
}

/* =モバイル用サブナビ
----------------------------------------------- */
nav#mainNav .sub-nav {
  background: rgba(93, 134, 68, 1);
  background: -webkit-linear-gradient(
    top,
    rgba(137, 186, 105, 1) 0%,
    rgba(93, 134, 68, 1) 100%
  );
  background: linear-gradient(
    to bottom,
    rgba(137, 186, 105, 1) 0%,
    rgba(93, 134, 68, 1) 100%
  );
  table-layout: fixed;
  width: 100%;
}
nav#mainNav .sub-nav li {
  display: table-cell;
  float: none;
  text-align: center;
  position: relative;
}
nav#mainNav .sub-nav li + li:before {
  content: "";
  background: rgba(0, 0, 0, 0.2);
  display: block;
  position: absolute;
  top: 8px;
  bottom: 8px;
  left: 0;
  width: 1px;
}
nav#mainNav .sub-nav li a {
  display: block;
  color: #fff;
  font-size: 3.5vw;
  line-height: 1.2em;
  padding: 1em 0.2em;
}

/* =breadcrumb
----------------------------------------------- */
#breadcrumb {
  clear: both;
  margin: 0 auto;
  zoom: 1;
}
#breadcrumb:after {
  content: "";
  clear: both;
  display: block;
}

#breadcrumb ol {
  background: #fff;
  height: 15px;
  margin: 0 auto;
  padding: 10px 20px 20px;
  width: 960px;
}

#breadcrumb li {
  background: url(/img/default/breadcrumb.gif) left 2px no-repeat;
  float: left;
  padding: 0 5px 0 15px;
  list-style: none;
  line-height: normal;
  margin-bottom: 5px;
}

#breadcrumb li:first-child,
#breadcrumb li.first {
  background: none;
  padding-left: 0;
}
@media only screen and (max-width: 1024px) {
  #breadcrumb ol {
    width: auto;
  }
}

/* フッタ
----------------------------------------------- */
#footer {
  background: #b4b4b4;
  padding-bottom: 9%;
}

/* 背景が中間色の場合 */
#footer a:link {
  color: #333;
  text-decoration: none;
}
#footer a:focus,
#footer a:active,
#footer a:hover {
  color: #c16120;
  text-decoration: none;
}
#footer a:visited {
  color: #8263a5;
}

/* 背景が濃色の場合
#footer a:link {
  color: #FFF;
  text-decoration: none;
}
#footer a:focus,
#footer a:active,
#footer a:hover {
  color: #FFAA72;
  text-decoration: none;
}
#footer a:visited {
  color: #9B918A;
} */

/* フッタバー */
#f-bar {
  background: #cfc;
  text-align: center;
  padding: 10px 0;
  position: fixed;
  bottom: 0;
  width: 100%;
}

#f-bar img {
  margin: 0 15px !important;
}
#f-bar .guidance {
  margin: -30px 0 -10px !important;
}

/* フッタナビ */
#footer li {
  border-right: 1px solid #666;
}
#footer li:first-child {
  border-left: 1px solid #666;
}

/* ページ先頭へ（追従ボタン） */
#return {
  clear: both;
  line-height: normal;
  padding: 0;
  margin: 0;
  text-align: right;
}

#return p {
  bottom: 2em;
  line-height: normal;
  position: fixed;
  right: 1.4em;
  width: 65px;
  z-index: 99;
}

#copyright {
  padding: 0.5em 0;
}

/* 404ページ
----------------------------------------------- */
.error404 #content article {
  padding-left: 8%;
}
.error404 #content .title {
  background: none;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.8em;
  padding: 20px 0 0.3em;
}
.error404 #content p {
  line-height: 1.8em;
}
.error404 #content p.nv {
  padding: 2em 0;
}
.error404 #content p.nv a {
  text-decoration: underline;
}

/* 幅1000px調整
----------------------------------------------- */
@media only screen and (max-width: 1024px) {
  #header .inner {
    width: 97%;
    padding: 0 1.5%;
  }

  #site-logo img {
    height: auto;
    width: 100%;
  }
  .contact img {
    height: auto;
    width: 40%;
  }

  nav#mainNav {
    background-size: auto 100%;
    padding: 0;
    width: 100%;
  }
  nav#mainNav .inner {
    margin: 0 auto;
    padding: 0 2%;
    width: 96%;
  }
  nav#mainNav .inner > ul,
  nav#mainNav .inner > div > ul {
    width: 100%;
  }
  nav#mainNav .inner .panel > ul > li {
    width: 16.66%;
  }
  nav#mainNav .inner .panel > ul > li:first-child {
    width: 16.66%;
  }
  nav#mainNav .inner img {
    height: auto;
    width: 100%;
  }

  #mainImg img {
    height: auto;
    width: 100%;
  }

  #footer {
    padding-bottom: 12%;
  }

  #f-bar {
    text-align: left;
  }
  #f-bar img {
    height: auto;
    margin: 0 0 0 10px !important;
    width: 28% !important;
  }
  #f-bar .tel-num img,
  #f-bar .tel-num2 img {
    width: 25% !important;
  }
  #f-bar .guidance {
    width: 7.5% !important;
  }
}

/* 幅689px調整
----------------------------------------------- */
@media only screen and (min-width: 690px) {
  nav#mainNav .sub-nav {
    display: none !important;
  }
  nav#mainNav ul li li a,
  nav#mainNav ul li.current-menu-parent li a,
  nav#mainNav ul li.current-menu-item li a {
    background: #f2f9ff;
  }

  nav#mainNav ul li li.current-menu-item a,
  nav#mainNav ul li li a:hover {
    background: #e2f2ff;
  }
}

@media only screen and (max-width: 689px) {
  nav#mainNav .sub-nav {
    display: table !important;
  }
  #header {
    padding: 0;
    width: 100%;
  }
  #header .inner {
  }
  #header .inner h1 {
    padding-right: 17%;
  }
  #header img {
    height: auto;
    width: 100%;
  }
  #site-logo {
    margin: 0.6em 0 0;
    width: 70%;
  }
  #header .contact {
    clear: both;
    float: none;
    padding-top: 0;
    text-align: center;
    height: auto;
    width: 100%;
  }
  #header .contact img {
    margin-top: 2%;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 2%;
    width: 90%;
  }

  nav#mainNav,
  nav#mainNav .inner {
    padding: 0;
    width: 100%;
  }
  nav#mainNav .inner li {
    width: 100%;
  }
  nav#mainNav a.menu {
    text-align: right;
    padding: 0;
    position: absolute;
    top: 1%;
    right: 1%;
    width: 15%;
  }
  nav#mainNav a.menu img {
    margin: 1% 1% 0 0;
    vertical-align: bottom;
    height: auto;
    width: 100%;
  }
  nav#mainNav .inner .panel > ul > li,
  nav#mainNav .inner .panel > ul > li:first-child,
  nav#mainNav .inner .panel > ul > li:last-child {
    width: 100%;
  }

  /* ▼Sidr 仕様の際はコメントアウト
  nav#mainNav ul li a,
  nav#mainNav ul li.current-menu-item li a,
  nav#mainNav ul li span,
  nav#mainNav ul li.current-menu-item li span,
  nav#mainNav ul li li a,
  nav#mainNav ul li.current-menu-item li a,
  nav#mainNav ul li li.current-menu-item a,
  nav#mainNav ul li li:last-child a {
    border-color: #FFF;
    background-color: #0198CD;
    color: #FFF;
    font-size: 1.2em;
  }
  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 li a:hover,
  nav#mainNav ul li li:last-child a:hover {
    background-color: #65BCD8;
    color: #FFF;
  }
▲Sidr 仕様の際はコメントアウト */

  nav#mainNav .inner ul ul {
    border: none;
    width: 100%;
  }

  #breadcrumb {
    padding: 0.5em 0;
    width: 100%;
  }
  #breadcrumb ol {
    font-size: 12px;
    height: 1em;
    margin: 0 auto;
    padding: 0;
    width: 95%;
  }

  #f-bar img {
    margin: 0.5em 0;
    height: auto;
  }

  #return p {
    right: 0.4em;
  }
  #return p img {
    height: auto;
    width: 60%;
  }

  #footer {
    padding-bottom: 0;
  }

  #footer li {
    display: block;
    padding: 5px 20px;
    border: none !important;
    text-align: left;
  }
}

/* --------------------------------------------------------------------------------------------------------
    Sidr
-------------------------------------------------------------------------------------------------------- */
.sp-sub,
.mobi-menu {
  display: none;
}

@media screen and (max-width: 689px) {
  .pc-sub {
    display: none;
  }
  .sp-sub,
  .mobi-menu {
    display: block;
  }
  #sidr,
  nav#mainNav div.inner + div.inner {
    display: none;
  }
  #sidr.sidr ul li:hover {
    border-top: 1px solid #fff; /* light */
    /* border-top: 1px solid #4D4D4D; dark */
  }
  #sidr.sidr ul li a,
  #sidr.sidr ul li span {
    line-height: 1.2em;
    padding: 15px;
  }
  #sidr.sidr ul li ul {
    background: none;
    border-top: 1px solid #dfdfdf;
  }
  #sidr.sidr ul li ul li a,
  #sidr.sidr ul li ul li span {
    border-bottom: none;
    padding-left: 30px;
  }

  body {
    padding-top: 19.5%;
  }
  #header {
    border-bottom: 3px #2a221c solid;
    padding: 0.2em 0;
    position: fixed;
    top: 0;
    z-index: 999;
  }
  #site-logo {
    padding: 0;
    width: 40%;
    display: block;
  }
  #site-pm {
    padding: 0;
    width: 15%;
  }
  #header .contact {
    margin: 0.2em 0 0;
    clear: none;
    float: right;
    text-align: right;
    width: 30%;
  }
  #header .contact p.sp-sub {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  #header .contact p.sp-sub > span,
  #header .contact p.sp-sub > a {
    display: table-cell;
  }

  #f-bar > a {
    display: none;
  }
  #f-bar .tel-num img,
  #f-bar .tel-num2 img {
    width: 34% !important;
  }
} /* Eo max689 */

/* --------------------------------------------------------------------------------------------------------
    サイドバー
-------------------------------------------------------------------------------------------------------- */

/* サービスメニュー
----------------------------------------------- */
#sidebar .s-sv-menu h3 {
  background: #d6e9ca;
  color: #5d8544;
  font-size: 18px;
  font-weight: normal;
  padding: 0.2em 10px;
}
#sidebar .s-sv-menu ul {
  background: #d6e9ca;
  margin: 0;
}
#sidebar .s-sv-menu ul li {
  background: #f9f9f9;
  border-top: 1px #fff solid;
  border-bottom: 1px #26478c solid;
}

#sidebar .s-sv-menu li a {
  background-size: 40px auto;
  background-position: 8px center;
  background-repeat: no-repeat;
  border: none;
  display: block;
  line-height: 1.2em;
  padding: 12px 0 12px 60px;
}
#sidebar .s-sv-menu li a span {
  color: #888;
  font-size: 12px;
  display: block;
}

/* サービスアイコン */
#sidebar .s-sv-menu li.c1 a {
  background-image: url(/img/side/c-arcade.jpg);
}
#sidebar .s-sv-menu li.c2 a {
  background-image: url(/img/side/c-kyoutai.jpg);
}
#sidebar .s-sv-menu li.c3 a {
  background-image: url(/img/side/c-doujin.jpg);
}

/* ご利用案内アイコン */
#sidebar .s-sv-menu li.sv1 a {
  background-image: url(/img/side/sv-item.jpg);
}
#sidebar .s-sv-menu li.sv2 a {
  background-image: url(/img/side/sv-flow.jpg);
}
#sidebar .s-sv-menu li.sv3 a {
  background-image: url(/img/side/sv-member.jpg);
}
#sidebar .s-sv-menu li.sv4 a {
  background-image: url(/img/side/sv-media.jpg);
}

/* PCでも使う場合 */
@media screen and (min-width: 690px) {
  #sidebar .s-sv-menu h3 {
    border-radius: 3px 3px 0 0;
    text-align: center;
  }
  #sidebar .s-sv-menu ul {
    border-radius: 0 0 3px 3px;
    padding: 0 0.5em 0.5em;
  }
  #sidebar .s-sv-menu ul li {
    background: #fff;
    border: none;
    margin-bottom: 1px;
  }
  #sidebar .s-sv-menu ul li:last-child {
    border: none;
  }
  #sidebar .s-sv-menu li a {
    background-size: 34px auto;
    background-position: 3px center;
    padding: 12px 0 12px 45px;
  }
} /* Eo min690 */

/* スタッフブログ
----------------------------------------------- */
#sidebar .s-blog {
  background: #d6e9ca;
  border-radius: 3px;
  margin: 0;
  padding: 0.5em;
}
#sidebar .s-blog h3 {
  color: #5d8544;
  font-size: 18px;
  text-align: center;
  margin-bottom: 0.4em;
}

#sidebar .s-blog ul {
  margin: 0;
}

#sidebar .s-blog ul li {
  background: #fff;
  margin-bottom: 1px;
  padding: 0.2em 0.5em;
}

#sidebar .s-blog ul li a,
#sidebar .s-blog ul li.cat-item-none,
#sidebar .s-blog ul li span {
  background: none;
  border: none;
  display: block;
  list-style: none;
  text-decoration: none;
  padding: 0.2em 0.5em;
}

/* お問合わせ先
----------------------------------------------- */
#sidebar .s-info {
  background: #fff;
  margin: 0;
}
#sidebar .s-info h3 {
  background: #dcdcdc;
  font-size: 16px;
  text-align: center;
}

#sidebar .s-info .wrap {
  border: 1px #dcdcdc solid;
  margin: 0;
  padding: 0.5em;
  /*border-top: none;*/
}

#sidebar .s-info .wrap p {
  margin-bottom: 0.5em;
}

#sidebar .s-info .wrap p.store {
  text-align: center;
}

#sidebar .s-info .wrap p.mail {
}

#sidebar .s-info .wrap p.gaikan,
#sidebar .s-info .wrap p.map {
  text-align: center;
}

br.com-jikan {
  display: none;
}

#sidebar br.com-jikan {
  display: block;
}

/* --------------------------------------------------------------------------------------------------------
    投稿に関する調整
-------------------------------------------------------------------------------------------------------- */
/*------------------------------ Archive */
/* === Title === */
.archive h1.title {
  clear: both;
  margin: 0 0 0.5rem;
  padding: 0 1%;
  font-size: 2rem;
  line-height: 1.2em;
  color: #333;
  border-bottom: 2px dotted #74a144;
  background: none;
}

.archive h1.title + p {
  text-align: right;
}
@media only screen and (max-width: 689px) {
  .archive h1.title {
    font-size: 20px;
    margin-right: -20px;
    margin-left: -20px;
  }
}

/* === List === */
.archive .list header {
  border-left: 5px #74a144 solid;
  padding: 0 0 0 10px;
}

.archive .list p {
  line-height: 1.6em;
  padding-bottom: 5px;
}

.archive .list .img-l {
  margin-right: 15px;
  width: auto;
}

.archive .list time {
  font-size: 0.8rem;
}

.archive .list span {
  font-size: 16px;
  font-weight: bold;
  padding: 0;
  line-height: 1.6em;
}
@media only screen and (max-width: 689px) {
  .archive .list .img-l {
    width: 80px;
  }
}

/*------------------------------ Single post */
/* === Title === */
.single article header,
.archive article header {
  margin-bottom: 20px;
}
.single h1.title,
.archive h2.title {
  clear: both;
  margin: 0;
  background: #b8cc95;
  background: -webkit-linear-gradient(
    top,
    #cbe5ac,
    #b8cc95
  ); /* webkit系ベンダープレフィックス */
  background: linear-gradient(#cbe5ac, #b8cc95); /* 標準型 */
  color: #4d7721;
  height: auto;
  padding: 2%;
  border-radius: 5px;
  position: relative;
  font-size: 1.4em;
  line-height: 1.5em;
}
.single h1.title:before,
.archive h2.title:before {
  content: "";
  position: absolute;
  bottom: -31px;
  left: 3%;
  border: 12px solid transparent;
  border-top: 20px solid #b8cc95;
}
.dateLabel {
  font-weight: normal;
  text-align: left;
  padding: 0 1%;
}
@media only screen and (max-width: 689px) {
  .single h1.title,
  .archive h2.title {
    font-size: 16px;
  }
}

/* === content === */
.post {
  padding: 0;
  border: none;
}

/*------------------------------ 表 */
.archive #content table,
.single #content table {
  margin-bottom: 20px;
  table-layout: fixed !important;
  width: 100%;
  word-break: break-all;
  word-wrap: break-all;
}
.archive #content table th,
.single #content table th,
.archive #content table td,
.single #content table td {
  border-collapse: collapse;
  border: 1px solid #ccc;
  height: auto;
  padding: 10px;
  vertical-align: middle;
}

/* 事例 */
#content div.post table.example {
  margin: 20px 0;
  width: 100%;
}
#content div.post table.example th {
  width: 30%;
  padding: 10px;
  background: #e9f6ff;
  border: 1px solid #cccccc;
  color: #336699;
  font-weight: bold;
  text-align: left;
  border-collapse: collapse;
}
#content div.post table.example td {
  padding: 10px;
  background: #ffffff;
  border: 1px solid #cccccc;
  width: 70%;
}
#content div.post table.pic_1,
#content div.post table.pic_2 {
  margin: 0 0 20px;
  width: 100%;
}
#content div.post table.pic_1 td,
#content div.post table.pic_2 td {
  text-align: center;
  border: none;
}
#content div.post table.pic_4 {
  border: none;
  margin-bottom: 20px;
}
#content div.post table.pic_4 td {
  text-align: center;
  padding: 5px 5px 5px 0;
}
#content div.post table.other {
}
#content div.post table.other th {
  border: none;
  border-bottom: 2px dotted #336699;
  font-size: 16px;
  font-weight: bold;
  padding: 15px 0 15px 60px;
  color: #336699;
  background: url(/img/block/icon/track.gif) 5px 3px no-repeat;
  text-align: left;
}
#content div.post table.other td {
  border: none;
}
@media only screen and (max-width: 689px) {
  #content div.post table.example th,
  #content div.post table.example td {
    width: auto;
  }
}

/*------------------------------ Widget Title */
section.widget {
  overflow: hidden;
}
section.widget > h3,
#sidebar h3.title {
  background: none;
  border: none;
  padding: 0;
  color: #333;
}

/* section.widget > h3,
#sidebar h3.title {
  clear:both;
  margin:0;
  padding:7px 10px 7px 17px;
  font-size:110%;
  color:#fff;
    background: #0A8E00;
    background: -webkit-linear-gradient(top, #77D32C, #0A7C00);
    background: linear-gradient(#77D32C, #0A7C00);
    border-radius: 5px;
} */

section.widget_jcl_widget,
section.widget_categories,
section.widget_archive,
section.popular-posts,
section.widget_recent_entries,
section.widget_meta,
section.widget_pages {
  margin: 0 20px 20px;
}
section.widget_jcl_widget h3,
section.widget_categories h3,
section.widget_archive h3,
section.popular-posts h3,
section.widget_recent_entries h3,
section.widget_meta h3,
section.widget_pages h3 {
  background: url(/img/block/title/line.gif) repeat-x bottom;
  font-size: 14px;
  font-weight: bold;
  line-height: 2.6em;
  margin-bottom: 10px;
}
section.widget_jcl_widget ul,
section.widget_categories ul,
section.widget_archive ul,
section.popular-posts ul,
section.widget_recent_entries ul,
section.widget_meta ul,
section.widget_pages ul {
  margin: 0 auto;
  width: auto;
}
section.widget_jcl_widget ul.children,
section.widget_categories ul.children,
section.widget_archive ul.children,
section.popular-posts ul.children,
section.widget_recent_entries ul.children,
section.widget_meta ul.children,
section.widget_pages ul.children {
  border: none;
  padding: 0;
  width: auto;
}
section.widget_jcl_widget ul li,
section.widget_categories ul li,
section.widget_archive ul li,
section.popular-posts ul li,
section.widget_recent_entries ul li,
section.widget_meta ul li,
section.widget_pages ul li {
  background: url(/img/block/icon/side-yajirusi.gif) no-repeat 0 11px;
  border-bottom: 1px #ccc dotted;
  font-size: 14px;
  list-style: none;
  padding: 3px 0 3px 17px;
}
section.widget_jcl_widget ul.children li,
section.widget_categories ul.children li,
section.widget_archive ul.children li,
section.popular-posts ul.children li,
section.widget_recent_entries ul.children li,
section.widget_meta ul.children li,
section.widget_pages ul.children li {
  background: url(/img/block/icon/side-s-yajirusi.gif) no-repeat 0 6px;
  border-bottom: none;
  padding: 0 0 0 15px;
}
section.widget_jcl_widget ul li a,
section.widget_categories ul li a,
section.widget_archive ul li a,
section.popular-posts ul li a,
section.widget_recent_entries ul li a,
section.widget_meta ul li a,
section.widget_pages ul li a {
  background: none;
  border: none;
  padding: 0;
}
a.rss {
  display: block;
  margin: 0 20px;
  text-align: center;
}

/*------------------------------ ソーシャルボタン */
.wp_social_bookmarking_light {
  float: right;
  overflow: hidden;
  padding: 10px 0 !important;
}
.wp_social_bookmarking_light div {
  float: right !important;
  border: 0 !important;
  overflow: hidden;
  padding: 0 !important;
  margin: 0 5px 0px 0 !important;
  height: 23px !important;
  text-indent: 0 !important;
}
.wp_social_bookmarking_light img {
  border: 0 !important;
  padding: 0;
  margin: 0;
  vertical-align: top !important;
}
.wp_social_bookmarking_light_clear {
  clear: both !important;
}
.wsbl_twitter {
  width: 70px;
}
.wsbl_google_plus_one {
  width: 32px;
}
.wsbl_line {
  width: 100px;
}
.wsbl_facebook_like {
  width: 120px;
}

/*------------------------------ 関連記事 */
.yarpp-related {
  background: none;
  clear: both;
  padding: 20px 0;
  text-align: left;
}

.yarpp-related h2 {
  font-size: 16px;
  font-weight: bold;
  background: url(/img/block/title/line.gif) left bottom repeat-x;
  border: none;
  color: #666;
  margin-bottom: 10px;
  padding: 0 0 10px 3px;
}

.yarpp-related ul {
  padding: 0 0 0 10px;
}

.yarpp-related li {
  font-size: 14px;
  list-style: none;
  line-height: 2em;
  padding: 0 0 0 20px;
}

.yarpp-related li a {
  text-decoration: underline;
}

/*------------------------------ 投稿月アーカイブへのリンク */
#content .moremonth {
  text-align: right;
}

/*------------------------------ Editリンク */
p.edit_link {
  text-align: right;
}

/* --------------------------------------------------------------------------------------------------------
    その他 追加
-------------------------------------------------------------------------------------------------------- */

/* MW WP Form
----------------------------------------------- */
#content div.mw_wp_form form span.error {
  border: 3px solid #fffa00;
  color: #cc0000;
  margin: 5px auto;
  padding: 5px;
}
#content div.mw_wp_form form span label {
  line-height: 2em;
  margin-right: 10px;
}
#content div.mw_wp_form form span.mwform-tel-field input {
  max-width: 18%;
}

/* 確認画面 */
#content .mw_wp_form_preview h1:after {
  content: "（確認画面）";
}
#content .mw_wp_form_preview .none {
  display: none !important;
}
#content .mw_wp_form_preview p.submit input:first-child {
  margin-right: 20px;
}

/* wp-pagenavi
----------------------------------------------- */
.wp-pagenavi span,
.wp-pagenavi a {
  display: block;
  float: left;
}

/* 筺体在庫詳細
----------------------------------------------- */
.single-cab_entry div.image p {
  float: left;
  margin: 0 0 2% 3%;
  width: 30%;
}
.single-cab_entry div.image p:nth-child(3n + 1) {
  margin-left: 0;
}
.single-cab_entry div.detail {
  clear: both;
}

@media only screen and (min-width: 690px) {
  .single-cab_entry div.detail table tr th {
    width: 200px;
  }
} /* Eo min690 */

@media screen and (max-width: 689px) {
  .pc-on {
    display: none;
  }
}
