@charset "utf-8";
/* CSS Document */

/*緊急情報*/
#emergency {
  background: #cd1836;
  padding: 4px 12px;
  font-size: 100%;
}
#emergency div.text {
  background-color: #fff;
  border-radius: 4px;
  padding: 10px;
  margin-top: 6px;
}
#emergency h2 {
  font-size: 130%;
  width: 100%;
  color: #fff;
}
#emergency .inner {
  clear: both;
  float: none;
  margin: 0 auto;
  padding: 5px;
  font-size: 87.5%;
}
#emergency .inner li {
  border-bottom: 1px dotted #aaa;
  padding: 10px 0px;
}
#emergency .more a::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin: 0 10px 0 0;
  border: solid #333;
  border-width: 2px 2px 0 0;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
}
#emergency p.more {
  margin: 6px 0 6px 0px;
  padding-top: 10px;
}

/* weather */
#weather {
  background: #FFF19B;
  padding: 4px 12px;
  font-size: 100%;
}
#weather div.text {
  background-color: #fff;
  border-radius: 4px;
  padding: 10px;
  margin-top: 6px;
}
#weather h2 {
  font-size: 130%;
  width: 100%;
}
#weather .inner {
  clear: both;
  float: none;
  margin: 0 auto;
  padding: 5px;
  font-size: 87.5%;
}
#weather .more a::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin: 0 10px 0 0;
  border: solid #333;
  border-width: 2px 2px 0 0;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
}
#weather p.more {
  margin: 6px 0 6px 0px;
  padding-top: 10px;
}

/* disaster */
#disaster {
  background: #F7F6E8;
  padding: 10px 12px;
  font-size: 100%;
}
#disaster div.text {
  background-color: #fff;
  border-radius: 4px;
  padding: 10px;
  margin-top: 6px;
}
#disaster h2 {
  font-size: 130%;
  width: 100%;
}
#disaster .inner {
  border: 2px solid #AC2A02;
  border-radius: 6px;
  font-size: 87.5%;
  margin: 0 auto;
  padding: 5px;
}
#disaster .inner li {
  border-bottom: 1px dotted #aaa;
  padding: 10px 0px;
}
#disaster .more a::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin: 0 10px 0 0;
  border: solid #333;
  border-width: 2px 2px 0 0;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
}
#disaster p.more {
  margin: 6px 0 6px 0px;
  padding-top: 10px;
}

/* 一覧ページ「もっと見る」リンクアイコン調整 */
.main a.btn_more::before {
  content: url(/exis/img/ico_arr_01.png);
}

@media screen and (min-width:671px) {
  #emergency .inner,
  #weather .inner,
  #disaster .inner {
    width: 1050px;
    margin: 0 auto;
  }
  
  #emergency h2,
  #weather h2,
  #disaster h2 {
    float: left;
    width: 15%;
    padding-top: 6px;
  }
  
  #emergency .text,
  #weather .text,
  #disaster .text {
    float: left;
    width: 85%;
  }
}

/*header*/
.park_name {
  padding: 1em 3.2em 1em .5em;
}

.park_name a {
  font-weight: bold;
  font-size: 160%;
  color: #222;
  text-decoration: none;
  position: relative;
  padding-left: 30px;
  display: inline-block;
}

.park_name a::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: .2em ;
  width: 26px;
  height: 26px;
}

.park_name span {
  display: block;
  font-size: 70%;
}

@media screen and (max-width:350px) {
  .park_name a {
    font-size: 150%;
  }
}

.search_btn {
  font-size: 70%;
  background-size: 1.3em;
  background-position: center 3px;
  padding-top: 20px;
}

.search_txt {
  height: 2.3em;
}

.site_search form {
  display: flex;
  justify-content: space-between;
  margin: 0 1em;
}

/* js無効時nav */
.nav {
  display: flex;
  flex-wrap: wrap;
}

.nav li {
  padding: 0 .5em .5em;
}

.nav li:not(:last-child) {
  border-right: 2px dotted #222;
}

.assist {
  margin-bottom: 1em;
}

.assist a {
  font-size: 80%;
  text-decoration: none;
  color: #222;
}

