@charset "UTF-8";

/* CSS NAVI
=================================================================

1. reset
2. header
3. footer
4. contents section
5. index
6. contact
7. link
8. timeline ( access )
9. timeline ( access )
10. timeline ( access )
11. timeline ( access )
12. common
13. Tablet & SP width 876px;

================================================================*/

/* reset
----------------------------------------------------------------*/
html {
  overflow-x: hidden;
}
ul, ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
a i {
  margin-right: 0.3rem;
}
body, p {
  font-size: 1rem;
  line-height: 180%;
  letter-spacing: 1px;
}

img {
  height: auto;
}

a:focus,
a.btn:focus,
input:focus,
select:focus,
button:focus {
  outline-color: #f00 !important;
}

ul.notice-list {
  font-size: 0.9rem;
  margin: 1rem 0 0 -1rem;
}
ul.notice-list li {
  text-indent: -1rem;
  margin-left: 1rem;
  line-height: 1.2;
  padding: 5px 15px;
  border-bottom: 1px dashed #ccc;
}

/* header
----------------------------*/
header.header {
  background-color: rgba(255,255,255,0.9);
  background-color: rgba(0,0,0,0.8);
  color: #fff;
  position: absolute;
  top:0;
  z-index: 10;
  width:100%;
  //border-top: 5px solid #02589c;
}
  header.page-header {
    position: static;
  }
  header .description-box {
    padding: 0.5rem 0;
  }
  header .site-description {
    font-size: 0.8rem;
    padding-top: 0.4rem;
  }
  
  header hr {
    border-top:1px solid #565656;
    position: relative;
    margin: 0;
  }
  
  header .navigation {
    //padding: 1rem 1.5rem;
  }
  
  header .navbar-brand {
    margin: 0;
    padding: 0;
  }
  header .logo {
    //display: flex;
    //flex-direction: column;
    //justify-content: center;
    //align-items: center;
    margin:0;
    font-size: 1rem;
    width: 200px;
  }
  header .navbar {
    padding: 0;
  }
  header ul {
    width: 100%;
    text-align: center;
    display: flex;
  }
    header ul li {
      border-left: 1px solid #565656;
      height: auto;
      display: flex;
      //flex-direction: column;
      justify-content: center;
      align-items: center;
      width: 14%;
    }
    header ul li a {
      width: 100%;
      font-size: 0.9rem;
      color: #253d4a;
      color: #fff;
      letter-spacing: 1px;
      padding: 1rem 0.3rem;
    }
    header ul li a:hover {
      text-decoration: none;
      color: #fff;
      background-color: rgba(0,0,0,0.9);
      transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
    }
    header ul li a i.fa {
      display: block !important;
      font-size: 1.2rem;
      text-align: center;
      margin-right: 0;
      padding-top: 0.2rem;
    }
    .dropdown-toggle::after {
      content: none;
    }
    .dropdown-menu {
      margin: 0;
      padding: 0;
      background: rgba(0,0,0,0.8);
      color: #fff;
      border: none;
    }
    .dropdown-menu a {
      color: #fff;
      padding: 0.5rem;
      border-top: 1px solid #565656;
    }
    .dropdown-menu a:hover {
      color: #fff;
      background: rgba(0,0,0,0.8);
    }
  .searchform {
    display: inline-block;
  }
    .searchform label {
      display: inline-block;
    }
    .searchform input.searchtext {
      width: 250px;
      height: 31px;
      top: 1px;
      position: relative;
      border-radius: 0;
      border:1px solid #aaa;
      padding-left: 0.3rem;
    }
  #google_translate_element {
    display: inline-block !important; 
  }
  
/* a11y setting */
table.table-a11y {
  
}
  table.table-a11y th,
  table.table-a11y td {
    vertical-align: middle;
  }
  table.table-a11y label {
    margin-bottom: 0;
  }
  table.table-a11y i {
    margin-right: 0.3rem;
  }

/* footer
----------------------------*/
footer {
  border-top: 5px solid #02589c;
  padding: 2rem 0 0;
}
footer h3 {
  font-size: 1rem;
  font-weight: bold;
}
footer hr {
  border-top:1px solid #ccc;
  position: relative;
  margin: 0;
}
  footer hr:after {
    border-top:1px solid #efefef;
    background-color: #eee;
    content: "";
    position: absolute;
    width: 100%;
  }
