@charset "UTF-8";
/*________________________________________________________

	blog・works　２カラムのコンテンツ
	________________________________________________________
*/
.blog-wrapper h3, .works-wrapper h3 {
  display: block;
  padding: 8px 16px;
  margin: 0 0 16px 0;
  text-align: left;
  background-color: #031350;
  color: #FFF;
  letter-spacing: .1em;
  border-bottom: none;
  font-size: 130%; }

@media only screen and (min-width: 750px) {
  .blog-wrapper, .works-wrapper {
    display: inline-block;
    vertical-align: top;
    width: 776px;
    margin-right: 56px; } }

/*　ブログメイン　*/
@media only screen and (min-width: 750px) {
  .blogMain {
    margin-top: 96px;
    padding-bottom: 56px; } }

.blogMain .posted-on {
  display: inline-block;
  font-size: 85%; }

.blogMain .cat-links {
  display: inline-block;
  margin-left: 16px;
  padding: 0 8px;
  text-align: center;
  font-size: 80%;
  border: 1px solid #445dbd;
  color: #445dbd; }

.blogTop .blog-wrapper a {
  zoom: 1;
  display: block;
  border-bottom: 1px solid #dddddd;
  color: #031350;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s; }
  .blogTop .blog-wrapper a::before, .blogTop .blog-wrapper a::after {
    content: "";
    display: table; }
  .blogTop .blog-wrapper a::after {
    clear: both; }
  @media only screen and (min-width: 750px) {
    .blogTop .blog-wrapper a {
      padding: 32px 0; } }
  @media only screen and (max-width: 749px) {
    .blogTop .blog-wrapper a {
      padding: 16px 0; } }
  .blogTop .blog-wrapper a p {
    font-size: 90%; }
  .blogTop .blog-wrapper a .btnMore {
    display: inline-block;
    padding: 8px 40px;
    text-align: center;
    font-size: 80%;
    background-color: #f2b100;
    color: #FFF;
    float: right;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s; }
    .blogTop .blog-wrapper a .btnMore::after {
      font-family: 'Font Awesome 5 Free';
      font-weight: 900;
      content: "\f105";
      margin-left: 16px; }
  .blogTop .blog-wrapper a:hover .btnMore {
    background-color: #445dbd; }
  .blogTop .blog-wrapper a:first-child {
    border-top: 1px solid #dddddd; }

/*　ブログアーカイブ　*/
.blogMain h1.archive-title {
  padding: 0 0 8px 0;
  font-size: 100%;
  letter-spacing: .1em;
  border-bottom: 2px solid #031350; }

/*　ブログ詳細　*/
.blogMain h1 {
  margin-bottom: 32px;
  padding-bottom: 24px;
  border-bottom: 1px solid #dddddd; }

h1.archive-title {
  margin-bottom: 16px;
  padding-bottom: 24px;
  border-bottom: 1px solid #dddddd; }

p.btnBack {
  margin-top: 8px;
  padding-top: 24px;
  border-top: 1px solid #dddddd; }

p.btnBack a {
  display: block;
  padding: 16px 0;
  text-align: center;
  background-color: #f3f3f3;
  font-weight: bold;
  font-size: 95%; }
  p.btnBack a::before {
    display: inline-block;
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: "\f104";
    font-size: 130%;
    line-height: 1.4;
    margin-right: 16px;
    color: #445dbd;
    vertical-align: middle; }

/*________________________________________________________

	検索画面
	________________________________________________________
*/
.widget_search, .error-search {
  position: relative; }
  .widget_search .search-form, .error-search .search-form {
    position: relative;
    width: 90%;
    margin: 16px auto 8px auto; }
    .widget_search .search-form .search-field, .error-search .search-form .search-field {
      max-width: 100%;
      width: 100%;
      height: 38px;
      margin: 0;
      padding: 5px 44px 5px 6px;
      line-height: 38px;
      font-size: 14px;
      background-color: #f3f3f3;
      outline: 0;
      border: 1px solid #dddddd;
      border-radius: 0;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-transition: all 240ms ease-in-out;
      -o-transition: all 240ms ease-in-out;
      transition: all 240ms ease-in-out; }
      .widget_search .search-form .search-field:focus, .widget_search .search-form .search-field:active, .error-search .search-form .search-field:focus, .error-search .search-form .search-field:active {
        background-color: #fff;
        border-color: #c1cfe2; }
    .widget_search .search-form .search-submit, .error-search .search-form .search-submit {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      z-index: 2;
      display: block;
      width: 48px;
      height: 38px;
      padding: 0;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      border: 0;
      outline: 0;
      color: #FFF;
      background-color: #445dbd; }
      .widget_search .search-form .search-submit::before, .error-search .search-form .search-submit::before {
        display: block;
        margin: 8px auto 0 auto;
        font-family: 'Font Awesome 5 Free';
        font-weight: 900;
        content: "\f002";
        font-size: 130%;
        vertical-align: middle; }

.searchResult a {
  display: block; }

/*　サイドバー　*/
aside {
  margin-bottom: 24px;
  border: 1px solid #dddddd; }
  aside a {
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s; }
    aside a:hover {
      opacity: .7; }
  aside h2 {
    display: block;
    margin: 0;
    font-size: 100%;
    padding: 16px;
    border-bottom: 2px solid #445dbd; }
  aside ul {
    font-size: 90%; }
    aside ul.areaList li:last-child {
      border-bottom: 0; }
  aside li {
    zoom: 1;
    list-style: none;
    padding: 16px;
    font-size: 90%;
    border-bottom: 1px solid #dddddd; }
    aside li::before, aside li::after {
      content: "";
      display: table; }
    aside li::after {
      clear: both; }
  @media only screen and (min-width: 750px) {
    aside {
      display: inline-block;
      vertical-align: top;
      width: 256px; } }
  @media only screen and (max-width: 749px) {
    aside {
      margin-top: 24px; } }

.icon.icon-search {
  width: 24px;
  height: 24px;
  z-index: 10; }

.screen-reader-text {
  display: none; }

.widget_recent_entries .category {
  background-color: #f3f3f3;
  text-align: center;
  font-size: 90%;
  padding: 2px; }

.widget_recent_entries img {
  width: 56px;
  height: 56px;
  margin-right: 8px;
  float: left; }

.widget_recent_entries div {
  width: 70%;
  float: right; }
  .widget_recent_entries div.title {
    margin-top: 8px;
    line-height: 110%; }

/*________________________________________________________

	works　施工実績
	________________________________________________________
*/
#map-container {
  width: 720px;
  height: 544px; }

.map-list li {
  display: inline-block;
  width: 48%;
  margin: 0 8px 16px 0; }
  .map-list li:nth-child(2n) {
    margin-right: 0; }
  .map-list li a {
    display: block;
    padding: 16px 8px;
    text-align: center;
    color: #FFF;
    text-shadow: 1px 1px 3px #555; }
    .map-list li a.area_01 {
      background-color: #aea6e5; }
    .map-list li a.area_02 {
      background-color: #81aae2; }
    .map-list li a.area_03 {
      background-color: #83c493; }
    .map-list li a.area_04 {
      background-color: #d7cb7c; }
    .map-list li a.area_05 {
      background-color: #dd997e; }
    .map-list li a.area_06 {
      background-color: #da9bbb; }

/* 実績一覧ページ */
.worksList li a {
  display: block;
  padding: 8px;
  border: 1px solid #dddddd;
  text-align: center;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s; }
  .worksList li a:hover {
    background-color: #f3f3f3; }
  .worksList li a img {
    width: 100%; }
  .worksList li a strong {
    display: block;
    margin-top: 5px;
    color: #031350; }
  .worksList li a span {
    display: block;
    font-size: 80%;
    color: #b4b4b4; }

@media only screen and (min-width: 750px) {
  .worksList li {
    display: inline-block;
    width: 32%;
    margin: 0px 8px 8px 0; }
    .worksList li:nth-child(3n) {
      margin-right: 0; }
    .worksList li a div {
      height: 136px;
      overflow: hidden; }
    .worksList li a img {
      -webkit-transition: .3s;
      -o-transition: .3s;
      transition: .3s; }
    .worksList li a:hover img {
      -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
      transform: scale(1.1); } }

@media only screen and (max-width: 749px) {
  .worksList li {
    margin-bottom: 16px; } }

/* ページャー */
.pagination {
  padding-top: 48px; }
  .pagination ul {
    text-align: center; }
    .pagination ul li {
      display: inline-block; }
  .pagination span, .pagination a {
    display: block;
    margin: 2px 2px 2px 0;
    padding: 10px 15px 10px 15px !important;
    border: 1px solid #e6e6e6;
    font-size: 14px;
    line-height: 14px;
    text-decoration: none;
    width: auto;
    color: #031350;
    /* 通常の文字色 */
    background: #FFF;
    /* 通常の背景色 */ }
    .pagination span.next, .pagination span.prev, .pagination a.next, .pagination a.prev {
      border: none; }
  .pagination a:hover {
    color: #FFF;
    /* マウスホバー時の文字色 */
    background: #445dbd;
    /* マウスホバー時の背景色 */ }
  .pagination .current {
    padding: 10px 15px 10px 15px;
    color: #FFF;
    /* 現在のページの文字色 */
    background: #445dbd;
    /* 現在のページの背景色 */ }

@media only screen and (max-width: 413px) {
  .pagination {
    font-size: 12px;
    line-height: 12px; }
  .pagination span, .pagination a {
    padding: 8px 10px 8px 10px; }
  .pagination .current {
    padding: 8px 10px 8px 10px; } }

/* 実績詳細ページ */
.worksBox {
  border: 1px solid #dddddd; }
  .worksBox img {
    width: 100%; }
  .worksBox .span span {
    display: inline-block;
    margin-right: 8px;
    padding: 4px 8px;
    letter-spacing: .2em;
    line-height: 1;
    font-size: 85%;
    background-color: #445dbd;
    color: #FFF;
    text-align: center;
    border-radius: 3px; }
  @media only screen and (min-width: 750px) {
    .worksBox {
      padding: 16px; }
      .worksBox p {
        margin: 24px 0 8px 0;
        text-align: center; }
      .worksBox p.span {
        display: inline-block;
        margin: 16px 24px 0 24px; } }
  @media only screen and (max-width: 749px) {
    .worksBox {
      padding: 8px; }
      .worksBox p {
        margin: 8px 0; } }
