.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden
  }
  
  .clearfix {
    min-height: 1px
  }
  
  * html .clearfix {
    height: 1px
  }
  
  #content {
    padding: 0 0 65px
  }
  
  @media screen and (max-width: 768px) {
    #content {
      padding: 0 0 2em
    }
  }

  /* 共通 */

  .fooddrive{
    padding-bottom: 2em;
  }
  .fooddrive .common {
    margin: 2em 65px 6em 65px;
  }
  
  @media screen and (max-width: 768px) {
    .fooddrive .common {
      margin: 2em 10px 4em 10px;
    }
  }

  .fooddrive h3 {
    padding-left: 50px;
    margin: 1em 65px;
    letter-spacing: 0;
    background: url(../img/com/icon_fooddrive.png) no-repeat top left;
    background-size: 43px 36px;
  }
  
  .fooddrive h3 span {
    display: inline-block;
  }

  .fooddrive h4 {
    margin-top: 4em !important;
  }

  .fooddrive h4:first-child {
    margin-top: 0 !important;
  }

  .fooddrive a.pdf_link{
    display: inline-block;
    background: url(../img/fooddrive/file-pdf.png) no-repeat left top / contain;
    padding-left: 2.3em;
    margin-top: 1.5em;
  }
  .fooddrive a.zip_link{
    display: inline-block;
    background: url(../img/fooddrive/file-zip.png) no-repeat left top / contain;
    padding-left: 2.3em;
    margin-top: 1.5em;
  }



.fooddrive .pc { display: block !important; }
.fooddrive .sp { display: none !important; }
 
@media only screen and (max-width: 768px) {
  .fooddrive .pc { display: none !important; }
  .fooddrive .sp { display: block !important; }
}
  
  
  @media screen and (max-width: 768px) {
    .fooddrive h3 {
      margin: .4em;
    }
  }
  
  /* ボタン */

  .fooddrive img + ul.btn_area {
    padding: 4em 0 2em 0;
  }

  .fooddrive ul.btn_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 65px;
    padding: 2em 0;
  }
  
  
  .fooddrive .fooddrive_btn {
    border-radius: 6px;
    background-color: #3E956B;
    width: calc(98% / 2);
    position: relative;
    display: flex;
  }
  
  .fooddrive .fooddrive_btn a,
  .fooddrive button.fooddrive_btn {
    border-radius: 6px;
    background-color: #00733C;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    font-size: 1.7rem;
    padding: 1em;
    font-weight: bold;
    width: 100%;
    line-height: 1.2;
    text-align: center;
    -webkit-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px)
  }
  
  .fooddrive .fooddrive_btn a:hover,
  .fooddrive .fooddrive_btn.active a,
  .fooddrive button.fooddrive_btn:hover {
    -webkit-transform: translateY(0) !important;
    transform: translateY(0) !important;
    opacity: 1
  }
   
  .fooddrive .fooddrive_btn.active {
    background-color: #9DC669;
  }
  
  .fooddrive .fooddrive_btn.active a {
    background-color: #7BB537;
  }
  
  .fooddrive .fooddrive_btn span {
    display: inline-block;
  }

  .fooddrive div.fooddrive_btn.orange{
    width: 100%;
    padding: 0 20px;
    background-color: transparent;
  }
  .fooddrive button.fooddrive_btn.orange,
  .fooddrive div.fooddrive_btn.orange a{
    max-width: 250px;
    display:table;
    margin: 2em auto 0 auto !important;
    background-color: #F3AF00;
    border-bottom: 7px solid #F5C23E;
  }

  .fooddrive button.fooddrive_btn.orange:hover{
    border-bottom: 7px solid transparent;
  }

 
  @media screen and (max-width: 768px) {
    .fooddrive ul.btn_area {
        margin: 0 10px;
        padding: 0 0 2em 0;
    }
    .fooddrive .fooddrive_btn a {
        font-size: 15px;
        font-size: 1.5rem;
      }
  }

  /* @media screen and (max-width: 420px) {
    .fooddrive .fooddrive_btn span {
      font-size: 15px;
      font-size: 1.5rem;
    }
  } */
  

  /* 新着情報 */

  .fooddrive_news_box{
    height: 20em;
    overflow-y:scroll;
    padding: 0.5em 1.5em;
    border: 1px solid #f5f5f5;
    margin-top: 1em;
  }


  .fooddrive .fooddrive_news {
    /* padding-bottom: 105px; */
    position: relative
  }
  
  .fooddrive .fooddrive_news h4 {
    margin-bottom: 0 !important
  }
  
  .fooddrive .fooddrive_news a.fooddrive_news_list {
    position: absolute;
    top: 15px;
    right: 10px;
    z-index: 6
  }
  
 
  .fooddrive .fooddrive_news ul li {
    border-bottom: 1px dashed #CCCCCC;
    padding: 15px 7px
  }
  
  .fooddrive .fooddrive_news ul li a {
    display: block;
    position: relative
  }
  
  .fooddrive .fooddrive_news ul li a::before {
    content: "";
    display: block;
    background: url(../img/fooddrive/arrow_green.png) 100%/100% no-repeat;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }
  
  .fooddrive .fooddrive_news ul li a .date {
    padding: 0 35px 0 20px
  }


