@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c|Noto+Sans+JP:300,400,500');

/* reset */
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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}
html { line-height: 1; }
ol, ul, li{ list-style: none; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }
q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }
a img { border: none; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
input, textarea, select, button { font-size: 15px;  font-family: inherit; }
.cf:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  line-height: 0;
}
.cf { display: inline-block; min-height: 1%; }
.bg_c, .bg_c::before, .bg_c::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s;
  transition: all .2s;
}
img { vertical-align: bottom;  max-width: 100%; }
img[src$=".svg"] { width: 100% !important; }
sup { vertical-align: super; font-size: 90%; line-height: 1.0; color: #D26D00; }
sub { vertical-align: sub; font-size: 90%; line-height: 1.0; }
a { color: inherit; }

.pc { display: block; }
.sp { display: none ; }
.pc-c { display: table-cell; }
.sp-c { display: none ; }

.pc_indent { display: inline; }

.hidden{ display:none; }

@media screen and (min-width: 768px) { .spbr{ display: none; } }

.dis-i { display: inline; }
.dis-ib { display: inline-block; }
.dis-b { display: block; }

.m-t0 { margin-top: 0 !important; }
.m-t5 { margin-top: 5px !important; }
.m-t10 { margin-top: 10px !important; }
.m-t15 { margin-top: 15px !important; }
.m-t20 { margin-top: 20px !important; }
.m-t25 { margin-top: 25px !important; }
.m-t30 { margin-top: 30px !important; }
.m-t40 { margin-top: 40px !important; }
.m-t50 { margin-top: 50px !important; }
.m-t60 { margin-top: 60px !important; }
.m-t70 { margin-top: 70px !important; }
.m-t80 { margin-top: 80px !important; }
.m-t90 { margin-top: 90px !important; }
.m-t100 { margin-top: 100px !important; }
.m-b0 { margin-bottom: 0 !important; }
.m-b5 { margin-bottom: 5px !important; }
.m-b10 { margin-bottom: 10px !important; }
.m-b15 { margin-bottom: 15px !important; }
.m-b20 { margin-bottom: 20px !important; }
.m-b25 { margin-bottom: 25px !important; }
.m-b30 { margin-bottom: 30px !important; }
.m-b40 { margin-bottom: 40px !important; }
.m-b50 { margin-bottom: 50px !important; }
.m-b60 { margin-bottom: 60px !important; }
.m-b70 { margin-bottom: 70px !important; }
.m-b80 { margin-bottom: 80px !important; }
.m-b90 { margin-bottom: 90px !important; }
.m-b100 { margin-bottom: 100px !important; }
.m-l-auto { margin-left: auto !important; }
.m-l0 { margin-left: 0 !important; }
.m-l5 { margin-left: 5px !important; }
.m-l10 { margin-left: 10px !important; }
.m-l15 { margin-left: 15px !important; }
.m-l20 { margin-left: 20px !important; }
.m-l25 { margin-left: 25px !important; }
.m-l30 { margin-left: 30px !important; }
.m-r-auto { margin-right: auto !important; }
.m-r0 { margin-right: 0 !important; }
.m-r5 { margin-right: 5px !important; }
.m-r10 { margin-right: 10px !important; }
.m-r15 { margin-right: 15px !important; }
.m-r20 { margin-right: 20px !important; }
.m-r25 { margin-right: 25px !important; }
.m-r30 { margin-right: 30px !important; }

.p-t0 { padding-top: 0 !important; }
.p-t5 { padding-top: 5px !important; }
.p-t10 { padding-top: 10px !important; }
.p-t15 { padding-top: 15px !important; }
.p-t20 { padding-top: 20px !important; }
.p-t25 { padding-top: 25px !important; }
.p-t30 { padding-top: 30px !important; }
.p-t40 { padding-top: 40px !important; }
.p-t50 { padding-top: 50px !important; }
.p-t60 { padding-top: 60px !important; }
.p-t70 { padding-top: 70px !important; }
.p-t80 { padding-top: 80px !important; }
.p-t90 { padding-top: 90px !important; }
.p-t100 { padding-top: 100px !important; }
.p-b0 { padding-bottom: 0 !important; }
.p-b5 { padding-bottom: 5px !important; }
.p-b10 { padding-bottom: 10px !important; }
.p-b15 { padding-bottom: 15px !important; }
.p-b20 { padding-bottom: 20px !important; }
.p-b25 { padding-bottom: 25px !important; }
.p-b30 { padding-bottom: 30px !important; }
.p-b40 { padding-bottom: 40px !important; }
.p-b50 { padding-bottom: 50px !important; }
.p-b60 { padding-bottom: 60px !important; }
.p-b70 { padding-bottom: 70px !important; }
.p-b80 { padding-bottom: 80px !important; }
.p-b90 { padding-bottom: 90px !important; }
.p-b100 { padding-bottom: 100px !important; }
.p-l0 { padding-left: 0 !important; }
.p-l5 { padding-left: 5px !important; }
.p-l10 { padding-left: 10px !important; }
.p-l15 { padding-left: 15px !important; }
.p-l20 { padding-left: 20px !important; }
.p-l25 { padding-left: 25px !important; }
.p-l30 { padding-left: 30px !important; }
.p-r0 { padding-right: 0 !important; }
.p-r5 { padding-right: 5px !important; }
.p-r10 { padding-right: 10px !important; }
.p-r15 { padding-right: 15px !important; }
.p-r20 { padding-right: 20px !important; }
.p-r25 { padding-right: 25px !important; }
.p-r30 { padding-right: 30px !important; }

.f-c-bk{ color: #000000 !important; }
.f-c-wh{ color: #ffffff !important; }
.f-c-gr{ color: #aaaaaa !important; }
.f-c1{ color: #F1EBE7 !important; }
.f-c2{ color: #D26D00 !important; }
.f-c3{ color: #F4E1B8 !important; }
.f-c4{ color: #C11021 !important; }

.b-c-bk{ background-color: #000000 !important; }
.b-c-wh{ background-color: #ffffff !important; }
.b-c-gr{ background-color: #F3F3F3 !important; }
.b-c1{ background-color: #F1EBE7 !important; }
.b-c2{ background-color: #886D0C !important; }
.b-c3{ background-color: #F4E1B8 !important; }
.b-c4{ background-color: #EA7603 !important; }

.f-bold { font-weight: bold !important; }
.f-normal { font-weight: 500 !important; }

.f-s150{ font-size: 150% !important; }
.f-s140{ font-size: 140% !important; }
.f-s130{ font-size: 140% !important; }
.f-s120{ font-size: 120% !important; }
.f-s110{ font-size: 110% !important; }
.f-s100{ font-size: 100% !important; }
.f-s90{ font-size: 90% !important; }
.f-s80{ font-size: 80% !important; }
.f-s70{ font-size: 70% !important; }
.f-s60{ font-size: 60% !important; }
.f-s50{ font-size: 50% !important; }

.l-h10{ line-height: 1.0 !important; }
.l-h11{ line-height: 1.1 !important; }
.l-h12{ line-height: 1.2 !important; }
.l-h13{ line-height: 1.3 !important; }
.l-h14{ line-height: 1.4 !important; }
.l-h15{ line-height: 1.5 !important; }
.l-h16{ line-height: 1.6 !important; }
.l-h17{ line-height: 1.7 !important; }
.l-h18{ line-height: 1.8 !important; }
.l-h19{ line-height: 1.9 !important; }
.l-h20{ line-height: 2.0 !important; }

.t-l{ text-align: left !important; }
.t-c{ text-align: center !important; }
.t-r{ text-align: right !important; }
.v-t{ vertical-align: top !important; }
.v-m{ vertical-align: middle !important; }
.v-b{ vertical-align: bottom !important; }

.pos-r{ position: relative; }
.pos-a{ position: absolute; }
.pos-s{ position: static; }

.t-shadow{ text-shadow: 0 0 5px rgba(0,0,0,0.5); }

.radius{ border-radius: 3px; }

i.fa-phone-volume{ transform: rotate(-30deg); }

/*-------------------------------------------------------------------------------------*/
html { overflow-y: scroll; }

body {
  background: #fff;
  font-size: 18px;
  font-weight: 300;
  text-align: left;
  min-width: 1200px;
  font-family:  'Noto Sans JP', '游ゴシック', YuGothic, 'メイリオ', Meiryo, sans-serif;
  line-height: 1.6;
  color: #000;
  word-break: normal;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  overflow: hidden;
  position: relative;
  transition: 0.2s;
}
#frame-outer{
  position: relative;
}

.rotate{
  transform:rotateZ(0.01deg);
}

.font{ 
  font-family: 'M PLUS Rounded 1c','Noto Sans JP', '游ゴシック', YuGothic, 'メイリオ', Meiryo, sans-serif;
}
@media all and (-ms-high-contrast: none) {
  body { font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif; }
  .font{ font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif; }
}
.wrap{
  width: 1200px;
  margin:0 auto;

}
.content{
  position: relative;
  padding-bottom: 0px;
}
section {
  
}
section .section-inner{
  padding:50px 0 80px;
}
section.bg-i1{
  background-image: url(../img/bg_bk.png) ;
  background-repeat: no-repeat;
  background-position: center top;
}
section.bg-i2{
  background-image: url(../img/bg_wh.png) ;
  background-repeat: no-repeat;
  background-position: center top;
}
section.bg-i2-b .section-inner{
  background-image: url(../img/bg_wh_b.png) ;
  background-repeat: no-repeat;
  background-position: center bottom;
}

/*------------------------------------*/
.column-wrap{
  display: flex;
  -webkit-display: flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  width: 100%;
}
.column{
  width: calc(50% - 15px);
}
/*------------------------------------*/
.map {
  position: relative;
  padding-bottom: 80%;
  padding-top: 80px;
  height: 0;
  overflow: hidden;
  margin-bottom: 10px;
  
}
.map iframe,
.map object,
.map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*-------アコーディオン-------*/
dl.ac dt{
  cursor: pointer;
}
dl.ac dt:after{
  content: "";
  position: absolute;
  display: block;
  width: 8px;
  height: 8px;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
  right: 15px;
  top: 50%;
  margin-top: -6px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
dl.ac.open dt:after{
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  margin-top: 0px;
}
dl.ac dt > div{
  padding-right: 20px !important;
}

/*----------------------------------------------------------------------------------------*/
.c-ttl{
  font-size: 20px;
  font-weight: 400;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1.4;
}
  .c-ttl.line{
    padding:0 0 10px;
    border-bottom: 1px solid #333;
  }
/*----------------------------------------------------------------------------------------*/
.c-txt{
  margin-bottom: 20px;
}
  .c-txt p{
    margin-bottom: 10px;
    font-size: 15px;
  }

/*----------------------------------------------------------------------------------------*/
.c-list{
  overflow: hidden;
  margin:0 auto 60px;
  padding:0 20px;
}
  .c-list ul{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: -30px;
  }
  .c-list ul.slide{
    display: block;
  }
    .c-list ul li{
      width: 33.3%;
      box-sizing: border-box;
      padding:2px 30px;
      margin: 30px 0;
      position: relative;
    }
      .c-list ul li > a,
      .c-list ul li > div{
        text-decoration: none;
        display: block;
        height: 100%;
        position: relative;
        padding-bottom: 55px;
        box-sizing: border-box;
      }
        .c-list ul li .img-area{
          display: block;
          margin-bottom: 10px;
          position: relative;
          height: 200px;
          width: 100%;
          overflow: hidden;
        }
          .c-list ul li .img-area .img{
            position: absolute;
            display: table;
            height: 400px;
            width: 400px;
            top: calc(50% - 200px);
            left: calc(50% - 200px);
          }
            .c-list ul li .img-area .img .img-in{
              display: table-cell;
              vertical-align: middle;
              text-align: center;
            }
          .c-list ul li .img-area img{
            width: 340px;
            height: auto;
          }
        .c-list ul li .data{
          display: block;
          font-size: 15px;
        }
          .c-list ul li .data > span{
            display: block;
          }
          .c-list ul li .data .date{
            font-size: 13px;
            margin-bottom: 5px;
          }
            .c-list ul li .data .date .view{
              margin-left: 10px;
            }
          .c-list ul li .data .ttl{
            font-size: 17px;
            line-height: 1.3;
            margin-bottom: 3px;
            font-weight: 400;
          }
          .c-list ul li .data .review{
            color: #886D0C;
            font-size: 13px;
            margin-bottom: 10px;
          }
            .c-list ul li .data .review .star{
              margin-left: 10px;
            }
          .c-list ul li .data .sub{
            line-height: 1.3;
            margin-bottom: 10px;
          }
          .c-list ul li .data .cat{
            margin-bottom: 10px;
            display: flex;
            justify-content: flex-start;
            flex-wrap: wrap;
          }
            .c-list ul li .data .cat span{
              background: #000;
              color: #fff;
              font-size: 12px;
              line-height: 1.8;
              padding:0 5px;
              margin:0 5px 5px 0;
            }
        .c-list ul li .btn{
          position: absolute;
          bottom: 0;
          left: 0;
          display: block;
          text-align: center;
          background:#000;
          color: #fff; 
          font-size: 14px;
          width: 100%;
          height: 40px;
          line-height: 40px;
        }

      .c-list ul li .fav{
        width: 30px;
        height: 25px;
        position: absolute;
        top: 15px;
        right: 40px;
        cursor: pointer;
      }
      .c-list ul li .fav:hover .st0,
      .c-list ul li .fav.on .st0{
        fill:#886D0C;
      }



/*----------------------------------------------------------------------------------------*/
.c-btn{
  text-align: center;
  margin-bottom: 10px;
}
  .c-btn a,
  .c-btn button{
    text-decoration: none;
    display: inline-block;
    width: 260px;
    margin:0 20px;
    border: 1px solid #000;
    text-align: center;
    padding:10px 15px;
    cursor: pointer;
    font-size: 16px;
    background:none;
    transition: 0.2s;
  }
  .c-btn a:hover,
  .c-btn button:hover{
    opacity: 0.8;
  }
  .c-btn.wh a,
  .c-btn.wh button{
    color: #fff;
    border: 1px solid #fff;
  }
    .c-btn span.search{
      background:url(../img/ico_search.svg) no-repeat left center;
      background-size: 20px;
      padding-right: 20px;
      padding-left: 35px;
    }
/*----------------------------------------------------------------------------------------*/
.c-table{
  font-weight: 300;
  font-size: 14px;
}
  .c-table table{
    width: 100%;
    border-collapse: separate;
    border-spacing: 2px;
  }
    .c-table table th{
      background: #000;
      color: #fff;
      padding:5px 10px;
      width: 180px;
      font-weight: 300;
      vertical-align: top;
    }
    .c-table table td{
      padding:5px 10px 5px 20px;
      font-weight: 300;
      vertical-align: top;
    }

/*----------------------------------------------------------------------------------------*/
.c-dl{
  display: flex;
  justify-content: center;
}
  .c-dl dl{
    width: 370px;
    margin: 0 15px 40px;
  }
    .c-dl dl dt{
      border-bottom: 1px solid #333;
      padding:5px 0;
      margin-bottom: 15px;
      font-size: 18px;
    }
    .c-dl dl dd{
      font-size: 14px;
    }
      .c-dl dl dd li{
        margin-bottom: 10px;
      }
        .c-dl dl dd li a{
          text-decoration: none;
        }
        .c-dl dl dd li a:hover{
          text-decoration: underline;
        }



/*----------------------------------------------------------------------------------------*/
#pagetop{
  background: #000;
  color: #fff;
  text-align: center;
}
  #pagetop a{
    display: block;
    text-decoration: none;
    font-size: 14px;
    padding:10px 0;
  }
  #pagetop a span{
    display: block;
    margin:0 auto;
    position: relative;
    padding-top: 25px;
  }
    #pagetop a span::after{
      content: "";
      position: absolute;
      display: block;
      width: 10px;
      height: 10px;
      border-top: 2px solid #fff;
      border-left: 2px solid #fff;
      left: calc(50% - 6px);
      top: 15px;
      margin-top: -6px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
    }

/*----------------------------------------------------------------------------------------*/
header{
  background: #000;
  padding:10px 0;
}
  header .logo{
    width: 300px;
    margin:0 auto;
  }
/*----------------------------------------------------------------------------------------*/
footer{
  text-align: center;
  padding:40px 0 100px;
}
  footer a{
    text-decoration: none;
  }
  footer .sns{
    margin-bottom: 30px;
  }
    footer .sns ul{
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      font-size: 16px;
    }
      footer .sns ul li{
        margin:0 10px;
        width: 30px;
      }
  footer .nav{
    margin-bottom: 40px;
  }
    footer .nav ul{
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      font-size: 16px;
    }
      footer .nav ul li{
        margin:0 10px;
      }
        footer .nav ul li a:hover{
          text-decoration: underline;
        }
  footer .logo{
    width: 300px;
    margin:0 auto 30px;
  }
  footer .copy{
    font-size: 14px;
  }
/*----------------------------------------------------------------------------------------*/
.f-fix{
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #000;
  color: #fff;
  padding:10px 0 9px;
  z-index: 50;
}
  .f-fix .f-fix-btn{
    display: flex;
    justify-content: center;
  }
    .f-fix .f-fix-btn > div{
      width: calc(33.3% - 20px);
      margin:0 10px;
    }
    .f-fix .f-fix-btn a{
      display: block;
      border:1px solid #fff;
      box-sizing: border-box;
      border-radius: 5px;
      line-height: 35px;
      padding-bottom: 1px;
      text-align: center;
      text-decoration: none;
      font-size: 16px;
      cursor: pointer;
    }
    .f-fix .f-fix-btn a.c2{
      background: #886D0C;
      border:1px solid #886D0C ;
    }
      .f-fix .f-fix-btn .search{
        padding-left: 24px;
        background: url(../img/ico_search.svg) no-repeat left center;
        background-size: 20px;
      }
/*----------------------------------------------------------------------------------------*/
#search-block{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.93);
    color: #fff;
    z-index: 99;
    text-align: center;
    box-sizing: border-box;
    padding:30px;
    overflow-y: scroll;
    -webkit-backface-visibility:hidden;
}
  #search-block .area{
    margin-bottom: 30px;
  }
  #search-block .input{
    margin:0 auto 20px;
    width: 380px;
  }
    #search-block .input input{
      background: none;
      color: #fff;
      border:1px solid #fff;
      padding:10px 15px;
      font-size: 16px;
      box-sizing: border-box;
      width: 100%;
    }
  #search-block .select{
    margin:0 auto 30px;
    width: 380px;
    border:1px solid #fff;
    box-sizing: border-box;
    border-radius: 5px;
  }
    #search-block .select select{
      background: none;
      border: none;
      color: #fff;
      padding:5px 10px;
      font-size: 15px;
      box-sizing: border-box;
      width: 100%;
    }
    #search-block .select select optgroup{
      color: #000;
      background: #eee;
      font-weight: 400;
    }
    #search-block .select select option{
      color: #000;
      background: #fff;
    }
  #search-block .list{
    margin:0 auto 60px;
    width: 700px;
  }
    #search-block .list ul{
      width: 100%;
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap;
    }
      #search-block .list ul li{
        width: 33.3%;
        padding:0 5px 10px;
        box-sizing: border-box;
      }
        #search-block .list ul li a,
        #search-block .list ul li button{
          display: block;
          cursor: pointer;
          width: 100%;
          box-sizing: border-box;
          background: #fff;
          text-decoration: none;
          font-size: 13px;
          line-height: 1.5;
          padding:10px 3px;
          text-align: center;
          border:none;
          border-radius: 18px;
          color: #000;
          letter-spacing: -1px;
        }
  #search-block .close{
    text-align: center;
  }
    #search-block .close span{
      display: inline-block;
      background: url(../img/menu_close.svg) no-repeat top center;
      background-size: 50px;
      padding:40px 20px 5px ;
      cursor: pointer;
      font-size: 13px;
    }