footer ul li {
  display: block;
  padding: 0.3rem;
  border-bottom: 1px dotted #ccc;
}
  footer ul li a {
    //color: #000;
    font-size: 1rem;
  }
  footer ul li a i {
    color: #5ba85d;
  }
  footer ul li.logo {
    width: 100px;
  }
  footer ul li.logo img {
    width: 100%;
  }
copy {
  background-color: #02589c;
  color: #fff;
  padding: 0.5rem;
  text-align: center;
  display: block;
  margin-top: 2rem;
}


/* contents section
----------------------------*/
section {
  padding: 5rem 0;
  color: #253d4a;
}
/* title image */
section.title-image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding: 4rem 0;
}
  section.title-image .overlay {
    background-color: rgba(255,255,255,0.5);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
  }
  section.title-image .title-box {
    z-index: 2;
    position: relative;
  }
/* page title image */  
section.page-title-image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  //padding: 4rem 0 4rem;
}
  section.page-title-image .overlay {
    background-color: rgba(255,255,255,0.5);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
  }
  section.page-title-image .title-box {
    z-index: 2;
    position: relative;
  }

/* title */
section h1,
section h2 {
  font-weight: bold;
  font-size: 1.4rem;
  position: relative;
}
  section .title:first-letter,
  section .subtitle:first-letter {
/*     color: #e0658e; */
  }
  
  section .title {
    text-align: center;
    border-bottom: 1px solid #253d4a;
    width: 400px;
    margin: 0 auto 0.8rem;
    padding-bottom: 0.8rem;
  }
    section .title:after {
      width: 16px;
      height: 9px;
      background-color: #e0658e;
      position: absolute;
      right: 50%;
      bottom: -5px;
      content: "";
      margin-right: -8px;
    }
    section .title-description {
      text-align: center;
      font-size: 1rem;
      margin-bottom: 0;
    }

  section .subtitle,
  section .subtitle2 {
    margin-bottom: 0;
    padding-bottom: 0.3rem;
    border-bottom: 1px solid #253d4a;
    font-weight: bold;
    font-size: 1.4rem;
    position: relative;
  }
    section .subtitle:after,
    section .subtitle2:after {
      width: 100px;
      height: 2px;
      background-color: #e0658e;
      position: absolute;
      right: 0;
      bottom: 0;
      content: "";
    }
    section .subtitle span,
    section .subtitle2 span {
      color: #bababa;
      position: absolute;
      right: 0;
      bottom: 0.3rem;
      font-weight: normal;
      font-size: 0.8rem !important;
      text-transform: uppercase;
      letter-spacing: 0;
    }
    section .subtitle.nospan:after,
    section .subtitle2.nospan:after {
      content: none;
    }
  
ul.list {
  
}
  ul.list li {
    padding: 0.3rem;
    border-bottom: 1px solid #253d4a;
  }
  ul.list li span {
    margin-right: 0.8rem;
  }

/* card */
.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}
.row-eq-height .card,
.row-eq-height .border {
  height: 100%;
}
.card {
  border:none;
  box-shadow: 2px 2px 3px #ccc;
  position: relative;
  overflow: hidden;
}
  .card .card-inner {
    padding: 1rem 1rem 1.5rem;
  }
/* IE11 */
@media all and (-ms-high-contrast:none) {
  
  *::-ms-backdrop, .card {
    display: block;
  }
  
  *::-ms-backdrop, .card-img-top {
    height: 100%;
    display: block;
  }
}

table td p {
  margin-bottom: 0;
}
table.size-200 th {
  width: 200px;
}
table th,
table td {
  word-break: break-all;
  word-wrap:break-word;
}

