body {
  background-color: #efece0;
/*  font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;*/
}



header#header01 .h_menu .h_logo a img {
    height: 40px;
    width: auto;
}

header#header01 {
  background-color: #ffffff;
}

header#header01 .h_menu .h_contact a {
  font-weight: bold;
  font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

.h_tel .num {
  font-family: "Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
  font-weight: bold;
}

header#header01 .h_menu .h_contact .h_tel a {
  font-family:"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
  color: #333;
  font-size: 20px;
  padding: 0;
}

.h_search input.submit_btn {
    background: #655845 url(../image/common/icon_search.png) no-repeat scroll center center/16px auto;
}

#globalnav01 {
  background-color: #ffffff;
}

#globalnav01 #globalnav_in ul li a {
  font-weight: normal;
font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

#globalnav01 #globalnav_in ul li:hover {
    color: #655845!important;
    border-bottom: 3px solid #655845;
    margin-bottom: -3px;
    padding-bottom: 3px;
}

#globalnav01 #globalnav_in ul li:hover a {
    color: #655845;
    text-decoration: none;
}



.title_jp {
letter-spacing: 4px;
font-weight: bold;
font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

.title_en {
    color: #9e937d;
}

.mainimage01 { background-image: url("../image/mainimage01_bg.jpg"); }
.mainimage02 { background-image: url("../image/mainimage02_bg.jpg"); }
.mainimage03 { background-image: url("../image/mainimage03_bg.jpg"); }
.mainimage04 { background-image: url("../image/mainimage04_bg.jpg"); }
.mainimage05 { background-image: url("../image/mainimage05_bg.jpg"); }
.mainimage06 { background-image: url("../image/mainimage06_bg.jpg"); }

.topmain_catch { text-align: right; top: 40%; left: 23vw;}
.topmain_txt { text-align: right; top: 55%; left: 23vw;}

@media only screen and (min-width: 980px) and (max-width: 1279px){
  #globalnav01 #globalnav_in ul li a {
    font-size: 14px;
  }
}
@media only screen and (max-width: 690px){
.topmain_catch {
    text-align: right;
    top: 30%;
    left: 0;
}

.topmain_catch {
text-align: left;
    top: 30%;
    left: 60%;
    width: 50%;
}

  .topmain_txt {
    display: none;
      text-align: left;
      top: 54%;
      left: 50%;
      width: 50%;
  }
}

#top_mainimage {
    margin-bottom: 70px;
}

.h_mail a {
    background-color: #655845;
    display: block;
    margin-left: 1px;
}

.h_mail a:hover {
    background-color: #655845;
    opacity: 0.7;
}

#top_bnr {
    border-top: 1px solid #dcd6ba;
  background-color: #fff;
  padding: 50px 0;
}

.cv_style04 {
  border-top: 1px solid #dcd6ba;
  border-bottom: 1px solid #dcd6ba;
    margin-top: 0px;
}

.cv_style04 .cv_style04_btn a {
    background-color: #655845;
}

.cv_style04 .cv_style04_btn a:hover {
    background-color: #655845;
    opacity: 0.7;
}

.btn_bg a {
    text-decoration: none;
    background-color: #655845;
    color: #ffffff;
    border: none;
}

.btn_bg a:hover {
    text-decoration: none;
    background-color: #655845;
    opacity: 0.7;
        border: none;
}

.cv_style04 .cv_style04_tel .cv_style04_num {
    color: #655845;
    font-family: "Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    letter-spacing: 3.5px;
}
.cv_style04 .cv_style04_tel .cv_style04_num a {
    color: #655845;
}

/********************************************/
/* footer 02 */
/********************************************/
footer#footer02 {
  background-color: #333333;
  padding: 40px 0 20px; }
  footer#footer02 .footer_in #footnav {
    font-size: 0; }
    footer#footer02 .footer_in #footnav .f_top_nav {