/* .fooddrive-windowlink{
  display: flex;
  margin-top: 1.5em;
  justify-content: space-between;
  text-align: center;
}

.fooddrive-windowlink figure{
  padding: 1.5em 3em;
  border: 1px solid #f5f5f5;
  border-radius: 5px;
  box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.1);
}

.fooddrive-windowlink li{
  width: 48%;
}

.fooddrive-windowlink li span{
  font-weight:bold;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1;
  display: inline-block;
  margin-top: 1.2em;
  padding-left: 1em;
  background: url(../img/fooddrive/list_arrow.png) no-repeat 0 top / auto 0.8em;
  transition: all 0.1s ease-in-out;
}

.fooddrive-windowlink li a:hover figure{
  box-shadow: 0px 0px 16px -6px rgba(0,0,0,0);
}

.fooddrive-windowlink li a:hover span{
  background: url(../img/fooddrive/list_arrow.png) no-repeat 0.2em top / auto 0.8em;;
  transition: all 0.1s ease-in-out;
} */



  
  @media screen and (max-width: 768px) {
    .fooddrive .fooddrive_news {
      padding-bottom: 2em
    }
    /* .fooddrive-windowlink li span{
      font-size: 17px;
      font-size: 1.7rem;
    } */
  }
  
  @media screen and (max-width: 640px) {
    .fooddrive .fooddrive_news ul li a::before {
      top: 7px;
      -webkit-transform: translateY(0);
      transform: translateY(0)
    }
    .fooddrive .fooddrive_news ul li a .date {
      display: block
    }
    /* .fooddrive-windowlink{
      display: block;
      text-align: center;
    }
    .fooddrive-windowlink li{
      width: 80%;
      margin:2em auto 0 auto;
    }
    .fooddrive-windowlink li span{
      font-size: 15px;
      font-size: 1.5rem;
    } */
  }



  .fooddrive-about figure{
    /* float: right; */
    /* width: 40%; */
    /* margin-left: 5%; */
    max-width: 720px;
    margin: 0 auto;
    margin-bottom: 2em;
  }

  .fooddrive-about .arw_link{
    background: url(../img/fooddrive/list_arrow.png) left center no-repeat;
    background-size: auto 60%;
    padding-left: 1.3em;
    cursor: pointer;
    margin-top: 1.5em;
    display: inline-block;
  }
  .fooddrive-about .arw_link:hover{
    background-position: 0.3em center;
  }

  @media screen and (max-width: 768px) {
    .fooddrive-about figure{
      float:none;
      width: 100%;
      max-width: 420px;
      margin: 0 auto 1em auto;
    }
  }
 

  /* フィルタリング */

  .fooddrive .form-title{
    position: relative;
    display: block;
    font-size: 20px !important;
    font-weight: bold;
    border-bottom: 1px solid #c5c5c5;
    padding: 0 0 0.6em 1em;
    margin: 2em 0 0 0;
    cursor: pointer;
  }

  .fooddrive .form-title::after {
    content: "";
    border: 2px solid;
    border-color: transparent transparent #F3AF00 #F3AF00;
    display: block;
    width: 15px;
    height: 15px;
    position: absolute;
    right: 10px;
    top: 25%;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }

  .fooddrive .form-title.off::after {
      top: 0%;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
  }

  .fooddrive .inner_area {
    background-color: #fef7e5;
    padding: 45px 40px 45px;
    overflow: hidden;
  }
  
  .fooddrive .inner_area ul li p {
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 25px
  }
  
  .fooddrive .inner_area ul li ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  
  .fooddrive .inner_area ul li ul li {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 30px 15px 0;
  }

  .fooddrive .inner_area label {
    cursor: pointer;
  }
  
  .fooddrive .inner_area ul li ul li:last-child {
    margin-right: 0;
  }
  
  .fooddrive .inner_area ul li ul.sentence {
    display: block;
    margin-top: 15px;
  }
  
  .fooddrive .inner_area ul li ul.sentence li {
    padding-left: 1em;
    text-indent: -1em;
  }
  
  .fooddrive .inner_area ul li:not(:first-child) p {
    margin-top: 50px;
  }


 

  @media screen and (max-width: 768px) {
    .fooddrive .inner_area {
      margin-bottom: 2em;
      padding: 25px 10px 2em
    }
    .fooddrive .inner_area ul li p {
      margin-bottom: 15px
    }
    .fooddrive .inner_area ul li ul li {
      margin-right: 15px
    }
    .fooddrive .inner_area ul li ul li.sentence_hd {
      margin-right: 0
    }
    .fooddrive .inner_area ul li ul.sentence li {
      margin-right: 0
    }
    .fooddrive .inner_area ul li:not(:first-child) p {
      margin-top: 2em
    }
  }

  /* テーブル */

  .fooddrive table{
    width: 100%;
    margin-top: 3em;
  }

  .fooddrive table tr.result_midashi th {
    border-right: 1px solid #fff;
    background-color: #7BB537;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 12px 20px;
  }