/* index 
----------------------------------------------------------------*/
/* add fullscreen top
----------------------------*/
.swiper-container {
    width: 100%;
    /*height: 100vh;*/
    position: relative;
}
.swiper-slide {
    text-align: center;
    font-size: 18px;
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.swiper-slide .inner-text {
  display: block;
  color: #fff;
  margin-top: -1rem;
  width: 80%;
}
.swiper-slide h2 {
  display: block !important;
  color: #e0658e;
  text-shadow: 1px 1px 1px black;
	font-family:"Times New Roman", Times, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	//background-color: #fff;
}
.swiper-slide .sub {
  display: block !important;
  color: #e0658e;
  text-shadow: 1px 1px 1px black;  
}

/* visit section */
  .card-image .card {
    background-color: #000;
  }
  .card-image .card a.box-link {
    color: #fff;
    display: block;
    text-decoration: none;
  }
  .card-image .card .card-block {
    background: rgba(0,0,0,0.4);
    position: absolute;
    top:0;
    width: 100%;
    height: 100%;
    color: #fff;
    display: flex;
    justify-content: center;/* 3 */
    align-items: center;
    padding: 5%;
    //cursor: pointer;
    transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
  }
    .card-image .card .card-block a {
      cursor: pointer;
    }
    .card-image .card .card-block:hover {
      background: rgba(0,0,0,0.7);
    }
  .card-image .card .card-inner {
    border: 1px solid #fff;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .card-image .card-title {
    font-size: 1.4rem;
    margin-bottom: 0.75rem;
  }
  .card-image .card p.sub {
    margin-bottom: 0.75rem;    
  }
  .card-image .card hr {
    width: 10%;
    height: 2px;
    background-color: #fff;
    border:none;
    margin: 0 auto 0.75rem;
  }

/* news section */
.news .card {
  box-shadow: none;
  border:1px solid rgba(0,0,0,0.125);
  display: block;
}

  ul.news li {
    padding: 0.5rem;
    border-bottom: 1px solid #ccc;
  }
  ul.news li:first-child {
    //border-top: 1px solid #ccc;
  }
  ul.news li span.date {
    margin-right: 0.5rem;
  }
  ul.news li span.category {
    margin-right: 0.5rem;
    color: #fff;
    text-align: center;
    font-size: 0.7rem;
    padding: 0.3rem 0.5rem;
    width: 80px;
    display: inline-block;
    line-height: 1;
  }
  ul.news li span.news_title {
    display: block;
  }
  

/* IE11 */
@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop, .news  .card-img-top {

  }
}

/* facebook for responsive */
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
    width: 100% !important;
}
.instagram {
  height: auto;
}
  
/* contact
----------------------------------------------------------------*/
.error {
  margin-top: 0.5rem;
  padding: 0.3rem;
  background-color: #f5d3d3;
  color: #c00;
}
#recaptcha {
  margin: 2rem auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* link
----------------------------------------------------------------*/
ul.link li {
  display: block;
  padding: 0.3rem;
  border-top: 1px dotted #ccc;
}
  ul.link li:first-child {
    border:none;
  }
  ul.link li a {
    //color: #000;
    font-size: 1rem;
  }
  ul.link li a i {
    color: #5ba85d;
  }

/* Timeline access
----------------------------------------------------------------*/
.access h2 {
  /*border-bottom: 2px solid;*/
  margin-bottom: 0;
  padding: 0.3rem;
}
.access-box {
  margin-top: 1.25rem;
}
/* Timeline */

.timeline {
  list-style: none;
  padding: 20px 0 20px;
  position: relative;
}
.timeline:before {
  top: 0;
  bottom: 0;
  position: absolute;
  content: " ";
  width: 3px;
  background-color: #eeeeee;
  left: 25px;
  margin-left: -1.5px;
  margin-top: 5rem;
}
.train .timeline:before {
  height: 74%;
}
.car .timeline:before {
  height: 77%;
}
.plane .timeline:before {
  height: 70%;
}
.timeline > li {
  margin-bottom: 20px;
  position: relative;
}
.timeline > li:before,
.timeline > li:after {
  content: " ";
  display: table;
}
.timeline > li:after {
  clear: both;
}
.timeline > li:before,
.timeline > li:after {
  content: " ";
  display: table;
}
.timeline > li:after {
  clear: both;
}
.timeline > li > .timeline-panel {
  width: calc( 100% - 75px );
  float: right;
  border: 1px solid #d4d4d4;
  border-radius: 2px;
  padding: 20px;
  position: relative;
  -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
}
.timeline > li > .timeline-panel:before {
  position: absolute;
  top: 26px;
  left: -15px;
  display: inline-block;
  border-top: 15px solid transparent;
  border-left: 0 solid #ccc;
  border-right: 15px solid #ccc;
  border-bottom: 15px solid transparent;
  content: " ";
}
.timeline > li > .timeline-panel:after {
  position: absolute;
  top: 27px;
  left: -14px;
  display: inline-block;
  border-top: 14px solid transparent;
  border-left: 0 solid #fff;
  border-right: 14px solid #fff;
  border-bottom: 14px solid transparent;
  content: " ";
}
.timeline > li > .timeline-badge {
  color: #fff;
  width: 50px;
  height: 50px;
  line-height: 50px;
  font-size: 1.4em;
  text-align: center;
  position: absolute;
  top: 16px;
  left: 0px;
  margin-right: -25px;
  background-color: #999999;
  z-index: 100;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border-bottom-right-radius: 50%;
  border-bottom-left-radius: 50%;
}
.timeline > li.timeline-inverted > .timeline-panel {
  float: right;
}
.timeline > li.timeline-inverted > .timeline-panel:before {
  border-left-width: 0;
  border-right-width: 15px;
  left: -15px;
  right: auto;
}
.timeline > li.timeline-inverted > .timeline-panel:after {
  border-left-width: 0;
  border-right-width: 14px;
  left: -14px;
  right: auto;
}
.timeline-badge.primary {
  background-color: #2e6da4 !important;
}
.timeline-badge.success {
  background-color: #3f903f !important;
}
.timeline-badge.warning {
  background-color: #f0ad4e !important;
}
.timeline-badge.danger {
  background-color: #d9534f !important;
}
.timeline-badge.info {
  background-color: #5bc0de !important;
}
.timeline-title {
  margin-top: 0;
  color: inherit;
}
.timeline-body > p,
.timeline-body > ul {
  margin-bottom: 0;
}
.timeline-body > p + p {
  margin-top: 5px;
}