display: inline-block;
    vertical-align: top;
    padding: 0 2.5% 0 2.5%;
    max-width: calc(100% / 4);
    margin: 0px;
    }
      footer#footer02 .footer_in #footnav .f_top_nav li {
/*        margin-bottom: 20px;*/
        list-style: none; }
        footer#footer02 .footer_in #footnav .f_top_nav li a {
          color: #655845;
          font-size: 16px;
          display: inline-block; }
        footer#footer02 .footer_in #footnav .f_top_nav li ul {
          margin-top: 8px;
          padding-left: 10px; }
          footer#footer02 .footer_in #footnav .f_top_nav li ul li {
            margin-bottom: 5px; }
            footer#footer02 .footer_in #footnav .f_top_nav li ul li a {
              font-size: 13px; }
              footer#footer02 .footer_in #footnav .f_top_nav li ul li a:before {
                font-family: FontAwesome;
                content: "\f0da";
                padding-right: 8px;
                vertical-align: middle;
                display: inline-block;
                color: #ffffff;
                font-size: 10px; }
    footer#footer02 .footer_in #footnav .tworow {
      max-width: 460px; }
      footer#footer02 .footer_in #footnav .tworow ul {
        font-size: 0; }
        footer#footer02 .footer_in #footnav .tworow ul li {
          display: inline-block;
          width: 50%; }
          footer#footer02 .footer_in #footnav .tworow ul li:not(:nth-child(2n)) {
            padding-right: 3%; }
          footer#footer02 .footer_in #footnav .tworow ul li a:hover {
            text-decoration: underline;
            color: #ffffff;
          }

#footnav ul {
  border-left: 1px solid #dcd6ba ;
}

#footnav ul:last-child {
  border-right: 1px solid #dcd6ba ;
}
       }




/* footer top ***************/
.l-footer {
  padding: 0; }

.t-default ul.f_top_nav {
  display: inline-block;
  vertical-align: top;
  padding: 0 5% 0 0;
  max-width: calc(100% / 4); }

.t-default ul.f_top_nav.tworow {
  max-width: 460px; }

/* footer bottom ***************/
#f_bottom_wrap02 {
  background-color: #1A1A1A;
  padding: 24px 0; }
  #f_bottom_wrap02 .f_logo {
    text-align: center;
    line-height: 1; }
    #f_bottom_wrap02 .f_logo a {
      display: inline-block;
      width: 180px; }
      #f_bottom_wrap02 .f_logo a img {
        width: 100%;
        height: auto; }
  #f_bottom_wrap02 .f_bottom {
    line-height: 1; }
    #f_bottom_wrap02 .f_bottom .f_bottom_nav {
      text-align: center;
      font-size: 0;
      margin: 24px auto 16px; }
      #f_bottom_wrap02 .f_bottom .f_bottom_nav a {
        display: inline-block;
        margin-right: 20px;
        padding-right: 20px;
        border-right: 1px solid #333333;
        color: #ffffff;
        font-size: 12px; }
        #f_bottom_wrap02 .f_bottom .f_bottom_nav a:last-child {
          border-right: none;
          padding-right: 0;
          margin-right: 0; }
        #f_bottom_wrap02 .f_bottom .f_bottom_nav a:hover {
          text-decoration: underline; }
  #f_bottom_wrap02 .copyright {
    text-align: center;
    display: block;
    color: #333333;
    font-size: 12px; }

@media only screen and (max-width: 979px) {
  footer#footer02 .footer_in #footnav .f_top_nav {
    padding: 10px 5% 10px 0;
    max-width: calc(100% / 2);
    width: calc(50% - 5px);
    margin-top: 0; }
    footer#footer02 .footer_in #footnav .f_top_nav li {
      margin-bottom: 0; }
  .t-default ul.f_top_nav,
  .t-default ul.f_top_nav.tworow {
    padding: 0 4% 0 0; }
    #footnav ul {
      border-left: 0;
    }
  #footnav ul:last-child {
    border-right: 0;
  }
}

