@charset "utf-8";

/* ▼▼▼ 暫定 ▼▼▼ */
body {
  line-height: 1.5;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
/* ▲▲▲ 暫定 ▲▲▲ */

/* ▼▼▼ 調整 IE11 ▼▼▼ */
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, #header #header_Right #accountMenu03 li {
    position: relative;
    top: 12px;
    margin-left: 2px;
  }
}
/* ▲▲▲ 調整 IE11 ▲▲▲ */



/*======================================

	全般

=======================================*/

@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?c2gpl2');
  src:  url('../fonts/icomoon.eot?c2gpl2#iefix') format('embedded-opentype'),
url('../fonts/icomoon.ttf?c2gpl2') format('truetype'),
url('../fonts/icomoon.woff?c2gpl2') format('woff'),
url('../fonts/icomoon.svg?c2gpl2#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

img:not([width]),
input[type=image]:not([width]){
  zoom: normal;
}

a {
  color: #003780;
  -webkit-transition: all .3s ease-in-out;
          transition: all .3s ease-in-out;
}

a.over:hover,
a:hover img.over,
input.over:hover {
  text-decoration: none;
  -moz-opacity: .7;
        filter: alpha(opacity=70);
       opacity: .7;
}

.content a {
  color: #003780;
}

.content img {
  max-width: 100%;
  vertical-align: top;
}

div:after {
  content: none;
}

.slick-slider div:after {
  content: "";
  display: block;
  clear: both;
}

@media screen and (min-width: 812px) {
  .sp-only {
    display: none !important;
  }
}

@media screen and (max-width: 811px) {
  .pc-only {
    display: none !important;
  }
}


/*======================================

	パーツ

=======================================*/

/********** header **********/
#site_copy > p {
  overflow: hidden;
  width: 472px;
  height: 1.274em;
}
/********** header **********/