/*---------------------------------------------------------------------------------------*/
#bread {
  padding: 10px 0px 0px;
  font-size: 12px;
  color: #333;
}
  #bread a {
    color: #000;
    text-decoration: none;
  }
  #bread a:hover {
    text-decoration: underline;
  }
  #bread span {
    margin: 0 4px 0 5px;
  }
  #bread ul {
    padding: 0 5px;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
    #bread ul li {
      display: block;
    }


/*----------------------------------------------------------------------------------------*/
#main-top{
  background: #000 url(../img/main_img.jpg) no-repeat center;
  background-size: cover;
  color: #fff;
  text-align: center;
  padding:0px 0 0;
}
  #main-top p{
    font-size: 13px;
    line-height: 1.3;
  } 
  #main-top .logo{
    width: 400px;
    max-width: 100%;
    margin:20px auto;
  }
  #main-top .gim{
    margin:30px 0 30px;
    font-size: 18px;
    line-height: 1.8;
  }
    #main-top .gim .num{
      font-size: 28px;
      font-weight: 500;
      margin-right: 5px;
    }
  #main-top .btn{
    text-align: center;
  }
    #main-top .btn > div{
      border: 1px solid #fff;
      text-align: center;
      padding:10px 30px;
      display: inline-block;
      cursor: pointer;
      font-size: 16px;
      transition: 0.2s;
    }
      #main-top .btn > div:hover{
        opacity: 0.8;
      }