/* stay
----------------------------------------------------------------*/
ul.tag-list {
  margin-bottom: 0.8rem;
}
  ul.tag-list li {
    display: inline-block;
    margin-left: 0.3rem;
    padding: 0 0.3rem;
    text-align: center;
    color: #fff;
    line-height: 180%;
  }
  ul.tag-list li:first-child {
    margin-left: 0;
  }
  ul.tag-list li i {
    margin-right: 0.3rem;
  }

/* experience
----------------------------------------------------------------*/
.google-map { width: 100%; height: 450px;}
.googleMap{position:relative;width:100%; height:0;padding-bottom: 49%;}
.googleMap iframe{position:absolute;top:0;left:0;width:100% !important; height: 100%; }

ul.controls {
  text-align: center;
  list-style: none;
  padding-left: 0;
  font-size: 0;
}
  ul.controls::after {
      display: table;
      clear: both;
  }
  ul.controls li {
    display: inline-block;
  }
  ul.controls li.filter {
    position:relative;
    -webkit-top: 1px;
  }
  ul.controls li:first-child {
    border-left: 1px solid #CCC;
  }
  ul.controls li a {
    font-size: 0.8rem;
    cursor: pointer;
    padding: 0 ;
    border-right: 1px solid #CCC;
    transition: all 0.3s ease-out;
    display: block;
    //width: 120px;
    padding: 0 1rem;
  }
  ul.controls li a:hover,
  a.mixitup-control-active {
    color: #fff;
    background-color: #17a2b8;
    text-decoration: none;
  }

/* shopping
----------------------------------------------------------------*/
.shopping .card hr.short-border {
  width: 10%;
  height: 2px;
  background-color: #e0658e;
  border:none;
  margin: 0 auto 0.85rem;
}
ul.shop-icon {}
  ul.shop-icon li {
    padding: 0.2rem 0;
    border-top: 1px dotted #eee;
  }
  ul.shop-icon li:first-child {
    border:none;
  }
  ul.shop-icon li i {
    margin-right: 4px;
    width: 18px;
    text-align: center;
  }
  
/* common
----------------------------------------------------------------*/
body {
  //font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, sans-serif;
  font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
  color: #253d4a;
}
body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}
.wrapper {
  //position: relative;
  width: 100%;
  //font-size: 14px;
  font-size: 87.5%;
  //background: #F8F8F8;
  background-color: #FFF;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  z-index: 2;
  color: #253d4a;
}
.bg-lightgray {
  background-color: #efefef;
}
.btn-half {
  width: 50%;
}
.btn-half-rb {
  border-right: 1px solid #fff !important;
}
.btn-half-rb:hover {
  border-right: 1px solid #fff !important;
}

a img {
  transition: all 0.3s ease-out;
}
a:hover img {
  opacity: 0.7;
}
/* custom button */
a.btn-outline-white {
  border:1px solid #fff;
  color: #fff;
  transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
}
  a.btn-outline-white:hover {
    background-color: #fff;
    color: #000;
  }