@media only screen and (max-width: 690px) {
  .t-default ul.f_top_nav,
  .t-default ul.f_top_nav.tworow {
    padding: 0 0 0 0;
    max-width: 100%;
    width: 100%; }
  footer#footer02 {
    width: 100%;
    padding: 0; }
    footer#footer02 .footer_in {
      width: 100%;
      padding: 0;}
      footer#footer02 .footer_in #footnav {
        width: 100%; }
        footer#footer02 .footer_in #footnav .f_top_nav, footer#footer02 .footer_in #footnav .f_top_nav.tworow {
          padding: 0 0 0 0;
          margin: 0;
          max-width: 100%;
          width: 100%; }
          footer#footer02 .footer_in #footnav .f_top_nav li, footer#footer02 .footer_in #footnav .f_top_nav.tworow li {
            margin-bottom: 0; }
            footer#footer02 .footer_in #footnav .f_top_nav li a, footer#footer02 .footer_in #footnav .f_top_nav.tworow li a {
              display: block;
              border-bottom: 1px solid #655845;
              padding: 10px 3%;
              font-size: 14px;
              position: relative; }
            footer#footer02 .footer_in #footnav .f_top_nav:first-child li:first-child a {
              border-top: 1px solid #655845;
            }
              footer#footer02 .footer_in #footnav .f_top_nav li a:after, footer#footer02 .footer_in #footnav .f_top_nav.tworow li a:after {
                font-family: FontAwesome;
                content: "\f0da";
                padding-right: 8px;
                vertical-align: middle;
                display: inline-block;
                color: #655845;
                font-size: 12px;
                position: absolute;
                right: 3%;
                top: calc(50% - 8px); }
          footer#footer02 .footer_in #footnav .f_top_nav ul, footer#footer02 .footer_in #footnav .f_top_nav.tworow ul {
            display: none; }
      footer#footer02 .footer_in .f_logo {
        padding: 20px 0;
        text-align: center;
        background-color: #eeeeee;
        margin-top: 0; }
        footer#footer02 .footer_in .f_logo a {
          width: 50%;
          max-width: 240px; }
  #f_bottom_wrap02 {
    padding-bottom: 15px; }
    #f_bottom_wrap02 .f_bottom .f_bottom_nav {
      margin-top: 16px; }
      #f_bottom_wrap02 .f_bottom .f_bottom_nav a {
        display: inline-block;
        margin: 8px 0 8px 15px;
        padding-right: 15px; } }


footer#footer02 {
    background-color: #efece0;
    color: #655845;
    padding: 40px 0 40px;
}

footer#footer02 .footer_in #footnav {
    text-align: center;
}

#f_bottom_wrap02 {
  background-color: #ffffff;

}

#f_bottom_wrap02 a{
    color: #333333!important;
}


/* column 4 ************/
/*.col4::after,.col4_m::after {@include clearfix;}
.col4 .flt, .col4 .flr{ width: 25%;}
.col4_m .flt, .col4_m .flr{ width: 23.5%;}.col4_m .flt{margin-right: 2%;}*/
/* PC 4列 / タブレット 4列 / スマホ 1列 */
.col4, .col4_m {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col4 .col {  width: calc(100% / 4);}
.col4_m .col {
 width: calc((100% - 24px * 3) / 4);
  margin-left: 24px;
}
.col4_m .col:first-child {  margin-left: 0;}

@media only screen and (max-width: 690px) {
  .col4 .col {
    width: 100%;
  }
  .col4_m .col {
    width: 100%;
    margin-left: 0;
  }
}
/* PC 4列 / タブレット 2列 / スマホ 2列 */
.col4_m_sp2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col4_m_sp2 .col {
 width: calc((100% - 24px * 3) / 4);
  margin-left: 24px;
}
.col4_m_sp2 .col:first-child {  margin-left: 0;}

@media only screen and (max-width: 979px) {
  .col4_m_sp2 .col {
   width: calc((100% - 24px * 1) / 2);
    margin-bottom: 24px;
  }
  .col4_m_sp2 .col:nth-child(2n + 1) {  margin-left: 0;}
}

@media only screen and (max-width: 690px) {
  .col4_m_sp2 .col {
   width: calc((100% - 16px * 1) / 2);
    margin-bottom: 16px;
    margin-left: 16px;
  }
}


/* top info */

.top_info {
  background-color: #e7e3d2;
  padding: 20px 0;
}

.top_info figure {
  border: solid 1px #9e927f;
  background-color: #fff;
}

.top_info figure a{
  color: #655845;
}

.top_info figure .txt_link {
  padding: 20px 15px;
}

.top_info figure:hover {
  border: solid 2px #655845;
  margin: -1px;
}

@media only screen and (max-width: 690px) {

  .top_info .img100 img, #contents img, .inner img {
    width: 100%!important;
    /* height: auto; */
  }

}