/* 通常nav */
@media screen and (max-width:670px) {
  .menu_close {
    display: none;
  }

  .menu_btn {
    position: fixed;
    top: 5px;
    right: 5px;
    z-index: 3;
    font-size: 50%;
    width: 5.5em;
    height: 5.5em;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    background-color: #ffd670;
    color: #222;
    text-decoration: none;
    line-height: 1.5em;
    padding-bottom: .8em;
    z-index: 300;
  }

  .menu_btn::before,
  .menu_btn::after {
    content: "";
    display: block;
  }

  .menu_btn::before,
  .menu_btn::after,
  .menu_off .menu_border {
    width: 1.5em;
    border-top: 2px solid #222;
  }

  .menu_btn.menu_off::before,
  .menu_btn.menu_off::after,
  .menu_off .menu_border {
    margin-bottom: 3px
  }

  .menu_btn.menu_on::before,
  .menu_on.menu_on::after {
    position: absolute;
    top: 2em;
    left: 0;
    right: 0;
    margin: auto;
  }
  .menu_btn.menu_on::before {
    transform: rotate(45deg);
  }
  .menu_on.menu_on::after {
    transform: rotate(-45deg);
  }

  .menu_on .menu_border {
    display: none;
  }

  .menu_btn span:last-child {
    order: 1;
  }

  .menu_open {
    position: fixed;
    right: 0;
    display: block;
    width:  13em;
    max-width: 100%;
    z-index: 200;
    top: 3.5em;
  }
  
  .menu_open.header_sub {
    border: 1px solid #949494;
    border-bottom: none;
    background: #fff;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
  }
  
  .menu_open .head_search {
    padding: .5em;
  }
  
  .menu_open form {
    margin: 0 0 1em;
  }

  .menu_open.nav {
    top: 9em;
    border-left: 1px solid #949494;
    border-right: 1px solid #949494;
    border-top: 2px dotted #949494;
    background: #fff;
    overflow: hidden;
  }

  .nav.menu_open li {
    width: auto;
    border-right: none;
    padding: 0;
  }

  .menu_open.nav li {
    border-bottom: 2px dotted #949494;
  }

  .menu_open.nav a {
    background: none;
    padding: .5em 0;
    display: block;
    text-align: center;
    color: #222;
    text-decoration: none;
  }

  .menu_open .assist {
    position: absolute;
    top: 21em;
    padding: 1.2em .5em .5em;
    background-color: #fff;
    border: 1px solid #949494;
    border-top: none;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    width: 100%;
  }

  .assist .close_btn {
    text-align: center;
    font-size: 1.2em;
    margin-top: .5em;
  }
  .assist .close_btn::before {
    content: "×";
    padding-right: 0;
  }
}

/*main*/
.main {
  margin: 0 1em 1em;
}

.breadcrumbs {
  font-size: 90%;
  color: #333;
  background: url(/exis/img/breadcrumbs_ico.png) no-repeat left center;
  padding-left: 20px;
  margin-bottom: 2.5em;
}

.main .breadcrumbs a::before {
  content: none;
}

.main h1 {
  font-size: 150%;
  line-height: 1.5em;
  margin-bottom: 1.5em;
}

.main h2 {
  font-size: 130%;
  line-height: 1.5em;
  border-radius: 5px;
  margin-bottom: 1.5em;
  padding: .5em;
  background-color: #eee;
}

.main h3 {
  font-size: 115%;
  padding-bottom: .5em;
  border-bottom: 4px solid #eee;
  margin-bottom: 1em;
}

/*段落・リスト*/
.main > p,
.main > ul,
.main > ol,
.main > dl,
.main table {
  margin-bottom: 3em;
}

.disc {
  list-style: disc;
  margin-left: 1.2em;
}

.main .decimal {
  list-style-type: decimal; 
  margin-left: 1.2em;
}

.main li {
  margin-bottom: .5em;
}

.main dl {
  display: flex;
  flex-wrap: wrap;
}

.main dt {
  width: 6em;
  padding-right: 1em;
}

.main dd {
  width: calc(100% - 6.5em);
  border-left: 2px dotted;
  padding-left: 1em;
  margin-bottom: 1em;
}

.main .dataList::before,
.main .dataList::after {
  content: none;
}

.main .txtindent {
  text-indent: 1em;
}

/*強調*/
.main strong {
  font-weight: bold;
}

.main em {
  color: #ae1717;
  font-style: normal;
}

/*テーブル*/
.main table {
  width: 100%;
  border: 2px solid;
  border-collapse: collapse;
  table-layout: fixed;
}

.main caption {
  text-align: left;
  font-weight: bold;
}

.main th {
  font-weight: bold;
  text-align: center;
  border: 2px solid;
  padding: .5em;
  vertical-align: middle;
}

.main td {
  text-align: left;
  border: 2px solid;
  padding: .5em;
  vertical-align: middle;
}

/*画像配置*/
.center,
.imgLeftS,
.imgLeftM,
.imgRightS,
.imgRightM,
.imgAllS,
.imgAllM {
  margin-bottom: 2em;
}

.main figure {
  margin-bottom: 1.5em;
  text-align: center;
  font-size: 90%;
}

.main .figcaption {
  padding: 0 1em;
}

.main figure img {
  margin-bottom: 1em;
}