.ttl-01 {
  margin: 0 0 40px;
  color: #003780;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}

.ttl-01:after {
  content: "";
  display: block;
  width: 60px;
  height: 4px;
  margin: 15px auto 0;
  background: #003780;
}

.ttl-02 {
  line-height: 1.2;
  margin: 0 0 20px;
  padding: 0 0 0 10px;
  border-left: 5px solid #003780;
  color: #003780;
  font-size: 24px;
  font-weight: bold;
}

.ttl-03 {
  padding: 3px 30px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  background: #003780;
}

.ttl-04 {
  margin: 20px 0 25px;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}

.ttl-04 span {
  display: block;
  font-size: 14px;
  font-weight: normal;
}

.ttl-05 {
  position: relative;
  margin: 0 0 30px;
  padding: 10px 15px 10px 25px;
  color: #003780;
  font-size: 18px;
  font-weight: bold;
  background: #f3f3f3;
}

.ttl-05:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
  width: 6px;
  height: 26px;
  background: -moz-linear-gradient(top, #003780 0%, #003780 50%, #335f99 50%, #335f99 100%);
  background: -webkit-linear-gradient(top, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
  background: linear-gradient(to bottom, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.btn-01,
.btn-04 {
  display: inline-block;
  position: relative;
  min-width: 320px;
  padding: 10px 30px;
  border: 1px solid #003780;
  border-radius: 40px;
  color: #003780;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #fff;
  box-sizing: border-box;
}

.btn-01:after {
  content: "\f105";
  position: absolute;
  top: 50%;
  right: 15px;
  font-size: 18px;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.btn-04:after {
  content: "\f104";
  position: absolute;
  top: 50%;
  left: 15px;
  font-size: 18px;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.btn-01:hover,
.btn-04:hover {
  color: #fff;
  text-decoration: none;
  background: #003780;
}

.btn-02 {
  display: block;
  padding: 10px 15px;
  border-radius: 30px;
  color: #fff !important;
  text-align: center;
  background: #ff9600;
}

.btn-02 span {
  display: inline-block;
  position: relative;
  padding: 0 15px 0 0;
}

.btn-02 span:after {
  content: "\f107";
  position: absolute;
  top: 50%;
  right: 0;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.btn-03 {
  display: block;
  padding: 12px 15px;
  border: 1px solid #ddd;
  color: #003780;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #fff;
  box-sizing: border-box;
}

.btn-03 span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 22px;
}

.btn-03 span:before {
  content: "\f054";
  position: absolute;
  top: 50%;
  left: 0;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.btn-03:hover {
  border-color: #003780;
  color: #fff;
  text-decoration: none;
  background: #003780;
}

.price {
  line-height: 1.3;
}

.price a {
  display: block;
  color: inherit;
}

.price a:hover {
  text-decoration: none;
}

.price div:after {
  content: none;
}

.price-discount {
  float: left;
  width: 64px;
  line-height: 1.1;
  padding: 3px 0;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #e00000;
}

.price-discount span {
  display: inline-block;
  font-size: 21px;
}

.price-selling {
  line-height: 1.1;
  margin: 0 0 3px;
  color: #f00;
  font-size: 27px;
  font-weight: bold;
}

.price-discount + .price-selling {
  margin-left: 74px;
}

.price-selling span {
  font-size: 13px;
}

.price-local {
  margin: 0 0 10px;
  color: #003780;
  font-size: 13px;
  font-weight: bold;
}

.price-discount + .price-selling + .price-local {
  margin-left: 74px;
}

.price-regular {
  font-size: 12px;
}

.price-regular span {
  color: #003780;
  text-decoration: line-through;
  word-wrap: break-word;
}

.evaluation {
  line-height: 1.1;
  color: #f00;
  font-size: 16px;
  font-weight: bold;
}

.evaluation a {
  display: block;
  color: inherit;
}

.evaluation a:hover {
  text-decoration: none;
}

.evaluation-stars {
  display: inline-block;
  width: 85px;
  height: 14px;
  background: url(/common/include/images/icon/bg-star-01.png) no-repeat 0 0;
  background-size: auto 100%;
}

.evaluation-stars .star {
  display: inline-block;
  width: 83px;
  height: 14px;
  vertical-align: top;
  background: url(/common/include/images/icon/bg-star-02.png) no-repeat 0 0;
  background-size: auto 100%;
}

.evaluation-stars .star0 {
  width: 0;
}

.evaluation-stars .star05 {
  width: 8.43373493975904%;
}

.evaluation-stars .star10 {
  width: 16.86746987951807%;
}

.evaluation-stars .star15 {
  width: 28.91566265060241%;
}

.evaluation-stars .star20 {
  width: 37.34939759036145%;
}

.evaluation-stars .star25 {
  width: 50%;
}

.evaluation-stars .star30 {
  width: 57.83132530120482%;
}

.evaluation-stars .star35 {
  width: 71.08433734939759%;
}

.evaluation-stars .star40 {
  width: 79.51807228915663%;
}

.evaluation-stars .star45 {
  width: 91.66666666666667%;
}

.evaluation-stars .star50 {
  width: 100%;
}

.evaluation-reviews {
  position: relative;
  margin: 0 0 0 5px;
  padding: 0 0 0 15px;
  color: #003780;
  font-size: 14px;
}

.evaluation-reviews:before {
  content: "\f075";
  position: absolute;
  top: 2px;
  left: 0;
  line-height: 1;
  font-size: 13px;
  font-family: FontAwesome;
}

.continued {
  display: none;
}

.icon-country:before {
  margin: 0 4px 0 0;
  content: "\f11d";
  font-family: FontAwesome;
  font-weight: normal;
}

.icon-city:before {
  margin: 0 4px 0 0;
  content: "\e901";
  font-family: icomoon;
  font-weight: normal;
}

.icon-spot:before {
  margin: 0 4px 0 0;
  content: "\f083";
  font-family: FontAwesome;
  font-weight: normal;
}

@media screen and (max-width: 811px) {
  .ttl-01 {
    margin: 0 0 20px;
    font-size: 16px;
  }

  .ttl-01:after {
    width: 30px;
    height: 2px;
    margin: 10px auto 0;
  }

  .ttl-02 {
    font-size: 16px;
  }

  .ttl-03 {
    padding: 5px 15px;
    font-size: 16px;
  }

  .ttl-04 {
    margin: 5px 15px 15px;
    font-size: 19px;
  }

  .ttl-04 span {
    font-size: 12px;
  }

  .ttl-05 {
    margin: 0 0 15px;
    padding: 5px 15px 5px 25px;
    font-size: 14px;
  }

  .ttl-05:before {
    left: 15px;
    width: 4px;
    height: 17px;
  }

  .btn-01 {
    min-width: auto;
    line-height: 1.4;
    padding: 10px 35px 10px 25px;
    font-size: 12px;
  }

  .btn-02 {
    font-size: 12px;
  }

  .btn-04 {
    min-width: auto;
    line-height: 1.4;
    padding: 10px 25px 10px 35px;
    font-size: 12px;
  }

  .btn-03 {
    padding: 10px 15px;
    font-size: 12px;
  }

  .price-discount {
    width: 50px !important;
    line-height: 1.2 !important;
    font-size: 12px !important;
  }

  .price-discount span {
    font-size: 17px !important;
  }

  .price-selling {
    font-size: 20px !important;
  }

  .price-selling span {
    font-size: 12px !important;
  }

  .price-local {
    margin: 0 0 4px;
    font-size: 12px !important;
  }

  .price-regular {
    font-size: 11px !important;
  }
}


/*======================================

	ガイドナビ

=======================================*/

.guide-nav {
  padding: 10px;
}

.guide-nav-list {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
          justify-content: flex-end;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box;
}

.guide-nav-item {
  position: relative;
  margin: 0 0 0 10px;
}

.guide-nav-item > a,
.guide-nav-item > span {
  display: block;
  height: 32px;
  line-height: 32px;
  color: #fff;
  padding: 0 20px;
  border-radius: 20px;
  font-size: 12px;
  -webkit-transition: all .3s ease-in-out;
          transition: all .3s ease-in-out;
}

.guide-nav-item-selected > a {
  background: #ff9600;
}

.guide-nav-item-booking > a {
  background: #4182d9;
}

.guide-nav-item-history {
  display: none;
}

.guide-nav-item-history > span {
  background: #004bb0;
}

.guide-nav-item-history b {
  display: inline-block;
  width: 14px;
  height: 14px;
  line-height: 14px;
  margin: 0 0 0 5px;
  border-radius: 100%;
  color: #fff;
  font-size: 10px;
  text-align: center;
  background: #e61f18;
}

.guide-nav-item > span:hover {
  -moz-opacity: .7;
        filter: alpha(opacity=70);
       opacity: .7;
  cursor: pointer;
}

.guide-nav-item > a i,
.guide-nav-item > span i {
  margin: 0 5px 0 0;
}

.guide-nav > p {
  padding: 0 0 10px;
  text-align: center;
  color: #fff;
}




@media screen and (max-width: 811px) {
  .guide-nav {
    padding: 10px 15px;
  }

  .guide-nav-list {
    padding: 0;
  }

  .guide-nav-item-booking {
    display: none;
  }

  .guide-nav-item > a,
  .guide-nav-item > span {
    height: 26px;
    line-height: 26px;
    padding: 0 15px;
    font-size: 10px;
  }
}


/*======================================

	閲覧履歴

=======================================*/

.browsing-history {
  display: none;
  position: absolute;
  top: 47px;
  right: 0;
  width: 502px;
  padding: 10px 10px 1px;
  background: rgba(0, 55, 128, .9);
  box-sizing: border-box;
  z-index: 100;
}

.browsing-history:before {
  content: "";
  position: absolute;
  top: -15px;
  right: 50px;
  border-style: solid;
  border-width: 0 10px 15px 10px;
  border-color: transparent transparent rgba(0, 55, 128, .9) transparent;
}

.browsing-history:after {
  content: "";
  position: absolute;
  top: -15px;
  right: 0;
  left: 0;
  height: 15px;
}

.browsing-history-item {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  margin: 0 0 10px;
  padding: 14px 14px 5px;
  background: #fff;
}

.browsing-history-img {
  width: 30.80357142857143%;
}

.browsing-history-img img {
  max-width: 100%;
  vertical-align: top;
}

.browsing-history-data {
  width: 65.625%;
}

.browsing-history-spot {
  font-size: 13px;
  font-weight: bold;
}

.browsing-history-ttl {
  line-height: 1.4;
  margin: 0 0 5px;
  font-size: 15px;
  font-weight: bold;
}

.browsing-history-ttl a {
  color: #003780;
}

.browsing-history-item .evaluation {
  margin: 0 0 7px;
  padding: 0 0 5px;
  border-bottom: 1px dotted #b2b2b2;
  font-size: 18px;
}

.browsing-history-item .evaluation-stars {
  width: 102px;
  height: 17px;
}

.browsing-history-item .evaluation-stars .star {
  height: 17px;
}

.browsing-history-item .evaluation-reviews {
  font-size: 18px;
}

@media screen and (max-width: 811px) {
  .browsing-history {
    top: 36px;
    right: -15px;
    width: 100vw;
    padding: 10px 10px 1;
  }

  .browsing-history:before {
    top: -10px;
    right: 55px;
    border-width: 0 10px 10px 10px;
  }

  .browsing-history:after {
    top: -10px;
    height: 10px;
  }

  .browsing-history-item {
    margin: 0 0 10px;
    padding: 15px 15px 5px;
  }

  .browsing-history-spot {
    font-size: 10px;
  }

  .browsing-history-ttl {
    font-size: 12px;
  }

  .browsing-history-item .evaluation {
    font-size: 12px;
  }

  .browsing-history-item .evaluation-stars {
    width: 73px;
    height: 12px;
  }

  .browsing-history-item .evaluation-stars .star {
    height: 12px;
  }

  .browsing-history-item .evaluation-reviews {
    font-size: 12px;
  }

  .browsing-history-item .evaluation-reviews:before {
    font-size: 12px;
  }

  .browsing-history-item .price-discount {
    width: 30px !important;
    font-size: 9px !important;
  }

  .browsing-history-item .price-discount span {
    font-size: 11px !important;
  }

  .browsing-history-item .price-selling {
    font-size: 14px !important;
  }

  .browsing-history-item .price-local {
    font-size: 10px !important;
  }

  .browsing-history-item .price-discount + .price-selling,
  .browsing-history-item .price-discount + .price-selling + .price-local {
    margin-left: 40px;
  }

  .browsing-history-item .price-regular {
    font-size: 9px !important;
  }
}


/*======================================

	パンくず

=======================================*/

.breadcrumb {
  line-height: 1.1;
  padding: 10px 15px;
  background: #f3f3f3;
}

.breadcrumb-list {
  max-width: 1040px;
  overflow: hidden;
  margin: 0 auto;
}

.breadcrumb-item {
  position: relative;
  float: left;
  margin: 0 28px 0 0;
}

.breadcrumb-item:last-child {
  margin: 0;
}

.breadcrumb-item:after {
  content: "\f105";
  position: absolute;
  top: 50%;
  right: -18px;
  color: #003780;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.breadcrumb-item:last-child:after {
  content: none;
}

.breadcrumb-item a,
.breadcrumb-item > span {
  color: #222;
  font-size: 11px;
}

@media screen and (max-width: 811px) {
  .breadcrumb {
    padding: 0;
    background: #ececec;
  }

  .breadcrumb-list {
    max-width: inherit;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }

  .breadcrumb-item {
    display: inline-block;
    float: none;
    margin: 0;
  }

  .breadcrumb-item:after {
    content: none;
  }

  .breadcrumb-item a,
  .breadcrumb-item > span {
    display: block;
    position: relative;
    padding: 10px 15px;
    font-size: 10px;
  }

  .breadcrumb-item a:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 30px;
    height: 30px;
    border: 0px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .breadcrumb-item:last-child a:after {
    content: none;
  }

  /* ▼▼▼ 調整 ▼▼▼ */
  footer .subMenu li:last-child {
    width: 100%;
    border-right: none;
  }
  /* ▲▲▲ 調整 ▲▲▲ */
}


/*======================================

	サジェスト

=======================================*/
.suggest {
  display: none;
  position: absolute;
  top: 80px;
  right: 0;
  left: 0;
  border-radius: 0 0 5px 5px;
  background: #fff;
  box-shadow: 0 0 4px rgba(0, 0, 0, .4);
  z-index: 100;
}

.search-form .suggest {
  top: 38px;
}

.suggest-label {
  padding: 3px 15px;
  color: #003780;
  font-weight: bold;
  background: #e2e2e2;
}

.suggest-list > li > a {
  display: block;
  padding: 5px 15px;
  font-size: 14px;
}

.suggest-list > li > a:hover,
.suggest-list > li > a.is-active {
  text-decoration: none;
  background: #cbd7e5;
}

.suggest-list > li > a span {
  color: #999;
  font-size: 12px;
}

.suggest-tour {
  display: none;
  position: absolute;
  top: 0;
  left: -370px;
  width: 370px;
  overflow: hidden;
  padding: 14px 14px 0;
  border-radius: 5px 0 5px 5px;
  background: #bfcbd9;
  box-shadow: 0 0 4px rgba(0, 0, 0, .4);
  box-sizing: border-box;
}

.suggest-tour-item {
  margin: 0 0 10px;
  background: #fff;
}

.suggest-tour-item a {
  display: block;
  position: relative;
  overflow: hidden;
}

.suggest-tour-img {
  float: left;
  width: 160px;
  height: 110px;
  vertical-align: middle;
}

.suggest-tour-img img {
  width: 100%;
  vertical-align: top;
}

.suggest-tour-spot {
  margin: 0 0 0 170px;
  padding: 5px 10px 0 0;
  color: #000;
  font-size: 9px;
}

.suggest-tour-img:empty + .suggest-tour-spot {
  margin-left: 0;
  padding: 5px 10px 0;
}

.suggest-tour-ttl {
  margin: 0 0 3px 170px;
  padding: 0 10px 0 0;
  font-size: 11px;
  font-weight: bold;
}

.suggest-tour-img:empty + .suggest-tour-spot + .suggest-tour-ttl {
  margin-left: 0;
  padding: 0 10px;
}

.suggest-tour-item .evaluation {
  margin: 0 0 0 170px;
  font-size: 11px;
}

.suggest-tour-img:empty + .suggest-tour-spot + .suggest-tour-ttl + .evaluation {
  margin-left: 10px;
}

.suggest-tour-item .evaluation-stars {
  width: 67px;
  height: 11px;
}

.suggest-tour-item .evaluation-stars .star {
  height: 11px;
}

.suggest-tour-item .evaluation-reviews {
  font-size: 11px;
}

.suggest-tour-item .evaluation-reviews:before {
  font-size: 11px;
}

.suggest-tour-item .price {
  position: absolute;
  right: 5px;
  bottom: 0;
  left: 160px;
}

.suggest-tour-img:empty + .suggest-tour-spot + .suggest-tour-ttl + .evaluation + .price {
  left: 0;
}

.suggest-tour-item .price-discount {
  position: absolute;
  bottom: 0;
  left: 0;
  width: auto;
  padding: 3px 2px;
  font-size: 9px;
}

.suggest-tour-item .price-discount span {
  font-size: 12px;
}

.suggest-tour-item .price-discount br {
  display: none;
}

.suggest-tour-item .price-selling {
  position: absolute;
  right: 0;
  bottom: 3px;
  margin: 0;
  font-size: 14px;
}

.suggest-tour-item .price-selling span {
  font-size: 10px;
}

.suggest-tour-more a {
  display: block;
  margin: 0 -14px;
  padding: 10px 15px;
  font-size: 15px;
  text-align: center;
  background: #fff;
}

@media screen and (max-width: 1340px) {
  .suggest {
    left: 100px;
  }

  .search-form .suggest {
    left: 0;
  }
}

@media screen and (max-width: 1140px) {
  .suggest {
    left: 150px;
  }
}

@media screen and (max-width: 1040px) {
  .suggest {
    left: 200px;
  }
}

@media screen and (max-width: 811px) {
  .suggest {
    top: 45px;
    left: 0;
  }

  .search-keyword .suggest {
    top: 34px;
  }

  .suggest-label {
    font-size: 12px;
  }

  .suggest-list > li > a {
    font-size: 12px;
  }

  .suggest-list > li > a span {
    font-size: 10px;
  }

  .suggest-tour {
    display: none !important;
  }
}


/*======================================

	レイアウト

=======================================*/

.column {
  display: -webkit-flex;
  display: flex;
  max-width: 1040px;
  line-height: 1.7;
  margin: 0 auto;
  font-size: 15px;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  -webkit-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.column-1 {
  display: block;
}

.main {
  width: 74.42307692307692%;
}

.side {
  width: 23.26923076923077%;
}

.side-reviews {
  margin: 0 0 20px;
  border: 1px solid #ededed;
  font-size: 13px;
}

.side-reviews > dl > dt {
  margin: 0 0 15px;
  padding: 15px;
  color: #003780;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #ededed;
}

.side-reviews-item {
  margin: 0 15px 15px;
  padding: 0 0 15px;
  border-bottom: 1px solid #ededed;
  word-break: break-all;
}

.side-reviews-item:last-of-type {
  margin-bottom: 0;
}

.side-reviews-img {
  float: left;
  width: 90px;
  margin: 0 10px 10px 0;
}

.side-reviews-item .evaluation {
  display: block !important;
  margin: 0 0 10px 0;
  white-space: nowrap;
}

.side-reviews-tags {
  overflow: hidden;
  margin: 0 0 10px 0;
}

.side-reviews-tags li {
  float: left;
  line-height: 18px;
  margin: 0 3px 0 0;
  padding: 0 10px;
  border-radius: 20px;
  color: #003780;
  font-size: 10px;
  background: #f3f3f3;
}

.side-reviews-item h3 {
  clear: both;
  margin: 0 0 5px;
  font-weight: bold;
}

.side-reviews-comment {
  margin: 0 0 5px;
}

.side-reviews-more a {
  display: block;
  position: relative;
  padding: 0 0 0 10px;
  font-size: 11px;
  font-weight: bold;
}

.side-reviews-more a:before {
  content: "\f101";
  position: absolute;
  top: 50%;
  left: 0;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.side-reviews-other a {
  display: block;
  padding: 10px 15px;
  text-align: center;
}

.side-tour {
  margin: 0 0 20px;
  border: 1px solid #ededed;
}

.side-tour > dl > dt {
  margin: 0 0 15px;
  padding: 15px;
  color: #003780;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #ededed;
}

.side-tour-item {
  margin: 0 15px 20px;
}

.side-tour-item:last-child {
  margin: 0 15px 15px;
}

.side-tour-img {
  margin: 0 0 10px;
}

.side-tour-img img {
  width: 100%;
  height: auto;
}

.side-tour-country {
  font-size: 12px;
  font-weight: bold;
}

.side-tour-item h3 {
  margin: 0 0 10px;
  padding: 0 0 7px;
  border-bottom: 1px dotted #b2b2b2;
  color: #003780;
  font-size: 12px;
  font-weight: bold;
}

.side-tour-item .price {
  text-align: right;
}

.side-tour-item .price-discount {
  width: 51px;
  font-size: 11px;
}

.side-tour-item .price-discount span {
  font-size: 18px;
}

.side-tour-item .price-selling {
  margin-left: 0;
  font-size: 18px;
}

.side-tour-item .price-local {
  margin: 0 !important;
  font-size: 12px;
}

.side-tour-item .price-regular {
  margin: 10px 0 0;
  font-size: 11px;
}

.side-theme {
  margin: 0 0 20px;
  border: 1px solid #ededed;
  font-size: 14px;
}

.side-theme > dl > dt {
  margin: 0 0 15px;
  padding: 15px;
  color: #003780;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #ededed;
}

.side-theme .side-theme-item {
  margin: 0 15px 15px;
}

.side-theme-type2 .side-theme-item {
  margin: 0 0 15px;
}

.side-theme-item dd {
  padding: 0 0 0 12px;
}

.side-theme-type2 .side-theme-item dd {
  padding: 10px 15px 0;
}

.side-theme > dl > dd > ul {
  margin: 0 0 15px;
  padding: 0 15px 15px;
  border-bottom: 2px solid #ededed;
}

.side-theme-type2 > dl > dd > ul {
  margin: 0 15px 15px;
  padding: 0;
  border: none;
}

.side-theme a {
  display: block;
  position: relative;
  padding: 0 0 0 12px;
  color: #222;
}

.side-theme a:before {
  content: "\f101";
  position: absolute;
  top: 4px;
  left: 0;
  line-height: 1;
  font-family: FontAwesome;
}

.side-theme-type2 dt a {
  padding: 5px 15px 5px 27px;
  color: #003780;
  font-weight: bold;
  background: #d6dfeb;
}

.side-theme-type2 dt a:before {
  top: 9px;
  left: 15px;
}

.side-theme-more a {
  margin: 5px 0 0;
  padding: 0 0 0 17px;
  color: #003780;
}

.side-theme-more a:before {
  content: "\f196";
  font-size: 16px;
}

.side .detail-popular-tags {
  margin: 0 0 20px;
}

.side .detail-popular-tags li {
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #ededed;
}

.side .detail-popular-tags a {
  display: block;
  position: relative;
  padding: 0 0 0 40px;
}

.side .detail-popular-tags a i {
  position: absolute;
  top: 4px;
  left: 15px;
}

.side-info {
  margin: 0 0 20px;
  border: 1px solid #ededed;
  font-size: 13px;
}

.side-info > dl > dt {
  margin: 0 0 15px;
  padding: 15px;
  color: #003780;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #ededed;
}

.side-info-item {
  margin: 0 15px 15px;
  padding: 0 0 15px;
  border-bottom: 1px dotted #b2b2b2;
}

.side-info-item:last-child {
  padding: 0;
  border: none;
}

.side-info-item dt {
  margin: 0 0 5px;
  font-weight: bold;
}

.side-info-item dd:last-child {
  color: #b7b7b7;
  font-size: 10px;
  text-align: right;
}

.side-bnr {
  margin: 0 0 20px;
}

.side-bnr li {
  margin: 0 0 20px;
}

.side-country {
  margin: 0 0 20px;
  padding: 0 0 15px;
  background: #f3f3f3;
}

.side-country > dl > dt {
  margin: 0 0 15px;
  padding: 15px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: -moz-linear-gradient(top, #00377f 0%, #002556 100%);
  background: -webkit-linear-gradient(top, #00377f 0%,#002556 100%);
  background: linear-gradient(to bottom, #00377f 0%,#002556 100%);
}

.side-country-item {
  margin: 0 15px;
}

.side-country-item a {
  display: block;
  position: relative;
  padding: 0 0 0 12px;
  color: #222;
  font-size: 14px;
  font-weight: bold;
}

.side-country-item a:before {
  content: "\f101";
  position: absolute;
  top: 4px;
  left: 0;
  line-height: 1;
  font-family: FontAwesome;
}

.side-country-more {
  margin: 10px 15px 0;
}

.side-country-more a {
  display: block;
  position: relative;
  padding: 0 0 0 17px;
  font-size: 14px;
}

.side-country-more a:before {
  content: "\f196";
  position: absolute;
  top: 50%;
  left: 0;
  font-size: 16px;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 811px) {
  .column {
    display: block;
    font-size: 12px;
  }

  .main {
    width: auto;
  }

  .side {
    margin: 0 15px 15px;
    width: auto;
  }
  .side-country {
    background: none;
  }
  .side-country > dl > dt {
    margin: 0 0 10px;
    padding: 0;
    background: none;
    text-align: left;
    color: #003780;
    line-height: 1.2;
    font-size: 16px;
  }
  .side-country-item {
    margin: 0;
  }
  .side-country-item > li {
    border-bottom: 1px solid #f3f3f3;
  }
  .side-country-item > li:first-child {
    border-top: 1px solid #f3f3f3;
  }
  .side-country-item > li > a {
    overflow: hidden;
    position: relative;
    display: block;
    padding: 10px 10px 10px 25px;
    color: #003780;
    font-weight: normal;
    font-size: 12px;
  }
  .side-country-item a:before {
    top: 50%;
    left: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .side-country-more a {
    display: block;
    border: 1px solid #ddd;
    padding: 7px 15px;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
  }
  .side-country-more a:before {
    position: relative;
    left: 0;
    margin: 0 6px 0 0;
    font-size: 12px;
  }


  .side-reviews {
  }
  .side-tour {
    display: none;
  }
  .side-info {
    display: none;
  }


  .side-theme {
    border: none;
    margin: 0 0 30px;
  }
  .side-theme > dl > dt {
    margin: 0 0 10px;
    padding: 0;
    background: none;
    text-align: left;
    line-height: 1.2;
    color: #003780;
    font-weight: bold;
    font-size: 16px;
  }
  .side-theme > dl > dd > ul,
  .side-theme-type2 > dl > dd > ul {
    margin: 0;
    padding: 0;
    border: none;
  }
  .side-theme > dl > dd > ul > li {
  }
  .side-theme > dl > dd > ul > li > a {
    padding: 6px 10px 6px 20px;
    background: none;
    color: #003780;
    font-size: 13px;
  }
  .side-theme > dl > dd > ul > li > a:before {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    left: 6px;
    width: 4px;
    height: 12px;
    background: -moz-linear-gradient(top, #003780 0%, #003780 50%, #335f99 50%, #335f99 100%);
    background: -webkit-linear-gradient(top, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
    background: linear-gradient(to bottom, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
  }


  .side-theme dt a,
  .side-theme-type2 dt a {
    padding: 6px 10px 6px 20px;
    background: none;
    color: #003780;
    font-weight: normal;
    font-size: 13px;
  }
  .side-theme dt a:before,
  .side-theme-type2 dt a:before {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    left: 6px;
    width: 4px;
    height: 12px;
    background: -moz-linear-gradient(top, #003780 0%, #003780 50%, #335f99 50%, #335f99 100%);
    background: -webkit-linear-gradient(top, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
    background: linear-gradient(to bottom, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
  }
  .side-theme .side-theme-item {
    margin: 0 0 15px;
  }
  .side-theme .side-theme-item dd,
  .side-theme-type2 .side-theme-item dd {
    padding: 0 10px;
  }
  .side-theme .side-theme-item dd > ul,
  .side-theme-type2 .side-theme-item dd > ul {
  }
  .side-theme .side-theme-item dd > ul > li,
  .side-theme-type2 .side-theme-item dd > ul > li {
    border-bottom: 1px solid #f3f3f3;
  }
  .side-theme .side-theme-item dd > ul > li:first-child,
  .side-theme-type2 .side-theme-item dd > ul > li:first-child {
    border-top: 1px solid #f3f3f3;
  }
  .side-theme .side-theme-item dd > ul > li > a,
  .side-theme-type2 .side-theme-item dd > ul > li > a {
    overflow: hidden;
    position: relative;
    display: block;
    padding: 10px 10px 10px 15px;
    color: #003780;
    font-weight: normal;
    font-size: 12px;
  }
  .side-theme .side-theme-item dd > ul > li > a:before,
  .side-theme-type2 .side-theme-item dd > ul > li > a:before {
    left: 5px;
    top: 13px;
  }

  .side-theme-more {
    margin: 10px 15px 0;
  }
  .side-theme-more a {
    display: block;
    border: 1px solid #ddd;
    margin: 0;
    padding: 7px 15px;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
  }
  .side-theme-more a:before {
    position: relative;
    left: 0;
    top: 0;
    margin: 0 6px 0 0;
    font-size: 12px;
  }


  .side .detail-popular-tags {
  }
  .side .detail-popular-tags li {
    border: none;
    padding: 0;
    margin: 0 0 10px;
  }
  .side .detail-popular-tags li a {
    border-radius: 4px;
    padding: 10px 15px;
  }
  .side .detail-popular-tags a i {
    position: relative;
    top: 0;
    left: 0;
    margin: 0 4px 0 0;
  }

  .side-bnr {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0;
  }
  .side-bnr li {
    width: 100%;
    margin: 0 0 10px;
  }
  .side-bnr li.wide {
    width: 100%;
  }
  .side-bnr li > a {}
  .side-bnr li > a img {}
}


/*======================================

	ページ下部共通バナーエリア

=======================================*/

.bottom-inquiry {
  padding: 15px;
  border-top: 1px solid #ccd7e6;
  font-size: 12px;
  text-align: center;
}

.bottom-inquiry a {
  color: #333;
}

.bottom-inquiry a i {
  vertical-align: middle;
  margin: 0 7px 0 0;
  color: #003780;
  font-size: 18px;
}

.bottom-bnr {
  padding: 50px 15px 30px;
  background: url(/common/include/images/other/bg-bottom-bnr-01.jpg) no-repeat 50% 50%;
  background-size: cover;
}

.bottom-bnr ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  max-width: 1040px;
  margin: 0 auto;
}

.bottom-bnr li {
  width: 32.11538461538462%;
  margin: 0 0 20px;
  background: #fff;
}

.bottom-bnr li img {
  max-width: 100%;
  vertical-align: top;
}

@media screen and (max-width: 811px) {
  .sp-bottom-bnr {
    margin: 0 15px 20px;
  }

  .sp-bottom-bnr ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    margin: 0;
  }

  .sp-bottom-bnr li {
    width: 48.5%;
    margin: 0 0 10px;
  }

  .bottom-bnr {
    padding: 30px 15px 20px;
  }

  .bottom-bnr li {
    width: 48.5%;
    margin: 0 0 10px;
  }
}


/*======================================

	エリア選択のバー

=======================================*/

.search-bar {
  margin: 0 0 40px;
  padding: 18px 15px;
  border-top: 1px solid #e0e0e0;
  background: -moz-linear-gradient(top, #002556 0%, #003780 100%);
  background: -webkit-linear-gradient(top, #002556 0%,#003780 100%);
  background: linear-gradient(to bottom, #002556 0%,#003780 100%);
}

.search-bar-inner {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  max-width: 1040px;
  margin: 0 auto;
}

.search-bar-btn-area {
  padding: 0 20px 0 0;
  border-right: 1px solid #294e7f;
}

.search-bar-btn-area a {
  display: inline-block;
  width: 116px;
  padding: 10px 0;
  border-bottom: 2px solid #c6c6c6;
  border-radius: 30px;
  color: #222;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  background: #fff;
}

.search-bar-btn-area a:hover {
  border-color: #c9781c;
  color: #fff;
  text-decoration: none;
  background: #ff9600;
}

.search-bar-btn-area a:active {
  position: relative;
  top: 2px;
}

.search-breadcrumb {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  padding: 0 0 0 25px;
  color: #fff;
}

.search-breadcrumb li {
  position: relative;
  margin: 0 60px 0 0;
}

.search-breadcrumb li:after {
  content: "";
  position: absolute;
  top: 7px;
  right: -30px;
  width: 22px;
  height: 22px;
  border-top: 1px solid rgba(255, 255, 255, .2);
  border-right: 1px solid rgba(255, 255, 255, .2);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.search-breadcrumb li:last-child {
  margin: 0;
}

.search-breadcrumb li:last-child:after {
  content: none;
}

.search-breadcrumb dl {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
}

.search-breadcrumb dt {
  line-height: 1.4;
  margin: 0 10px 0 0;
  font-size: 16px;
}

.search-breadcrumb dt span {
  display: block;
  font-size: 11px;
}

.search-breadcrumb dd {
  font-size: 16px;
  font-weight: bold;
}

.search-bar-count {
  line-height: 41px;
  margin: 0 15px 0 0;
  padding: 0 15px 0 0;
  border-right: 1px solid #294e7f;
  color: #fff;
  font-size: 13px;
}

.search-bar-count span {
  font-weight: bold;
}

.search-form {
  margin-left: auto;
}

.search-form form {
  position: relative;
}

.search-form input {
  width: 360px;
  height: 38px;
  line-height: 38px;
  margin: 0;
  padding: 0 50px 0 15px;
  border: none;
  border-radius: 5px;
  outline: none;
  font-size: 12px;
  box-sizing: border-box;
}

.search-form button {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 40px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0 4px 4px 0;
  outline: none;
  color: #fff;
  font-size: 18px;
  background: -moz-linear-gradient(top, #0859c5 0%, #0547a1 100%);
  background: -webkit-linear-gradient(top, #0859c5 0%,#0547a1 100%);
  background: linear-gradient(to bottom, #0859c5 0%,#0547a1 100%);
  cursor: pointer;
}
.search-form .button2 {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 40px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0 4px 4px 0;
  outline: none;
  color: #fff;
  font-size: 18px;
  background: -moz-linear-gradient(top, #0859c5 0%, #0547a1 100%);
  background: -webkit-linear-gradient(top, #0859c5 0%,#0547a1 100%);
  background: linear-gradient(to bottom, #0859c5 0%,#0547a1 100%);
  cursor: pointer;
  align-items: flex-start;
  text-align: center;
  box-sizing: border-box;
}
.search-keyword a{
  position: absolute;
  top: 0;
  right: 0;
  height: 40px;
  margin: 0;
  padding: 0 10px 0 0;
  border: none;
  background: none;
}




/*  yotpo  */
.cat-yotpo {
  overflow: hidden;
  margin: 0 0 60px;
}
.yotpo-slider-content-wrapper {
  width: 900px;
}
.yotpo-slider .yotpo-slider-wrapper {
  margin: 0 !important;
}
.yotpo-slider .y-arrows {
  position: static;
}
.yotpo.yotpo-slider .yotpo-slider-title-wrapper {
  text-align: left;
}
.yotpo.yotpo-slider .yotpo-slider-title {
  display: block;
  border-left: 5px solid #003780;
  margin: 0 0 20px;
  padding: 0 0 0 10px;
  line-height: 1.2;
  color: #003780;
  font-weight: bold;
}
.yotpo.yotpo-slider .yotpo-display-wrapper .y-slider-container .yotpo-single-image-container {
  max-height: 150px;
  max-width: 150px;
}
.yotpo-lightbox.yotpo .yotpo-modal.yotpo-modal-active .yotpo-lightbox-container .yotpo-lightbox-content-container .yotpo-review .yotpo-review-date,
.yotpo-lightbox.yotpo .yotpo-modal.yotpo-modal-active .yotpo-lightbox-container .yotpo-lightbox-content-container .yotpo-instagram .yotpo-review-date {
  width: 63px;
}




@media screen and (max-width: 811px) {
  .search-bar {
    margin: 0 0 20px;
    padding: 10px 0;
  }

  .search-bar-inner {
    display: block;
  }

  .search-bar-btn-area {
    padding: 0;
    border-right: none;
    text-align: center;
  }

  .search-bar-btn-area a {
    width: 130px;
    padding: 5px 0;
    font-size: 12px;
  }

  .search-breadcrumb {
    position: relative;
    margin: 10px 0 0;
    padding: 10px;
    color: #02429a;
    background: #fff;
  }

  .search-breadcrumb:before {
    content: "表示中のエリア：－";
    font-size: 10px;
  }

  .search-breadcrumb:after {
    content: "";
    position: absolute;
    top: -8px;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 8px 8px 8px;
    border-color: transparent transparent #fff transparent;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }

  .search-breadcrumb li {
    margin: 0 34px 0 0;
  }

  .search-breadcrumb li:after {
    top: 4px;
    right: -13px;
    width: 5px;
    height: 5px;
    border-color: #02429a;
  }

  .search-breadcrumb dt {
    display: none;
  }

  .search-breadcrumb dd {
    margin: 0 0 0 -10px;
    background: #fff;
    font-size: 10px;
    font-weight: normal;
  }

  .search-form {
    padding: 0 15px;
  }

  .search-form input {
    width: 100%;
    height: 30px;
    line-height: 30px;
    padding: 0 40px 0 15px;
    font-size: 10px;
  }

  .search-form button {
    width: 30px;
    font-size: 16px;
  }


  .cat-yotpo {
    margin: 0 15px 30px;
  }
  .yotpo-slider-content-wrapper{
    width: auto;
  }

}


/*======================================

	汎用カルーセル

=======================================*/

.general-carousel {
  position: relative;
  overflow: hidden;
}

.general-carousel-item {
  float: left;
  max-width: 200px;
  margin: 0 8px;
  outline: none;
}

.general-carousel-item a {
  display: block;
}
.general-carousel-item a img {
  width: 200px;
  height: 142px;
}
.cat-post-carousel .general-carousel-item a img {
  width: 150px;
  height: 150px;
}

.general-carousel-item .price-discount {
  width: 51px;
  font-size: 11px;
}

.general-carousel-item .price-discount span {
  font-size: 18px;
}

.general-carousel-item .price-selling {
  font-size: 18px;
}

.general-carousel-item .price-discount + .price-selling {
  margin-left: 61px;
}

.general-carousel-item .price-local {
  font-size: 12px;
}

.general-carousel-item .price-discount + .price-selling + .price-local {
  margin-left: 61px;
}

.general-carousel-item .price-regular {
  font-size: 11px;
}

.general-carousel-img {
  margin: 0 0 10px;
}

.general-carousel-item h3 {
  margin: 0 0 5px;
  min-height: 60px;
  font-size: 12px;
}

.general-carousel-item .evaluation {
  margin: 0 0 10px;
}

.general-carousel .slick-arrow {
  position: absolute;
  bottom: -13px;
  margin: 0;
  padding: 0;
  border: none;
  color: #003780;
  font-size: 30px;
  background: none;
  cursor: pointer;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.general-carousel .fa-angle-left {
  left: 50%;
}

.general-carousel .fa-angle-right {
  right: 50%;
}

.general-carousel .slick-dots {
  display: -webkit-flex !important;
  display: flex !important;
  clear: both;
  line-height: 1;
  padding: 25px 0 10px;
  text-align: center;
  -webkit-justify-content: center;
          justify-content: center;
}
.kv-city .general-carousel.slide-count-1 {
  background: #ccc;
}
.general-carousel.slide-count-1 .slick-dots {
  display: none !important;
}

.general-carousel .slick-dots li {
  margin: 0 6px;
}

.general-carousel .slick-dots button {
  display: block;
  width: 8px;
  height: 8px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 100%;
  outline: none;
  color: #e0e0e0;
  background: #e0e0e0;
  cursor: pointer;
}

.general-carousel .slick-dots .slick-active button {
  color: #003780;
  background: #003780;
}

@media screen and (max-width: 811px) {
  .general-carousel .slick-arrow {
    bottom: -8px;
    font-size: 24px;
  }
}


/*======================================

	スマホ下部探す

=======================================*/

@media screen and (max-width: 811px) {
  .detail-popular {
    margin: 0 15px 30px;
  }

  .detail-popular h3 {
    position: relative;
    margin: 0 -15px;
    padding: 0 15px 5px 25px;
    border-bottom: 1px solid #335f99;
    color: #003780;
    font-weight: bold;
  }

  .detail-popular h3:before {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 15px;
    width: 4px;
    height: 12px;
    background: -moz-linear-gradient(top, #003780 0%, #003780 50%, #335f99 50%, #335f99 100%);
    background: -webkit-linear-gradient(top, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
    background: linear-gradient(to bottom, #003780 0%,#003780 50%,#335f99 50%,#335f99 100%);
  }

  .detail-popular-list {
    margin: 0 -15px 15px;
  }

  .detail-popular h2 + .detail-popular-list li:first-child {
    border-top: 1px solid #f3f3f3;
  }

  .detail-popular-list li {
    border-bottom: 1px solid #f3f3f3;
  }

  .detail-popular-list li a {
    display: block;
    position: relative;
    overflow: hidden;
    padding: 10px 15px 10px 25px;
  }

  .detail-popular-list li a:before {
    content: "\f101";
    position: absolute;
    top: 50%;
    left: 15px;
    font-family: FontAwesome;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .detail-popular-list li a span {
    float: right;
    color: #727272;
    font-size: 10px;
  }

  .detail-popular-more {
    margin: 0 0 20px;
  }

  .detail-popular-more a {
    display: block;
    padding: 7px 15px;
    border: 1px solid #ddd;
    font-weight: bold;
    text-align: center;
  }

  .detail-popular-more a span {
    display: inline-block;
    position: relative;
    padding: 0 0 0 20px;
  }

  .detail-popular-more a span:before {
    content: "\f196";
    position: absolute;
    top: 50%;
    left: 0;
    font-family: FontAwesome;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .detail-popular-tags li {
    margin: 0 0 10px;
  }

  .detail-popular-tags a {
    display: block;
    padding: 5px 15px;
    border-radius: 20px;
    text-align: center;
    background: #ededed;
  }
}


/*======================================

	エリア選択モーダル

=======================================*/

.tab-area-wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  background: #fff;
}

.tab-area {
  width: 25.6%;
  text-align: left;
}

.tab-area li {
  border-bottom: 1px solid #e2e2e2;
}

.tab-area li a {
  display: block;
  position: relative;
  line-height: 1.2;
  padding: 20px 15px 20px 20px;
  border-right: 1px solid #e2e2e2;
  border-left: 6px solid #e2e2e2;
  color: #929292;
  font-size: 18px;
  font-weight: bold;
  background: #f7f7f7;
}

.tab-area li a:after {
  content: "\f105";
  position: absolute;
  top: 50%;
  right: 15px;
  font-size: 24px;
  font-weight: normal;
  font-family: FontAwesome;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.tab-area li a.is-active,
.tab-area li a:hover {
  border-right-color: #fff;
  border-left-color: #003780;
  color: #fff;
  text-decoration: none;
  background: #003780;
}

.tab-area li a span {
  font-size: 11px;
}

.tab-area-wrap .area-tab-contents {
  width: 74.4%;
  padding: 25px;
  text-align: left;
  box-sizing: border-box;
}

.tab-area-wrap .area-tab-contents dd {
  height: 620px;
  overflow: auto;
}

.tab-area-wrap .area-tab-contents > div > dl > dt {
  margin: 0 0 20px;
  font-size: 24px;
  font-weight: bold;
}

.tab-area-wrap .area-tab-contents > div > dl > dt a {
  display: inline-block;
  position: relative;
  padding: 0 0 0 30px;
}

.tab-area-wrap .area-tab-contents > div > dl > dt a:before {
  content: "\f101";
  position: absolute;
  top: 5px;
  left: 0;
  line-height: 1;
  font-family: FontAwesome;
}

.tab-area-wrap .area-tab-contents dd dt {
  margin: 0 0 10px;
}

.tab-area-wrap .area-tab-contents dd dt a {
  display: inline-block;
  padding: 5px 20px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: bold;
  background: #e2e2e2;
}

.tab-area-wrap .area-tab-contents dd dt a:hover {
  color: #fff;
  text-decoration: none;
  background: #003780;
}

.tab-area-wrap .area-tab-contents dd dd {
  height: auto;
  overflow: inherit;
  margin: 0 0 15px;
}

.tab-area-wrap .area-tab-contents dd dd:last-child {
  margin: 0;
}

.tab-area-wrap .area-tab-contents ul {
  overflow: hidden;
  font-size: 14px;
}

.tab-area-wrap .area-tab-contents li {
  float: left;
  line-height: 1.2;
  margin: 0 15px 10px 0;
  padding: 0 15px 0 0;
  border-right: 1px solid #446ca2;
}

.tab-area-wrap .area-tab-contents li:last-child {
  margin: 0;
  padding: 0;
  border: none;
}

.tab-area-wrap .area-tab-contents li a {
  display: inline-block;
  position: relative;
  padding: 0 0 0 20px;
}

.tab-area-wrap .area-tab-contents li a:before {
  position: absolute;
  top: -1px;
  left: 0;
}

.tab-area-wrap .area-tab-contents .type-city a:before {
  content: "\e901";
  font-family: icomoon;
}

.tab-area-wrap .area-tab-contents .type-spot a:before {
  content: "\f083";
  font-family: FontAwesome;
}

@media screen and (max-width: 811px) {
  .tab-area-wrap {
    max-height: 70vh;
    overflow: auto;
    margin: 0 -10px;
  }

  .tab-area {
    display: none;
  }

  .tab-area-wrap .area-tab-contents {
    width: 100%;
    padding: 0;
  }

  .tab-area-wrap .area-tab-contents > div {
    display: block !important;
  }

  .tab-area-wrap .area-tab-contents > div > dl > dd {
    display: none;
    height: auto;
    padding: 10px;
    border-bottom: 1px solid #e2e2e2;
  }

  .tab-area-wrap .area-tab-contents > div > dl > dt {
    margin: 0;
    border-bottom: 1px solid #e2e2e2;
    font-size: 14px;
  }

  .tab-area-wrap .area-tab-contents > div > dl > dt a {
    display: block;
    padding: 10px 15px 10px 10px;
    border-left: 5px solid #003780;
  }

  .tab-area-wrap .area-tab-contents > div > dl > dt a.is-open {
    color: #fff;
    background: #003780;
  }

  .tab-area-wrap .area-tab-contents > div > dl > dt a:before {
    content: "\f078";
    top: 50%;
    right: 15px;
    left: auto;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .tab-area-wrap .area-tab-contents > div > dl > dt a.is-open:before {
    content: "\f077";
  }

  .tab-area-wrap .area-tab-contents dd dt {
    margin: 0;
  }

  .tab-area-wrap .area-tab-contents dd dt a {
    display: block;
    position: relative;
    padding: 10px 15px;
    border-radius: 0;
    font-size: 13px;
    background: #f3f3f3;
  }

  .tab-area-wrap .area-tab-contents dd dt a:after {
    content: "\f105";
    position: absolute;
    top: 50%;
    right: 15px;
    font-family: FontAwesome;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .tab-area-wrap .area-tab-contents dd dd {
    margin: 0;
  }

  .tab-area-wrap .area-tab-contents ul {
    font-size: 12px;
  }

  .tab-area-wrap .area-tab-contents li {
    float: none;
    margin: 0;
    padding: 0;
    border-right: none;
    border-bottom: 1px solid #e2e2e2;
  }

  .tab-area-wrap .area-tab-contents li a {
    display: block;
    padding: 10px 15px 10px 35px;
  }

  .tab-area-wrap .area-tab-contents li a:before {
    top: 10px;
    left: 15px;
  }

  .tab-area-wrap .area-tab-contents li a:after {
    content: "\f105";
    position: absolute;
    top: 50%;
    right: 15px;
    font-family: FontAwesome;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .remodal-close {
    right: 0 !important;
  }
}


/*======================================

	人気テーマリスト

=======================================*/
.popular-theme-list {
  display: -webkit-flex;
  display: flex;
  max-width: 1040px;
  margin: 0 auto;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}

.popular-theme-list:before{
  content: "";
  display: block;
  width: 23.26923076923077%;
  order: 1;
}

.popular-theme-list:after{
  content: "";
  display: block;
  width: 23.26923076923077%;
}

.popular-theme-item {
  width: 23.26923076923077%;
  margin: 0 0 25px;
  text-align: center;
  background: #fff;
  box-sizing: border-box;
}

.popular-theme-img img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
/* ******　Theme　****** */
.column .popular-theme-img img {
  width: 242px;
  height: 180px;
}
/* ******　AreaTop ＆ NationTop ＆ CityTop　****** */
.column .main .popular-theme-img img {
  width: 180px;
  height: 127px;
}


.popular-theme-ttl {
  display: table;
  width: 100%;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
  box-sizing: border-box;
}

.popular-theme-ttl a {
  display: table-cell;
  height: 60px;
  line-height: 1.2;
  vertical-align: middle;
  padding: 5px 10px;
  color: #003780;
  font-size: 14px;
  font-weight: bold;
}

.popular-theme-ttl span {
  font-size: 12px;
}

.popular-theme-parent {
  display: table;
  width: 100%;
  box-sizing: border-box;
}

.popular-theme-parent a {
  display: table-cell;
  vertical-align: middle;
  padding: 10px 15px;
  color: #003780;
  font-size: 12px;
  text-align: left;
  background: #ccd7e6;
}

.popular-theme-parent a:hover {
  color: #fff;
  text-decoration: none;
  background: #003780;
}

@media screen and (max-width: 811px) {
  .popular-theme-list:before{
    content: none;
  }

  .popular-theme-list:after{
    content: none;
  }

  .popular-theme-item {
    width: 48.5%;
    margin: 0 0 10px;
  }

  .popular-theme-img img {
    width: 100%;
    vertical-align: top;
  }
  /* ******　Theme　****** */
  .column .popular-theme-img img {
    width: 100%;
    height: 32.8vw;
  }
  /* ******　AreaTop ＆ NationTop ＆ CityTop　****** */
  .column .main .popular-theme-img img {
    width: 100%;
    height: 32.8vw;
  }


  .popular-theme-ttl a {
    font-size: 12px;
  }

  .popular-theme-ttl span {
    font-size: 10px;
  }

  .popular-theme-parent a {
    padding: 5px 10px;
    font-size: 11px;
  }
}


/*======================================

	ページング

=======================================*/
.list-paging {
  margin: 40px 0;
  text-align: center;
}

.list-paging a {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin: 0 4px;
  font-size: 16px;
  font-weight: bold;
  background: #f3f3f3;
}

.list-paging a:hover {
  color: #fff;
  text-decoration: none;
  background: #003780;
}

.list-paging span {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin: 0 4px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  background: #003780;
}

@media screen and (max-width: 811px) {
  .list-paging {
    margin: 0 0 30px;
    padding: 0 15px;
  }

  .list-paging a {
    width: 36px;
    height: 36px;
    line-height: 36px;
    margin: 5px 2px 0;
    font-size: 13px;
  }

  .list-paging span {
    width: 36px;
    height: 36px;
    line-height: 36px;
    margin: 5px 2px 0;
    font-size: 13px;
  }
}