.top_cate {
  background-color: #efece0;
  padding: 20px 0;
}

.top_cate figure {
  border: solid 1px #9e927f;
  background-color: #fff;
}

.top_cate figure a{
  color: #655845;
}

.top_cate figure .txt_link {
  padding: 20px 15px;
}

.top_cate figure:hover {
  border: solid 2px #655845;
  margin: -1px;
}

/*-----------------------------------------------------------------

sub area O

-----------------------------------------------------------------*/
.sub_o_area .col {
  border: 1px solid #c46f18; 
  padding: 2em 0;
  position: relative;
  background-color: #fff;
  box-shadow: 0 0 0 3px #FFF, 0 0 0 4px #9e937e;
}
.sub_o_area .col.bl-hover {
  opacity: .7;
}
.sub_o_area .col.bl-hover img:hover {
  opacity: 1!important;
}

.sub_o_dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }
  .sub_o_dl dt {
    width: 30%;
    text-align: center;
    font-size: 40px;
    font-weight: bold;
    line-height: 1.2;
    color: #329bd2;
    border-right: 1px dashed #dddddd; }
    .sub_o_dl dt .txt {
      display: block;
      font-size: 18px;
      margin-bottom: 16px; }
  .sub_o_dl dd {
    width: 76%;
    padding-left: 2em;
    padding-right: 1em; }

@media only screen and (max-width: 979px) {
  .sub_o_dl dd {
    padding-left: 1em; } }

@media only screen and (max-width: 690px) {
  .sub_o_area .col {
    padding: 1.5em 0; }
  .sub_o_dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }
    .sub_o_dl dt {
      width: 100%;
      font-size: 32px;
      color: #329bd2;
      border-right: none;
      margin-bottom: .5em; }
      .sub_o_dl dt .txt {
        font-size: 16px;
        margin-bottom: 8px; }
    .sub_o_dl dd {
      width: 100%;
      padding: 0 1.5em; } }





/* sub */

#pagetitle {
    background-color: #e7e3d2;
    background-image: none;
}

#pagetitle h2 {
    color: #655845;
}



#subnav_title.sb_col2 a {
    background-color: #655845;
}

#subnav_title.sb_col2 a:hover {
    background-color: #655845;
    opacity: 0.5;
}

#subnav.sb_col2 ul li a {
    color: #333333;
    background-color: #f5f5f5;
}


#subnav.sb_col2 ul li a:hover {
    color: #ffffff;
    background-color: #9e937d;
    text-decoration: none;
}



.title03_blb {
    border-left: 5px solid #655845;
    border-bottom: 1px solid #655845;
}

.title04_bbl {
    color: #9e937d;
    border-bottom: 1px solid #9e937d;
}

.title05_square:after {
    content: "";
    background-color: #c46e17;
}
.col2_m .col.bl-hover {
  opacity: .7;
}
.col2_m .col.bl-hover .btn_bg a:hover {
  opacity: 1;
}