.imgLeftS::before,
.imgLeftS::after,
.imgLeftM::before,
.imgLeftM::after,
.imgRightS::before,
.imgRightS::after,
.imgRightM::before,
.imgRightM::after,
.imgAllS::before,
.imgAllS::after,
.imgAllM::before,
.imgAllM::after {
    content: none;
}

.imgLeftS,
.imgRightS {
  display: flex;
  justify-content: space-between;
}

.imgLeftS div,
.imgRightS div,
.imgAllS > div,
.imgAllM > div {
  width: 48%;
}

.imgRightS .imgBox {
  order: 1;
}

.imgAllS,
.imgAllM {
  display: flex;
  flex-wrap: wrap;
}

.imgAllS > div:nth-child(2n),
.imgAllM > div:nth-child(2n) {
  margin-left: 4%;
}

/*Q&A*/
.main .qa > dt,
.main .qa > dd {
  width: 100%;
  display: flex;
  align-items: baseline;
}

.main .qa > dt {
  padding: 0;
  margin-bottom: 1em;
  font-weight: bold;
}

.main .qa > dd {
  border-left: none;
  padding: 1em;
  margin-bottom: 2em;
  background-color: #f8f8f8;
  border-radius: 5px;
}

.main .qa > dt p:first-child,
.main .qa dd > p:first-child {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  margin-right: .5em;
  flex-shrink: 0;
}

.main .qa > dt p:first-child {
  background: url(/exis/img/question.png) .5em 3px no-repeat;
  width: 30px;
  height: 20px;
}

.main .qa dd > p:first-child {
  background: url(/exis/img/answer.png) .5em 3px no-repeat;
  width: 30px;
  height: 20px;
}

.main .qa dd > div {
  width: calc(100% - 30px);
}

.qa div p:not(:last-child),
.qa div ul:not(:last-child),
.qa div ol:not(:last-child),
.qa div dl:not(:last-child) {
  margin-bottom: 1.5em;
}

.main .qa dd dl {
    display: block;
}

.main .qa dd dt {
    width: 100%;
    margin-bottom: .5em;
}

.main .qa dd dd {
    width: auto;
}

/*
.main .external:last-child {
  margin-bottom: 2em;
  display: block;
}
*/

/*リンク*/
.external {
  color: #222;
}

p .external {
/*  margin-bottom: .5em; */
  display: inline-block;
}

.main a::before {
  content: url(/exis/img/ico_arr_03.png);
  display: inline-block;
  padding-right: .5em;
}

.link_btn a {
  border: 3px solid #eee;
  display: block;
  width: 100%;
  padding: 1em 0;
  text-align: center;
  border-radius: 2em;
  color: #222;
  text-decoration: none;
  background-color: #fff;
}

/*問い合わせ*/
#contact {
  border-width: 2px;
  border-style: solid;
  border-color: #ffba47;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  overflow: hidden;
}

#contact h2 {
  border-radius: 0;
}

#contact p {
  margin: 0 1em .3em;
}

#contact form {
  margin: 1em;
}

#contact .btn_to_contact {
  background-color: #ffba47;
  display: block;
  width: 100%;
  padding: .5em 0;
  border-radius: 5px;
  font-weight: bold;
  text-decoration: underline;
}

#contact ul {
  margin: 0 1em 1em;
}

#contact li {
  background: url(/exis/img/ico_arr_01.png) no-repeat left center;
  padding-left: 20px;
}

#contact a {
  color: #333;
  margin: 0 0 1.5em 1em;
  display: block;
}

/*おすすめ*/
.recommend {
  background-color: #ffffea;
  padding: 8em 0 1em;
  font-size: 90%;
  margin-top: 8em;
  position: relative;
  border-top: 6px solid #fde884;
}

.recom_ttl::before {
  content: url(/exis/img/recommend_bg01.png);
  position: absolute;
  left: .3em;
  top: 8px;
}
.recom_ttl::after {
  content: url(/exis/img/recommend_bg02.png);
  position: absolute;
  right: 0;
  top: 2px;
}

.recom_ttl {
  text-align: center;
  font-weight: bold;
  position: absolute;
  top: -3.4em;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 1;
}

.recom_ttl p::before,
.recom_ttl p::after {
  content: url(/exis/img/recom_ttl_bg.png);
  position: absolute;
  display: block;
  width: 33px;
  height: 42px;
  top: -1.5em;
}

.recom_ttl p::before {
  left: calc(50% - 7em);
  transform: rotate(-70deg);
}

.recom_ttl p::after {
  right: calc(50% - 7em);
}

.recom_ttl p {
  margin-bottom: .5em;
}

.recom_ttl h2 {
  font-size: 160%;
  line-height: 1.5em
}

.recom_ttl span {
  display: block;
}