/*----------------------------------------------------------------------------------------*/
.top-bottom{
  padding-top: 20px;
  margin-bottom: 80px;
  text-align: center;
}
  .top-bottom .img{
    position: relative;
    height: 680px;
    background: url(../img/main_bottom.png) no-repeat center;
    margin-bottom: 60px;
    font-size: 25px;
    font-weight: 400;
  }
    .top-bottom .img .t1{
      position: absolute;
      top: 35px;
      left: calc( 50% + 25px);
    }
    .top-bottom .img .t2{
      position: absolute;
      bottom: 32px;
      right: calc( 50% + 25px);
    }

  .top-bottom .ttl{
    font-size: 40px;
    font-weight: 400;
  }


/*----------------------------------------------------------------------------------------*/
.area-list{
  overflow: hidden;
}
  .area-list .area-list-in{
    width: calc(100% + 30px);
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .area-list dl{
    width: calc(33.3% - 30px);
    margin-right: 30px;
    margin-bottom: 15px;
  }
    .area-list dl dt{
      background: #000;
      color: #fff;
      padding: 10px 15px;
      font-size: 16px;
      position: relative;
    }
    .area-list dl dd{
      font-size: 15px;
    }
      .area-list dl dd li{
        border-bottom: 1px solid #fff;
      }
        .area-list dl dd li a{
          padding:7px 10px;
          display: block;
          color: #fff;
        }
        .area-list dl dd li a:hover{
          text-decoration: none;
        }


/*----------------------------------------------------------------------------------------*/
.condi-list{
  overflow: hidden;  
}
  .condi-list ul{
    width: calc(100% + 10px);
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
    .condi-list ul li{
      width: calc(20% - 10px);
      margin-right: 10px;
      margin-bottom: 10px;
    }
      .condi-list ul li a{
        display: table;
        background: #fff;
        text-decoration: none;
        font-size: 14px;
        line-height: 1.2;
        text-align: center;
        border-radius: 20px;
        width: 100%;
        height: 3em;
        box-sizing: border-box;
      }
      .condi-list ul li a span{
        display: table-cell;
        vertical-align: middle;
        padding:2px 10px;
      }

/*----------------------------------------------------------------------------------------*/
.list-num{
  font-size: 18px;
  margin-bottom: 15px;
  padding-left: 5px;
  position: relative;
  line-height: 32px;
}
  .list-num span{
    font-size: 28px;
    margin-left: 10px;
  }
  .list-num .btn{
    width: 130px;
    background: #000;
    color: #fff;
    text-align: center;
    font-size: 14px;
    position: absolute;
    right: 5px;
    top: 0;
    cursor: pointer;
  }
.list-sort{
  margin:0 auto 60px;
  text-align: right;
  padding-right: 5px;
}
  .list-sort select {
    width: 300px;
    padding: 3px 10px;
    border:1px solid #666;
    border-radius: 5px;
  }



/*-------------------------------------------------------------------------------------*/
.navigation {
  clear: both;
  padding: 20px 0 40px;
  position: relative;
  font-size: 14px;
  line-height: 22px;
  text-align: center;
}
  .navigation .nav-links,
  #pagination{
    display: flex;
    justify-content: center;
  }
  .navigation .current,
  .navigation a {
    display: block;
    margin: 2px 2px 2px 2px;
    padding: 8px 15px 8px 15px;
    text-decoration: none;
    width: auto;
    color: #fff;
    background: #886D0C;
    border:1px solid #886D0C;
    position: relative;
  }
  .navigation .current{
    color: #000;
    background: #fff;
    border:1px solid #999;
  }
  .navigation .dots{
    display: block;
    margin: 2px 2px 2px 0;
    padding: 8px 2px 8px 2px;
  }
  .navigation a.prev,
  .navigation a.next{
    color: #000;
    background: #fff;
    border:none;
    padding: 8px 5px 8px 5px;
  }
  .navigation svg{
    vertical-align: middle;
  }
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
}