.fooddrive table tr.result_midashi th:first-child{width:7em}
.fooddrive table tr.result_midashi th:last-child{width:10em}

  .fooddrive table th {
    font-weight: bold;
    vertical-align: top;
    padding: 20px;
  }

  .fooddrive table tr.result_date {
    border-top: 1px solid #fff;
  }
  
  .fooddrive table tr.result_date td {
    border-right: 1px solid #fff;
    padding: 20px;
    vertical-align: top;
  }
  
  .fooddrive table tr.result_date td a {
    display: block;
    position: relative;
    text-decoration: underline;
    padding-left: 16px;
  }
  
  .fooddrive table tr.result_date td a::before {
    content: "";
    display: block;
    background: url(../img/fooddrive/arrow_green.png) 100%/100% no-repeat;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 6px;
    left: 0px;
  }

  
  .fooddrive table tr.result_date:nth-of-type(odd) {
    background-color: #F8FBF5
  }
  
  .fooddrive table tr.result_date:nth-of-type(even) {
    background-color: #F2F8EC
  }


  .fooddrive .swipe-img {
    display: none;
    position: relative;
    top: 0;
    margin-bottom: 1em;
    padding-left: 45px;
    width: 100%;
    height: 40px;
    line-height: 40px;
    vertical-align: middle;
    background: url(../img/fooddrive/sw_mov.gif) no-repeat left center / auto 40px;
  }
  

  @media screen and (max-width: 640px) {
    .fooddrive .sc_table {
      position: relative;
      width: 100%;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      overflow-scrolling: touch
    }
    .fooddrive .sc_table {
      position: relative;
      width: 100%;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      overflow-scrolling: touch;
    }
    .fooddrive table {
      margin-top: 0;
      width: 700px;
    }
    .fooddrive .swipe-img {
      display: block;
    }
  }


  /* ページネーション */

  .fooddrive .result_page {
    margin: 70px auto;
    max-width: 275px;
    width: 90%;
  }
  
  .fooddrive .result_page ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  
  .fooddrive .result_page ul li {
    border: 1px solid #ccc;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
  }
  
  .fooddrive .result_page ul li.active {
    border: none;
    background-color: #C7DF00;
  }
  
  .fooddrive .result_page ul li.prev, .fooddrive .result_page ul li.next {
    border: 1px solid;
    border-color: transparent transparent #7BB537 #7BB537;
    margin-top: 0.2em;
    width: 13px;
    height: 13px;
  }
  
  .fooddrive .result_page ul li.prev {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  
  .fooddrive .result_page ul li.next {
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  
  .fooddrive .result_page ul li a {
    display: block;
    font-size: 12px;
    font-size: 1.2rem;
    width: 100%;
    height: 100%;
  }


  /* calendar */

.day-button{
  text-align: right;
  margin-bottom: -1.3em;
  margin-top: 3em;
}

.day-button button{
  border: 1px solid #DEDEDE;
  background-color: #FBFBFB;
  padding: 0.5em 1em;
  color: #000;
  border-radius: 5px;
  font-size: 13px;
  font-size: 1.3rem;
}
.calendar table{
  margin-top: 0;
  width: 100% !important;
}

.calendar caption{
  font-weight: bold;
  margin-bottom: 0.5em;  
}

.calendar th,.calendar td{
  vertical-align:top;
  border: 1px solid #DEDEDE;
  width: calc(100% / 7);
}

.calendar th{
  background-color: #FBFBFB;
  text-align: center;  
  padding: 0.8em 1em !important;
  border-bottom-width: 2px;
}

.calendar .sun{
  background-color: #FBEEE7;
  color:#C75E26;
}


.calendar .sat{
  background-color: #E7EAF9;
  color: #5A6DC9;
}

.calendar .date{
  padding: 0.8em 1em 0 1em;
  margin-bottom: 0.5em;
}
.calendar .schedule{
  padding: 0 1em 0.8em 1em;
}

.calendar .date span{
  display: none;
}

.calendar a{
  display: inline-block;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.3;
  margin-top: 0.5em;
  text-decoration:underline;
  color:#00733C;
}
.calendar a:first-child{
  margin-top: 0;
}
.calendar a:hover{
  text-decoration:none;
}


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

  .calendar thead{
    display: none;
  }

  .calendar th,.calendar td{
    float: left;
    display: block;
    width: 100%;
    font-size: 13px;
    font-size: 1.3rem;
    display: flex;
    margin-top: -1px;
  }
  .calendar .date {
    width: 5em;
    text-align: right;
    padding-right: 1em;
    margin-bottom: 0;
  }
  .calendar .date span{
    display: inline-block;
    margin-left: 0.5em;
  }

  .calendar .date,.calendar .schedule{
    padding: 0.8em 1em 1em 1em;
  }  

  .calendar .schedule{
    width: calc(100% - 5.5em);
  }

  .calendar a{
    width: 100%;
    display: block;
  }
  .day-button{
    margin-bottom: -1.5em;
  }
  .day-button button{
    font-size: 11px;
    font-size: 1.1rem;
  }

}


/* イベント一覧 */

.food-event-list li{
  border-bottom: 1px dashed #ccc;
  padding-bottom: 3em;
  margin-top: 3em;
  display: flex;
  width: 100%;
}

.food-event-list li figure{
  order: 2;
  padding-left: 2em;
  width: 40%;
}

.food-event-list li strong{
  color: #7bb537;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  display: block;
  margin-bottom: 0.8em;
}

.food-event-list div.food-event-date{
  width: 100%;
}

.food-event-list li figure + div.food-event-date{
  width: 60%;
}

.food-event-list li span{
  background-color: #c4d706;
  color: #fff;
  border-radius: 3px;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.2;
  padding: 0.2em 0.5em;
  margin-right: 0.5em;
  width: 6em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.food-event-list .food-event-time,
.food-event-list .food-event-txt{
  width: 100%;
  display: flex;
}

.food-event-list li time,
.food-event-list li b{
  width: calc(100% - 6.5em);
  line-height: 1.4;
}

.food-event-list div{
  margin-top: 0.5em;
}
.food-event-list p{
  margin-top: 1em;
  line-height: 1.6;
  font-size: 16px;
  font-size: 1.6rem;
}



@media screen and (max-width: 768px) {
  .food-event-list li{
    padding-left:20px;
    padding-right:20px;
    flex-wrap: wrap;
  }
  .food-event-list li figure{
    width: 100%;
    padding-left: 0;
    margin-top: 2em;
  }

  .food-event-list li figure + div.food-event-date{
    width: 100%;
  }
}

/* レポート */
.report-year{
  text-align: center;
}

.report-year select{
  border-radius: 5px;
  padding: 0.8em 3em;
  cursor: pointer;
}


/* page */


.fooddrive dl.shop_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.fooddrive dl.shop_info dt, .fooddrive dl.shop_info dd {
  border-bottom: 1px solid #fff;
  padding: 12px 20px
}

.fooddrive dl.shop_info dt {
  width: 30%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #7BB537;
  border-right: 1px solid #fff;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold
}

.fooddrive dl.shop_info dd {
  width: 70%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.fooddrive dl.shop_info dd:nth-of-type(odd) {
  background-color: #F2F8EC
}

.fooddrive dl.shop_info dd:nth-of-type(even) {
  background-color: #F8FBF5
}


@media screen and (max-width: 640px) {
  .fooddrive dl.shop_info dt {
    width: 100%;
    display: block
  }
  .fooddrive dl.shop_info dd {
    width: 100%;
    display: block
  }
  .fooddrive dl.effort dd {
    margin: -.2em 0 20px;
    padding-top: 0;
    line-height: 1.5em
  }
  .fooddrive .fooddrive_btn {
    margin-top: 2em
  }
}

/*--add--*/
.fooddrive a.pdf_link,.fooddrive a.zip_link,.fooddrive-about .arw_link{font-size:1.4em}
.fooddrive_btn+.fooddrive_btn{background-color:#94d4f1}
.fooddrive_btn+.fooddrive_btn.active a{background-color:#57c1f1}
.fooddrive_btn+.fooddrive_btn a{background-color:#2196f3}
.fooddrive .fooddrive_btn a, .fooddrive button.fooddrive_btn{font-size:2.4rem}