.recom_inner div {
  background-color: #fff;
  position: relative;
  margin-bottom: 4em;
}

.recom_inner div::before {
  position: absolute;
  right: .5em;
  top: -1.5em;
}

.recom_play::before {
  content: url(/exis/img/recom_play_bg.png);
}
.recom_get::before {
  content: url(/exis/img/recom_get_bg.png);
}
.recom_plants::before {
  content: url(/exis/img/recom_plants_bg.png);
}
.recom_movie::before {
  content: url(/exis/img/recom_movie_bg.png);
}
.recom_inner .recom_events::before {
  top: -2.5em;
  content: url(/exis/img/recom_event_bg.png);
}
.recom_news::before {
  content: url(/exis/img/recom_news_bg.png);
}

.recommend h3 {
  position: absolute;
  top: -2.5em;
  left: 1em;
}

.recommend h3 span {
  display: block;
  font-size: 125%;
  color: #826b04;
}

.recom_list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1em;
  padding: 2em 1em 1em;
}

.recom_list li {
  width: 48%;
}

.recom_list a {
  color: #222;
  text-decoration: none;
}

.recom_list img {
  border-radius: 3px;
  margin: 0 auto .5em;
  display: block;
}

.recom_spot {
  border-radius: 3px;
  margin-bottom: .5em;
  font-weight: bold;
  padding: .5em;
  text-align: center;
}

.news_list {
  padding: 2em 1em 1em;
}
.news_list li {
  margin-bottom: 1em;
}

.news_list a {
  display: flex;
  align-items: flex-start;
  color: #222;
  text-decoration: none;
}

.news_list img {
  flex-shrink: 0;
  margin-right: 1em;
  width: 80px;
  border-radius: 3px;
}

.news_detail_wrap {
  order: 1;
  width: calc( 100% - 80px - 1em );
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}

.news_date {
  align-self: flex-start;
  padding: .1em 0;
  font-size: 95%;
}

.news_spot {
  align-self: flex-end;
  padding: .1em 1em;
  border-radius: 3px;
  min-width: 10em;
  text-align: center;
  font-size: 95%;
}

.news_spot span {
  display: block;
  font-size: 80%;
}

.news_detail {
  width: 100%;
  font-weight: bold;
  text-decoration: underline;
  margin-top: .5em;
}

.recommend > div:last-child {
  margin-bottom: 0;
}

.enq {
  margin-top: 5em;
  background-color: #f8f8f8;
  padding: 3em 1em 2em;
  position: relative;
}

.enq h2 {
  position: absolute;
  text-align: center;
  top: -1.5em;
  width: 12em;
  max-width: 100%;
  left: 0;
  right: 0;
  margin: 0 auto;
  font-size: 125%;
  line-height: 1.5em;
}

.enq h2 span,
.enq legend span {
  display: block;
}

.enq h2::before,
.enq h2::after {
  content: "";
  width: 3px;
  height: 2em;
  display: block;
  position: absolute;
  background-color: #d8d8d8;
  top: .5em;
}

.enq h2::before {
  left: 0;
  transform: rotate(-30deg);
}
.enq h2::after {
  right: 0;
  transform: rotate(30deg);
}

.enq fieldset {
  display: block;  
}

.enq legend {
  font-size: 120%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
  display: block;
  width: 100%;
}

.enq .radio {
  display: flex;
  justify-content: space-around;
  margin: 0 auto 1em;
  align-items: flex-start;
  flex-direction: column-reverse;
/*  max-width: 22em;*/
  width: 8.5em;
  padding-left: 3em
}

.enq .radio::before,
.enq .radio::after {
  display: inline-block;
}

.enq .radio::before {
  content: url(/exis/img/enq_bad.png);
}
.enq .radio::after {
  content: url(/exis/img/enq_good.png);
}

.enq .radio span {
  position: relative;
}
.enq .radio span:not(:last-child)::before {
  content: "";
  display: block;
  width: .4em;
  height: 2.8em;
  background-color: #787878;
  position: absolute;
  left: .85em;
  top: -1.2em;
}

.enq .radio label {
  display: flex;
/*  flex-direction: column;*/
  align-items: center;
  padding-left: 2.5em;
  position: relative;
/*  width: 4em;*/
  font-size: .8em;
  height: 4em;
  margin-left: .3em
}


.enq .radio label::before {
  content: "";
  /* color: #e2e2e2;
  font-size: 2.4em; */
  display: block;
  position: absolute;
  left: 0;
/*
  top: calc(.3em / 2.4);
  left: calc(50% - .9em);
*/
  width: 1.8em;
  height: 1.8em;
  background-color: #fff;
  border: 1px solid #787878;
  border-radius: 50%;
  cursor: pointer;
}

.enq input[type=radio] {
  display: none;
}