/*-------------------------------------------------------------------------------------*/
.detail-fav{
  display: block;
  text-align: right;
  margin-bottom: 20px;
}
  .detail-fav .fav{
    display: inline-block;
    border-radius: 5px;
    /*background:#eee;*/
    text-align: center;
    cursor: pointer;
    font-size: 15px;
    padding:8px 15px;
    line-height: 28px;
    transition: 0.2s;
  }
  .detail-fav .fav svg{
    height: 28px;
    vertical-align: bottom;
    margin-left: 10px;
  }
  .detail-fav .fav::before{
    content: "お気に入り登録";
  }
  .detail-fav .fav svg .st0{
    transition: 0.2s;
  }
  .detail-fav .fav:hover svg .st0{
    fill:#886d0c;
  }

  .detail-fav .fav.on::before{
    content: "お気に入り登録済み";
  }
  .detail-fav .fav.on svg .st0{
    fill:#886d0c;
  }



.detail-area{
  display: flex;
  justify-content: space-between;
  padding:10px 0 40px;
}
.detail-area.sort{
  flex-direction: row-reverse;
}

  .detail-area .img-area{
    width:580px;
    text-align: center;
  }
    .detail-area .img-area .slick-slider{
      padding:3px 15px;
    }
  .detail-area .txt-area{
    width: 580px;
    font-size: 15px;
    line-height: 1.6;
  } 
    .detail-area .txt-area .ttl{
      font-size: 25px;
      border-bottom: 1px solid #666;
      padding: 0 0 10px;
      margin-bottom: 15px;
      font-weight: 400;
    }
    .detail-area .txt-area .review{
      color: #886D0C;
      font-size: 14px;
      margin-bottom: 10px;
    }
      .detail-area .txt-area .review .star{
        margin-left: 10px;
      }
    .detail-area .txt-area .access{
      color: #886D0C;
      margin-bottom: 15px;
    }
    .detail-area .txt-area .sub{
      font-size: 16px;
      margin-bottom: 15px;
      font-weight: 400;
    }