a.btn-outline-black {
  border:1px solid #253d4a;
  color: #253d4a;
  transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
}
  a.btn-outline-black:hover {
    background-color: #253d4a;
    color: #fff;
  }


a.btn-black {
  border:1px solid #000;
  background-color: #000;
  color: #FFF;
  transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
}
  a.btn-black:hover {
    background-color: #fff;
    color: #000;
  }
/* scroll top */
a#pageTop {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  //display: none;
  text-align: center;
  z-index: 9999;
  width: 50px;
  height: 50px;
  border-radius: 25px;
  color: #FFF;
  padding-top: 5px;
  line-height: 1;
  display: none;
}
a#pageTop:hover {
  text-decoration: none;
}
#pageTop i {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  margin-right: 0;
  padding: 0;
}
/* back to previous page */
/*
a.backTo {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  text-align: center;
  z-index: 9999;
  width: 50px;
  height: 50px;
  border-radius: 25px;
  color: #FFF;
  padding-top: 5px;
  line-height: 1;
  font-size: 0.8rem;
}
a.backTo:hover {
  text-decoration: none;
}
.backTo i {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  margin-right: 0;
  padding: 0;
}
*/

/* font-size */
.text-xl { font-size: 150%; }
.text-lg { font-size: 130%; }
.text-md { font-size: 110%; }
.text-sm { font-size: 90%; }
.text-xs { font-size: 85%; }