.enq input:checked + label::after {
  content: "●";
  color: #333;
  display: block;
  position: absolute;
/*
  top: .15em;
  left: calc(50% - .5em);
*/
  top: .85em;
  left: .25em;
  margin: auto;
  font-size: 1.3em;
}

.enq p {
  margin-bottom: 1em;
}

.enq textarea {
  border-radius: 5px;
  box-shadow:0px 2px 0px 0px #e5e5e5 inset;
  width: 100%;
  min-height: 5em;
  resize: vertical;
  margin-bottom: 1em;
}

.enq_btn {
  border: 3px solid #eee;
  display: block;
  width: 100%;
  padding: 1em 0;
  text-align: center;
  border-radius: 2em;
  color: #222;
  text-decoration: none;
  background-color: #fff;
  font-weight: bold;
  margin-bottom: 2em;
}

.enq_btn::before {
  content: url(/exis/img/ico_arr_03.png);
  display: inline-block;
  padding-right: .5em;
}

/*----------------------------------------------------
分類メニュー（サブトップ等）
------------------------------------------------------*/
.subtop_menu {
  padding: 0 1em;
  margin-bottom: 2em;
}

.subtop_menu_box li {
  margin-bottom: 1em;
}

.subtop_menu_box a {
  font-weight: bold;
  color: #222;
}

.subtop_menu_box li::before {
  content: url(/exis/img/ico_arr_03.png);
  display: inline-block;
  padding-right: .5em;
}

/*----------------------------------------------------
お知らせ一覧（2カラム）
------------------------------------------------------*/
.main .news_ul,
.main .important_ul {
  margin-bottom: 4em;
}

.news_ul li,
.important_ul li {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 1.5em;
}

.news_ul .news_date,
.important_ul .important_date {
  margin-right: 1em;
  width: 8em;
}

.news_ul .news_detail,
.important_ul .important_detail {
  width: 100%;
  display: block;
  margin-top: .3em;
}

.news_ul .news_new,
.important_ul .important_new{
  display: inline-block;
  margin-left: .5em;
  font-weight: normal;
  color: #e52825;
}

.news_ul li a,
.important_ul li a {
  font-weight: bold;
}

.year_list {
  display: flex;
  flex-wrap: wrap;
  list-style-type: disc;
  list-style-image: url(/exis/img/ico_arr_01.png);
  list-style-position: inside;
  margin-bottom: 6em;
}

.year_list li {
  margin-right: 1.5em;
}

/*----------------------------------------------------
よくある質問
------------------------------------------------------*/
.faq_list{
  list-style-type: disc;
  list-style-image: url(/exis/img/ico_arr_01.png);
  margin-left: 1.5em;
}

.faq_list li {
  margin-bottom: 1.5em;
}

/*----------------------------------------------------
どうぶつニュース
------------------------------------------------------*/
.animal_news,
.blog {
  margin-bottom: 6em;
}

.animal_news li,
.blog li {
  margin-bottom: 1.5em;
}

.animal_news a,
.blog a {
  display: flex;
  justify-content: space-between;
  text-decoration: none;
  align-items: flex-start;
  width: 100%;
}

.animal_news img,
.blog img {
  width: 25%;
  flex-shrink: 0;
}

.animal_news p,
.blog p {
  width: 70%;
}

.animal_news p {
  display: flex;
  flex-direction: column;
}

/*イベント一覧*/
.main .event_info {
  margin-bottom: 1.5em;
}

.event_info img {
  width: 100%;
  height: auto;
  margin-bottom: .5em;
  border-radius: 5px;
  flex-shrink: 0;
}

.event_info a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  color: #000;
  text-decoration: none;
  width: 100%;
}

.event_info .event_title {
  margin-bottom: 0;
}

.event_title {
  display: block;
  font-weight: bold;
}

.event_period,
.event_spot {
  display: block;
  font-size: 95%;
}

.event_period::before {
  content: url(/exis/img/ico_cal01.png);
  display: inline-block;
  margin-right: .5em;
}

.event_spot::before {
  content: url(/exis/img/ico_place01.png);
  display: inline-block;
  margin-right: .5em;
}

/*イベントカレンダー*/
.main .calender_area table::after {
  content: none;
}

.calender_area {
  width: 100%;
  overflow: hidden;
  margin-right: 2em;
}

.calender_area .month {
  border-top: 1px solid #f6cd66;
  border-right: 1px solid #f6cd66;
  border-left: 1px solid #f6cd66;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  font-weight: bold;
  text-align: center;
  padding: 1em 0;
  background-color: #fff;
}

.calender_area .month span {
  font-size: 200%;
  color: #e52825;
}