/*-------------------------------------------------------------------------------------*/
.course-list{
  overflow:hidden;
}
  .course-list ul{
    width: calc(100% + 40px);
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
    .course-list ul li{
      width: 580px;
      margin:20px 40px 20px 0px;
      background: #F1EFE0;
      box-sizing: border-box;
      padding:20px 15px 15px;
    }
      .course-list ul li .ttl{
        border-left: 8px solid #886D0C;
        padding-left: 5px;
        padding-bottom: 2px;
        line-height: 1.1;
        font-size: 17px;
        margin-bottom: 10px;
      }


/*-------------------------------------------------------------------------------------*/
.review-list{

}
  .review-list ul{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
    .review-list ul li{
      margin:0 25px 20px;
      background: #000;
      color: #fff;
      width: 350px;
      box-sizing: border-box;
      padding:15px 15px 30px;
      font-size: 14px;
      display: flex;
      justify-content: space-between;
    }
      .review-list ul li .ico{
        width: 50px;
      }
        .review-list ul li .ico .img{
          width: 50px;
          height: 50px;
          background: #fff url(../img/user.svg) no-repeat center;
          background-size: 52px !important;
          border-radius: 25px;
          margin-bottom: 3px;
        }
        .review-list ul li .ico .name{
          font-size: 10px;
          text-align: center;
        }
      .review-list ul li .txt{
        width: calc(100% - 65px);
      }


/*-------------------------------------------------------------------------------------*/
.tag-list{
  display: flex;
  justify-content: center;
}
  .tag-list dl{
    width: 360px;
    margin:0 20px 30px;
  }
    .tag-list dl dt{
      border-bottom: 1px solid #000;
      padding:5px 0;
      font-size: 18px;
      margin-bottom: 10px;
    }
    .tag-list dl dd{

    }
      .tag-list dl dd ul{
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
      }
        .tag-list dl dd ul li{
          border:1px solid #000;
          border-radius: 20px;
          text-align: center;
          padding:7px 3px 8px;
          font-size: 14px;
          width: calc(33.3% - 2px);
          margin:1px 1px 2px;
          box-sizing: border-box;
        }
        .tag-list dl dd ul li.wide{
          width: calc(100% - 2px);
        }
        .tag-list dl dd ul li.on{
          background:#000;
          color: #fff;
        }

/*-------------------------------------------------------------------------------------*/
.form{
  width: 900px;
  margin:0 auto;
}
  .form .form-table{
    max-width: 680px;
    margin:0 auto 20px;
  }
    .form .form-table table{
      width: 100%;
      font-size: 17px;
    }
      .form .form-table table th{
        width: 150px;
        padding:10px 10px;
        vertical-align: top;
        font-weight: 300;
      }
        .form .form-table table th div{
          padding:5px 0;
        }
      .form .form-table table td{
        padding:10px 10px 40px 20px;
        font-weight: 300;
      }
        .form .form-table table td input,
        .form .form-table table td textarea{
          width: 100%;
          border:1px solid #aaa;
          border-radius: 3px;
          padding:5px;
          font-size: 17px;
          font-weight: 300;
          box-sizing: border-box;
        }
        .form .form-table table td textarea{
          height: 150px;
        }
  .form .form-btn{
    text-align: center;
  }
    .form .form-btn a,
    .form .form-btn button,
    .form .form-btn input{
      width: 320px;
      background: #000;
      color: #fff;
      border:1px solid #000;
      padding:10px;
      cursor: pointer;
      transition: 0.2s;
    }
    .form .form-btn a:hover,
    .form .form-btn button:hover,
    .form .form-btn input:hover{
      opacity: 0.8;
    }
.form .screen-reader-response{
  background: #eee;
  padding:5px;
  text-align: center;
  margin-bottom: 40px;
  margin-top: -20px;
}
.form .wpcf7-response-output{
  background: #eee;
  padding:5px;
  text-align: center;
  margin-top: 40px;
}

/*-------------------------------------------------------------------------------------*/
.entry-date{
  font-size: 15px;
}
  .entry-date .view{
    margin-left: 15px;
  }
.entry-img{
  text-align: center;
  padding:30px 30px 0;
}
  .entry-img img{
    height: auto;
  }

.entry-body{
  padding:50px 30px 0;
  font-size: 15px;
}
  .entry-body .entry-img{
    text-align: center;
    margin-bottom: 60px;
  }
.entry-body img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 40px auto 40px;
}
.entry-body p {
    font-size: 15px;
    margin-bottom: 30px;
}
.entry-body .well {
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
}
.entry-body .well li{
  list-style: disc;
  margin-left: 20px;
  padding-left: 5px;
}
.entry-body .well p {
    margin-bottom: 0;
}
.entry-body h2{
    background: none;
    border-left: none;
    font-weight: 500;
    font-size: 18px;
    padding: 15px 0 20px;
    color: #222;
    border-top: 1px dotted #222;
}
.entry-body h3{
  font-weight: 500;
  margin-bottom: 10px;
  font-size:20px;　　/*-----宮本追加-------*/
}
  .entry-body h3 span{
    border-bottom: 1px solid #333;
  }
.entry-body .bg-lineLink{
  color: #fff;
  background-color: #00b900;
  margin-bottom: 2em;
  border-radius: 4px;
}
  .entry-body .bg-lineLink a{
    display: block;
    text-decoration: none;
    text-align: center;
    padding:10px 0;
    font-size: 16px;
    font-weight: 400;
  }
.entry-body .margin-bottom-30{
  margin-bottom: 30px;
}
/*-----------------------------------------*/
.entry-body #toc_container {
  background: #f9f9f9;
  border: 1px solid #aaa;
  padding: 10px 20px;
  margin-bottom: 1em;
  width: auto;
  display: table;
  font-size: 95%;
  line-height: 1.9;
}
.entry-body #toc_container li, 
.entry-body #toc_container ul {
  margin: 0;
  padding: 0
}
.entry-body #toc_container.no_bullets li, 
.entry-body #toc_container.no_bullets ul, 
.entry-body #toc_container.no_bullets ul li, 
.entry-body .toc_widget_list.no_bullets, 
.entry-body .toc_widget_list.no_bullets li {
  background: 0 0;
  list-style-type: none;
  list-style: none
}
.entry-body #toc_container.have_bullets li {
  padding-left: 12px
}
.entry-body #toc_container ul ul {
  margin-left: 1.5em
}
.entry-body #toc_container.toc_light_blue {
  background: #edf6ff
}
.entry-body #toc_container.toc_white {
  background: #fff
}
.entry-body #toc_container.toc_black {
  background: #000
}
.entry-body #toc_container.toc_transparent {
  background: none transparent
}
.entry-body #toc_container p.toc_title {
  text-align: center;
  font-weight: 700;
  margin: 0;
  padding: 0;
  width: calc(100% + 30px);
}
.entry-body #toc_container.toc_black p.toc_title {
  color: #aaa
}
.entry-body #toc_container span.toc_toggle {
  font-weight: 400;
  font-size: 90%
}
.entry-body #toc_container p.toc_title+ul.toc_list {
  margin-top: 1em
}
.entry-body .toc_wrap_left {
  float: left;
  margin-right: 10px
}
.entry-body .toc_wrap_right {
  float: right;
  margin-left: 10px
}
.entry-body #toc_container a {
  text-decoration: none;
  text-shadow: none
}
.entry-body #toc_container a:hover {
  text-decoration: underline
}
.entry-body .toc_sitemap_posts_letter {
  font-size: 1.5em;
  font-style: italic
}
/*-----------------------------------------*/
.entry-body .btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 30px;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
    border-radius: 4px;
    text-decoration: none;
}
.entry-body .btn-success {
  display: block;
    color: #fff;
    background-color: #cea400;
    border-color: #cea400;
}
.entry-body .btn-success:hover {
    color: #cea400;
    background-color: #fce395;
    border-color: #cea400;
}
.entry-body .btn-success.active, .entry-body .btn-success:active, .entry-body .open > .dropdown-toggle.btn-success {
    color: #fff;
    background-color: #fce395;
    border-color: #cea400;
}
.entry-body .btn-success.active.focus, .entry-body .btn-success.active:focus, .entry-body .btn-success.active:hover,
.entry-body .btn-success:active.focus, .entry-body .btn-success:active:focus, .entry-body .btn-success:active:hover,
.entry-body .open > .entry-body .dropdown-toggle.btn-success.focus, .entry-body .open > .dropdown-toggle.btn-success:focus, .entry-body .open > .dropdown-toggle.btn-success:hover {
    color: #cea400;
    background-color: #fce395;
    border-color: #cea400;
}
.entry-body .btn-success.focus, .entry-body .btn-success:focus {
    color: #fff;
    background-color: #fce395;
    border-color: #cea400;
}

/*-------------------------------------------------------------------------------------*/
/*記事要素table_CSS*/
.tablepress{
  border-collapse: collapse;
  line-height: 1.5;
  text-align: left;
  width: 100%;
  border:1px solid #CCC;
}
.tablepress th {
  background-color: #856C1E;
  box-sizing: border-box;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: normal;
  padding: 10px;
  text-align: center;
  vertical-align : middle;
  border-right: 1px solid #FFF;
}

/* th偶数番号の設定 */
.tablepress thead th:nth-child(odd) {
  background-color: #856C1E;
  border-right: 1px solid #FFF;
}
.tablepress td {
  border-right: 1px solid #CCC;
  border-top: 1px solid #CCC;
  font-size: 14px;
  padding: 10px;
  vertical-align: top;
}
.tablepress .odd td{ 
background-color: #F6F6F6;
}
.tablepress .even td{ 
background-color: #FFF;
}

.tablepress td:last-child {
  border-right: none;
}
.tablepress tbody tr:first-child td {
  border-top: none;
}

/* tr奇数番号のth設定 */
.tablepress tr:nth-child(even) th {
  background-color: #333333;
  border-bottom: 1px solid #333333;
}