/* file icon color */
.pdf { color: #e70f0f; }
.xlsx { color: #077e07; }
.docx { color: #040fd7; }

/* category */
.term {
  display: inline-block;
  padding: 0 0.5rem;
  color: #fff;
}

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

ul.border-list {
  border-top: 1px solid #ccc;
}
  ul.border-list li {
    border-bottom: 1px solid #ccc;
    padding: 0.5rem;
  }
  
table th {
  //width:25%;
  max-width: 230px;
}


/* Tablet & SP width 876px;
----------------------------------------------------------------*/
@media screen and (max-width:991px) {
  
  /* header
  ----------------------------*/
  header .site-description {
    margin-bottom: 0.5rem !important;
  }
  header .navbar {
    padding: 0.2rem 0;
  }
  header .navbar-brand,
  header .navbar-toggler {
    margin: 0rem 1rem;
  }
  header .navbar-dark .navbar-toggler {
    border-color: #fff !important;
    background-color: #000; 
  }
  #google_translate_element {
    //display: none !important;
  }
  .navbar-nav {
    //flex-direction: inherit !important;
    //justify-content: space-between !important;
  }
  header ul li {
    width: auto;
    text-align: left;
    border-left: none;
    border-top:1px solid #565656;
    float: left;
    display: block !important;
  }
    header ul li a {
      padding: 1rem;
      display: block;
    }
    header ul li a i.fa {
      display: inline !important;
      float: left;
      margin-right: 0.5rem !important;
      padding-top: 0.2rem;
    }
    header ul li a i.fa-info-circle,
    header ul li a i.fa-angle-double-down,
    header ul li a i.fa-envelope-o {
      position: relative;
      top:2px;
    }
  .dropdown-menu {
    //width: 100% !important;
    padding:0 1rem;
  }
    .dropdown-menu a {
      color: #fff;
      padding: 0.8rem 0.8rem 0.8rem 1.3rem;
      border-top: 1px solid #565656;
    }
    .dropdown-menu a:hover {
      color: #fff;
      background: rgba(0,0,0,0.8);
    }

  /* contents section
  ----------------------------*/
  ul.list li span {
    margin-right: 0.8rem;
    display: block;
  }
  
  ul.controls {
    display: block;
    text-align: left !important;
    list-style: none;
    padding-left: 0;
    width: 100%;
  }
    ul.controls li {
      display: inline-block;
      margin-bottom: 0.2rem;
      width: 49.3%;
      text-align: center !important;
    }
    ul.controls li:first-child {
      border-left: none;
    }
    ul.controls li:nth-child(odd) {
      margin-right: 0.2rem;
    }
    ul.controls li a {
      font-size: 0.8rem;
      cursor: pointer;
      padding: 0 ;
      transition: all 0.3s ease-out;
      display: block;
      border:1px solid #ccc;
      width: auto;
    }
    ul.controls li a:hover,
    a.mixitup-control-active {
      color: #fff;
      background-color: #17a2b8;
      text-decoration: none;
    }
  
}
@media screen and (max-width:768px) {

  /* font-size */
  .text-xl { font-size: 120%; }
  .text-lg { font-size: 110%; }
  .text-md { font-size: 90%; }
  .text-sm { font-size: 80%; }
  .text-xs { font-size: 75%; }

/* common */
  table br {
    display: block;
  }
	.responsive-table table.table {
		border:none;
		width: 100%;
	}
	  .responsive-table table.table thead {
  	  display: none;
	  }
    .responsive-table table.table tr{
        display: block !important;
        background: none !important;
        border:none !important;
        margin-bottom: 1rem;
    }
    .responsive-table table.table thead th {
      //background-color: #29a548;
      //color: #fff;
    }
    .responsive-table table.table th,
    .responsive-table table.table td{
        display: list-item !important;
        list-style: none;
        border: none !important;
    }
    .responsive-table table.table th {
	    font-weight: bold;
	    font-size: 1rem;
	    width: 100%;
	    max-width: 100%;
	    padding: 0.5rem !important;
	    margin-bottom: 0.5rem;
	    background: #eee;
    }
    .responsive-table table.table th label {
      margin-bottom: 0;
    }
    .responsive-table table.table td {
      padding: 0 0.5rem !important;
    }
    .responsive-table table.table-bordered td {
      padding: 0 0.5rem !important;
    }
    
    .responsive-table table.size-200 th {
      width: auto;
    }
  
  .description-box {
    //display: none;
  }
  .swiper-button-prev,
  .swiper-button-next {
    /* display: none; */
  }

  a.a11y-btn {
    border:none;
    padding: 0.1rem;
    position: relative;
    top:2px;
    margin-right: 5px !important;
  }
    a.a11y-btn i {
      margin-right: 0 !important;
      font-size: 1.6rem;
    }  
  .searchform {
    display: inline-block;
    position: relative;
  }
    .searchform label {
      display: inline-block;
      margin-bottom: 0 !important;
    }
    .searchform input.searchtext {
      width: 150px;
      height: 31px;
      top: 1px;
      position: relative;
      border-radius: 0;
      border:1px solid #FFF;
      padding-left: 1.6rem;
    }
    .searchform input.searchtext:placeholder {
      color: #ccc;
    }
    .searchform i {
      position: absolute;
      left: 7px;
      top: 7px;
      color: #ccc;
      font-size: 1rem;      
    }
    
  .google-map {
    width: 100%;
    height: 300px;
  }
  
  #photo_date_table.picker__table table {
      display: table !important;
  }
  #photo_date_table.picker__table thead {
    display: table-header-group !important;
    vertical-align: middle !important;
    border-color: inherit !important;
    font-size: 0.6rem !important;
  }
  #photo_date_table.picker__table tr {
    display: table-row !important;
    vertical-align: inherit !important;
    border-color: inherit !important;
  }
  #photo_date_table.picker__table td,
  #photo_date_table.picker__table th {
    display: table-cell !important;
    border-top:1px solid #e9ecef !important;
    font-size: 0.8rem;
  }  
}

@media screen and (max-width:576px) {
  
  html {
    overflow-x: hidden;
  }

  .swiper-slide .inner-text {
    display: block;
    color: #fff;
    margin-top: 1rem !important;
    width: 80%;
  }
  .swiper-slide .inner-text h2 {
    font-size: 120%;
  }
  .swiper-slide .inner-text p.sub {
    font-size: 80%;
  }
  .swiper-slide .slide-link {
    /*max-width:60%;*/
    margin: 0 auto;
  }
  
  section .subtitle:after,
  section .subtitle2:after {
    content: none;
  }
  section .subtitle span,
  section .subtitle2 span {
    display: none;
  }
  
  .news .card-header h3 {
    font-size: 100%;
  }
  .text-sp-lead { font-size: 85%; line-height: 180%;}
  
  .google-map {
    width: 100%;
    height: 250px;
  }
  
  section .title {
    width: 90%;
  }
  .swiper-button-prev,
  .swiper-button-next {
    top:90% !important;
    /* display: none; */
  }
	
}

@media screen and (max-width:320px) {
  ul.news li span.category {
    margin-right: 0.5rem;
    color: #fff;
    text-align: center;
    font-size: 0.7rem;
    padding: 0.3rem 0.5rem;
    width: 70px;
    display: inline-block;
    line-height: 1;
  }
}