.calender_area table {
  border: none;
  border-top: 1px solid #1167ca;
  border-left: 1px solid #1167ca;
  width: 100%;
  table-layout: fixed;
  text-align: center;
  border-collapse: separate;
  overflow: hidden;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  margin-bottom: .5em;
}

.calender_area tr:last-child td:first-child {
  border-bottom-left-radius: 5px;
}

.calender_area tr:last-child td:last-child {
  border-bottom-right-radius: 5px;
}

.calender_area th,
.calender_area td {
  border: none;
  border-right: 1px solid #1167ca;
  border-bottom: 1px solid #1167ca;
  background-color: #fff;
}

.main .calender_area th {
  font-weight: normal;
  padding: .1em 0;
  font-size: 85%;
  background-color: #fff;
}

.calender_area th:first-child,
.calender_area td:first-child {
  background-color: #fff0f4;
}

.calender_area th:last-child,
.calender_area td:last-child {
  background-color: #eafafa;
}

.calender_area td {
  vertical-align: middle;
/*  font-size: 76%;*/
  text-align: center;
  padding: .5em;
}

.calender_area td a {
  text-decoration: underline;
}

.calender_area .prev a,
.calender_area .next a {
  font-weight: bold;
  text-decoration: none;
}
.calender_area .prev {
  float: left;
}
.calender_area .next {
  float: right;
}

.calender_area .prev a::before {
  content: url(/exis/img/ico_arr_01.png);
  display: inline-block;
  margin-right: .5em;
  padding-right: 0;
  transform: rotateY(180deg);
}
.calender_area .next a::after {
  content: url(/exis/img/ico_arr_01.png);
  display: inline-block;
  margin-left: .5em;
}

/*イベント詳細*/
.main .status {
  display: flex;
} 

.status .st01,
.status .st02,
.status .st03,
.status .st04 {
  padding: 4px 10px;
  border-radius: 5px;
  font-weight: bold;
}

.status .st01 {
  background-color: #fde884;
}
.status .st02,
.status .st04 {
  background-color: #d6d6d6;
}
.status .st03 {
  background-color: #f78ab2;
}

.eventdata {
  background-color: #f78ab2;
  width: calc(100% + 2em);
  margin: 0 -1em 2em;
  padding: 20px 0;
}

.eventdata > div {
  background-color: #fff;
  padding: 1em;
}

.eventdata p {
  margin-bottom: 1em;
}

.main .eventdata dt {
  width: 100%;
  font-weight: bold;
}

.main .eventdata dd {
  width: 100%;
  border-left: none;
  padding: 0 0 .8em;
  border-bottom: #9e7c61 2px dotted;
}

/*もっと見るボタン*/
.btn_more {
  display: flex;
  width: 12em;
  margin: 0 auto 3em;
  justify-content: center;
  border: 2px solid #fde884;
  height: 4em;
  align-items: center;
  border-radius: 2em;
  color: #333;
  text-decoration: none;
  font-weight: bold;
  max-width: 90%;
}

.btn_more:hover {
  background-color: #ffffea;
  text-decoration: underline;
}

.main .event_info a::before,
.main .calender_area td a::before,
.main .calender_area .next a::before,
.main .animal_news a::before,
.main .blog a::before,
.main .year_list a::before,
.main .news_ul a::before,
.main .faq_list a::before,
.main .important_ul a::before {
  content: none;
}

/* 学名表示用  */
.main .scientific_name {
  color: #222;
  font-style: italic;
  font-weight: normal;
}

/* ニュースページ更新日用  */
.news_updated_at {
    text-align: right;
    font-size: 90%;
    margin-bottom: 1.5em;
}

/*search*/
.search {
  margin: 0 1em 1em;
}

.gsc-selected-option-container {
  min-width: 10em!important;
}

/* イベント一覧 */
.no_event {
  margin-bottom: 3em;
}

/* カレンダー */
div > iframe,
.google_cal iframe {
    width: 800px;
    height: 600px;
    max-width: 100%;
    margin-bottom: 1em;
}

/* youtube & Google map */
.youtube_wrap {
    width: 100%;
    position: relative;
    margin: 0 0 1.5em;
    padding-top: 56.25%;
    overflow: hidden;
}

.map_wrap {
  margin-bottom: 1.5em;
  display: flex;
  flex-wrap: wrap;
}

.map_inner {
  width: 100%;
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
  order: 1;
}

.youtube_wrap iframe,
.map_inner iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
    margin-bottom: 0;
}
.map_ttl {
  font-size: 110%;
  font-weight: bold;
  margin-bottom: .3em;
  display: block;
}

.map_add {
  order: 2;
  margin-top: .5em;
  width: 100%;
}

.map_add img {
  display: block;
  margin: .5em auto 0;
  width: 70%;
}

