@charset "utf-8";

/*  ページナビ
============================================================================= */

@media screen and (min-width: 1000px) {
  .pagenavlist {
    width: calc(100%);
  }
}


/*  MV+検索パネル
============================================================================= */

@media screen and (min-width: 769px) {
  .mv {
    height: 600px
  }
}

@media screen and (max-width: 999px) {
  .area-searchtab li {
    font-size: 0.85em;
  }
  .area-searchtab .m-ico {
    margin: 0;
  }
}


/*  見出し
============================================================================= */

.page-ttl.-line:after, .page-ttltxt span:after {
  background: #ea8076;
}


/*  観光情報
============================================================================= */

#map ul {
  overflow: hidden;
}

#map ul li {
  width: 100%;
  margin: 10px 0;
  background-color: #f5f5f5;
}

.sectsub.-tripideas {
  background: none
}

.tripinfo {
  margin-top: 30px;
}

.tripinfo_item {
  margin-top: 10px;
}

.tripinfo_box {
  position: relative;
  display: block;
  padding: 15px;
  height: 100%;
  line-height: 1.5;
  background: #f5f5f5;
  box-shadow: 0 0 0.5em rgb(0 0 0 / 20%);
}

.tripinfo_location {
  display: inline-block;
  z-index: 1;
  margin-bottom: 5px;
  padding: 5px 10px;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  background: #0094D7;
}

.tripinfo_photo {
  position: relative;
}

.-ovsescort{
background: rgba(242, 250, 253, 0.90);
padding-bottom: 50px;
}

@media screen and (max-width: 999px) {
  .tripinfo_photo {
    float: left;
    margin: 0 10px 10px 0;
    width: 100%;
  }
  .tripinfo_price, .tripinfo_txt, .tripinfo_list {
    clear: both;
  }
  .sectsub.-tripideas .inner {
    padding: 0 10px;
  }
  .mv-ttl_name {
    font-size: 4.0rem;
  }
  .tripinfo_no_photo p {
    margin-top: 10px;
  }
}

.tripinfo_photo figure {
  position: relative;
  overflow: hidden;
  width: 100%!important;
  height: 0;
  padding-top: calc(375 / 500 * 100%)!important;
}

.tripinfo_photo figcaption {
  position: absolute;
  right: 0;
  bottom: 5px;
  padding: 0 5px;
  font-size: 1.2rem;
  line-height: 1.1rem;
  color: #fff;
  text-shadow: 1px 1px 0 #333, -1px -1px 0 #333, -1px 1px 0 #333, 1px -1px 0 #333, 0px 1px 0 #333, 0-1px 0 #333, -1px 0 0 #333, 1px 0 0 #333;
}

.tripinfo_photo img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tripinfo_name {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.3;
}

.tripinfo_list {
  margin-top: 10px;
}

.arrange-sect.-ovsair .tripinfo_list.-icon {
  justify-content: center;
}

.tripinfo_list li {
  position: relative;
  padding-left: 20px;
  font-size: 1.4rem;
}

.tripinfo_list:not(.-icon) li:not(:first-child) {
  margin-top: 5px;
}

.tripinfo_list li:before {
  position: absolute;
  left: 0;
  top: -2px;
  font-size: 1.7rem;
  font-family: 'Material Icons Round';
}

.tripinfo_list li.-dept:before {
  content: "\e905";
}

.tripinfo_list li.-area:before {
  content: "\e0c8";
}

.tripinfo_list li.-date:before {
  content: "\e8df";
}

.tripinfo_list li.-htl:before {
  content: "\ea40";
}

.tripinfo_list li.-air:before {
  content: "\e539";
}

.tripinfo_list.-icon {
  display: flex;
  flex-wrap: wrap;
  margin-left: -10px;
}

.tripinfo_list.-icon li {
  margin-left: 10px;
}

.tripinfo_txt {
  margin-top: 15px;
}

.tripinfo_price {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  margin-top: 10px;
  width: 100%;
  line-height: 1.3;
}

.arrange-sect.-ovsair .tripinfo_price {
  align-items: center;
}

.arrange-sect.-ovsairhtl .tripinfo_price {
  justify-content: flex-end;
}

.tripinfo_price-num {
  color: #cc0d21;
  font-weight: bold;
}

.tripinfo_price-num span {
  font-size: 2.5rem;
  font-weight: bold;
}

.tripinfo_price-txt {
  padding-bottom: 5px;
  font-size: 1.3rem;
}

.tripinfo_price-txt {
  font-size: 1.3rem;
}

.tripinfo_attwrap {
  text-align: center;
}

.tripinfo_att {
  position: relative;
  margin-top: 15px;
  padding-left: 1.2em;
  font-size: 1.2rem;
}

.tripinfo_attwrap .tripinfo_att {
  display: inline-block;
}

.tripinfo_att:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "\203B";
}

p.tripinfo_link {
  display: none;
}

ul.tripinfo_link {
  margin-top: 15px;
}

ul.tripinfo_link li {
  margin-top: 5px;
}

ul.tripinfo_link li a {
  display: block;
  padding: 5px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  border: solid 1px #003B82;
  background: #003B82;
}

.tripinfo_feature {
  margin-bottom: 10px;
  padding-bottom: 10px;
  text-align: right;
  border-bottom: solid 1px #ccc;
}

.tripinfo_feature a {
  position: relative;
  display: inline-block;
  padding: 5px 25px 5px 15px;
  color: #003B82;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
  border-radius: 50vw;
  border: solid 1px #003B82;
  background: #fff;
}

.tripinfo_feature a:after {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Material Icons Round';
  content: "\e5cc";
  font-size: 2.6rem;
  font-weight: normal;
}

@media screen and (min-width: 1000px) {
  .basicinfo {
    margin-top: 80px;
  }
  #map {
    margin-top: 50px;
  }
  .sectsub.-tripideas {
    margin-top: 0;
    padding: 5px 0 30px;
  }
  .tripinfo {
    display: flex;
    flex-wrap: wrap;
    margin: 50px 0 0 -20px;
    text-align: left;
  }
  .tripinfo_item {
    margin: 20px 0 0 20px;
    width: calc(100% / 3 - 20px);
  }
  .tripinfo_box {
    display: flex;
    flex-direction: column;
    padding: 0 0 20px;
  }
  .arrange-sect.-ovsairhtl .tripinfo_box, .arrange-sect.-ovsair .tripinfo_box {
    padding: 20px 0;
  }
  .tripinfo_location {
    position: absolute;
    left: -5px;
    top: -5px;
    padding: 8px 10px;
    font-size: 1.4rem;
  }
  .tripinfo_name {
    display: flex;
    align-items: center;
    margin: 0 20px;
  }
  .tripinfo_photo+.tripinfo_name, .tripinfo_location+.tripinfo_name {
    margin-top: 15px;
  }
  .tripinfo_list {
    margin: 15px 20px 0;
    width: auto;
  }
  .tripinfo_list.-icon {
    margin-left: 10px;
  }
  .tripinfo_txt {
    margin: 15px 20px 0;
    width: auto;
  }
  p.tripinfo_link {
    display: block;
    margin: 15px 20px 0;
    padding: 5px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    border: solid 1px #003B82;
    background: #003B82;
  }
  ul.tripinfo_link {
    margin: 15px 20px 0;
    margin-top: auto;
  }
  .tripinfo_feature a {
    font-size: 1.3rem;
  }
  .tripinfo_no_photo {
    height: 30px;
    position: relative;
  }
}

.none {
  display: none;
}