/* PRE LOADER */
.preloader {

	display: none;
	
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
    background-color: rgba(0,0,0,0.8);
	z-index: 99999;
	height: 100%;
	width: 100%;
	overflow: hidden !important;
}
.status {
	width: 100px;
	height: 100px;
	position: absolute;
	left: 50%;
	top: 50%;
	background-image: url(../images/ajax-loader.gif);
	background-repeat: no-repeat;
	background-position: center;
	margin: -50px 0 0 -50px;
}

#progress {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
    background-color: rgba(0,0,0,0.8);
	z-index: 99999;
	height: 100%;
	width: 100%;
	overflow: hidden !important;
}
#progressbox {
	border           : 1px solid #CCC;
	border-radius    : 3px;
	padding          : 1px;
	text-align       : left;
	width: 304px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -50px 0 0 -150px;
}
#progress_bar {
 background-color : #EFEFEF;
 border-radius    : 3px;
 width            : 1%;
}
#statustxt {
 color            : #333;
 display          : inline-block;
 font-size        : 12px;
 left             : 45%;
 position         : absolute;
 top              : 0px;
}


/* form-elements custom
----------------------------------------------------------------*/
/* .checkbox radio button custom */
input[type="checkbox"] {
	border: 1px solid #aaaaaa;
	-webkit-appearance: none;
	position: relative;
	top:4px;
	margin-right: 5px !important;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-sizing: border-box;
	width: 20px !important;
	height: 20px !important;
	/*Other Browser*/
	background: #e2e2e2;
	/*For Old WebKit*/
	background: -webkit-gradient( linear, left top, left bottom, color-stop(0.00, #ffffff), color-stop(1.00, #e2e2e2));
	/*For Modern Browser*/
	background: linear-gradient( to bottom, #ffffff 0%, #e2e2e2 100%);
}

input[type="checkbox"]:checked {
	/*Other Browser*/
	background: #17a2b8;
	/*For Old WebKit*/
	background: -webkit-gradient( linear, left top, left bottom, color-stop(0.00, #17a2b8), color-stop(1.00, #17a2b8));
	/*For Modern Browser*/
	background: linear-gradient( to bottom, #17a2b8 0%, #17a2b8 100%);
	border: 1px solid #0d7180;
}

input[type="checkbox"]:checked:before {
	position: absolute;
	left: -1px;
	top: 14px;
	display: block;
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .5);
	content: "";
	width: 10px;
	height: 3px;
	background: #ffffff;
	-webkit-transform: rotate(45deg);
	-webkit-transform-origin: right center;
}

input[type="checkbox"]:checked:after {
	display: block;
	position: absolute;
	left: 7px;
	top: 14px;
	content: "";
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .5);
	width: 16px;
	height: 3px;
	background: #ffffff;
	-webkit-transform: rotate(-53deg);
	-webkit-transform-origin: left center;
}
/* input radio css */

input[type="radio"] {
	border: 1px solid #aaaaaa;
	vertical-align: -4px;
	-webkit-appearance: none;
	position: relative;
	margin-right: 5px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	-webkit-box-sizing: border-box;
	width: 20px;
	height: 20px;
	/*Other Browser*/
	background: #e2e2e2;
	/*For Old WebKit*/
	background: -webkit-gradient( linear, left top, left bottom, color-stop(0.00, #ffffff), color-stop(1.00, #e2e2e2));
	/*For Modern Browser*/
	background: linear-gradient( to bottom, #ffffff 0%, #e2e2e2 100%);
}

input[type="radio"]:checked {
	/*Other Browser*/
	background: #99cc00;
	/*For Old WebKit*/
	background: -webkit-gradient( linear, left top, left bottom, color-stop(0.00, #99cc00), color-stop(1.00, #87b400));
	/*For Modern Browser*/
	background: linear-gradient( to bottom, #99cc00 0%, #87b400 100%);
	border: 1px solid #336600;
}

input[type="radio"]:checked:before {
	position: absolute;
	left: 4px;
	top: 4px;
	display: block;
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .5);
	content: "";
	width: 10px;
	height: 10px;
	background: #ffffff;
	border-radius: 5px;
}


ul.style01 {
  margin: 0;
  padding: 0;
}
ul.style01 li {
  text-indent: -1rem;
  padding-left: 1rem;
}

.text-gray {
  color: #999;
}