/* 詳細ページ下部リスト */
.detail_lists {
  margin-bottom: 1.5em;
}

.main .detail_lists h2 {
  background-image: none;
  background-color: #fff;
  border-bottom: 2px solid #ffd670;
  padding-bottom: 0;
  margin-bottom: 1em;
}

.main .detail_lists a::before {
  content: none;
}

.info_list a {
  display: flex;
  align-items: flex-start;
  text-decoration: none;
}

.info_list img {
  flex-shrink: 0;
  width: 80px;
  height: auto;
  margin-right: 1em;
}

.info_list li {
  margin-bottom: 1em;
}

.info_day {
  display: block;
  padding-bottom: .5em;
}

.info_detail {
  text-decoration: underline;
  font-weight: bold;
}


/* プレビュー画面用 */
.youtube_wrap .mce-preview-object {
  position: static;
}


/*----------------------------------------------------
pc表示
------------------------------------------------------*/
@media screen and (min-width:671px)  and (max-width:1050px) {
  .nav_wrap {
    margin: 0;
    width: 1050px;
  }  
}
@media screen and (min-width:1051px) {
  .nav_wrap {
    margin: 0 calc(50% - 50vw);
    width: calc(100vw - 10px);
  }
}
@media screen and (min-width:671px) {
  header {
    background-color: #fff;
  }
  
  .header_inner {
    width: 1050px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    z-index: 300;
  }
  
  .park_name {
    padding: 1.3em 1.3em 1.3em 0;
  }
  
  .park_name a {
    font-size: 180%;
    min-height: 36px;
    display: flex;
    align-items: center;
    padding-left: 45px;
  }
  
  .park_name a::before {
    width: 36px;
    height: 36px;
    top: 0;
  }
  
  .park_name span {
    font-size: 80%;
    display: inline-block;
  }
  
  .header_sub {
    display: flex;
    flex-wrap: wrap;
    width: 25em;
    justify-content: space-between;
    margin-bottom: 1em;
    margin-left: auto;
  }
  
  .head_search {
    width: 10em;
    position: relative;
  }
  
  .head_search h2 {
    font-weight: normal;
    text-align: center;
    cursor: pointer;
    background-color: #ffd670;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
  }
  
  .head_search h2::before {
    content: url(/exis/img/search_ico_bk.png);
    display: inline-block;
    padding-right: .5em;
  }
  
  .head_search .form_close {
    display: none;
  }
  
  .head_search .form_open {
    display: flex;
    position: absolute;
    background-color: #fff;
    width: 30em;
    right: 0;
    margin: 0;
    top: 1.8em;
    padding: 1em .5em;
    z-index: 300;
    border-radius: 5px;
    border: 3px solid #ffd670;
  }
  
  .assist {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    padding-top: .5em;
    margin-bottom: 0;
  }
  
  .assist li:not(:last-child) {
    margin-right: 1em;
  }
  
  .nav_wrap {
    padding: .8em 0;
    position: relative;
    background-color: #eee;
  }
  
  .nav_wrap::before {
    position: absolute;
    display: block;
    width: 100%;
    height: 5px;
    top: -5px;
    left: 0;
    right: 0;
  }
  
  .nav {
    width: 1050px;
    margin: 0 auto;
  }
  
  .nav li {
    width: calc(100% / 6);
    padding: 0 .5em;
    margin: .5em 0;
  }
  
  .nav a {
    display: block;
    text-align: center;
    text-decoration: none;
    color: #222;
    font-weight: bold;
    font-size: 110%;
    letter-spacing: .1em;
    padding: .5em 0;
    border-radius: 5px;
  }
  
  .nav .current a,
  .nav a:hover {
    background-color: #ccc;
  }
  
  .main,
  .search {
    width: 1050px;
    margin: 0 auto;
    padding-top: 1em;
  }
  
  .main h1 {
    font-size: 180%;
    letter-spacing: .2em;
  }
  
  .center figure {
    max-width: 80%;
    margin: 0 auto 1.5em;
  }
  
  .imgLeftS .imgBox,
  .imgRightS .imgBox {
    width: 230px;
  }
  
  .imgLeftS .txtBox,
  .imgRightS .txtBox {
    width: calc(100% - 230px - 2em);
  }
  
  .imgLeftM,
  .imgRightM {
    display: flex;
    justify-content: space-between;
  }
  
  .imgLeftM .imgBox,
  .imgRightM .imgBox {
    width: 352px;
  }
  
  .imgRightM .imgBox {
    order: 1;
  }

  .imgLeftM .txtBox,
  .imgRightM .txtBox {
    width: calc(100% - 352px - 2em);
  }
  
  .imgAllS {
    justify-content: space-between;
  }
  
  .imgAllS > div {
    width: 31%;
  }
  
  .imgAllS > div:nth-child(2n) {
    margin-left: 0;
  }

  .main dt {
    width: 11em;
  }
  
  .main dd {
    width: calc(100% - 11.5em);
  }
  
  .link_btn a {
    display: inline-block;
    width: auto;
    padding: 1em 2.5em;
  }
  
  #contact {
    margin-bottom: 3em;
  }
  
  #contact .btn_to_contact {
    width: auto;
    padding: .5em 2em
  }
  
  .recom_inner {
    width: 1050px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .recom_ttl {
    width: 25em;
  }
  
  .recom_inner div {
    width: 500px;
    border-radius: 10px;
  }
  
  .recom_inner div:nth-child(2n) {
    margin-left: 50px;
  }
  
  .recom_inner div::before  {
    right: 1.5em;
  }
  
  .enq {
    width: 800px;
    margin: 5em auto 3em;
  }
  
  .enq h2 span, .enq legend span {
    display: inline;
  }
  
  .enq h2 {
    width: 20em;
    top: -.8em;
  }
  
  .enq h2::before, .enq h2::after {
    top: -.5em;
  }
  
  .enq form {
    width: 510px;
    margin: 0 auto;
  }
  
  .enq_btn {
    width: 20em;
    margin: 0 auto;
  }

  .enq .radio {
      max-width: 22em;
    flex-direction: row;
    padding-left: 0;
    width: auto;
  }

  .enq .radio span:not(:last-child)::before {
    width: 2.8em;
    height: .4em;
    left: 2.3em;
    top: .65em;
  }
  
  .enq .radio label {
      flex-direction: column;
      width: 4em;
    padding-left: 0;
    padding-top: 2.5em;
  }

  .enq .radio label::before {
    top: calc(.3em / 2.4);
    left: calc(50% - .9em);
  }

  .enq input:checked + label::after {
    top: .15em;
    left: calc(50% - .5em);
  }
  
  .subtop_menu {
    padding: 0;
    margin: 0 auto 2em;
    width: 1050px;
  }
  
/*  お知らせ一覧（2カラム）*/
  .columns_2 {
    display: flex;
    justify-content: space-between;
  }
  
  .main_column {
    width: 70%;
  }
  
  .sub_column {
    width: 25%;
  }
  .news_ul .news_spot {
    width: 12em;
    margin-right: 1em;
    align-self: flex-start;
  }
  
  .news_ul li a {
    width: calc(100% - 22.5em);
    margin-top: 0;
  }
  
  .news_ul li .news_detail,
  .important_ul .important_detail {
    width: calc(100% - 11em);
    margin-top: 0;
  }
  
  .year_list {
    display: block;
    padding-left: 2em;
  }

  .animal_news img,
  .blog img {
    width: 140px;
  }

  .animal_news p,
  .blog p {
    width: calc(100% - 140px - 1.5em);
  }

  /*イベント一覧*/
  .event_list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 2em;
  }

  .main .event_info {
    width: 48%;
  }

  .event_info:nth-child(2n) {
    margin-left: 4%;
  }
  
/*  イベント詳細ページ*/
  .eventdata {
    margin: 0 auto 2.5em;
    width: 100%;
    border-radius: 5px;
    padding: 20px;
  }
  
  .eventdata > div {
    padding: 1.5em;
    border-radius: 5px;
  }
  
  .main .eventdata dt {
    width: 5em;
    border-bottom: #9e7c61 2px dotted;
    margin-bottom: 1em;
  }
  
  .main .eventdata dd {
    width: calc(100% - 5em);
  }

  /*  Q&A */
  .main .qa dd dl {
      display: flex;
  }
  
  .main .qa dd dt {
      width: 11em;
      margin-bottom: 0;
  }
  
  .main .qa dd dd {
      width: calc(100% - 11em);
  }
    
  /* youtube & gmap */
  .youtube_wrap,
  .map_inner {
      width: 640px;
      padding-top: 360px;
  }
  
  .map_wrap {
    display: block;
  }
  
  .map_inner {
    float: left;
  }
  
  .map_ttl,
  .map_add {
    float: right;
    width: calc(100% - 670px);
  }
  
  .map_add {
    margin-top: 0;
  }
  
  /* 詳細ページ下部リスト */
  .detail_lists .event_info {
    width: 32%;
  }
  
  .detail_lists .event_info:nth-child(2n) {
    margin-left: 0;
  }
  
  .detail_lists .event_info:not(:nth-child(3n+1)) {
    margin-left: 1.8%;
  }
  
  .info_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  
  .info_list li {
    width: 48%;
  }

/* プレビュー画面用 */
  #tinymce.main,
  #tinymce .recom_inner,
  #tinymce .subtop_menu {
    max-width: 100%;
  }
}
