@charset "UTF-8";
/* v1.0 2017/10/01 */
/* dom-common-pc.css */
/* animation
---------------------------------------------------------- */
/* fadeIn1 */
@-webkit-keyframes fadeIn1 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn1 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* slideIn1 */
@-webkit-keyframes slideIn1 {
  0% {
    bottom: -100%;
  }
  100% {
    bottom: 0;
  }
}
@keyframes slideIn1 {
  0% {
    bottom: -100%;
  }
  100% {
    bottom: 0;
  }
}
/* body
---------------------------------------------------------- */
body {
  font-size: 1.3rem;
  color: #323743;
}

.dom-contents {
  min-width: 970px;
  position: relative;
  z-index: 0;
}

.dom-contents-body a {
  color: #125687;
}
.dom-contents-body img {
  max-width: 100%;
}

/* jQuery plugin - Magnific Popup
---------------------------------------------------------- */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box;
}

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}

.mfp-preloader a {
  color: #CCC;
}

.mfp-preloader a:hover {
  color: #FFF;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 50px;
  height: 50px;
  line-height: 50px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 36px;
  font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1;
}

/*.mfp-close:active {
	top: 1px;
}*/
.mfp-close-btn-in .mfp-close {
  color: #fff;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
  margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}

.mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}

.mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7;
}

.mfp-arrow-left {
  left: 0;
}

.mfp-arrow-left:after {
  border-right: 17px solid #FFF;
  margin-left: 31px;
}

.mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
  right: 0;
}

.mfp-arrow-right:after {
  border-left: 17px solid #FFF;
  margin-left: 39px;
}

.mfp-arrow-right:before {
  border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}

.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
  		 * Remove all paddings around the image on small screen
  		 */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }

  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }

  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }

  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }

  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box;
  }

  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }

  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }

  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}
@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }

  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}
/* jQuery plugin - darktooltip
---------------------------------------------------------- */
.dark-tooltip {
  display: none;
  position: absolute;
  z-index: 100;
  text-decoration: none;
  font-weight: normal;
  height: auto;
  top: 0;
  left: 0;
}

.dark-tooltip.small {
  font-size: 12px;
  max-width: 150px;
}

.dark-tooltip.medium {
  font-size: 14px;
  max-width: 200px;
}

.dark-tooltip.large {
  font-size: 16px;
  max-width: 250px;
}

/* 20171006:位置を調整 */
.dark-tooltip.north {
  margin-top: 10px;
}

.dark-tooltip.south {
  margin-top: -10px;
}

.dark-tooltip.west {
  margin-left: 10px;
}

.dark-tooltip.east {
  margin-left: -10px;
}

/* Tips */
.dark-tooltip .tip {
  content: "";
  position: absolute;
  display: block;
}

.dark-tooltip.south .tip {
  background: url(../../../images/dom/1.0/ico-tootltip-tip-south.png) no-repeat 0 0;
  width: 18px;
  height: 14px;
  left: 50%;
  top: 100%;
  margin-left: -9px;
}

.dark-tooltip.west .tip {
  background: url(../../../images/dom/1.0/ico-tootltip-tip-west.png) no-repeat 0 0;
  width: 14px;
  height: 18px;
  right: 100%;
  top: 50%;
  margin-top: -9px;
}

.dark-tooltip.north .tip {
  background: url(../../../images/dom/1.0/ico-tootltip-tip-north.png) no-repeat 0 0;
  width: 18px;
  height: 14px;
  left: 50%;
  bottom: 100%;
  margin-left: -9px;
}

.dark-tooltip.east .tip {
  background: url(../../../images/dom/1.0/ico-tootltip-tip-east.png) no-repeat 0 0;
  width: 14px;
  height: 18px;
  left: 100%;
  top: 50%;
  margin-top: -9px;
}

/* confirm */
.dark-tooltip ul.confirm {
  list-style-type: none;
  margin-top: 5px;
  display: inline-block;
  margin: 0 auto;
}

.dark-tooltip ul.confirm li {
  padding: 10px;
  float: left;
  margin: 5px;
  min-width: 25px;
  border-radius: 3px;
}

/* themes */
.dark-tooltip.dark {
  background-color: #fff;
  color: #333;
}

.dark-tooltip.light {
  background-color: #fff;
  color: #333;
}

.dark-tooltip.dark ul.confirm li {
  background-color: #416E85;
}

.dark-tooltip.dark ul.confirm li:hover {
  background-color: #417E85;
}

.dark-tooltip.light ul.confirm li {
  background-color: #C1DBDB;
}

.dark-tooltip.light ul.confirm li:hover {
  background-color: #DCE8E8;
}

/* Animations */
.animated {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
}

@-webkit-keyframes flipInUp {
  0% {
    -webkit-transform: perspective(400px) rotateX(-90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateX(5deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateX(-5deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@keyframes flipInUp {
  0% {
    transform: perspective(400px) rotateX(-90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(5deg);
  }
  70% {
    transform: perspective(400px) rotateX(-5deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes flipInRight {
  0% {
    -webkit-transform: perspective(400px) rotateY(-90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateY(5deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateY(-5deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@keyframes flipInRight {
  0% {
    transform: perspective(400px) rotateY(-90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(5deg);
  }
  70% {
    transform: perspective(400px) rotateY(-5deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
.flipIn {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

.flipIn.south,
.flipIn.north {
  -webkit-animation-name: flipInUp;
  animation-name: flipInUp;
}

.flipIn.west,
.flipIn.east {
  -webkit-animation-name: flipInRight;
  animation-name: flipInRight;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

/* Modal */
.darktooltip-modal-layer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../../../images/dom/1.0/bg-modal.png");
  opacity: .7;
  display: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
  margin: auto;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff "../../../images/dom/1.0/ajax-loader.gif" center center no-repeat;
}

/* Arrows */
.slick-prev,
.slick-next {
  text-decoration: none;
  text-align: center;
  outline: 0;
  width: 36px;
  height: 36px;
  font-size: 0;
  z-index: 99;
  position: relative;
  position: absolute;
  bottom: -46px;
}
.slick-prev:before,
.slick-next:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-prev:before,
.slick-next:before {
  display: block;
  font-size: 2.2rem;
  line-height: 34px;
  text-align: center;
  color: #999;
  text-indent: 0;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  transition: opacity .2s;
}
.slick-prev:hover:hover, .slick-prev:focus:hover,
.slick-next:hover:hover,
.slick-next:focus:hover {
  opacity: .8;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: .2;
}

.slick-prev {
  left: 0;
}
.slick-prev:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.slick-next {
  right: 0;
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 50px;
}

.slick-dots {
  position: absolute;
  bottom: -46px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 8px;
  width: 8px;
  margin: 0 8px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  background: #e0e0e0;
  text-indent: -9999px;
  display: block;
  width: 8px;
  height: 8px;
  margin: 0 5px;
  outline: 0;
  border-radius: 5px;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
  background: #cc0d21;
}
.slick-dots li.slick-active button {
  background: #cc0d21;
}

/* Counter */
.dom-slick-counter {
  text-align: center;
  width: 100%;
  position: absolute;
  bottom: -70px;
  left: 0;
}

@font-face {
  font-family: 'jtb-dom';
  src: url("../../../fonts/dom/1.0/jtb-dom.ttf") format("truetype"), url("../../../fonts/dom/1.0/jtb-dom.woff") format("woff"), url("../../../fonts/dom/1.0/jtb-dom.svg#jtb-dom") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^="dom__ico-"],
[class*=" dom__ico-"] {
  font-family: 'jtb-dom' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-planlist-business:before {
  content: "\e977";
}

.ico-planlist-camera:before {
  content: "\e978";
}

.ico-planlist-together:before {
  content: "\e97a";
}

.ico-planlist-sale:before {
  content: "\e97b";
}

.ico-planlist-themepark:before {
  content: "\e97c";
}

.ico-planlist-review:before {
  content: "\e97d";
}

.ico-planlist-premium:before {
  content: "\e97e";
}

.ico-planlist-calendar:before {
  content: "\e97f";
}

.ico-planlist-onsen:before {
  content: "\e980";
}

.ico-planlist-meal:before {
  content: "\e981";
}

.ico-tel-03:before {
  content: "\e976";
}

.dom__ico-dp-flight:before {
  content: "\e975";
}

.dom__ico-dp-jr:before {
  content: "\e974";
}

.dom__ico-dp:before {
  content: "\e979";
}

.dom__ico-scroll:before {
  content: "\e972";
}

.dom__ico-area:before {
  content: "\e973";
}

.dom__ico-arr-pagetop-pc:before {
  content: "\e971";
}

.dom__ico-store-02:before {
  content: "\e96d";
}

.dom__ico-tel-02:before {
  content: "\e96e";
}

.dom__ico-internet-store:before {
  content: "\e96f";
}

.dom__ico-internet:before {
  content: "\e970";
}

.dom__ico-stock-circle:before {
  content: "\e961";
}

.dom__ico-stock-circle-double:before {
  content: "\e969";
}

.dom__ico-stock-cross:before {
  content: "\e96a";
}

.dom__ico-stock-square:before {
  content: "\e96b";
}

.dom__ico-stock-triangle:before {
  content: "\e96c";
}

.dom__ico-add:before {
  content: "\e900";
}

.dom__ico-airhotel:before {
  content: "\e901";
}

.dom__ico-anchor:before {
  content: "\e902";
}

.dom__ico-anchor-02:before {
  content: "\e903";
}

.dom__ico-arr:before {
  content: "\e904";
}

.dom__ico-arr-02:before {
  content: "\e905";
}

.dom__ico-arr-02-down:before {
  content: "\e906";
}

.dom__ico-arr-03:before {
  content: "\e907";
}

.dom__ico-arr-04:before {
  content: "\e908";
}

.dom__ico-arr-05:before {
  content: "\e909";
}

.dom__ico-arr-06:before {
  content: "\e90a";
}

.dom__ico-arr-07:before {
  content: "\e90b";
}

.dom__ico-arr-08:before {
  content: "\e90c";
}

.dom__ico-arr-09:before {
  content: "\e90d";
}

.dom__ico-arr-10:before {
  content: "\e90e";
}

.dom__ico-arr-pagetop:before {
  content: "\e90f";
}

.dom__ico-bag:before {
  content: "\e910";
}

.dom__ico-bag-02:before {
  content: "\e911";
}

.dom__ico-balloon:before {
  content: "\e912";
}

.dom__ico-balloon-02:before {
  content: "\e913";
}

.dom__ico-bed:before {
  content: "\e914";
}

.dom__ico-bell:before {
  content: "\e915";
}

.dom__ico-calendar:before {
  content: "\e916";
}

.dom__ico-calendar-time:before {
  content: "\e917";
}

.dom__ico-car:before {
  content: "\e918";
}

.dom__ico-car-side:before {
  content: "\e919";
}

.dom__ico-carspec-capacity:before {
  content: "\e91a";
}

.dom__ico-carspec-crew:before {
  content: "\e91b";
}

.dom__ico-carspec-handle:before {
  content: "\e91c";
}

.dom__ico-carspec-windmill:before {
  content: "\e91d";
}

.dom__ico-chain:before {
  content: "\e91e";
}

.dom__ico-change:before {
  content: "\e91f";
}

.dom__ico-check:before {
  content: "\e920";
}

.dom__ico-check-02:before {
  content: "\e921";
}

.dom__ico-clip:before {
  content: "\e922";
}

.dom__ico-close:before {
  content: "\e923";
}

.dom__ico-coin:before {
  content: "\e924";
}

.dom__ico-copy:before {
  content: "\e925";
}

.dom__ico-crown:before {
  content: "\e926";
}

.dom__ico-custam:before {
  content: "\e927";
}

.dom__ico-decrease:before {
  content: "\e928";
}

.dom__ico-disable-user:before {
  content: "\e929";
}

.dom__ico-drink:before {
  content: "\e92a";
}

.dom__ico-dustbox:before {
  content: "\e92b";
}

.dom__ico-external:before {
  content: "\e92c";
}

.dom__ico-favorite:before {
  content: "\e92d";
}

.dom__ico-flag:before {
  content: "\e92e";
}

.dom__ico-flag-02:before {
  content: "\e92f";
}

.dom__ico-gift:before {
  content: "\e930";
}

.dom__ico-heart:before {
  content: "\e931";
}

.dom__ico-help:before {
  content: "\e932";
}

.dom__ico-home:before {
  content: "\e933";
}

.dom__ico-hotel:before {
  content: "\e934";
}

.dom__ico-list:before {
  content: "\e935";
}

.dom__ico-mail:before {
  content: "\e936";
}

.dom__ico-mail-02:before {
  content: "\e937";
}

.dom__ico-map:before {
  content: "\e938";
}

.dom__ico-meal:before {
  content: "\e939";
}

.dom__ico-meal-02:before {
  content: "\e93a";
}

.dom__ico-non-smoking:before {
  content: "\e93b";
}

.dom__ico-onsen:before {
  content: "\e93c";
}

.dom__ico-pc:before {
  content: "\e93d";
}

.dom__ico-pdf:before {
  content: "\e93e";
}

.dom__ico-pencil:before {
  content: "\e93f";
}

.dom__ico-pin:before {
  content: "\e940";
}

.dom__ico-place:before {
  content: "\e941";
}

.dom__ico-plane:before {
  content: "\e942";
}

.dom__ico-plane-02:before {
  content: "\e943";
}

.dom__ico-plane-03:before {
  content: "\e944";
}

.dom__ico-planspec-carnavi:before {
  content: "\e945";
}

.dom__ico-planspec-driver:before {
  content: "\e946";
}

.dom__ico-planspec-gasoline:before {
  content: "\e947";
}

.dom__ico-planspec-insurance:before {
  content: "\e948";
}

.dom__ico-point:before {
  content: "\e949";
}

.dom__ico-price:before {
  content: "\e94a";
}

.dom__ico-price-02:before {
  content: "\e94b";
}

.dom__ico-print:before {
  content: "\e94c";
}

.dom__ico-refine:before {
  content: "\e94d";
}

.dom__ico-search:before {
  content: "\e94e";
}

.dom__ico-seat:before {
  content: "\e94f";
}

.dom__ico-seat-02:before {
  content: "\e950";
}

.dom__ico-share:before {
  content: "\e951";
}

.dom__ico-ship:before {
  content: "\e952";
}

.dom__ico-smile:before {
  content: "\e953";
}

.dom__ico-sort:before {
  content: "\e954";
}

.dom__ico-star:before {
  content: "\e955";
}

.dom__ico-star-02:before {
  content: "\e956";
}

.dom__ico-star-outline:before {
  content: "\e957";
}

.dom__ico-store:before {
  content: "\e958";
}

.dom__ico-sublist:before {
  content: "\e959";
}

.dom__ico-succession:before {
  content: "\e95a";
}

.dom__ico-tag:before {
  content: "\e95b";
}

.dom__ico-tel:before {
  content: "\e95c";
}

.dom__ico-time:before {
  content: "\e95d";
}

.dom__ico-time-02:before {
  content: "\e95e";
}

.dom__ico-time-03:before {
  content: "\e95f";
}

.dom__ico-time-04:before {
  content: "\e960";
}

.dom__ico-train:before {
  content: "\e962";
}

.dom__ico-transition:before {
  content: "\e963";
}

.dom__ico-up-grade:before {
  content: "\e964";
}

.dom__ico-user:before {
  content: "\e965";
}

.dom__ico-warning:before {
  content: "\e966";
}

.dom__ico-warning-02:before {
  content: "\e967";
}

.dom__ico-zoom:before {
  content: "\e968";
}

/* buttons
---------------------------------------------------------- */
/* pagetopボタン */
.dom__btn-page-top {
  bottom: 30px;
  right: 25px;
  position: fixed;
  z-index: 1000;
  cursor: pointer;
  display: none;
}
.dom__btn-page-top a {
  text-decoration: none;
  display: block;
  width: 80px;
  height: 50px;
  transition: opacity .2s;
  position: relative;
}
.dom__btn-page-top a:hover {
  opacity: .8;
}
.dom__btn-page-top a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-page-top a:before {
  display: inline-block;
  text-align: center;
  font-size: 3rem;
  line-height: 50px;
  width: 100%;
  text-align: center;
  color: #333;
}

/* お気に入りボタン */
.dom__btn-favorite-01 {
  display: inline-block;
  background-color: #ededed;
  border-style: solid;
  border-color: #ccc;
  border-radius: 6px;
  color: #999;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: opacity .2s;
  border-width: 2px;
  font-size: 1.3rem;
  line-height: 35px;
  height: 39px;
  font-weight: bold;
  width: 110px;
}
.dom__btn-favorite-01:hover {
  opacity: .8;
}
.dom__btn-favorite-01 span {
  position: relative;
}
.dom__btn-favorite-01 span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-favorite-01 span:before {
  color: #ccc;
  margin-right: .3em;
  vertical-align: middle;
}
.dom__btn-favorite-01.is-checked {
  background-color: #fff;
  border-color: #cc0d21;
  color: #cc0d21;
}
.dom__btn-favorite-01.is-checked span:before {
  color: #cc0d21;
}
.dom__btn-favorite-01.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-favorite-01.is-disabled:hover {
  opacity: 1;
}
.dom__btn-favorite-01.is-disabled span {
  color: #95999E !important;
}
.dom__btn-favorite-01.is-disabled span:before, .dom__btn-favorite-01.is-disabled span:after {
  color: #95999E !important;
}

.dom__btn-favorite-02 {
  display: inline-block;
  background-color: #ededed;
  border-style: solid;
  border-color: #ccc;
  border-radius: 6px;
  color: #999;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: opacity .2s;
  border-width: 1px;
  font-size: 1.1rem;
  line-height: 21px;
  height: 23px;
  font-weight: bold;
  border-radius: 3px;
  padding: 0 .8em;
}
.dom__btn-favorite-02:hover {
  opacity: .8;
}
.dom__btn-favorite-02 span {
  position: relative;
}
.dom__btn-favorite-02 span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-favorite-02 span:before {
  color: #ccc;
  margin-right: .3em;
  vertical-align: middle;
}
.dom__btn-favorite-02.is-checked {
  background-color: #fff;
  border-color: #cc0d21;
  color: #cc0d21;
}
.dom__btn-favorite-02.is-checked span:before {
  color: #cc0d21;
}
.dom__btn-favorite-02.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-favorite-02.is-disabled:hover {
  opacity: 1;
}
.dom__btn-favorite-02.is-disabled span {
  color: #95999E !important;
}
.dom__btn-favorite-02.is-disabled span:before, .dom__btn-favorite-02.is-disabled span:after {
  color: #95999E !important;
}

.dom__btn-favorite-03 {
  display: inline-block;
  background-color: #ededed;
  border-style: solid;
  border-color: #ccc;
  border-radius: 6px;
  color: #999;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: opacity .2s;
  border-width: 1px;
  font-size: 1.2rem;
  line-height: 25px;
  height: 27px;
  font-weight: bold;
  border-radius: 3px;
  padding: 0 .8em;
}
.dom__btn-favorite-03:hover {
  opacity: .8;
}
.dom__btn-favorite-03 span {
  position: relative;
}
.dom__btn-favorite-03 span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-favorite-03 span:before {
  color: #ccc;
  margin-right: .3em;
  vertical-align: middle;
}
.dom__btn-favorite-03.is-checked {
  background-color: #fff;
  border-color: #cc0d21;
  color: #cc0d21;
}
.dom__btn-favorite-03.is-checked span:before {
  color: #cc0d21;
}
.dom__btn-favorite-03 span:before {
  margin-right: .5em;
}
.dom__btn-favorite-03.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-favorite-03.is-disabled:hover {
  opacity: 1;
}
.dom__btn-favorite-03.is-disabled span {
  color: #95999E !important;
}
.dom__btn-favorite-03.is-disabled span:before, .dom__btn-favorite-03.is-disabled span:after {
  color: #95999E !important;
}

/* お気に入りを見る、最近見た施設を見る ボタン */
.dom__btn-show-favorite-01 {
  display: inline-block;
  text-align: center;
}
.dom__btn-show-favorite-01 > a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  color: #125687;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.3rem;
  line-height: 1;
  color: #cc0d21;
  padding: 10px;
  position: relative;
  transition: opacity .2s;
  text-decoration: none;
}
.dom__btn-show-favorite-01 > a:hover {
  opacity: .8;
}
.dom__btn-show-favorite-01 > a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-show-favorite-01 > a:hover {
  opacity: .8;
}
.dom__btn-show-favorite-01 > a:before {
  margin-right: .3em;
}
.dom__btn-show-favorite-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-show-favorite-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-show-favorite-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-show-favorite-01.is-disabled > a span:before, .dom__btn-show-favorite-01.is-disabled > a span:after {
  color: #95999E !important;
}

.dom__btn-show-recent-01 {
  display: inline-block;
  text-align: center;
}
.dom__btn-show-recent-01 > a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  color: #125687;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.3rem;
  line-height: 1;
  color: #323743;
  padding: 10px;
  position: relative;
  transition: opacity .2s;
  text-decoration: none;
}
.dom__btn-show-recent-01 > a:hover {
  opacity: .8;
}
.dom__btn-show-recent-01 > a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-show-recent-01 > a:hover {
  opacity: .8;
}
.dom__btn-show-recent-01 > a:before {
  margin-right: .3em;
}
.dom__btn-show-recent-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-show-recent-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-show-recent-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-show-recent-01.is-disabled > a span:before, .dom__btn-show-recent-01.is-disabled > a span:after {
  color: #95999E !important;
}

/* シェアするボタン */
.dom__btn-sns-01 a {
  display: inline-block;
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 3px;
  color: #323743;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: opacity .2s;
  font-size: 1.2rem;
  line-height: 25px;
  height: 27px;
  font-weight: bold;
  border-radius: 3px;
  padding: 0 .8em;
}
.dom__btn-sns-01 a:hover {
  opacity: .8;
}
.dom__btn-sns-01 a span {
  position: relative;
}
.dom__btn-sns-01 a span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-sns-01 a span:before {
  margin-right: .5em;
  vertical-align: middle;
}
.dom__btn-sns-01.is-disabled a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-sns-01.is-disabled a:hover {
  opacity: 1;
}
.dom__btn-sns-01.is-disabled a span {
  color: #95999E !important;
}
.dom__btn-sns-01.is-disabled a span:before, .dom__btn-sns-01.is-disabled a span:after {
  color: #95999E !important;
}

/* もっと見る、さらに表示などのテキストトグルボタン */
.dom__btn-more-01 {
  display: inline-block;
  margin: auto;
  cursor: pointer;
  text-align: center;
  transition: opacity .2s;
}
.dom__btn-more-01:hover {
  opacity: .8;
}
.dom__btn-more-01 > span {
  color: #125687;
  font-weight: bold;
  position: relative;
}
.dom__btn-more-01 > span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-more-01 > span:before {
  display: inline-block;
  color: #323743;
  font-size: 1.2rem;
  margin-right: .8em;
  transition: .2s;
}
.dom__btn-more-01.is-open > span:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.dom__btn-more-01 span:after {
  content: "もっと表示する";
}
.dom__btn-more-01.is-open span:after {
  content: "閉じる";
}

.dom__btn-more-02 {
  display: inline-block;
  margin: auto;
  cursor: pointer;
  text-align: center;
  transition: opacity .2s;
}
.dom__btn-more-02:hover {
  opacity: .8;
}
.dom__btn-more-02 > span {
  color: #125687;
  font-weight: bold;
  position: relative;
}
.dom__btn-more-02 > span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-more-02 > span:before {
  display: inline-block;
  color: #323743;
  font-size: 1.2rem;
  margin-right: .8em;
  transition: .2s;
}
.dom__btn-more-02.is-open > span:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.dom__btn-more-02 span:after {
  content: "再検索する";
}
.dom__btn-more-02.is-open span:after {
  content: "閉じる";
}
.dom__btn-more-02.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-more-02.is-disabled:hover {
  opacity: 1;
}
.dom__btn-more-02.is-disabled span {
  color: #95999E !important;
}
.dom__btn-more-02.is-disabled span:before, .dom__btn-more-02.is-disabled span:after {
  color: #95999E !important;
}

a.dom__btn-more-03 {
  text-decoration: none;
}
a.dom__btn-more-03.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
a.dom__btn-more-03.is-disabled:hover {
  opacity: 1;
}
a.dom__btn-more-03.is-disabled span {
  color: #95999E !important;
}
a.dom__btn-more-03.is-disabled span:before, a.dom__btn-more-03.is-disabled span:after {
  color: #95999E !important;
}

.dom__btn-more-03 {
  display: block;
  text-align: center;
  font-size: 1.6rem;
  line-height: 58px;
  border: 1px solid #195178;
  padding: 0 30px;
  border-radius: 4px;
  text-align: center;
  transition: opacity .2s;
}
.dom__btn-more-03:hover {
  opacity: .8;
}
.dom__btn-more-03 span {
  display: inline-block;
  padding-right: 30px;
  position: relative;
}
.dom__btn-more-03 span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-more-03 span:before {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
  font-size: 1.5rem;
}
.dom__btn-more-03.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-more-03.is-disabled:hover {
  opacity: 1;
}
.dom__btn-more-03.is-disabled span {
  color: #95999E !important;
}
.dom__btn-more-03.is-disabled span:before, .dom__btn-more-03.is-disabled span:after {
  color: #95999E !important;
}

/* 白 戻るボタン */
.dom__btn-back-01 {
  display: inline-block;
  text-align: center;
}
.dom__btn-back-01 > a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  color: #125687;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.5rem;
  line-height: 50px;
  font-weight: bold;
  padding: 0 30px;
}
.dom__btn-back-01 > a:hover {
  opacity: .8;
}
.dom__btn-back-01 > a span {
  display: inline-block;
  position: relative;
}
.dom__btn-back-01 > a span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-back-01 > a span:before {
  display: inline-block;
  transform: rotate(180deg);
  margin-right: .5em;
}
.dom__btn-back-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-back-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-back-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-back-01.is-disabled > a span:before, .dom__btn-back-01.is-disabled > a span:after {
  color: #95999E !important;
}

.dom__btn-back-02 {
  display: inline-block;
  min-width: 24rem;
  text-align: center;
}
.dom__btn-back-02 > a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  color: #125687;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.5rem;
  line-height: 50px;
  font-weight: bold;
  padding: 0 30px;
}
.dom__btn-back-02 > a:hover {
  opacity: .8;
}
.dom__btn-back-02 > a span {
  display: inline-block;
  position: relative;
}
.dom__btn-back-02 > a span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-back-02 > a span:before {
  display: inline-block;
  transform: rotate(180deg);
  margin-right: 1em;
}
.dom__btn-back-02.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-back-02.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-back-02.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-back-02.is-disabled > a span:before, .dom__btn-back-02.is-disabled > a span:after {
  color: #95999E !important;
}

.dom__btn-back-03 {
  display: inline-block;
  text-align: center;
  width: 18rem;
}
.dom__btn-back-03 > a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  color: #125687;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.4rem;
  line-height: 40px;
  font-weight: bold;
}
.dom__btn-back-03 > a:hover {
  opacity: .8;
}
.dom__btn-back-03 > a span {
  display: inline-block;
  position: relative;
}
.dom__btn-back-03 > a span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-back-03 > a span:before {
  display: inline-block;
  transform: rotate(180deg);
  margin-right: .5em;
}
.dom__btn-back-03.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-back-03.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-back-03.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-back-03.is-disabled > a span:before, .dom__btn-back-03.is-disabled > a span:after {
  color: #95999E !important;
}

/* 赤 検索ボタン */
.dom__btn-submit-01 {
  color: #fff;
  font-size: 1.6rem;
  line-height: 40px;
  font-weight: bold;
  background: transparent linear-gradient(112deg, #CC0D21 0%, #ec64a9 100%) 0% 0% no-repeat padding-box;
  transition: .3s;
  outline: none;
  outline: none;
  position: relative;
  overflow: hidden;
  /*クリックした後で波紋が広がる*/
  /*ページが最初に読み込まれた時に波紋が出ない*/
  /*マウスオーバーで波紋が出たら見えるようにする*/
}
.dom__btn-submit-01:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  background: #ffd2d2;
  border-radius: 100%;
  opacity: .6;
  transform: scale(0);
  /*下記の値はボタンのサイズによる*/
  width: 110%;
  height: 230px;
  margin-left: -55%;
  margin-top: -115px;
}
.dom__btn-submit-01:not(:active):before {
  animation: ripple 1s ease-out;
}
.dom__btn-submit-01:before {
  visibility: hidden;
}
.dom__btn-submit-01:focus:before {
  visibility: visible;
}
.dom__btn-submit-01:hover {
  border-radius: 40px;
}
.dom__btn-submit-01 span {
  display: inline-block;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  justify-content: center;
}
.dom__btn-submit-01 span:before {
  content: "";
  background: url(../../../images/dom/1.0/ico-search.svg) no-repeat center center;
  background-size: contain;
  width: 2rem;
  height: 2rem;
  display: inline-block;
  margin-right: .3rem;
}
.dom__btn-submit-01.is-disabled {
  pointer-events: none;
  background: rgba(192, 197, 203, 0.4);
  color: #95999E;
}
.dom__btn-submit-01.is-disabled span:before {
  background-image: url(../../../images/dom/1.0/ico-search-gray.svg);
}

/* 赤 検索ボタン 小さめ&検索アイコンなし */
.dom__btn-submit-02 {
  display: block;
  background-color: #cc0000;
  border: 1px solid #9a1b1b;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.3rem;
  line-height: 38px;
  font-weight: bold;
  padding: 0 15px;
}
.dom__btn-submit-02:hover {
  opacity: .8;
}
.dom__btn-submit-02.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-submit-02.is-disabled:hover {
  opacity: 1;
}
.dom__btn-submit-02.is-disabled span {
  color: #95999E !important;
}
.dom__btn-submit-02.is-disabled span:before, .dom__btn-submit-02.is-disabled span:after {
  color: #95999E !important;
}

/* 青 検索ボタン */
.dom__btn-submit-03 {
  background: transparent linear-gradient(112deg, #3498DB 0%, #52C8FF 100%) 0% 0% no-repeat padding-box;
  font-size: 1.2rem;
  line-height: 38px;
  font-weight: bold;
  color: #fff;
  padding: 0 8px;
  transition: .3s;
  outline: none;
  position: relative;
  overflow: hidden;
  /*クリックした後で波紋が広がる*/
  /*ページが最初に読み込まれた時に波紋が出ない*/
  /*マウスオーバーで波紋が出たら見えるようにする*/
}
.dom__btn-submit-03:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  background: #c6edff;
  border-radius: 100%;
  opacity: .6;
  transform: scale(0);
  /*下記の値はボタンのサイズによる*/
  width: 110%;
  height: 230px;
  margin-left: -55%;
  margin-top: -115px;
}
.dom__btn-submit-03:not(:active):before {
  animation: ripple 1s ease-out;
}
.dom__btn-submit-03:before {
  visibility: hidden;
}
.dom__btn-submit-03:focus:before {
  visibility: visible;
}
.dom__btn-submit-03:hover {
  border-radius: 40px;
}
.dom__btn-submit-03.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-submit-03.is-disabled:hover {
  opacity: 1;
}
.dom__btn-submit-03.is-disabled span {
  color: #95999E !important;
}
.dom__btn-submit-03.is-disabled span:before, .dom__btn-submit-03.is-disabled span:after {
  color: #95999E !important;
}

/* 赤 詳細リンクボタン */
.dom__btn-detail-01 > a {
  color: #D02335;
  background: transparent linear-gradient(112deg, #CC0D21 0%, #ec64a9 100%) 0% 0% no-repeat padding-box;
  position: relative;
  z-index: 0;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  display: block;
  padding: 17px;
  transition: .3s;
  text-decoration: none;
  outline: none;
  position: relative;
  overflow: hidden;
  /*クリックした後で波紋が広がる*/
  /*ページが最初に読み込まれた時に波紋が出ない*/
  /*マウスオーバーで波紋が出たら見えるようにする*/
  box-shadow: 2px 2px 4px rgba(50, 55, 67, 0.2);
}
.dom__btn-detail-01 > a:hover::after {
  transition: .3s;
  border: inherit;
  border-radius: 40px;
}
.dom__btn-detail-01 > a::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: .3s;
}
.dom__btn-detail-01 > a::after {
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  z-index: -2;
  background: #fff;
  margin: 3px;
}
.dom__btn-detail-01 > a:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  background: #eca7ae;
  border-radius: 100%;
  opacity: .6;
  transform: scale(0);
  /*下記の値はボタンのサイズによる*/
  width: 110%;
  height: 230px;
  margin-left: -55%;
  margin-top: -115px;
}
.dom__btn-detail-01 > a:not(:active):before {
  animation: ripple 1s ease-out;
}
.dom__btn-detail-01 > a:before {
  visibility: hidden;
}
.dom__btn-detail-01 > a:focus:before {
  visibility: visible;
}
.dom__btn-detail-01 > a:hover {
  border-radius: 40px;
}
.dom__btn-detail-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-detail-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-detail-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-detail-01.is-disabled > a span:before, .dom__btn-detail-01.is-disabled > a span:after {
  color: #95999E !important;
}

/* 赤 詳細リンクボタン - 下向き矢印（ページ内リンク） */
.dom__btn-detail-02 > a {
  display: block;
  background-color: #cc0000;
  border: 1px solid #9a1b1b;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.6rem;
  line-height: 50px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.dom__btn-detail-02 > a:hover {
  opacity: .8;
}
.dom__btn-detail-02 > a span {
  display: inline-block;
  padding-left: 28px;
  position: relative;
}
.dom__btn-detail-02 > a span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-detail-02 > a span:before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
  font-size: 1.5rem;
  color: #fff;
}
.dom__btn-detail-02.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-detail-02.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-detail-02.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-detail-02.is-disabled > a span:before, .dom__btn-detail-02.is-disabled > a span:after {
  color: #95999E !important;
}

/* 赤 詳細リンクボタン 小さめ */
.dom__btn-detail-03 > a {
  background: transparent linear-gradient(112deg, #CC0D21 0%, #ec64a9 100%) 0% 0% no-repeat padding-box;
  font-size: 1.3rem;
  line-height: 40px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  transition: .3s;
  text-decoration: none;
  outline: none;
  position: relative;
  overflow: hidden;
  /*クリックした後で波紋が広がる*/
  /*ページが最初に読み込まれた時に波紋が出ない*/
  /*マウスオーバーで波紋が出たら見えるようにする*/
}
.dom__btn-detail-03 > a:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  background: #ffd2d2;
  border-radius: 100%;
  opacity: .6;
  transform: scale(0);
  /*下記の値はボタンのサイズによる*/
  width: 110%;
  height: 230px;
  margin-left: -55%;
  margin-top: -115px;
}
.dom__btn-detail-03 > a:not(:active):before {
  animation: ripple 1s ease-out;
}
.dom__btn-detail-03 > a:before {
  visibility: hidden;
}
.dom__btn-detail-03 > a:focus:before {
  visibility: visible;
}
.dom__btn-detail-03 > a:hover {
  border-radius: 40px;
}
.dom__btn-detail-03.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-detail-03.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-detail-03.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-detail-03.is-disabled > a span:before, .dom__btn-detail-03.is-disabled > a span:after {
  color: #95999E !important;
}

/* 白 リンクボタン */
.dom__btn-link-01 > a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  color: #125687;
  text-decoration: none;
  transition: opacity .2s;
  border-radius: 4px;
  font-size: 1.3rem;
  line-height: 40px;
  font-weight: bold;
  text-align: center;
  padding: 0 20px 0 30px;
}
.dom__btn-link-01 > a:hover {
  opacity: .8;
}
.dom__btn-link-01 > a span {
  display: inline-block;
  padding-right: 20px;
  position: relative;
}
.dom__btn-link-01 > a span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-link-01 > a span:before {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
}

/* 青 詳細リンクボタン */
a.dom__btn-detail-04 {
  color: #fff;
  text-decoration: none;
}
a.dom__btn-detail-04.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
a.dom__btn-detail-04.is-disabled:hover {
  opacity: 1;
}
a.dom__btn-detail-04.is-disabled span {
  color: #95999E !important;
}
a.dom__btn-detail-04.is-disabled span:before, a.dom__btn-detail-04.is-disabled span:after {
  color: #95999E !important;
}

.dom__btn-detail-04 {
  display: block;
  background-color: #195178;
  border: 1px solid #e3dfdf;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.3rem;
  line-height: 40px;
  font-weight: bold;
  text-align: center;
}
.dom__btn-detail-04:hover {
  opacity: .8;
}
.dom__btn-detail-04.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-detail-04.is-disabled:hover {
  opacity: 1;
}
.dom__btn-detail-04.is-disabled span {
  color: #95999E !important;
}
.dom__btn-detail-04.is-disabled span:before, .dom__btn-detail-04.is-disabled span:after {
  color: #95999E !important;
}

/* 赤 予約系ボタン */
.dom__btn-cv-01 > a {
  display: block;
  background: transparent linear-gradient(112deg, #CC0D21 0%, #ec64a9 100%) 0% 0% no-repeat padding-box;
  font-size: 1.8rem;
  line-height: 60px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  text-decoration: none;
  transition: .3s;
  outline: none;
  position: relative;
  overflow: hidden;
  /*クリックした後で波紋が広がる*/
  /*ページが最初に読み込まれた時に波紋が出ない*/
  /*マウスオーバーで波紋が出たら見えるようにする*/
}
.dom__btn-cv-01 > a:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  background: #ffd2d2;
  border-radius: 100%;
  opacity: .6;
  transform: scale(0);
  /*下記の値はボタンのサイズによる*/
  width: 110%;
  height: 230px;
  margin-left: -55%;
  margin-top: -115px;
}
.dom__btn-cv-01 > a:not(:active):before {
  animation: ripple 1s ease-out;
}
.dom__btn-cv-01 > a:before {
  visibility: hidden;
}
.dom__btn-cv-01 > a:focus:before {
  visibility: visible;
}
.dom__btn-cv-01 > a:hover {
  border-radius: 40px;
}
.dom__btn-cv-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-cv-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-cv-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-cv-01.is-disabled > a span:before, .dom__btn-cv-01.is-disabled > a span:after {
  color: #95999E !important;
}

.dom__btn-cv-02 > a {
  display: block;
  background-color: #cc0000;
  border: 1px solid #9a1b1b;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.5rem;
  line-height: 40px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 0 30px;
}
.dom__btn-cv-02 > a:hover {
  opacity: .8;
}
.dom__btn-cv-02 > a span {
  display: inline-block;
  padding-right: 1.5em;
  position: relative;
}
.dom__btn-cv-02 > a span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-cv-02 > a span:before {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
  font-size: 1.3rem;
}
.dom__btn-cv-02.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-cv-02.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-cv-02.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-cv-02.is-disabled > a span:before, .dom__btn-cv-02.is-disabled > a span:after {
  color: #95999E !important;
}

/* 赤 確定ボタン */
.dom__btn-fix-01 > a {
  display: block;
  background-color: #cc0000;
  border: 1px solid #9a1b1b;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.8rem;
  line-height: 50px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.dom__btn-fix-01 > a:hover {
  opacity: .8;
}
.dom__btn-fix-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-fix-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-fix-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-fix-01.is-disabled > a span:before, .dom__btn-fix-01.is-disabled > a span:after {
  color: #95999E !important;
}

/* 赤 選択ボタン */
.dom__btn-select-01 > a {
  display: block;
  background-color: #cc0000;
  border: 1px solid #9a1b1b;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.6rem;
  line-height: 50px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.dom__btn-select-01 > a:hover {
  opacity: .8;
}
.dom__btn-select-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-select-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-select-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-select-01.is-disabled > a span:before, .dom__btn-select-01.is-disabled > a span:after {
  color: #95999E !important;
}

.dom__btn-select-02 {
  background: transparent linear-gradient(112deg, #3498DB 0%, #52C8FF 100%) 0% 0% no-repeat padding-box;
  font-size: 1.4rem;
  line-height: 40px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  cursor: pointer;
  transition: .3s;
  outline: none;
  position: relative;
  overflow: hidden;
  /*クリックした後で波紋が広がる*/
  /*ページが最初に読み込まれた時に波紋が出ない*/
  /*マウスオーバーで波紋が出たら見えるようにする*/
}
.dom__btn-select-02:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  background: #c6edff;
  border-radius: 100%;
  opacity: .6;
  transform: scale(0);
  /*下記の値はボタンのサイズによる*/
  width: 110%;
  height: 230px;
  margin-left: -55%;
  margin-top: -115px;
}
.dom__btn-select-02:not(:active):before {
  animation: ripple 1s ease-out;
}
.dom__btn-select-02:before {
  visibility: hidden;
}
.dom__btn-select-02:focus:before {
  visibility: visible;
}
.dom__btn-select-02:hover {
  border-radius: 40px;
}
.dom__btn-select-02.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-select-02.is-disabled:hover {
  opacity: 1;
}
.dom__btn-select-02.is-disabled span {
  color: #95999E !important;
}
.dom__btn-select-02.is-disabled span:before, .dom__btn-select-02.is-disabled span:after {
  color: #95999E !important;
}

.dom__btn-select-03 {
  display: block;
  background-color: #cc0000;
  border: 1px solid #9a1b1b;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.6rem;
  line-height: 50px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  cursor: pointer;
}
.dom__btn-select-03:hover {
  opacity: .8;
}
.dom__btn-select-03.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-select-03.is-disabled:hover {
  opacity: 1;
}
.dom__btn-select-03.is-disabled span {
  color: #95999E !important;
}
.dom__btn-select-03.is-disabled span:before, .dom__btn-select-03.is-disabled span:after {
  color: #95999E !important;
}

/* 青 変更ボタン */
.dom__btn-change-01 > a {
  display: block;
  background-color: #195178;
  border: 1px solid #e3dfdf;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  padding: 0 15px;
  font-size: 1.3rem;
  line-height: 28px;
  font-weight: bold;
  text-align: center;
}
.dom__btn-change-01 > a:hover {
  opacity: .8;
}
.dom__btn-change-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-change-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-change-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-change-01.is-disabled > a span:before, .dom__btn-change-01.is-disabled > a span:after {
  color: #95999E !important;
}

/* 赤 変更ボタン */
.dom__btn-change-02 > a {
  display: block;
  background-color: #cc0000;
  border: 1px solid #9a1b1b;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  padding: 0 15px;
  font-size: 1.3rem;
  line-height: 28px;
  font-weight: bold;
  text-align: center;
}
.dom__btn-change-02 > a:hover {
  opacity: .8;
}
.dom__btn-change-02.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-change-02.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-change-02.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-change-02.is-disabled > a span:before, .dom__btn-change-02.is-disabled > a span:after {
  color: #95999E !important;
}

/* 青 削除ボタン */
.dom__btn-delete-01 > a {
  display: block;
  background-color: #195178;
  border: 1px solid #e3dfdf;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  font-size: 1.6rem;
  line-height: 40px;
  font-weight: bold;
  padding: 0 30px;
  text-align: center;
}
.dom__btn-delete-01 > a:hover {
  opacity: .8;
}
.dom__btn-delete-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-delete-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-delete-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-delete-01.is-disabled > a span:before, .dom__btn-delete-01.is-disabled > a span:after {
  color: #95999E !important;
}

.dom__btn-delete-02 > a {
  display: block;
  background-color: #195178;
  border: 1px solid #e3dfdf;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  padding: 0 10px;
  font-size: 1.3rem;
  line-height: 28px;
  font-weight: bold;
  text-align: center;
}
.dom__btn-delete-02 > a:hover {
  opacity: .8;
}
.dom__btn-delete-02.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-delete-02.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-delete-02.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-delete-02.is-disabled > a span:before, .dom__btn-delete-02.is-disabled > a span:after {
  color: #95999E !important;
}

/* 青 コピーボタン */
.dom__btn-copy-01 > a {
  display: block;
  background-color: #195178;
  border: 1px solid #e3dfdf;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  padding: 0 15px;
  font-size: 1.2rem;
  line-height: 24px;
  font-weight: bold;
  text-align: center;
}
.dom__btn-copy-01 > a:hover {
  opacity: .8;
}
.dom__btn-copy-01.is-disabled > a {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-copy-01.is-disabled > a:hover {
  opacity: 1;
}
.dom__btn-copy-01.is-disabled > a span {
  color: #95999E !important;
}
.dom__btn-copy-01.is-disabled > a span:before, .dom__btn-copy-01.is-disabled > a span:after {
  color: #95999E !important;
}

/* お気に入り,最近見た施設ボタン  fixed 下部固定 */
.dom-btn-history-fixed {
  position: fixed;
  right: 0;
  bottom: 90px;
  background-color: #fff;
  border-radius: 6px 0 0 6px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
  z-index: 999;
}
.dom-btn-history-fixed__list > li {
  font-size: 1.2rem;
  line-height: 1.4;
  position: relative;
}
.dom-btn-history-fixed__list > li:after {
  content: "";
  display: block;
  width: 70%;
  height: 1px;
  background-color: #d7d7d7;
  position: absolute;
  bottom: 0;
  left: 15%;
}
.dom-btn-history-fixed__list > li:last-child:after {
  display: none;
}
.dom-btn-history-fixed__list > li a {
  text-align: center;
  display: block;
  padding: 37px 15px 12px 15px;
  text-decoration: none;
}
.dom-btn-history-fixed__list > li a:before {
  position: absolute;
  top: 15px;
  left: 50%;
  font-size: 1.8rem;
  margin: 0 0 0 -.5em;
}

/* DPへの遷移ボタン */
.dom__btn-dp-flight,
.dom__btn-dp-jr {
  display: inline-block;
  border-radius: 4px;
  text-align: center;
  font-size: 1rem;
  line-height: 1.2;
  color: #fff;
  padding: 29px 5px 5px 10px;
  transition: opacity .2s;
  position: relative;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.4);
  overflow: hidden;
}
.dom__btn-dp-flight:hover,
.dom__btn-dp-jr:hover {
  opacity: .8;
}
.dom__btn-dp-flight:before,
.dom__btn-dp-jr:before {
  content: "";
  line-height: 0 !important;
  position: absolute;
  top: 12px;
  left: 50%;
  font-size: 3.8rem;
  margin-left: -1.9rem;
  z-index: 1;
}
.dom__btn-dp-flight:after,
.dom__btn-dp-jr:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
  width: 100%;
  height: 2.4rem;
  z-index: 0;
}
.dom__btn-dp-flight em,
.dom__btn-dp-jr em {
  font-size: 1.5rem;
  font-weight: bold;
  display: block;
}
.dom__btn-dp-flight span,
.dom__btn-dp-jr span {
  display: block;
  padding-right: 10px;
  position: relative;
  position: relative;
}
.dom__btn-dp-flight span:before,
.dom__btn-dp-jr span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-dp-flight span:before,
.dom__btn-dp-jr span:before {
  font-size: .9rem;
  position: absolute;
  top: 50%;
  right: -2px;
  margin-top: -.5em;
}
.dom__btn-dp-flight.is-disabled,
.dom__btn-dp-jr.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-dp-flight.is-disabled:hover,
.dom__btn-dp-jr.is-disabled:hover {
  opacity: 1;
}
.dom__btn-dp-flight.is-disabled span,
.dom__btn-dp-jr.is-disabled span {
  color: #95999E !important;
}
.dom__btn-dp-flight.is-disabled span:before, .dom__btn-dp-flight.is-disabled span:after,
.dom__btn-dp-jr.is-disabled span:before,
.dom__btn-dp-jr.is-disabled span:after {
  color: #95999E !important;
}

a.dom__btn-dp-flight,
a.dom__btn-dp-jr {
  color: #fff;
  text-decoration: none;
}

.dom__btn-dp-flight {
  background-color: #5298da;
  position: relative;
}
.dom__btn-dp-flight:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-dp-flight:before {
  color: #5298da;
}

.dom__btn-dp-jr {
  background-color: #0b886d;
  position: relative;
}
.dom__btn-dp-jr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-dp-jr:before {
  color: #0b886d;
}

/* 地図表示、一覧表示ボタン */
.dom__btn-show-map-01 {
  display: block;
  background-color: #195178;
  border: 1px solid #e3dfdf;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  padding: 15px;
  font-size: 1.5rem;
  line-height: 1;
  color: #fff !important;
  text-align: center;
  position: relative;
}
.dom__btn-show-map-01:hover {
  opacity: .8;
}
.dom__btn-show-map-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom__btn-show-map-01:before {
  font-size: 2rem;
  margin-right: .4em;
  position: relative;
  top: -1px;
}
.dom__btn-show-map-01:hover {
  text-decoration: none;
}
.dom__btn-show-map-01.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-show-map-01.is-disabled:hover {
  opacity: 1;
}
.dom__btn-show-map-01.is-disabled span {
  color: #95999E !important;
}
.dom__btn-show-map-01.is-disabled span:before, .dom__btn-show-map-01.is-disabled span:after {
  color: #95999E !important;
}

/* 更新ボタン */
a.dom__btn-refresh-01 {
  text-decoration: none;
  color: #fff;
}

.dom__btn-refresh-01 {
  display: block;
  background-color: #195178;
  border: 1px solid #e3dfdf;
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
  text-align: center;
  padding: 15px 5px;
  font-size: 1.3rem;
  line-height: 1;
}
.dom__btn-refresh-01:hover {
  opacity: .8;
}
.dom__btn-refresh-01 span {
  display: inline-block;
  position: relative;
  padding-left: 20px;
}
.dom__btn-refresh-01 span:before {
  content: "";
  display: block;
  background-color: #222;
  border: 3px solid #fff;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.2);
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin-top: -6px;
  position: absolute;
  top: 50%;
  left: 0;
}
.dom__btn-refresh-01.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-refresh-01.is-disabled:hover {
  opacity: 1;
}
.dom__btn-refresh-01.is-disabled span {
  color: #95999E !important;
}
.dom__btn-refresh-01.is-disabled span:before, .dom__btn-refresh-01.is-disabled span:after {
  color: #95999E !important;
}

/* yes ボタン / no ボタン*/
.dom__btn-yes-01,
.dom__btn-no-01 {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  color: #125687;
  text-decoration: none;
  transition: opacity .2s;
  border-radius: 6px;
  text-align: center;
  text-decoration: none;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: bold;
  padding: 15px;
  transition: opacity .2s;
}
.dom__btn-yes-01:hover,
.dom__btn-no-01:hover {
  opacity: .8;
}
.dom__btn-yes-01:hover,
.dom__btn-no-01:hover {
  opacity: .8;
}
.dom__btn-yes-01:hover,
.dom__btn-no-01:hover {
  text-decoration: none !important;
}
.dom__btn-yes-01.is-disabled,
.dom__btn-no-01.is-disabled {
  background: rgba(192, 197, 203, 0.4) !important;
  color: #95999E !important;
  cursor: default;
  pointer-events: none;
}
.dom__btn-yes-01.is-disabled:hover,
.dom__btn-no-01.is-disabled:hover {
  opacity: 1;
}
.dom__btn-yes-01.is-disabled span,
.dom__btn-no-01.is-disabled span {
  color: #95999E !important;
}
.dom__btn-yes-01.is-disabled span:before, .dom__btn-yes-01.is-disabled span:after,
.dom__btn-no-01.is-disabled span:before,
.dom__btn-no-01.is-disabled span:after {
  color: #95999E !important;
}

/* color
---------------------------------------------------------- */
.dom-red {
  color: #cc0d21;
}

.dom-saturday {
  color: #3498DB;
}

.dom-sunday {
  color: #D94F5D;
}

input::placeholder {
  color: #BCBDC2;
}

input:-ms-input-placeholder {
  color: #BCBDC2 !important;
}

input::-webkit-input-placeholder {
  color: #BCBDC2;
}

/* weight
---------------------------------------------------------- */
.dom-bold {
  font-weight: bold;
}

/* link
---------------------------------------------------------- */
/* 基本リンク（右矢印） */
.dom-link-normal {
  position: relative;
  transition: opacity .2s;
  display: inline-block;
  padding-right: 1.3em;
}
.dom-link-normal:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-link-normal:hover {
  opacity: .8;
}
.dom-link-normal:before {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
  font-size: .8em;
}

/* 外部リンク */
.dom-link-external {
  margin: auto .3em;
  position: relative;
}
.dom-link-external:after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 9px;
  background: url(../../../images/dom/1.0/ico-window.png) no-repeat 0 0;
  background-size: 11px auto;
  margin-left: 3px;
}

/* お気に入り一覧リンク */
.dom-link-favorite-list {
  position: relative;
  transition: opacity .2s;
  text-decoration: none;
}
.dom-link-favorite-list:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-link-favorite-list:hover {
  opacity: .8;
}
.dom-link-favorite-list:before {
  margin-right: .3em;
  color: #cc0d21;
}
.dom-link-favorite-list:hover {
  text-decoration: none;
}

/* 最近見た施設一覧リンク */
.dom-link-recent-list {
  position: relative;
  transition: opacity .2s;
  text-decoration: none;
}
.dom-link-recent-list:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-link-recent-list:hover {
  opacity: .8;
}
.dom-link-recent-list:before {
  margin-right: .3em;
  color: #323743;
}
.dom-link-recent-list:hover {
  text-decoration: none;
}

/* クロスリンク */
.dom-link-cross {
  margin-bottom: 40px;
}
.dom-link-cross__heading {
  margin: 0 10px 15px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.2;
}
.dom-link-cross-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.dom-link-cross-list > li {
  width: 33.3333%;
  margin-bottom: 20px;
  padding: 0 10px;
}
.dom-link-cross-list > li:nth-last-child(-n + 3) {
  margin-bottom: 0;
}
.dom-link-cross-list__item {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-link-cross-list__item:hover {
  transition: opacity .2s;
  text-decoration: none;
}
.dom-link-cross-list__item:hover:hover {
  opacity: .8;
}
.dom-link-cross-list__item:hover .dom-link-cross-list__detail-name {
  text-decoration: underline;
}
.dom-link-cross-list__image {
  width: 12rem;
  min-width: 12rem;
}
.dom-link-cross-list__detail {
  padding-left: 1.5rem;
}
.dom-link-cross-list__detail-name {
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: .5rem;
}
.dom-link-cross-list__detail-area {
  font-size: 1.1rem;
  color: #777;
}
.dom-link-cross-list__detail-txt {
  color: #323743;
}

/* modal
---------------------------------------------------------- */
.dom-modal {
  background-color: #fff;
  width: 560px;
  margin: auto;
  box-shadow: 2px 3px 7px rgba(0, 0, 0, 0.3);
  padding: 20px;
  position: fixed;
  overflow: auto;
  overflow-x: hidden;
  max-height: calc(100% - 40px);
  top: 20px;
  left: 50%;
  margin-left: calc(-560px / 2);
}
.dom-modal a {
  color: #125687;
}

.mfp-close-btn-in .mfp-close {
  position: fixed;
  top: 0;
  right: 0;
  text-align: center;
  text-decoration: none;
  opacity: 1;
}

/* 乗継モーダル width */
.domdp-modal-transit-flight {
  width: 560px;
  margin-left: calc(-560px / 2);
}

.domdp-modal-transit-jr {
  width: 560px;
  margin-left: calc(-560px / 2);
}

/* 部屋割りモーダル width */
.domdp-modal-room-assign,
.domtour-modal-room-assign {
  width: 720px;
  margin-left: calc(-720px / 2);
}

/* お申込み可能な宿泊施設一覧モーダル width */
.domtour-modal-hotel-available {
  width: 720px;
  margin-left: calc(-720px / 2);
}

/* 最近見た施設モーダル width */
.domhotel-modal-recent {
  width: 560px;
  margin-left: calc(-560px / 2);
}

/* 子供の宿泊、ペットの宿泊、ノーマライゼーションについて width */
.domhotel-modal-about {
  width: 720px;
  margin-left: calc(-720px / 2);
}

/* 子供の人数入力 width */
.domhotel-modal-child-number {
  width: 400px;
  margin-left: calc(-400px / 2);
}

/* 部屋ごとの内訳 width */
.domhotel-modal-breakdown {
  width: 720px;
  margin-left: calc(-720px / 2);
}

/* 宿泊、ツアー地図から探す width */
.domhotel-modal-area,
.domtour-modal-area {
  width: 1000px;
  margin-left: calc(-1000px / 2);
}

/* お気に入りエラー */
.dom-modal-favorite-error__in {
  padding: 10px;
}
.dom-modal-favorite-error__ttl {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 1.5em;
}
.dom-modal-favorite-error__txt-01 {
  margin-bottom: 1em;
  text-align: center;
}
.dom-modal-favorite-error__txt-02 {
  text-align: center;
  margin-bottom: 1.5em;
}
.dom-modal-favorite-error__btn-list {
  text-align: center;
  margin: 2em 0;
}
.dom-modal-favorite-error__btn-list > li {
  display: inline-block;
  margin: 0 1em;
}
.dom-modal-favorite-error__btn-yes, .dom-modal-favorite-error__btn-no {
  cursor: pointer;
  width: 15rem;
}

/* tooltip
---------------------------------------------------------- */
a[data-tooltip] {
  display: block;
}

.dark-tooltip {
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
  padding: 15px !important;
}
.dark-tooltip a {
  color: #125687;
}

.dom-tooltip {
  font-size: 1.2rem;
  width: 23rem;
}
.dom-tooltip__heading {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: .5em;
}

.dom-tooltip-link-01 {
  font-size: 1.1rem;
  border-bottom: 1px dotted #125687;
  display: inline-block !important;
  cursor: pointer;
  position: relative;
  margin: auto .3em;
}
.dom-tooltip-link-01:hover {
  text-decoration: none;
}
.dom-tooltip-link-01:after {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-tooltip-link-01:after {
  font-size: .9rem;
  margin-left: .5em;
}

/* tooltip JTBプレミアム,JTBプレミアム+ 20201110修正 */
.dom-tooltip-premium .dom-tooltip__heading,
.dom-tooltip-premiumplus .dom-tooltip__heading {
  display: flex;
  align-items: center;
}
.dom-tooltip-premium img,
.dom-tooltip-premiumplus img {
  width: 2.4rem;
  margin-right: .5rem;
}
.dom-tooltip-premium:before,
.dom-tooltip-premiumplus:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: .6rem;
}

.dom-tooltip-premium:before {
  background: -webkit-linear-gradient(left, #431252 0%, #fff 100%);
  background: linear-gradient(to right, #431252 0%, #fff 100%);
}

.dom-tooltip-premiumplus:before {
  background: -webkit-linear-gradient(left, #bf1923 0%, #fff 100%);
  background: linear-gradient(to right, #bf1923 0%, #fff 100%);
}

/* tooltip よくある質問 */
.dom-tooltip-help {
  font-size: 1.2rem;
}
.dom-tooltip-help__heading {
  background-color: #f5f5f5;
  font-weight: bold;
  padding: 5px 10px;
  margin-bottom: 1em;
}
.dom-tooltip-help__question, .dom-tooltip-help__answer {
  position: relative;
  padding-left: 48px;
}
.dom-tooltip-help__question-ttl, .dom-tooltip-help__answer-ttl {
  display: inline-block;
  color: #fff;
  font-weight: bold;
  font-size: 1.1rem;
  line-height: 1;
  border-radius: 3px;
  padding: 8px;
  position: absolute;
  top: 0;
  left: 0;
}
.dom-tooltip-help__question {
  margin-bottom: 1em;
}
.dom-tooltip-help__question-ttl {
  background-color: #4f509e;
}
.dom-tooltip-help__answer-ttl {
  background-color: #ce4da5;
}

/* tooltip お気に入り */
.dom-tooltip-favorite {
  width: 20rem;
  padding: 0 10px;
}
.dom-tooltip-favorite__list > li {
  font-size: 1.3rem;
  font-weight: bold;
  margin: .5em 0;
}
.dom-tooltip-favorite__list > li a {
  display: inline-block;
  padding-left: 2em;
}
.dom-tooltip-favorite__list > li a:before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}
.dom-tooltip-favorite__delete {
  position: relative;
}
.dom-tooltip-favorite__delete:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-tooltip-favorite__show {
  position: relative;
}
.dom-tooltip-favorite__show:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* tooltip SNS */
.dom-tooltip-sns {
  width: 18rem;
}
.dom-tooltip-sns__ttl {
  font-size: 1.2rem;
}
.dom-tooltip-sns__share-ttl {
  font-weight: bold;
  font-size: 1.3rem;
  line-height: 20px;
  margin-bottom: 1em;
  padding-left: 24px;
  position: relative;
}
.dom-tooltip-sns__share-ttl:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-tooltip-sns__share-ttl:before {
  font-size: 1.1rem;
  color: #aaa;
  width: 20px;
  line-height: 20px;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.dom-tooltip-sns__share-ttl:after {
  content: "";
  border-radius: 50%;
  background-color: #e0e0e0;
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.dom-tooltip-sns__share-list {
  font-size: 0;
  text-align: center;
  margin-bottom: 15px;
}
.dom-tooltip-sns__share-list > li {
  display: inline-block;
  width: 44px;
  margin: 0 7px;
}
.dom-tooltip-sns__share-url {
  background-color: #f7f7f7;
  color: #777;
  border: 1px solid #d7d7d7;
  font-size: 1.2rem;
  line-height: 1;
  padding: 5px 10px;
  margin-bottom: 15px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dom-tooltip-sns__share-copy {
  text-align: center;
}
.dom-tooltip-sns__share-copy a {
  display: inline-block;
  color: #fff;
}

/* tooltip アンケート評価 */
.dom-tooltip-rating {
  width: 21rem;
}
.dom-tooltip-rating__total {
  line-height: 1;
  margin: 10px 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  font-weight: bold;
}
.dom-tooltip-rating__total-label {
  margin-right: .5em;
  font-size: 1.3rem;
}
.dom-tooltip-rating__total-label:after {
  content: "：";
}
.dom-tooltip-rating__total-score {
  margin-left: .5em;
  color: #cc0d21;
  font-weight: bold;
}
.dom-tooltip-rating__total-score em {
  font-size: 2rem;
  font-weight: bold;
  margin-right: .1em;
}
.dom-tooltip-rating__breakdown-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.dom-tooltip-rating__breakdown-list > li {
  width: 50%;
  font-size: 1.1rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.dom-tooltip-rating__breakdown-list > li:nth-child(odd) .dom-tooltip-rating__breakdown-label {
  min-width: 4em;
}
.dom-tooltip-rating__breakdown-label {
  text-align: right;
}
.dom-tooltip-rating__breakdown-score {
  color: #cc0d21;
}
.dom-tooltip-rating__breakdown-score em {
  font-size: 1.3rem;
}
.dom-tooltip-rating__breakdown-score:before {
  content: "：";
  color: #323743;
}

/* tooltip 一部屋あたりの利用人数 */
.dom-tooltip-people-warning {
  width: 34rem;
}
.dom-tooltip-people-warning__txt-02 {
  margin-top: 1em;
}

/* page navi
---------------------------------------------------------- */
.dom-page-navi {
  margin: 25px 0 30px;
}
.dom-page-navi__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
}
.dom-page-navi__item {
  text-align: center;
  position: relative;
}
.dom-page-navi__item:after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  background-color: #d4d4d4;
  position: absolute;
  top: 6px;
  left: 0;
  z-index: 0;
}
.dom-page-navi__item:last-child:after {
  display: none;
}
.dom-page-navi__circle {
  position: relative;
  width: 16px;
  height: 16px;
  background-color: #d4d4d4;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: -8px;
  z-index: 1;
}
.dom-page-navi__txt {
  left: -50%;
  padding-top: 25px;
  position: relative;
  line-height: 1.4;
  color: #d4d4d4;
  font-weight: bold;
}
.dom-page-navi__list--col4 {
  margin-left: 210px;
}
.dom-page-navi__list--col4 .dom-page-navi__item {
  width: 210px;
}
.dom-page-navi__item--cr .dom-page-navi__circle {
  background-color: #333;
}
.dom-page-navi__item--cr .dom-page-navi__txt {
  color: #323743;
}
.dom-page-navi__item--checked:after {
  background-color: #333;
}
.dom-page-navi__item--checked .dom-page-navi__circle {
  background-color: #333;
  position: relative;
  position: absolute;
}
.dom-page-navi__item--checked .dom-page-navi__circle:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-page-navi__item--checked .dom-page-navi__circle:before {
  color: #fff;
  width: 16px;
  height: 16px;
  text-align: center;
  font-size: 1rem;
  line-height: 16px;
  vertical-align: top;
  position: absolute;
  top: 0;
  left: 0;
}
.dom-page-navi__item--checked .dom-page-navi__txt {
  color: #323743;
}

/* heading
---------------------------------------------------------- */
.dom-heading-01 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 25px;
}

.dom-heading-02 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin: 50px 0 25px;
}

.dom-heading-02-line {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin: 50px 0 25px;
  padding-bottom: 1em;
  border-bottom: 1px solid #d7d7d7;
}

.dom-heading-03 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin: 50px 0 5px;
}

.dom-heading-04 {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 20px;
}

/* form
---------------------------------------------------------- */
.dom-form-input {
  border: 1px solid #999;
  height: 40px;
  padding: 0 10px;
  width: 100%;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: textfield;
}
.dom-form-input:focus {
  border-color: #cc0d21;
  box-shadow: 0 0 5px 0 rgba(204, 13, 33, 0.2);
}

.dom-form-checkbox {
  position: relative;
}
.dom-form-checkbox__input {
  display: none;
}
.dom-form-checkbox__label {
  display: block;
  padding: 5px 0 5px 22px;
}
.dom-form-checkbox__label:before {
  content: "";
  width: 14px;
  height: 14px;
  display: block;
  border: 1px solid #c8c8c8;
  background-color: #fff;
  border-radius: 3px;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -7px;
}
.dom-form-checkbox input:checked + label {
  position: relative;
}
.dom-form-checkbox input:checked + label:after {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-form-checkbox input:checked + label:before {
  border-color: #000;
  background-color: #ebebeb;
}
.dom-form-checkbox input:checked + label:after {
  color: #000;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 2px;
  margin-top: -.4em;
}
.dom-form-checkbox input:disabled + label {
  color: #dcdcdc;
  cursor: default;
}
.dom-form-checkbox input:disabled + label:before {
  border-color: #dcdcdc;
  background-color: transparent;
}

.dom-form-radio {
  position: relative;
}
.dom-form-radio__input {
  display: none;
}
.dom-form-radio__label {
  display: inline-block;
  padding: 5px 0 5px 20px;
}
.dom-form-radio__label:before {
  content: "";
  width: 14px;
  height: 14px;
  display: block;
  border: 1px solid #c8c8c8;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -7px;
}
.dom-form-radio input:checked + label:after {
  content: "";
  display: block;
  background-color: #000;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 3px;
  margin-top: -4px;
}
.dom-form-radio input:disabled + label {
  color: #dcdcdc;
  cursor: default;
}
.dom-form-radio input:disabled + label:before {
  border-color: #dcdcdc;
  background-color: transparent;
}

.dom-form-pulldown {
  position: relative;
  z-index: 10;
}
.dom-form-pulldown__input {
  position: relative;
  position: relative;
  z-index: 0;
}
.dom-form-pulldown__input:after {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-form-pulldown__input input {
  border: 1px solid #999;
  height: 40px;
  padding: 0 30px 0 10px;
  width: 100%;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: textfield;
}
.dom-form-pulldown__input input:focus {
  border-color: #cc0d21;
  box-shadow: 0 0 5px 0 rgba(204, 13, 33, 0.2);
}
.dom-form-pulldown__input:before {
  position: absolute;
  top: 50%;
  left: 10px;
  font-size: 1.5rem;
  color: #999;
  margin-top: -.5em;
}
.dom-form-pulldown__input:after {
  font-size: 1.3rem;
  color: #999;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -.5em;
}
.dom-form-pulldown__input.is-active:before {
  color: #cc0d21;
}
.dom-form-pulldown__input.is-active input {
  border-color: #cc0d21;
  box-shadow: 0 0 5px 0 rgba(204, 13, 33, 0.2);
}
.dom-form-pulldown__panel {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1;
  width: 100%;
  margin-top: -1px;
  background-color: #fff;
  border: 1px solid #cc0d21;
  box-shadow: 0 0 5px 0 rgba(204, 13, 33, 0.2);
}

/* error表示
---------------------------------------------------------- */
.is-error .dom-form-input,
.is-error .dom-search__input > input,
.is-error > input {
  background-color: #fff4d3;
  border: 1px solid #ffb72c;
  box-shadow: 0 0 5px rgba(255, 183, 44, 0.3);
}

.error-type-01:before,
.error-type-02:before {
  background-color: #ffd4a5;
  box-shadow: 0 -1px 7px rgba(100, 100, 100, 0.8);
  color: #cc0d21;
  display: block;
  font-size: 1.1rem;
  line-height: 1;
  font-weight: bold;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  padding: 8px 1em;
  text-align: center;
  z-index: 99;
}
.error-type-01:after,
.error-type-02:after {
  content: "";
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #ffd4a5 transparent;
  position: absolute;
  top: calc(100% - 4px);
  left: 36px;
  z-index: 100;
}

/* 必須項目です */
.error-type-01:before {
  content: "必須項目です";
}

/* 項目から選択してください */
.error-type-02:before {
  content: "項目から選択してください";
}

/* layout
---------------------------------------------------------- */
*:after,
*:before {
  box-sizing: border-box;
}

.max-width {
  margin: 0 auto;
  max-width: 1130px;
  padding: 0 5px;
}

.jtb-footer {
  padding-bottom: 100px;
}

.dom-contents-body {
  max-width: 1130px;
  padding: 0 5px;
  margin: 0 auto 100px;
}

.dom-layout-01 {
  margin-bottom: 40px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-layout-01__sub {
  width: 27.5rem;
  min-width: 27.5rem;
}
.dom-layout-01__main {
  width: calc(100% - 27.5rem);
  padding-left: 20px;
  position: relative;
}

.dom-layout-02 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-layout-02 > div,
.dom-layout-02 > section {
  width: 49.10%;
  min-width: 49.10%;
}

.dom-layout-02-top {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-layout-02-top > div,
.dom-layout-02-top > section {
  width: 48.66%;
  min-width: 48.66%;
}

.dom-layout-03 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.dom-layout-03 > div,
.dom-layout-03 > section {
  width: 32.14%;
  min-width: 32.14%;
  margin-right: 1.79%;
}
.dom-layout-03 > div:nth-child(3n),
.dom-layout-03 > section:nth-child(3n) {
  margin-right: 0;
}

.dom-layout-grid2 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-layout-grid2 > li,
.dom-layout-grid2 > div,
.dom-layout-grid2 > section {
  width: 50%;
}

.dom-layout-grid2__item > section:nth-child(1) > h3 {
  margin-top: 0;
}

.dom-layout-grid3 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-layout-grid3 > li {
  width: 33.3333%;
}

.dom-layout-grid4 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-layout-grid4 > li {
  width: 25%;
}

.dom-header-btn-01 {
  margin-bottom: 20px;
}

.dom-header-link-01 {
  margin-bottom: 15px;
}

.dom-header-txt-01 {
  margin-bottom: 15px;
}

.dom-header-note-01 {
  margin-bottom: 15px;
}

.dom-header-tag-01 {
  margin-bottom: 15px;
}
.dom-header-tag-01:before, .dom-header-tag-01:after {
  content: "";
  display: table;
}
.dom-header-tag-01:after {
  clear: both;
}
.dom-header-tag-01 .dom-ico-tag {
  float: left;
  margin-right: 2em;
}
.dom-header-tag-01__txt {
  float: left;
  line-height: 25px;
  margin-right: 1em;
}

.dom-layout-btn-01 {
  margin: 20px 0 40px;
}

.dom-layout-btn-02 {
  margin: -20px 0 40px 0;
}

.dom-layout-note-01 {
  margin-bottom: 20px;
}

.dom-layout-note-02 {
  margin-bottom: 1em;
}

.dom-layout-note-03 {
  margin-top: 1em;
}

.dom-layout-bnr-01 {
  margin-bottom: 20px;
}

/* お知らせ用
---------------------------------------------------------- */
.dom-top-layout-01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-top-layout-01 > div,
.dom-top-layout-01 > section {
  width: 48.66%;
  min-width: 48.66%;
}

.dom-top-layout-02 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-top-layout-02 > div,
.dom-top-layout-02 > section {
  width: 49.10%;
  min-width: 49.10%;
}

/* section
---------------------------------------------------------- */
.dom-section-01 {
  background-color: #fff;
  margin-bottom: 20px;
  padding: 25px 20px;
}

.dom-section-03 {
  margin-bottom: 40px;
}

/* section - heading */
.dom-section-heading-01 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 20px;
}
.dom-section-heading-01 small {
  font-size: 1.6rem;
  font-weight: normal;
  margin-left: 1em;
}

.dom-section-heading-02 {
  background-color: #ececec;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  padding: 7px 15px;
  margin: 30px 0 20px;
}

.dom-section-heading-03 {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 25px 0 8px;
}
.dom-section-heading-03:first-child {
  margin-top: 0;
}

.dom-section-heading-04 {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 30px 0 10px;
}
.dom-section-heading-04 small {
  font-size: 1.2rem;
}

.dom-section-heading-05 {
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.2;
  padding-bottom: 15px;
  border-bottom: 1px solid #d7d7d7;
  margin-bottom: 25px;
}
.dom-section-heading-05 small {
  font-size: 1.2rem;
  font-weight: normal;
  margin-left: 2em;
}

.dom-section-heading-06 {
  font-weight: bold;
  padding-left: 1em;
  margin: 10px 0 5px;
  position: relative;
}
.dom-section-heading-06:before {
  content: "・";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
  line-height: 1;
}

.dom-section-heading-07 {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 20px 0 5px;
}
.dom-section-heading-07 small {
  font-size: 1.2rem;
}

/* section - txtarea */
.dom-section-txtarea-01 {
  padding: 0 10px;
}

/* section - more */
.dom-section__more {
  text-align: center;
}
.dom-section__more-content {
  display: none;
  text-align: left;
}
.dom-section__more-btn {
  padding-top: 20px;
}
.dom-section__more-btn span:after {
  content: "すべて表示する";
}

/* section - table */
.dom-section-tbl-01 {
  width: 100%;
  margin: 15px 0 20px;
}
.dom-section-tbl-01 th {
  background-color: #f5f5f5;
}
.dom-section-tbl-01 th,
.dom-section-tbl-01 td {
  border: 1px solid #d7d7d7;
  padding: 10px 15px;
  text-align: center;
}
.dom-section-tbl-01 th.dom-section-tbl-01__left,
.dom-section-tbl-01 td.dom-section-tbl-01__left {
  text-align: left;
}
.dom-section-tbl-01--short {
  width: auto;
}

p + .dom-section-tbl-01 {
  margin-bottom: 20px;
}

.dom-section-tbl-02 {
  width: 100%;
  margin: 15px 0 20px;
}
.dom-section-tbl-02 th,
.dom-section-tbl-02 td {
  border: 1px solid #d7d7d7;
}
.dom-section-tbl-02 thead th {
  background-color: #f5f5f5;
  text-align: center;
  padding: 5px 15px;
}
.dom-section-tbl-02 tbody th {
  background-color: #f5f5f5;
  padding: 10px 15px;
  text-align: right;
}
.dom-section-tbl-02 tbody td {
  padding: 10px 15px;
  text-align: right;
}
.dom-section-tbl-02--short {
  width: auto;
}

p + .dom-section-tbl-01 {
  margin-bottom: 20px;
}

/* icon
---------------------------------------------------------- */
/* 航空会社アイコン */
.dom-ico-jal {
  background: url(../../../images/dom/1.0/logo-jal.png) no-repeat center center;
  background-size: contain;
}

.dom-ico-ana {
  background: url(../../../images/dom/1.0/logo-ana.png) no-repeat center center;
  background-size: contain;
}

.dom-ico-jetstar {
  background: url(../../../images/dom/1.0/logo-jetstar.png) no-repeat center center;
  background-size: contain;
}

.dom-ico-fda {
  background: url(../../../images/dom/1.0/logo-fda.png) no-repeat center center;
  background-size: contain;
}

.dom-ico-airline-etc-01 {
  background: url(../../../images/dom/1.0/logo-airline-etc-01.png) no-repeat center center;
  background-size: contain;
}

.dom-ico-airline-etc-02 {
  background: url(../../../images/dom/1.0/logo-airline-etc-02.png) no-repeat center center;
  background-size: contain;
}

/* JTBのおすすめアイコン */
.dom-ico-jtb-recommend {
  display: inline-block;
  background-color: #cc0d21;
  color: #fff;
  font-size: 1.1rem;
  line-height: 23px;
  padding: 0 5px;
}

/* 今ならポイント〇%アイコン */
.dom-ico-point-up {
  display: inline-block;
  background-color: #48ab11;
  color: #fff;
  font-size: 1.1rem;
  line-height: 23px;
  padding: 0 5px;
}

/* ホテル施設アイコン */
.dom-ico-hotel-facility {
  display: inline-block;
  font-size: 1.1rem;
  color: #777;
  line-height: 18px;
  padding: 0 5px;
  border: 1px solid #d7d7d7;
  min-width: 70px;
  text-align: center;
}

/* ツアーアイコン */
.dom-ico-tour {
  display: inline-block;
  font-size: 1.1rem;
  color: #777;
  line-height: 18px;
  padding: 0 5px;
  border: 1px solid #d7d7d7;
  min-width: 60px;
  text-align: center;
}

/* オンライン、オフライン */
.dom-ico-internet {
  display: inline-block;
  font-size: 1.1rem;
  color: #cc0d21;
}

/* プランアイコン */
.dom-ico-hotel-plan {
  display: inline-block;
  background-color: #ececec;
  font-size: 1.1rem;
  line-height: 21px;
  padding: 0 5px;
  min-width: 60px;
  text-align: center;
}

/* 早割代金プラン アイコン */
.dom-ico-hayawari {
  display: inline-block;
  background-color: #fff;
  border: 1px solid #f96f09;
  text-align: center;
  color: #f96f09;
  font-size: 1.2rem;
  line-height: 23px;
  padding: 0 10px;
}

/* 部屋タイプ アイコン */
.dom-ico-room-type {
  display: inline-block;
  background-color: #74960f;
  color: #fff;
  line-height: 1;
  padding: 8px 12px;
  text-align: center;
  white-space: nowrap;
}

/* 部屋のポイント アイコン */
.dom-ico-room-point {
  display: inline-block;
  background-color: #fff;
  line-height: 1;
  padding: 6px 10px;
  border: 1px solid #999;
}

/* 食事タイプ アイコン */
.dom-ico-meal-type {
  display: inline-block;
  background-color: #74960f;
  color: #fff;
  line-height: 1;
  padding: 8px 12px;
  text-align: center;
}

/* 在庫アイコン */
.dom-ico-stock-01 {
  position: relative;
  color: #cc0d21;
}
.dom-ico-stock-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dom-ico-stock-02 {
  position: relative;
  color: #cc0d21;
}
.dom-ico-stock-02:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dom-ico-stock-03 {
  position: relative;
  color: #ff9600;
}
.dom-ico-stock-03:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dom-ico-stock-04 {
  position: relative;
  color: #ccc;
}
.dom-ico-stock-04:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ヘルプアイコン */
.dom-ico-help {
  display: inline-block;
  width: 16px;
  height: 16px;
  position: relative;
  z-index: 1;
}
.dom-ico-help:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-ico-help:before {
  font-size: 1.6rem;
  color: #999;
  position: absolute;
  top: 0;
  left: 0;
}

/* お気に入りアイコン */
.dom-ico-favorite {
  position: relative;
  text-decoration: none;
}
.dom-ico-favorite:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-ico-favorite:before {
  color: #ccc;
}
.dom-ico-favorite.is-checked:before {
  color: #cc0d21;
}

/* SNSシェアアイコン */
.dom-ico-sns {
  position: relative;
  text-decoration: none;
}
.dom-ico-sns:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-ico-sns:before {
  color: #323743;
}

/* オレンジリボンのタグ */
.dom-ico-tag {
  display: table;
  font-size: 1.2rem;
  line-height: 1.2;
  font-weight: bold;
  position: relative;
}
.dom-ico-tag:before, .dom-ico-tag:after {
  content: "";
  display: block;
  border-style: solid;
  border-width: 11px;
  position: absolute;
  right: -21px;
  height: 50%;
  overflow: hidden;
  z-index: 1;
}
.dom-ico-tag:before {
  border-color: #ff8207 transparent transparent #ff8207;
  top: 0;
}
.dom-ico-tag:after {
  border-color: transparent transparent #ff8207 #ff8207;
  bottom: 0;
}
.dom-ico-tag__column-01 {
  display: table-cell;
  vertical-align: middle;
  background-color: #ff8207;
  color: #fff;
  padding: 4px 10px;
}
.dom-ico-tag__column-02 {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  background-color: #fff;
  border-top: 2px solid #ff8207;
  border-bottom: 2px solid #ff8207;
  padding: 4px 0 4px 10px;
  color: #ff8207;
  height: 100%;
  /*&:before {
  	content: "";
  	display: block;
  	width: 12px;
  	height: calc(100% + 4px);
  	background: url(../../../images/dom/1.0/bg-tag.png) no-repeat right 0;
  	background-size: auto 100%;
  	@include abs_tr(-2px, -12px);
  }*/
}
.dom-ico-tag__column-02:before, .dom-ico-tag__column-02:after {
  content: "";
  display: block;
  border-style: solid;
  border-width: 10px;
  position: absolute;
  right: -16px;
  height: 50%;
  overflow: hidden;
  z-index: 2;
}
.dom-ico-tag__column-02:before {
  border-color: #fff transparent transparent #fff;
  top: 0;
}
.dom-ico-tag__column-02:after {
  border-color: transparent transparent #fff #fff;
  bottom: 0;
}
.dom-ico-tag span {
  position: relative;
  z-index: 3;
  display: block;
  max-height: 29px;
  overflow: hidden;
}

/* クチコミのタグ */
.dom-ico-tag-review {
  display: inline-block;
  padding-left: 1.2em;
  position: relative;
}
.dom-ico-tag-review:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-ico-tag-review:before {
  color: #999;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}

a .dom-ico-tag-review:before {
  color: inherit;
}

/* <hr>区切り線アイコン */
.dom-ico-hr {
  border-color: #d7d7d7;
  border-style: dotted;
  border-width: 1px 0 0 0;
  height: 1px;
  margin: 1em 0;
}

/* 旅行日程表アイコン */
.dom-ico-schedule {
  max-width: 88px !important;
  max-height: 18px !important;
  vertical-align: middle;
  margin: 0 5px;
}

/* 旅行日程表 食事アイコン */
.dom-ico-meal-breakfast,
.dom-ico-meal-lunch,
.dom-ico-meal-dinner,
.dom-ico-meal-dinner-late {
  display: inline-block;
  padding: 4px 10px;
  font-size: 1.2rem;
  line-height: 1;
  color: #fff;
}

.dom-ico-meal-breakfast {
  background-color: #5298da;
}

.dom-ico-meal-lunch {
  background-color: #74960f;
}

.dom-ico-meal-dinner {
  background-color: #de7e3e;
}

.dom-ico-meal-dinner-late {
  background-color: #9f6041;
}

.dom-ico-meal-disabled {
  display: inline-block;
  padding: 4px 10px;
  font-size: 1.2rem;
  line-height: 1;
  color: #777;
  background-color: #e0e0e0;
}
.dom-ico-meal-disabled:before {
  content: "×";
  margin-right: .2em;
}

/* 現在選択中 アイコン */
.dom-ico-now-selected {
  display: inline-block;
  background-color: #0b886d;
  padding: 5px 10px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
}

/* ランキング アイコン */
.dom-ico-rank-01,
.dom-ico-rank-02,
.dom-ico-rank-03,
.dom-ico-rank-04,
.dom-ico-rank-05 {
  width: 40px;
  height: 28px;
  font-size: 1rem;
  line-height: 1;
  padding: 7px 0;
  text-align: center;
  color: #fff;
  font-weight: bold;
}
.dom-ico-rank-01 em,
.dom-ico-rank-02 em,
.dom-ico-rank-03 em,
.dom-ico-rank-04 em,
.dom-ico-rank-05 em {
  font-size: 1.5rem;
  font-weight: bold;
}
.dom-ico-rank-01:after,
.dom-ico-rank-02:after,
.dom-ico-rank-03:after,
.dom-ico-rank-04:after,
.dom-ico-rank-05:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  border-left: 4px solid transparent;
}

.dom-ico-rank-01 {
  background-color: #e6c800;
}
.dom-ico-rank-01:after {
  border-top: 4px solid #7c6b0a;
}

.dom-ico-rank-02 {
  background-color: #bbc1c8;
}
.dom-ico-rank-02:after {
  border-top: 4px solid #667f9c;
}

.dom-ico-rank-03 {
  background-color: #957253;
}
.dom-ico-rank-03:after {
  border-top: 4px solid #51351c;
}

.dom-ico-rank-04,
.dom-ico-rank-05 {
  background-color: #e58690;
}
.dom-ico-rank-04:after,
.dom-ico-rank-05:after {
  border-top: 4px solid #b4313f;
}

/* warnigs
---------------------------------------------------------- */
/* エラー */
.dom-warnings-01 {
  background-color: #fff4d3;
  padding: 12px 20px 12px 45px;
  margin-bottom: 15px;
  color: #cc0d21;
  font-weight: bold;
  position: relative;
}
.dom-warnings-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-warnings-01:before {
  font-size: 1.7rem;
  position: absolute;
  top: 15px;
  left: 20px;
}

/* 注意リンク */
.dom-warnings-link-01 {
  position: relative;
  color: #777 !important;
}
.dom-warnings-link-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-warnings-link-01:before {
  margin-right: .2em;
  text-decoration: none;
  color: #999 !important;
}
.dom-warnings-link-01:hover {
  text-decoration: none;
}

/* 注意テキスト */
.dom-warnings-txt-01 {
  position: relative;
  color: #777 !important;
}
.dom-warnings-txt-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-warnings-txt-01:before {
  margin-right: .2em;
  text-decoration: none;
  color: #999 !important;
}

/* 重要なお知らせ */
.dom-warnings-02 {
  background-color: #fae5e5;
}
.dom-warnings-02__in {
  max-width: 1130px;
  padding: 15px 5px;
  margin: 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-warnings-02__ttl {
  color: #cc0d21;
}
.dom-warnings-02__ttl span {
  position: relative;
}
.dom-warnings-02__ttl span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-warnings-02__ttl span:before {
  font-size: 1.5rem;
  margin-right: .3em;
}
.dom-warnings-02__contents {
  padding-left: 2em;
}

/* Javascript エラー */
.dom-warnings-javascript-01 {
  width: 1130px;
  padding: 0 5px;
  margin: auto;
}
.dom-warnings-javascript-01__in {
  background-color: #fff4d3;
  padding: 20px 20px 20px 45px;
  position: relative;
}
.dom-warnings-javascript-01__in:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-warnings-javascript-01__in:before {
  font-size: 1.7rem;
  position: absolute;
  top: 25px;
  left: 20px;
  color: #cc0d21;
}
.dom-warnings-javascript-01__ttl {
  font-size: 1.6rem;
  color: #cc0d21;
}
.dom-warnings-javascript-01__txt {
  margin-left: 1em;
}

/* search
---------------------------------------------------------- */
.dom-search:before, .dom-search:after {
  content: "";
  display: table;
}
.dom-search:after {
  clear: both;
}
.dom-search__column {
  position: relative;
}
.dom-search__column-label {
  font-size: 1.3rem;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 5px;
  min-height: 16px;
}
.dom-search__column-pulldown {
  position: relative;
}
.dom-search__input {
  position: relative;
  z-index: 0;
}
.dom-search__input input {
  border: 1px solid #999;
  height: 40px;
  padding: 0 30px 0 10px;
  width: 100%;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: textfield;
  color: #323743;
}
.dom-search__input:before {
  position: absolute;
  top: 50%;
  right: 10px;
  font-size: 1.5rem;
  color: #999;
  margin-top: -.5em;
}
.dom-search__input--area, .dom-search__input--dep-area {
  position: relative;
}
.dom-search__input--area:before, .dom-search__input--dep-area:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--airline, .dom-search__input--section-flight {
  position: relative;
}
.dom-search__input--airline:before, .dom-search__input--section-flight:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--night, .dom-search__input--date-pulldown {
  position: relative;
}
.dom-search__input--night:before, .dom-search__input--date-pulldown:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--dep {
  position: relative;
}
.dom-search__input--dep:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--arr {
  position: relative;
}
.dom-search__input--arr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--flight-01 {
  position: relative;
}
.dom-search__input--flight-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--flight-02 {
  position: relative;
}
.dom-search__input--flight-02:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--jr-01, .dom-search__input--jr-02, .dom-search__input--section-jr {
  position: relative;
}
.dom-search__input--jr-01:before, .dom-search__input--jr-02:before, .dom-search__input--section-jr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--airline, .dom-search__input--night, .dom-search__input--area, .dom-search__input--section-flight, .dom-search__input--section-jr, .dom-search__input--dep-area, .dom-search__input--date-pulldown, .dom-search__input--room {
  position: relative;
}
.dom-search__input--airline:after, .dom-search__input--night:after, .dom-search__input--area:after, .dom-search__input--section-flight:after, .dom-search__input--section-jr:after, .dom-search__input--dep-area:after, .dom-search__input--date-pulldown:after, .dom-search__input--room:after {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__input--airline:after, .dom-search__input--night:after, .dom-search__input--area:after, .dom-search__input--section-flight:after, .dom-search__input--section-jr:after, .dom-search__input--dep-area:after, .dom-search__input--date-pulldown:after, .dom-search__input--room:after {
  font-size: 1.3rem;
  color: #999;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -.5em;
}
.dom-search__input--airline input, .dom-search__input--night input, .dom-search__input--area input, .dom-search__input--section-flight input, .dom-search__input--section-jr input, .dom-search__input--dep-area input, .dom-search__input--date-pulldown input, .dom-search__input--room input {
  padding-right: 30px;
}
.dom-search__input--keyword input, .dom-search__input--pamphlet input, .dom-search__input--plan-code input, .dom-search__input--room input {
  padding-left: 10px;
}
.dom-search__input--date:before, .dom-search__input--date-pulldown:before {
  content: "";
  display: inline-block;
  background: url(../../../images/dom/1.0/ico-calendar.svg) no-repeat center center;
  background-size: contain;
  width: 2rem;
  height: 2rem;
  margin-top: 0;
  transform: translateY(-50%);
}
.dom-search__input--people:before {
  content: "";
  display: inline-block;
  background: url(../../../images/dom/1.0/ico-people.svg) no-repeat center center;
  background-size: contain;
  width: 2rem;
  height: 2rem;
  margin-top: 0;
  transform: translateY(-50%);
}
.dom-search__panel {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 101;
  width: 100%;
  margin-top: -1px;
  background-color: #fff;
  border: 1px solid #bcbdc2;
  box-shadow: 2px 2px 10px 0 rgba(50, 55, 67, 0.15);
}
.dom-search__panel-btn-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 5rem;
  height: 5rem;
  cursor: pointer;
}
.dom-search__panel-btn-close:before {
  content: "";
  display: inline-block;
  background: url(../../../../kokunai/images/kokunai_htl_top/ico-close.svg) no-repeat center center;
  background-size: 3rem auto;
  width: 100%;
  height: 100%;
}
.dom-search__panel--people {
  padding: 20px;
  width: 30rem;
  top: 40px;
}
.dom-search__panel--calendar {
  padding: 20px;
  width: 106rem;
  min-width: 106rem;
}
.dom-search__panel--calendar.is-active-homeward {
  margin-top: 54px;
}
.dom-search__panel-people-btn {
  width: 100%;
  margin: 10px auto 0;
  cursor: pointer;
}
.dom-search__note-01 {
  margin-top: 1.5em;
  font-size: 1.2rem;
  color: #777;
}
.dom-search__bnr-01 {
  margin-top: 20px;
  text-align: center;
}
.dom-search__ico-help {
  position: absolute;
  bottom: -20px;
  right: 0;
}
.dom-search__ico-help a {
  display: block;
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.dom-search__ico-arr {
  width: 40px;
  display: table-cell;
  position: relative;
}
.dom-search__ico-arr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search__ico-arr:before {
  width: 4rem;
  font-size: 1.8rem;
  line-height: 40px;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
}
.dom-search__people-warning {
  white-space: nowrap;
  font-size: 1.1rem;
  margin-top: .5em;
}
.dom-search__people-warning a {
  display: inline-block;
}

/* suggest list
---------------------------------------------------------- */
.dom-suggest-list {
  max-height: 192px;
  overflow: auto;
}
.dom-suggest-list__item {
  padding: 5px 10px 5px 30px;
  color: #125687;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}
.dom-suggest-list__item em {
  color: #cc0d21;
}
.dom-suggest-list__item:hover {
  background-color: #fae5e5;
}
.dom-suggest-list__item:before {
  position: absolute;
  top: 10px;
  left: 10px;
  color: #999;
}
.dom-suggest-list__item--place {
  position: relative;
}
.dom-suggest-list__item--place:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--airport {
  position: relative;
}
.dom-suggest-list__item--airport:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--station {
  position: relative;
}
.dom-suggest-list__item--station:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--hotel {
  position: relative;
}
.dom-suggest-list__item--hotel:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--other {
  position: relative;
}
.dom-suggest-list__item--other:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--flight-01 {
  position: relative;
}
.dom-suggest-list__item--flight-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--flight-02 {
  position: relative;
}
.dom-suggest-list__item--flight-02:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--jr-01, .dom-suggest-list__item--jr-02 {
  position: relative;
}
.dom-suggest-list__item--jr-01:before, .dom-suggest-list__item--jr-02:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__item--star {
  position: relative;
}
.dom-suggest-list__item--star:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__child-item {
  position: relative;
  padding-left: 45px;
  cursor: pointer;
}
.dom-suggest-list__child-item:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-suggest-list__child-item:before {
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 30px;
  margin-top: -.5em;
  color: #999;
}
.dom-suggest-list__child-item:hover {
  background-color: #fae5e5;
}

/* pulldown list
---------------------------------------------------------- */
.dom-pulldown-list {
  max-height: 198px;
  overflow: auto;
}
.dom-pulldown-list > li {
  padding: 5px 13px;
  line-height: 1.4;
  cursor: pointer;
}
.dom-pulldown-list > li:hover {
  background-color: #fae5e5;
}
.dom-pulldown-list__ico {
  display: inline-block;
  vertical-align: middle;
  width: 40px;
  height: 13px;
  margin-right: .8em;
}

/* search conditions
---------------------------------------------------------- */
.dom-search-conditions {
  background-color: #fff;
}
.dom-search-conditions__heading {
  font-size: 2rem;
  line-height: 1.2;
  font-weight: bold;
  padding: 20px;
}
.dom-search-conditions__box {
  margin-bottom: 1px;
}
.dom-search-conditions__ttl {
  background-color: #d8d8d8;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: bold;
  padding: 13px 13px 13px 40px;
  cursor: pointer;
  position: relative;
}
.dom-search-conditions__ttl:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search-conditions__ttl:before {
  font-size: 1.2rem;
  color: #cc0d21;
  display: block;
  position: absolute;
  top: 50%;
  left: 13px;
  margin-top: -.5em;
  transition: all 0.2s ease 0s;
}
.dom-search-conditions__ttl.is-open {
  background-color: #fff;
}
.dom-search-conditions__ttl.is-open:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.dom-search-conditions__content {
  display: none;
  padding: 10px;
}
.dom-search-conditions__list {
  margin: 0 -10px;
}
.dom-search-conditions__item {
  color: #125687;
  position: relative;
  padding: 0 10px;
}
.dom-search-conditions__item:hover {
  background-color: #fae5e5;
}
.dom-search-conditions__item.is-hide {
  display: none;
}
.dom-search-conditions__item.is-disabled {
  color: #dcdcdc;
}
.dom-search-conditions__item.is-disabled:hover {
  background-color: transparent;
}
.dom-search-conditions__item.is-disabled .dom-search-conditions__number {
  color: #dcdcdc;
}
.dom-search-conditions__label {
  padding-right: 20px;
}
.dom-search-conditions__number {
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #000;
}
.dom-search-conditions__btn-show-all {
  text-align: right;
  padding: 5px 10px;
  cursor: pointer;
}
.dom-search-conditions__btn-show-all > span {
  color: #125687;
  position: relative;
}
.dom-search-conditions__btn-show-all > span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-search-conditions__btn-show-all > span:before {
  color: #323743;
  font-size: 1.2rem;
  margin-right: .5em;
}
.dom-search-conditions__keyword {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-search-conditions__keyword-input {
  flex: 1;
}
.dom-search-conditions__keyword-btn {
  white-space: nowrap;
  margin-left: 5px;
}

/* search option
---------------------------------------------------------- */
.dom-search-option {
  position: relative;
}
.dom-search-option__more-content {
  display: none;
  padding: 10px 20px;
  margin: 15px 0 20px;
  border: 1px solid #d7d7d7;
}
.dom-search-option__more-btn {
  display: inline-block;
  vertical-align: middle;
  padding-left: 1em;
}
.dom-search-option__more-btn span {
  display: inline-block;
  font-size: 1.4rem;
}
.dom-search-option__more-btn span:after {
  content: "条件を追加する";
}
.dom-search-option__more-btn.is-open span:after {
  content: "条件を閉じる";
}
.dom-search-option__selected {
  text-align: right;
  position: relative;
  bottom: -2px;
}
.dom-search-option__selected-list {
  display: inline-block;
  vertical-align: middle;
  padding-right: 1em;
  border-right: 1px solid #aaa;
  line-height: 1.2;
  max-width: 700px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dom-search-option__selected-list > li {
  display: inline-block;
  font-size: 1.1rem;
}
.dom-search-option__selected-list > li:after {
  content: ",";
}
.dom-search-option__selected-list > li:last-child:after {
  display: none;
}
.dom-search-option__column {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 5px 0;
}
.dom-search-option__label {
  font-weight: bold;
  width: 10em;
  max-width: 10em;
  padding-top: 5px;
}
.dom-search-option__content {
  width: 100%;
}
.dom-search-option__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.dom-search-option__item {
  display: inline-block;
  min-width: 15rem;
  padding-right: 2em;
}
.dom-search-option__item .dom-form-checkbox,
.dom-search-option__item .dom-form-radio {
  display: inline-block;
}
.dom-search-option__item-child {
  margin-right: 1.5em;
}
.dom-search-option__item-child:last-child {
  margin-right: 0;
}

/* search selected
---------------------------------------------------------- */
.dom-search-selected {
  margin-bottom: 20px;
  background-color: #fff;
  padding: 15px;
  border: 2px solid #d7d7d7;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-search-selected__ttl {
  display: inline-block;
  background-color: #0b886d;
  margin: 0 1em 0 0;
  padding: 5px 10px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  -webkit-align-self: flex-start;
  align-self: flex-start;
  white-space: nowrap;
}
.dom-search-selected__item {
  display: inline-block;
  font-size: 1.4rem;
}
.dom-search-selected__item:after {
  content: ",";
}
.dom-search-selected__item:last-child:after {
  display: none;
}
.dom-search-selected__item-ttl {
  font-weight: bold;
  font-size: 1.6rem;
  margin-right: .3em;
}
.dom-search-selected--multiple {
  display: block;
}
.dom-search-selected--multiple .dom-search-selected__ttl {
  margin: 0 0 .5em 0;
}

/* spinbox
---------------------------------------------------------- */
.dom-spinbox__list {
  margin-bottom: 15px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  max-width: 100%;
}
.dom-spinbox__label {
  line-height: 1.4;
}
.dom-spinbox__label small {
  display: block;
  color: #777;
  font-size: 1.2rem;
}
.dom-spinbox__fix {
  width: 7rem;
  font-weight: bold;
  text-align: center;
}
.dom-spinbox__set {
  width: 14rem;
  min-width: 14rem;
  min-height: 36px;
  position: relative;
}
.dom-spinbox__explain {
  padding-left: 1.2em;
  line-height: 1.4;
  width: 234px;
}
.dom-spinbox__input {
  border: 1px solid #999;
  height: 36px;
  width: 50px;
  text-align: center;
  position: absolute;
  top: 0;
  left: 45px;
  -webkit-appearance: none;
  -moz-appearance: textfield;
}
.dom-spinbox__input::-webkit-outer-spin-button, .dom-spinbox__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.dom-spinbox__btn {
  background-color: #e0e0e0;
  width: 40px;
  height: 36px;
  border-radius: 4px;
  top: 0;
}
.dom-spinbox__btn:before {
  font-size: 1.2rem;
  color: #323743;
}
.dom-spinbox__btn--plus {
  position: relative;
  position: absolute;
  right: 0;
}
.dom-spinbox__btn--plus:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-spinbox__btn--minus {
  position: relative;
  position: absolute;
  left: 0;
}
.dom-spinbox__btn--minus:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-spinbox__btn--disabled {
  background-color: #f5f5f5;
  cursor: default;
}
.dom-spinbox__btn--disabled:before {
  color: #e0e0e0;
}
.dom-spinbox--room {
  border-top: 1px solid #d7d7d7;
  padding: 20px 0;
  margin-top: 15px;
}
.dom-spinbox--room .dom-spinbox__list {
  margin-bottom: 0;
}
.dom-spinbox__total {
  padding-right: 1em;
  text-align: right;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.2;
}
.dom-spinbox__total-number {
  font-size: 2rem;
  margin: 0 .2em;
}
.dom-spinbox__note {
  border-top: 1px solid #d7d7d7;
  padding-top: 15px;
  font-size: 1.2rem;
}
.dom-spinbox__note a {
  color: #125687;
}
.dom-spinbox__checkbox {
  text-align: right;
}
.dom-spinbox__checkbox .dom-form-checkbox {
  display: inline-block;
  width: 14rem;
  text-align: left;
}
.dom-spinbox__list + .dom-spinbox__checkbox {
  margin-top: 5px;
}

/* calendar
---------------------------------------------------------- */
/*波紋のアニメーション*/
@-webkit-keyframes ripple {
  0% {
    -webkit-transform: scale(0);
  }
  20% {
    -webkit-transform: scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
  }
}
@keyframes ripple {
  0% {
    transform: scale(0);
  }
  20% {
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1);
  }
}
.dom-calendar {
  color: #323743;
}
.dom-calendar .domhotel-date-undecided {
  margin-bottom: 2rem;
  position: relative;
}
.dom-calendar .domhotel-date-undecided__btn {
  border-radius: 2rem;
  padding: .8rem 2rem;
  line-height: 1;
  cursor: pointer;
  outline: none;
  outline: none;
  position: relative;
  overflow: hidden;
  /*クリックした後で波紋が広がる*/
  /*ページが最初に読み込まれた時に波紋が出ない*/
  /*マウスオーバーで波紋が出たら見えるようにする*/
  color: #3498DB;
  background: transparent linear-gradient(112deg, #3498DB 0%, #52C8FF 100%) 0% 0% no-repeat padding-box;
  position: relative;
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.dom-calendar .domhotel-date-undecided__btn:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  background: #9fe1ff;
  border-radius: 100%;
  opacity: .6;
  transform: scale(0);
  /*下記の値はボタンのサイズによる*/
  width: 110%;
  height: 230px;
  margin-left: -55%;
  margin-top: -115px;
}
.dom-calendar .domhotel-date-undecided__btn:not(:active):before {
  animation: ripple 1s ease-out;
}
.dom-calendar .domhotel-date-undecided__btn:before {
  visibility: hidden;
}
.dom-calendar .domhotel-date-undecided__btn:focus:before {
  visibility: visible;
}
.dom-calendar .domhotel-date-undecided__btn::after {
  border-radius: 40px;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  z-index: -2;
  background: #fff;
  margin: 2px;
}
.dom-calendar__date-undecided .dom-form-checkbox {
  display: inline-block;
}
.dom-calendar__in {
  position: relative;
  padding: 0 30px;
}
.dom-calendar__slide {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-calendar__arr {
  position: relative;
  position: absolute;
  top: 130px;
  font-size: 0;
  cursor: pointer;
}
.dom-calendar__arr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-calendar__arr:before {
  content: "";
  background: url(../../../../kokunai/images/kokunai_htl_top/ico-arrow-left.svg) no-repeat center center;
  background-size: contain;
  width: 4rem;
  height: 4rem;
  display: inline-block;
}
.dom-calendar__arr--prev {
  left: -5px;
}
.dom-calendar__arr--next {
  right: -5px;
}
.dom-calendar__arr--next:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.dom-calendar__column {
  width: 33.3333%;
  padding: 0 10px;
}
.dom-calendar__header {
  font-size: 1.6rem;
  padding: 5px;
  text-align: center;
}
.dom-calendar__tbl {
  border-collapse: collapse;
  border: 1px solid #d7d7d7;
  width: 100%;
}
.dom-calendar__tbl th {
  background-color: #f5f5f5;
  border: 1px solid #d7d7d7;
  font-size: 1.2rem;
  line-height: 30px;
  font-weight: bold;
  text-align: center;
}
.dom-calendar__tbl td {
  border: 1px solid #d7d7d7;
  text-align: center;
}
.dom-calendar__date {
  line-height: 36px;
}
.dom-calendar__date a {
  display: block;
  text-decoration: none;
  color: inherit;
}
.dom-calendar__date a:hover {
  background-color: #ECF9FF;
}
.dom-calendar__date--disabled {
  color: #BCBDC2;
}
.dom-calendar__date--selected {
  background: #52C8FF;
  color: #fff;
  font-weight: bold;
}

/* rating
---------------------------------------------------------- */
.dom-rating-stars {
  display: inline-block;
  vertical-align: middle;
  width: 70px;
  height: 14px;
  margin-right: 5px;
  position: relative;
}
.dom-rating-stars__item--off {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -7px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 70px;
  overflow: hidden;
}
.dom-rating-stars__item--on {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -7px;
  overflow: hidden;
}
.dom-rating-stars__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 70px;
}
.dom-rating-stars__item--05 {
  width: 7px;
}
.dom-rating-stars__item--10 {
  width: 14px;
}
.dom-rating-stars__item--15 {
  width: 21px;
}
.dom-rating-stars__item--20 {
  width: 28px;
}
.dom-rating-stars__item--25 {
  width: 35px;
}
.dom-rating-stars__item--30 {
  width: 42px;
}
.dom-rating-stars__item--35 {
  width: 49px;
}
.dom-rating-stars__item--40 {
  width: 56px;
}
.dom-rating-stars__item--45 {
  width: 63px;
}
.dom-rating-stars__item--50 {
  width: 70px;
}
.dom-rating-stars__image--on, .dom-rating-stars__image--off {
  width: 14px;
  height: 14px;
  font-size: 14px;
  position: relative;
}
.dom-rating-stars__image--on:before, .dom-rating-stars__image--off:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-rating-stars__image--on:before, .dom-rating-stars__image--off:before {
  display: block;
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.dom-rating-stars__image--on {
  z-index: 2;
}
.dom-rating-stars__image--on:before {
  color: #e18d52;
}
.dom-rating-stars__image--off {
  z-index: 1;
}
.dom-rating-stars__image--off:before {
  color: #e0e0e0;
}

.dom-rating {
  white-space: nowrap;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.dom-rating__label {
  display: table-cell;
  vertical-align: middle;
  padding-right: 8px;
  font-size: 1.1rem;
  color: #777;
  width: 12rem;
  max-width: 12rem;
  text-align: right;
}
.dom-rating__stars {
  margin-right: 0 !important;
}
.dom-rating__score {
  font-size: 1.1rem;
  padding-left: 5px;
  width: 3rem;
  max-width: 3rem;
}
.dom-rating__score em {
  font-size: 1.3rem;
}
.dom-rating__no-data, .dom-rating__loading {
  display: block;
  font-size: 1.2rem;
  line-height: 14px;
  color: #999;
  margin-left: 1em;
}
.dom-rating__breakdown {
  text-align: right;
}

/* result
---------------------------------------------------------- */
/* 検索結果上部 */
.dom-result-header {
  position: relative;
  margin-bottom: 20px;
}
.dom-result-header__update {
  font-size: 1.2rem;
  line-height: 1.4;
  text-align: right;
  margin-bottom: .5em;
}
.dom-result-header__count {
  font-size: 1.6rem;
  margin-bottom: 1em;
}
.dom-result-header__count-all {
  font-size: 2.4rem;
  font-weight: bold;
  color: #cc0d21;
  margin-right: .1em;
}
.dom-result-header__count-page {
  font-weight: bold;
  margin-left: .5em;
}
.dom-result-header__display-number {
  position: absolute;
  bottom: 0;
  right: 0;
}
.dom-result-header__favorite-list {
  display: block;
  text-align: right;
  margin-bottom: 1em;
}
.dom-result-header__pay-warning {
  display: inline-block;
  margin-right: 2em;
}
.dom-result-header__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}
.dom-result-header__history {
  font-size: 1.4rem;
  line-height: 1;
}
.dom-result-header__history-list > li {
  display: inline-block;
}

/* 検索結果下部 */
.dom-result-footer__favorite-list {
  display: block;
  text-align: right;
  margin-bottom: 1.5em;
}

/* キーワード絞り込み */
.dom-result-filter {
  margin: -10px 0 10px;
}
.dom-result-filter__word {
  font-weight: bold;
  display: inline-block;
  margin: 0 1em;
  padding: 0 .3em;
  line-height: 1.2;
  position: relative;
  background-color: rgba(204, 13, 33, 0.2);
}
.dom-result-filter__word:before {
  content: "「";
  position: absolute;
  top: 0;
  left: -1em;
}
.dom-result-filter__word:after {
  content: "」";
  position: absolute;
  top: 0;
  right: -1em;
}
.dom-result-filter__clear, .dom-result-filter__refine {
  margin-left: 1em;
  color: #125687;
  cursor: pointer;
  transition: opacity .2s;
}
.dom-result-filter__clear:hover, .dom-result-filter__refine:hover {
  opacity: .8;
}
.dom-result-filter__clear:before, .dom-result-filter__refine:before {
  font-size: 1rem;
  margin-right: .3em;
}
.dom-result-filter__clear {
  position: relative;
}
.dom-result-filter__clear:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-result-filter__refine {
  position: relative;
}
.dom-result-filter__refine:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 並び替え */
.dom-sort {
  font-size: 1.4rem;
}
.dom-sort__label {
  display: inline-block;
}
.dom-sort__list {
  display: inline-block;
  color: #777;
}
.dom-sort__list > li {
  display: inline-block;
}
.dom-sort__item {
  padding: 0 1em;
  display: inline-block;
  cursor: pointer;
}
.dom-sort__item:hover, .dom-sort__item--active {
  font-weight: bold;
  color: #323743;
}

.dom-sort__list-child {
  display: inline-block;
  position: relative;
}
.dom-sort__list-child:before {
  content: "（";
}
.dom-sort__list-child:after {
  content: "）";
}
.dom-sort__list-child-label {
  display: inline-block;
  padding: 0 0 0 1em;
}

/* 表示件数 */
.dom-display-number__label {
  display: inline-block;
}
.dom-display-number__pulldown {
  display: inline-block;
  width: 10rem;
}

/* 表示切替 */
.dom-switch {
  font-size: 1.4rem;
}
.dom-switch__label {
  display: inline-block;
}
.dom-switch__list {
  display: inline-block;
}
.dom-switch__item {
  color: #777;
  padding: 0 1em;
  display: inline-block;
  cursor: pointer;
}
.dom-switch__item:hover, .dom-switch__item--active {
  font-weight: bold;
  color: #323743;
}

/* hotel
---------------------------------------------------------- */
.dom-hotel-heading-kana {
  display: block;
  font-size: 1.3rem;
  font-weight: normal;
  margin-top: .5em;
}

.dom-hotel-details {
  position: relative;
}
.dom-hotel-details__figure {
  margin-bottom: .5em;
}
.dom-hotel-details__link-detail {
  text-align: center;
}
.dom-hotel-details__hotel-name {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
}
.dom-hotel-details__hotel-ico {
  padding-right: 10px;
  width: 4.4rem;
  min-width: 4.4rem;
}
.dom-hotel-details__hotel-ico img {
  width: 34px;
}
.dom-hotel-details__sales-point {
  margin-top: .5em;
}
.dom-hotel-details__area {
  margin-bottom: .8rem;
}
.dom-hotel-details__ico-list-01 {
  min-height: 14px;
  margin-bottom: .8rem;
  font-size: 0;
}
.dom-hotel-details__ico-list-01 > li {
  font-size: 1.1rem;
  display: inline-block;
  margin-right: 5px;
  vertical-align: top;
}
.dom-hotel-details__ico-list-02 {
  min-height: 5px;
  margin-bottom: 1.5rem;
  font-size: 0;
}
.dom-hotel-details__ico-list-02 > li {
  display: inline-block;
  margin: 0 5px 5px 0;
  vertical-align: top;
}
.dom-hotel-details__access {
  font-size: 1.2rem;
}
.dom-hotel-details__access-label {
  position: relative;
  margin-bottom: .5em;
}
.dom-hotel-details__access-label:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-hotel-details__access-label:before {
  font-size: 1.4rem;
  margin-right: .4em;
  color: #999;
}
.dom-hotel-details__access-link {
  margin-left: 1em;
  font-weight: bold;
}
.dom-hotel-details__access-link > a {
  display: inline-block;
  padding-right: 15px;
  position: relative;
}
.dom-hotel-details__access-link > a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-hotel-details__access-link > a:before {
  position: absolute;
  top: 50%;
  right: 0;
  font-size: 1rem;
  margin-top: -.5em;
}
.dom-hotel-details__btn {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
}
.dom-hotel-details__more-btn {
  margin-top: 20px;
}
.dom-hotel-details__more-content {
  display: none;
  text-align: left;
}
.dom-hotel-details__more-content .dom-section-heading-02 {
  font-size: 1.6rem;
}
.dom-hotel-details__more-content .dom-section-txtarea-01 {
  font-size: 1.4rem;
}

.dom-hotel-price {
  text-align: right;
  line-height: 1.4;
  margin-bottom: 1em;
}
.dom-hotel-price__label {
  font-size: 1.2rem;
  margin-bottom: .4em;
}
.dom-hotel-price__adult {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 5px;
}
.dom-hotel-price__adult-price {
  display: inline-block;
  white-space: nowrap;
}
.dom-hotel-price__adult-price em {
  font-size: 2.6rem;
  font-weight: bold;
}
.dom-hotel-price__adult-price-plus {
  font-size: 2.6rem;
  font-weight: normal;
}
.dom-hotel-price__total {
  font-size: 1.2rem;
  font-weight: bold;
  color: #777;
}
.dom-hotel-price__total-price {
  display: inline-block;
  white-space: nowrap;
}
.dom-hotel-price__total-price em {
  font-size: 1.6rem;
  font-weight: bold;
}
.dom-hotel-price__pay-warning {
  display: inline-block;
}

.dom-hotel-point {
  text-align: right;
  font-size: 1.2rem;
  margin-bottom: .5em;
  position: relative;
}
.dom-hotel-point:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-hotel-point:before {
  font-size: 1.6rem;
  color: #e18d52;
  vertical-align: middle;
  margin-right: .5rem;
}

.dom-hotel-hayawari {
  text-align: right;
  margin-bottom: .5em;
}

.dom-room-note {
  text-align: right;
  font-weight: bold;
  font-size: 1.2rem;
}
.dom-room-note__number {
  color: #cc0d21;
  margin: 0 .2em;
}
.dom-room-note__number em {
  font-size: 1.8rem;
  font-weight: bold;
}

.dom-hotel-footer-txt {
  text-align: right;
  margin-bottom: 1rem;
  font-size: 1.1rem;
}

/* plan
---------------------------------------------------------- */
.dom-plan-details__plan-ico {
  padding-right: 10px;
  width: 4.8rem;
  min-width: 4.8rem;
}
.dom-plan-details__plan-ico img {
  width: 38px;
}
.dom-plan-details__plan-favorite {
  padding-left: 20px;
}
.dom-plan-details__plan-name {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
  width: 100%;
}
.dom-plan-details__room-type {
  font-weight: bold;
  position: relative;
  padding-left: 24px;
  margin-bottom: 1em;
}
.dom-plan-details__room-type:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-plan-details__room-type:before {
  font-size: 1.6rem;
  color: #999;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}
.dom-plan-details__room-type .dom-ico-point-up {
  margin-left: .5em;
  vertical-align: middle;
}
.dom-plan-details__figure {
  width: 20rem;
}
.dom-plan-details__ico-list-01 {
  min-height: 60px;
  font-size: 0;
}
.dom-plan-details__ico-list-01 > li {
  display: inline-block;
  margin: 0 5px 5px 0;
  font-size: 1.2rem;
}
.dom-plan-details__ico-list-01 > li .dom-ico-hotel-plan {
  font-size: 1.2rem;
  line-height: 22px;
}
.dom-plan-details__checkin-out > dt {
  float: left;
}
.dom-plan-details__checkin-out > dd {
  margin-left: 7.5em;
}
.dom-plan-details__info-list {
  font-size: 1.2rem;
  margin-top: 2em;
}
.dom-plan-details__info-list > li {
  margin-bottom: .5em;
}
.dom-plan-details__info-label {
  display: inline-block;
  white-space: nowrap;
}
.dom-plan-details__info-label:after {
  content: "：";
}
.dom-plan-details__info-data {
  display: inline-block;
}
.dom-plan-details__booking {
  margin-right: 1em;
}
.dom-plan-details__booking:before {
  margin-right: .2em;
}
.dom-plan-details__code-ttl:after {
  content: "：";
}
.dom-plan-details__code-item {
  display: inline-block;
  margin-right: .5em;
}
.dom-plan-details__more-btn {
  margin-top: 20px;
}
.dom-plan-details__more-content {
  display: none;
  text-align: left;
}
.dom-plan-details__more-content .dom-section-heading-02 {
  font-size: 1.6rem;
}
.dom-plan-details__more-content .dom-section-txtarea-01 {
  font-size: 1.4rem;
}
.dom-plan-details__more-content-02 {
  display: none;
  text-align: left;
}
.dom-plan-details__more-content-02 .dom-section-heading-02 {
  font-size: 1.6rem;
}
.dom-plan-details__more-content-02 .dom-section-txtarea-01 {
  font-size: 1.4rem;
}
.dom-plan-details__btn {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
}
.dom-plan-details__txt-01 {
  margin-top: 15px;
  font-size: 1.2rem;
}

/* pager
---------------------------------------------------------- */
.dom-pager {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  position: relative;
}
.dom-pager__list {
  font-size: 0;
}
.dom-pager__item {
  font-size: 1.4rem;
  display: inline-block;
  letter-spacing: normal;
  margin: 0 10px 10px 0;
  text-align: center;
  position: relative;
}
.dom-pager__item a {
  display: block;
  line-height: 28px;
  border-style: solid;
  border-width: 1px;
  border-color: #999;
  background-color: #fff;
  border-radius: 6px;
  min-width: 36px;
  padding: 0 10px;
  color: #323743;
}
.dom-pager__item a:hover {
  text-decoration: none;
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.dom-pager__item--active a {
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.dom-pager__item--prev {
  width: 70px;
  margin-right: 20px;
}
.dom-pager__item--next {
  width: 70px;
  margin-left: 10px;
}
.dom-pager__item--disabled {
  background-color: #dcdcdc;
  color: #999;
  border: 1px solid #ccc;
  line-height: 30px;
  border-radius: 6px;
  display: inline-block;
}

/* 02 地図から探すページング */
.dom-pager-02 {
  height: 30px;
  overflow: hidden;
  position: relative;
  text-align: center;
}
.dom-pager-02__count {
  font-size: 1.2rem;
  color: #fff;
}
.dom-pager-02__count em {
  font-size: 1.5rem;
  font-weight: bold;
}
.dom-pager-02__arr {
  width: 30px;
  height: 30px;
  background-color: #fff;
  border-radius: 3px;
  position: relative;
  position: absolute;
  top: 0;
  cursor: pointer;
}
.dom-pager-02__arr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-pager-02__arr:before {
  width: 100%;
  font-size: 1.1rem;
  display: block;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.dom-pager-02__arr--prev {
  left: 0;
}
.dom-pager-02__arr--prev:before {
  -webkit-transform: translate(-50%, -50%) rotate(-180deg);
  transform: translate(-50%, -50%) rotate(-180deg);
}
.dom-pager-02__arr--next {
  right: 0;
}
.dom-pager-02__arr.is-disabled {
  background-color: #aaa;
}
.dom-pager-02__arr.is-disabled:before {
  color: #777;
}

/* note
---------------------------------------------------------- */
/* リスト - 行頭1文字空き */
.dom-note-list-type-01 > li {
  padding-left: 1em;
  text-indent: -1em;
}

/* リスト - 横並びリンク */
.dom-note-list-type-02 {
  font-size: 0;
}
.dom-note-list-type-02 > li {
  display: inline-block;
  position: relative;
  padding-right: .8em;
  margin-right: .8em;
  font-size: 1.3rem;
  color: #777;
}
.dom-note-list-type-02 > li:after {
  content: "";
  position: absolute;
  top: 20%;
  right: 0;
  width: 1px;
  height: 60%;
  background-color: #d7d7d7;
}
.dom-note-list-type-02 > li a {
  display: inline-block;
}
.dom-note-list-type-02 > li:last-child {
  margin-right: 0;
  padding-right: 0;
}
.dom-note-list-type-02 > li:last-child:after {
  display: none;
}
.dom-note-list-type-02__label + li {
  margin-left: 0;
}
.dom-note-list-type-02__label + li:after {
  display: none;
}

/* リスト - 凡例 */
.dom-note-list-type-03 {
  margin-left: .5em;
}
.dom-note-list-type-03 > li {
  display: inline-block;
  margin-right: 2em;
}

/* リスト - ぱんくず型リンク */
.dom-note-list-type-04 {
  font-size: 0;
}
.dom-note-list-type-04 > li {
  display: inline-block;
  position: relative;
  margin-right: .8em;
  font-size: 1.3rem;
  color: #777;
}
.dom-note-list-type-04 > li:after {
  content: "＞";
  margin-left: .8em;
}
.dom-note-list-type-04 > li a {
  display: inline-block;
}
.dom-note-list-type-04 > li:last-child {
  margin-left: 0;
}
.dom-note-list-type-04 > li:last-child:after {
  display: none;
}

/* リスト - ドット型 */
.dom-note-list-type-05 > li {
  padding-left: 1.5em;
  position: relative;
}
.dom-note-list-type-05 > li:before {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  background-color: #323743;
  position: absolute;
  top: 8px;
  left: 5px;
}

/* リスト - チェック型 */
.dom-note-list-type-06 > li {
  padding-left: 1.5em;
  position: relative;
}
.dom-note-list-type-06 > li:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-note-list-type-06 > li:before {
  position: absolute;
  top: 6px;
  left: 0;
}

/* 重要なお知らせ */
.dom-note-important {
  border: 1px solid #d7d7d7;
  padding: 12px 20px;
}
.dom-note-important__ttl {
  font-weight: bold;
  color: #cc0d21;
  margin-bottom: .3em;
  position: relative;
}
.dom-note-important__ttl:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-note-important__ttl:before {
  color: #cc0d21;
  vertical-align: middle;
  font-size: 1.5rem;
  margin-right: .3em;
}

/* クレジットカード リスト */
.dom-note-credit-list {
  margin-top: 15px;
}
.dom-note-credit-list > li {
  display: inline-block;
  width: 42px;
  vertical-align: middle;
}

/* 記号のtextを大きく */
.dom-txt-symbol {
  font-size: 138%;
  margin-right: .2em;
  line-height: 1.2;
  font-family: Consolas, 'Courier New', Courier;
}

/* info
---------------------------------------------------------- */
.dom-info-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-info-list__item {
  width: 100%;
}
.dom-info-list__item--half-left {
  width: 50%;
}
.dom-info-list__item--half-right {
  width: 50%;
  padding-left: 1.85%;
}
.dom-info-list__item-in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-bottom: 1px solid #d7d7d7;
  padding: 10px 0;
}
.dom-info-list__label {
  font-weight: bold;
  min-width: 10rem;
  padding-right: 1em;
}
.dom-info-list__pay-price {
  font-weight: bold;
}
.dom-info-list__pay-price em {
  font-size: 2rem;
  font-weight: bold;
}
.dom-info-list__pay-warning {
  margin-left: 1em;
  display: inline-block;
}
.dom-info-list__logo {
  height: 16px;
  width: auto;
  vertical-align: middle;
}

/* schedule
---------------------------------------------------------- */
.dom-schedule__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-schedule__in:last-child .dom-schedule__column-row:last-child .dom-schedule__ico:before {
  display: none;
}
.dom-schedule__column-01 {
  width: 17%;
  padding-top: 10px;
}
.dom-schedule__column-02 {
  width: 79.62%;
}
.dom-schedule__column-row {
  margin-bottom: 30px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-schedule__ico {
  width: 6.91%;
  position: relative;
}
.dom-schedule__ico:before {
  content: "";
  display: block;
  width: 5px;
  position: absolute;
  top: 31px;
  left: 23px;
  height: 100%;
  background-color: #d7d7d7;
  z-index: 0;
}
.dom-schedule__ico-in {
  width: 60px;
  display: block;
  position: relative;
  z-index: 1;
}
.dom-schedule__warnings {
  display: block;
  text-align: right;
  margin-bottom: .2em;
}
.dom-schedule__detail {
  width: 89.4%;
  border: 2px solid #d7d7d7;
  padding: 20px 20px 45px 20px;
  position: relative;
}
.dom-schedule__detail-btns-list {
  position: absolute;
  bottom: 12px;
  right: 12px;
}
.dom-schedule__detail-btns-list > li {
  display: inline-block;
  margin-left: 5px;
  text-align: right;
}
.dom-schedule__detail-btns-list > li a {
  display: inline-block;
}
.dom-schedule__detail-transit {
  margin: 8px 0 8px 30px;
  padding: 12px 15px;
  border-left: 1px dotted #ccc;
  position: relative;
}
.dom-schedule__detail-transit:after, .dom-schedule__detail-transit:before {
  content: "";
  width: 9px;
  height: 9px;
  background-color: #fff;
  border: 2px solid #ccc;
  border-radius: 50%;
  position: absolute;
  left: -5px;
}
.dom-schedule__detail-transit:after {
  top: -1px;
}
.dom-schedule__detail-transit:before {
  bottom: -1px;
}
.dom-schedule__detail-transit span {
  font-size: 1.2rem;
  line-height: 1;
  display: inline-block;
}
.dom-schedule__txtarea {
  padding: 20px;
}
.dom-schedule__trans-label {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
}
.dom-schedule__trans-label--homeward {
  margin-top: -30px;
}
.dom-schedule__date-label {
  background-color: #333;
  font-size: 2rem;
  color: #fff;
  height: 32px;
  line-height: 32px;
  padding-left: 10px;
  position: relative;
}
.dom-schedule__date-label:after {
  content: "";
  border-style: solid;
  border-width: 16px 0 16px 12px;
  border-color: transparent transparent transparent #333;
  position: absolute;
  top: 0;
  right: -12px;
}
.dom-schedule__option-label {
  font-size: 2rem;
  line-height: 1.2;
  font-weight: bold;
}
.dom-schedule__option-label small {
  font-size: 1.3rem;
  line-height: 1.7;
  display: block;
}
.dom-schedule__option-txt {
  margin-top: 1em;
  margin-bottom: 1em;
}
.dom-schedule__meal-list {
  margin: 10px 0 0 10px;
}

/* グレー枠BOX */
.dom-schedule-box__trans-dep {
  padding-right: 30px;
  position: relative;
}
.dom-schedule-box__trans-dep:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-schedule-box__trans-dep:before {
  font-size: 2.3rem;
  position: absolute;
  top: 28px;
  right: 15px;
}
.dom-schedule-box__trans-date {
  color: #777;
  line-height: 1;
  margin-bottom: 15px;
}
.dom-schedule-box__trans-info {
  line-height: 1;
  padding-right: 15px;
}
.dom-schedule-box__trans-time {
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: .2em;
  display: block;
}
.dom-schedule-box__trans-time + .dom-schedule-box__trans-airport {
  padding-left: .5em;
}
.dom-schedule-box__trans-airport {
  font-size: 2.4rem;
  font-weight: bold;
  display: block;
}
.dom-schedule-box__trans-company {
  margin-bottom: 10px;
  line-height: 1;
}
.dom-schedule-box__trans-logo {
  display: inline-block;
  vertical-align: middle;
  height: 20px;
  margin-right: 10px;
  width: 60px;
}
.dom-schedule-box__trans-number {
  color: #777;
  display: inline-block;
  vertical-align: middle;
}
.dom-schedule-box__trans-unselected {
  color: #cc0d21;
}
.dom-schedule-box__trans-option-item {
  padding-left: 20px;
}
.dom-schedule-box__trans-option-item:before {
  color: #999;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}
.dom-schedule-box__trans-option-item--seat {
  position: relative;
}
.dom-schedule-box__trans-option-item--seat:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-schedule-box__hotel-header {
  color: #777;
  line-height: 1;
  margin-bottom: 20px;
}
.dom-schedule-box__hotel-in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-schedule-box__hotel-image {
  width: 10rem;
  max-width: 10rem;
}
.dom-schedule-box__hotel-detail {
  padding-left: 18px;
}
.dom-schedule-box__hotel-name {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: .8em;
}
.dom-schedule-box__hotel-rating {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-bottom: .5em;
}
.dom-schedule-box__hotel-rating .dom-rating {
  width: auto;
}
.dom-schedule-box__hotel-plan {
  line-height: 1.4;
  margin-bottom: .8em;
}
.dom-schedule-box__hotel-room {
  line-height: 1.4;
  margin-bottom: .5em;
}
.dom-schedule-box__hotel-room-assign {
  line-height: 1.4;
  margin-bottom: 1em;
}
.dom-schedule-box__hotel-room-assign > li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 1.2rem;
  margin-bottom: .2em;
}
.dom-schedule-box__hotel-room-assign-label {
  width: 5em;
  min-width: 5em;
  position: relative;
}
.dom-schedule-box__hotel-room-assign-label:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-schedule-box__hotel-room-assign-label:before {
  color: #999;
  margin-right: .2em;
}
.dom-schedule-box__hotel-room-assign-label:after {
  content: "：";
}
.dom-schedule-box__hotel-ico-list {
  font-size: 0;
}
.dom-schedule-box__hotel-ico-list > li {
  display: inline-block;
  font-size: 1.1rem;
  margin: 0 5px 5px 0;
}
.dom-schedule-box__option-date {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
}
.dom-schedule-box__option-ttl {
  font-size: 1.5rem;
  font-weight: bold;
}
.dom-schedule-box__option-ttl + .dom-schedule-box__option-date {
  margin-top: 1.5em;
}
.dom-schedule-box__txt-01 {
  color: #777;
}
.dom-schedule-box--flight {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-schedule-box--flight .dom-schedule-box__trans-dep {
  width: 28.5%;
}
.dom-schedule-box--flight .dom-schedule-box__trans-arr {
  width: 24%;
}
.dom-schedule-box--flight .dom-schedule-box__trans-detail {
  width: 26%;
}
.dom-schedule-box--jr {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-schedule-box--jr .dom-schedule-box__trans-dep {
  width: 31.5%;
}
.dom-schedule-box--jr .dom-schedule-box__trans-arr {
  width: 27%;
}
.dom-schedule-box--jr .dom-schedule-box__trans-detail {
  width: 26%;
}

/* pay
---------------------------------------------------------- */
/* pay - table */
.dom-pay-tbl {
  width: 100%;
  margin-bottom: 20px;
  background-color: #fff;
}
.dom-pay-tbl td,
.dom-pay-tbl th {
  border: 1px solid #d7d7d7;
  line-height: 1.4;
}
.dom-pay-tbl thead {
  background-color: #f5f5f5;
}
.dom-pay-tbl thead th {
  text-align: center;
  font-weight: bold;
  padding: 10px;
}
.dom-pay-tbl tbody th {
  text-align: right;
  padding: 15px 10px;
  white-space: nowrap;
}
.dom-pay-tbl tbody td {
  padding: 15px 10px;
  text-align: right;
  font-size: 1.4rem;
}
.dom-pay-tbl tfoot th {
  text-align: right;
  font-weight: bold;
  padding: 15px 10px;
}
.dom-pay-tbl tfoot td {
  padding: 15px 10px;
  text-align: right;
  font-size: 1.6rem;
  font-weight: bold;
}
.dom-pay-tbl__thick {
  border: 2px solid #d7d7d7;
}
.dom-pay-tbl__date {
  width: 15rem;
  text-align: left !important;
}
.dom-pay-tbl__room {
  width: 7rem;
  text-align: center !important;
}
.dom-pay-tbl__price {
  margin-right: .5em;
}
.dom-pay-tbl__people {
  margin-left: .5em;
}
.dom-pay-tbl__option, .dom-pay-tbl__period {
  width: 22rem;
  text-align: left !important;
}
.dom-pay-tbl--breakdown {
  margin-bottom: 10px;
}

th.dom-pay-tbl__empty {
  background: #fff;
  border: none;
}

/* pay - total */
.dom-pay-total {
  margin-bottom: 20px;
}
.dom-pay-total__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: center;
  align-items: center;
}
.dom-pay-total__txt {
  font-size: 1.4rem;
  padding-right: 1em;
}
.dom-pay-total__label {
  font-weight: bold;
  font-size: 1.4rem;
  padding-right: 20px;
}
.dom-pay-total__price {
  font-size: 2.4rem;
}
.dom-pay-total__price em {
  font-weight: bold;
  margin-right: .2em;
}

.dom-layout-02 .dom-pay-total {
  margin-left: auto;
  margin-bottom: 0;
}

/* pay - sub-total */
.dom-pay-sub-total__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: center;
  align-items: center;
}
.dom-pay-sub-total__label {
  font-weight: bold;
  font-size: 1.2rem;
  padding-right: 20px;
}
.dom-pay-sub-total__price {
  font-size: 1.8rem;
}
.dom-pay-sub-total__price em {
  font-weight: bold;
  margin-right: .2em;
}

.dom-layout-02 .dom-pay-sub-total {
  margin-left: auto;
  margin-bottom: 0;
}

/* pay - total fixed 下部固定 */
.dom-pay-total-fixed {
  position: fixed;
  bottom: 0;
  right: 110px;
  background-color: #fff;
  border-radius: 6px 6px 0 0;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
  z-index: 999;
}
.dom-pay-total-fixed__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: center;
  align-items: center;
  padding: 20px 30px;
}
.dom-pay-total-fixed__label {
  font-weight: bold;
  font-size: 1.4rem;
  padding-right: 20px;
}
.dom-pay-total-fixed__price {
  font-size: 2.4rem;
}
.dom-pay-total-fixed__price em {
  font-size: 3rem;
  font-weight: bold;
  margin-right: .2em;
}

/* pay - breakdown */
.dom-pay-breakedown {
  text-align: right;
}
.dom-pay-breakedown__content {
  display: none;
  text-align: left;
  padding: 30px 20px 0 20px;
  margin: 20px 0;
  border: 1px solid #d7d7d7;
}
.dom-pay-breakedown__section {
  margin-bottom: 20px;
}
.dom-pay-breakedown__btn {
  vertical-align: middle;
  padding-left: 1em;
}
.dom-pay-breakedown__btn span {
  display: inline-block;
}
.dom-pay-breakedown__btn span:after {
  content: "内訳を表示する";
}
.dom-pay-breakedown__heading {
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: .5em;
}

/* delete
---------------------------------------------------------- */
.dom-delete {
  padding-right: 18rem;
  min-height: 40px;
  position: relative;
}
.dom-delete__btn-delete-01 {
  width: 16rem;
  position: absolute;
  top: 0;
  right: 0;
}
.dom-delete__warnings-01 {
  margin-bottom: 0;
}

.dom-delete__warnings-01 {
  margin-top: 15px;
}

/* room
---------------------------------------------------------- */
/* 部屋割り */
.dom-room-assign {
  padding: 10px 10px 30px 10px;
}
.dom-room-assign__ttl {
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 20px;
}
.dom-room-assign__room {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 20px 0 10px;
  border-bottom: 1px solid #d7d7d7;
}
.dom-room-assign__room-label {
  width: 8rem;
  min-width: 8rem;
  font-size: 1.6rem;
  font-weight: bold;
}
.dom-room-assign__room-people .dom-spinbox__label {
  width: 13em;
  min-width: 13em;
  padding-right: 1.5em;
  text-align: right;
}
.dom-room-assign__room-people .dom-spinbox__list {
  -webkit-justify-content: left;
  justify-content: left;
}
.dom-room-assign__btn-select {
  margin-top: 20px;
  text-align: center;
}
.dom-room-assign__btn-select a {
  width: 20rem;
  margin: auto;
  color: #fff;
}
.dom-room-assign__txt-01 {
  margin-bottom: 1em;
}
.dom-room-assign__txt-02 {
  margin-top: 1.5em;
}

/* selected
---------------------------------------------------------- */
.dom-selected-flight {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-selected-flight__content {
  display: table;
}
.dom-selected-flight__date {
  display: table-cell;
  font-size: 1.6rem;
  font-weight: bold;
}
.dom-selected-flight__detail {
  display: table-cell;
  padding-left: 20px;
}
.dom-selected-flight__detail-txt {
  font-size: 1.4rem;
}
.dom-selected-flight__pay {
  -webkit-align-self: flex-end;
  align-self: flex-end;
  line-height: 1;
  white-space: nowrap;
  padding-left: 20px;
}
.dom-selected-flight__pay-label {
  font-size: 1.4rem;
  font-weight: bold;
  padding-right: 1em;
}
.dom-selected-flight__pay-price {
  font-size: 1.8rem;
  font-weight: bold;
}
.dom-selected-flight__pay-price em {
  font-size: 2.4rem;
  font-weight: bold;
  margin-right: .2em;
}

/* accordion
---------------------------------------------------------- */
.dom-accordion-content {
  display: none;
}

.dom-accordion-content-02 {
  display: block;
  height: 150px;
  overflow: hidden;
  position: relative;
}
.dom-accordion-content-02:after {
  content: "";
  display: block;
  height: 50px;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(white));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), white);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
}
.dom-accordion-content-02.is-open {
  height: auto;
  overflow: visible;
}
.dom-accordion-content-02.is-open:after {
  display: none;
}

/* section
---------------------------------------------------------- */
.dom-accordion-section {
  background-color: #fff;
  padding: 25px 20px 20px 20px;
  margin-bottom: 20px;
}
.dom-accordion-section:before, .dom-accordion-section:after {
  content: "";
  display: table;
}
.dom-accordion-section:after {
  clear: both;
}
.dom-accordion-section__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-accordion-section__column-01 {
  width: 13rem;
  min-width: 13rem;
}
.dom-accordion-section__column-02 {
  width: 100%;
}
.dom-accordion-section__heading {
  font-size: 2rem;
  line-height: 1.2;
  font-weight: bold;
}
.dom-accordion-section__heading--search {
  position: relative;
}
.dom-accordion-section__heading--search:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-accordion-section__heading--search:before {
  color: #999;
  font-size: 1.6rem;
  margin-right: .3em;
}
.dom-accordion-section__more-content {
  display: none;
}
.dom-accordion-section__more-btn {
  text-align: center;
  display: block;
  font-size: 1.4rem;
}

/* tab
---------------------------------------------------------- */
.dom-tab {
  margin-bottom: 20px;
}
.dom-tab__list > li {
  font-size: 1.6rem;
  display: inline-block;
  margin-right: 2em;
}
.dom-tab__list > li a {
  color: #777;
  text-decoration: none;
}
.dom-tab__item {
  display: block;
  padding: 8px 0;
  position: relative;
}
.dom-tab__item.is-active {
  color: #000;
  font-weight: bold;
}
.dom-tab__item.is-active:after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 0;
}

.dom-tab-contents {
  display: none;
}
.dom-tab-contents.is-show {
  display: block !important;
  animation: fadeIn1 .2s linear 0s;
}

/* nav
---------------------------------------------------------- */
/* ページ内ナビゲーション */
.dom-nav-contents {
  background-color: #fff;
  margin-bottom: 20px;
  height: 54px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-nav-contents__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  transition: .2s;
}
.dom-nav-contents__list:nth-child(2) {
  padding: 0 15px;
}
.dom-nav-contents__list:nth-child(2) .dom-nav-contents__item {
  /*a:hover:after {
  	display: none !important;
  }*/
}
.dom-nav-contents__list:nth-child(2) .dom-nav-contents__item:after {
  display: none;
}
.dom-nav-contents__item {
  font-size: 1.5rem;
  line-height: 54px;
  font-weight: bold;
  min-width: 18rem;
  text-align: center;
  position: relative;
  white-space: nowrap;
}
.dom-nav-contents__item:after {
  content: "";
  width: 1px;
  height: 50%;
  display: block;
  position: absolute;
  top: 25%;
  right: 0;
  background-color: #d7d7d7;
}
.dom-nav-contents__item a {
  display: block;
  padding: 0 20px;
  text-decoration: none;
  color: #323743;
  position: relative;
}
.dom-nav-contents__item.is-active:before,
.dom-nav-contents__item a:hover:before {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background-color: #999;
  margin-left: -40px;
  position: absolute;
  bottom: 0;
  left: 50%;
}
.dom-nav-contents__item--favorite, .dom-nav-contents__item--sns {
  min-width: 0;
  font-size: 2rem;
}
.dom-nav-contents__item--favorite a, .dom-nav-contents__item--sns a {
  cursor: pointer;
}
.dom-nav-contents.is-fixed {
  width: 1120px;
  position: fixed;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1000;
  border-bottom: 1px solid #d7d7d7;
}

@media screen and (max-width: 1120px) {
  .dom-nav-contents.is-fixed {
    width: 100%;
  }
}
/* ツールチップが画面からはみ出さない処理 */
@media screen and (min-width: 1201px) and (max-width: 1250px) {
  .dom-nav-contents__list + .dom-nav-contents__list {
    margin-right: 4%;
  }
}
@media screen and (min-width: 1151px) and (max-width: 1200px) {
  .dom-nav-contents__list + .dom-nav-contents__list {
    margin-right: 5%;
  }
}
@media screen and (min-width: 981px) and (max-width: 1150px) {
  .dom-nav-contents__list + .dom-nav-contents__list {
    margin-right: 6%;
  }
}
@media screen and (max-width: 980px) {
  .dom-nav-contents {
    -webkit-justify-content: start;
    justify-content: start;
  }
  .dom-nav-contents__item {
    min-width: 16rem;
  }
}
@media screen and (max-width: 930px) {
  .dom-nav-contents__item {
    min-width: 0;
  }
}
/* reserve
---------------------------------------------------------- */
.dom-reserve {
  padding: 10px;
}
.dom-reserve__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #d7d7d7;
}
.dom-reserve__column-01 {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #d7d7d7;
}
.dom-reserve__column-01:nth-of-type(1) {
  margin-top: 0;
  border-top: none;
}
.dom-reserve__column-02 {
  width: 50%;
  padding-top: 10px;
}
.dom-reserve__column-02:nth-child(1) {
  padding-right: 30px;
}
.dom-reserve__column-02:nth-child(2) {
  border-left: 1px solid #d7d7d7;
  padding-left: 30px;
}
.dom-reserve__column-03 {
  padding-top: 10px;
}
.dom-reserve__column-03:nth-child(1) {
  width: 32%;
  border-right: 1px solid #d7d7d7;
  padding-right: 30px;
}
.dom-reserve__column-03:nth-child(2) {
  width: 36%;
  padding-right: 30px;
  padding-left: 30px;
}
.dom-reserve__column-03:nth-child(3) {
  width: 32%;
  border-left: 1px solid #d7d7d7;
  padding-left: 30px;
}
.dom-reserve__column-in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-reserve__column-left {
  width: 50%;
  padding-right: 30px;
}
.dom-reserve__column-right {
  width: 50%;
  padding-left: 30px;
}
.dom-reserve__heading-01 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 30px;
}
.dom-reserve__heading-ico {
  color: #cc0d21;
  margin-right: 8px;
}
.dom-reserve__btn-group {
  text-align: center;
  margin: 30px 0;
}
.dom-reserve__btn-group .dom-reserve__btn-01 {
  width: 313px;
  display: inline-block;
  margin: 0 10px;
}
.dom-reserve__btn-01 {
  text-align: center;
  margin-bottom: 25px;
}
.dom-reserve__btn-01 > a {
  max-width: 33rem;
  margin: auto;
}
.dom-reserve__txt-right {
  text-align: right;
}
.dom-reserve__txt-center {
  text-align: center;
}
.dom-reserve__txt-01 {
  font-size: 1.5rem;
  margin-top: 1em;
}
.dom-reserve__txt-02 {
  font-size: 1.5rem;
  margin-top: 1em;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.dom-reserve__txt-point {
  font-size: 1.6rem;
  display: inline-flex;
  align-items: center;
  position: relative;
}
.dom-reserve__txt-point:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-reserve__txt-point:before {
  margin-right: .2em;
  font-size: 1.8rem;
  color: #e18d52;
}
.dom-reserve__txt-point em {
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0 .2em;
  color: #e18d52;
}
.dom-reserve__point {
  margin: 30px 0;
  padding: 20px;
  border: 2px solid #d7d7d7;
  text-align: center;
}
.dom-reserve__point-label {
  font-size: 1.6rem;
  display: inline-block;
  font-weight: bold;
  margin-right: 1em;
}
.dom-reserve__point-data {
  display: inline-block;
  font-size: 1.6rem;
  color: #e18d52;
  position: relative;
}
.dom-reserve__point-data:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-reserve__point-data:before {
  margin-right: .2em;
  font-size: 1.8rem;
}
.dom-reserve__point-data em {
  font-size: 2.4rem;
  font-weight: bold;
  margin-right: .2em;
}
.dom-reserve__point-txt {
  display: block;
}
.dom-reserve__tel {
  margin-bottom: 1.5em;
  line-height: 1.4;
}
.dom-reserve__tel-ttl {
  font-size: 1.6rem;
  font-weight: bold;
}
.dom-reserve__tel-set-01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.dom-reserve__tel-set-02 {
  display: inline-block;
  margin: 20px 20px 0 0;
}
.dom-reserve__tel-label {
  display: block;
  margin-right: .8em;
}
.dom-reserve__tel-number {
  display: block;
  font-size: 3rem;
  font-weight: bold;
}
.dom-reserve__tel-number--navi {
  position: relative;
  padding-left: 33px;
}
.dom-reserve__tel-number--navi:before {
  content: "";
  background: url(../../../images/dom/1.0/ico-tel.svg) no-repeat center center;
  background-size: contain;
  display: block;
  width: 32px;
  height: 18px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.dom-reserve__tel-number--ip {
  position: relative;
  padding-left: 30px;
}
.dom-reserve__tel-number--ip:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-reserve__tel-number--ip:before {
  font-size: 2.4rem;
  margin-right: .2em;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}
.dom-reserve__tel-txt-01 {
  margin-top: 1em;
}
.dom-reserve__tel-txt-01--right {
  text-align: right;
}
.dom-reserve__tel-time {
  margin-top: .3em;
}
.dom-reserve__tel-time--right {
  text-align: right;
}
.dom-reserve__notification {
  background-color: #f5f5f5;
  padding: 1em 1.5em;
  margin-bottom: 1em;
}
.dom-reserve__notification-ttl {
  font-weight: bold;
  margin-bottom: .5em;
}
.dom-reserve__notification-in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-reserve__notification-label {
  padding-right: 1.5em;
  min-width: 4.5em;
  white-space: nowrap;
}
.dom-reserve .dom-note-list-type-01 {
  margin-top: 1em;
}
.dom-reserve__contact-box {
  background-color: #f5f5f5;
  padding: 1.5em;
  margin-top: 2em;
}
.dom-reserve__contact-box-ttl {
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: .5em;
}
.dom-reserve__confirm-guide {
  font-size: 1.6rem;
  margin-bottom: 1em;
  padding: 15px 20px;
  border: 1px solid #d7d7d7;
}

/* style - JTBならスタイルに合わせて予約方法が選べる */
.dom-reserve-style {
  background-color: #fff;
  border-top: 1px solid #d7d7d7;
  border-bottom: 1px solid #d7d7d7;
}
.dom-reserve-style-body {
  max-width: 1130px;
  padding: 60px 5px;
  margin: 0 auto;
}
.dom-reserve-style__heading {
  text-align: center;
  margin-bottom: 50px;
}
.dom-reserve-style__heading span {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
  display: inline-block;
  padding: 5px 35px;
  position: relative;
}
.dom-reserve-style__heading span:after, .dom-reserve-style__heading span:before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: #323743;
  position: absolute;
  top: 0;
}
.dom-reserve-style__heading span:after {
  left: 0;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}
.dom-reserve-style__heading span:before {
  right: 0;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}
.dom-reserve-style__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 0 -30px 50px;
}
.dom-reserve-style__item {
  width: 25%;
  padding: 0 30px;
}
.dom-reserve-style__item:last-child .dom-reserve-style__image-img {
  max-height: 65px;
}
.dom-reserve-style__image {
  width: 100%;
  height: 80px;
  margin-bottom: 25px;
  position: relative;
}
.dom-reserve-style__image-img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.dom-reserve-style__ttl {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.2;
  font-weight: bold;
  margin: 0 -10px .8em;
}
.dom-reserve-style__link-01 {
  margin-top: .5em;
}
.dom-reserve-style__link-01 a {
  color: #125687;
}
.dom-reserve-style__tel {
  margin-top: 1em;
  line-height: 1.4;
}
.dom-reserve-style__tel-label {
  font-weight: bold;
}
.dom-reserve-style__tel-number {
  font-size: 2.4rem;
  font-weight: bold;
  padding: 5px 0;
  position: relative;
}
.dom-reserve-style__tel-number:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-reserve-style__tel-number:before {
  color: #cc0d21;
  font-size: 2rem;
}
.dom-reserve-style__tel-time {
  font-size: 1.2rem;
}
.dom-reserve-style__btn-01 {
  margin-top: 1em;
}
.dom-reserve-style__note-01 {
  text-align: right;
}

/* favorite
---------------------------------------------------------- */
/* btn - お気に入り登録・削除 吹き出し */
.dom-favorite-btn-wrap {
  position: relative;
}
.dom-favorite-btn__tip {
  position: absolute;
  bottom: 100%;
  left: 0;
  margin-bottom: 10px;
  background-color: rgba(0, 0, 0, 0.6);
  padding: 10px;
  border-radius: 6px;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  white-space: nowrap;
  display: none;
}
.dom-favorite-btn__tip:after {
  content: "";
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: rgba(0, 0, 0, 0.6) transparent transparent transparent;
  position: absolute;
  bottom: -6px;
  left: 20px;
}

/* nav-btn - ナビゲーション内のお気に入りボタン */
a.dom-favorite-nav-btn.is-checked:after,
a.dom-favorite-nav-btn.is-checked:hover:after {
  content: "登録しました";
  background: #ffd4a5 !important;
  box-shadow: 0 -1px 7px rgba(100, 100, 100, 0.8);
  color: #cc0d21;
  display: block !important;
  font-size: 1.1rem;
  line-height: 1;
  font-weight: bold;
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  padding: 8px 1em;
  white-space: nowrap;
  text-align: center;
  z-index: 99;
}
a.dom-favorite-nav-btn.is-checked:before,
a.dom-favorite-nav-btn.is-checked:hover:before {
  content: "";
  background: transparent !important;
  width: auto !important;
  height: auto !important;
  bottom: auto !important;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #ffd4a5 transparent;
  position: absolute;
  top: calc(100% - 8px);
  left: 50%;
  margin-left: -8px !important;
  z-index: 100;
}

/* visual - メインビジュアル */
.dom-favorite-mv {
  background: url(../../../images/dom/1.0/bg-favorite-mv.jpg) no-repeat right center;
  padding: 30px 10px;
}
.dom-favorite-mv__ttl {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: .5em;
  position: relative;
}
.dom-favorite-mv__ttl:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-favorite-mv__ttl:before {
  color: #cc0d21;
  margin-right: .2em;
}

.dom-favorite-item {
  background-color: #fff;
  padding: 20px;
  margin-bottom: 20px;
  position: relative;
}
.dom-favorite-item__btn-delete {
  padding: 10px;
  cursor: pointer;
  position: relative;
  position: absolute;
  top: 5px;
  right: 5px;
  transition: opacity .2s;
  line-height: 1;
}
.dom-favorite-item__btn-delete:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-favorite-item__btn-delete:hover {
  opacity: .8;
}
.dom-favorite-item__btn-delete:before {
  color: #999;
  font-size: 1.2rem;
  line-height: 1;
}
.dom-favorite-item__header {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  padding-right: 20px;
  margin-bottom: 15px;
}
.dom-favorite-item__number {
  width: 36px;
  min-width: 36px;
  height: 36px;
  text-align: center;
  margin-right: 10px;
  position: relative;
}
.dom-favorite-item__number:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-favorite-item__number:before {
  color: #cc0d21;
  font-size: 3.6rem;
}
.dom-favorite-item__number-txt {
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  display: inline-block;
  width: 100%;
  line-height: 32px;
  position: relative;
  position: absolute;
  top: 0;
  left: 0;
}
.dom-favorite-item__hotel-ico {
  min-width: 3.4rem;
  width: 3.4rem;
  margin-right: 10px;
}
.dom-favorite-item__hotel-ico img {
  width: 34px;
}
.dom-favorite-item__hotel-name {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
}
.dom-favorite-item__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.dom-favorite-item__column-01 {
  width: 15%;
  min-width: 15%;
  padding-right: 10px;
}
.dom-favorite-item__column-02 {
  width: 18%;
  min-width: 18%;
  padding: 0 10px;
}
.dom-favorite-item__column-03 {
  width: 45%;
  min-width: 45%;
  padding: 0 10px;
}
.dom-favorite-item__column-04 {
  width: 22%;
  min-width: 22%;
  padding-left: 10px;
}
.dom-favorite-item__area {
  line-height: 1.4;
  margin-bottom: 1em;
}
.dom-favorite-item__btn {
  margin-bottom: 1.5em;
}
.dom-favorite-item__btn > a {
  font-size: 1.5rem;
}
.dom-favorite-item .domhotel-hotel-details__dp-list {
  margin: 0;
}
.dom-favorite-item .dom-hotel-details__ico-list-02 {
  margin-bottom: 1rem;
}
.dom-favorite-item .dom-hotel-details__access {
  clear: both;
}
.dom-favorite-item .dom-rating {
  -webkit-justify-content: right;
  justify-content: right;
}
.dom-favorite-item .domtour-tour-list__logo {
  position: absolute;
  top: 20px;
  right: 50px;
}
.dom-favorite-item .domtour-tour-list__name {
  font-size: 1.8rem;
  margin-top: -10px;
  margin-bottom: 15px;
}
.dom-favorite-item .domtour-tour-list__column-01 {
  width: 20rem;
  min-width: 20rem;
}
.dom-favorite-item .domtour-tour-list__column-02 {
  width: 58rem;
  min-width: 58rem;
}
.dom-favorite-item .domtour-tour-list__column-03 {
  width: 25rem;
  min-width: 25rem;
}

/* none - お気に入り登録なし */
.dom-favorite-none {
  background-color: #fff;
  padding: 20px;
}

/* news
---------------------------------------------------------- */
.dom-news-section {
  padding: 30px 0 0 0;
}

/* loading
---------------------------------------------------------- */
/* box-01 ボックス内ローディング */
.dom-loading-box-01 {
  background-color: rgba(255, 244, 211, 0.85);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
}
.dom-loading-box-01__message {
  font-size: 1.5rem;
  color: #cc0d21;
  font-weight: bold;
  padding: 20px 20px 20px 70px;
  max-width: 80%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.dom-loading-box-01__message:after {
  content: "";
  display: block;
  background: url(../../../images/dom/1.0/ico-loading-01.gif) no-repeat 0 0;
  background-size: contain;
  width: 70px;
  height: 70px;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -35px;
}

/* error
---------------------------------------------------------- */
/* 404 */
.dom-error-404 {
  padding-top: 100px;
}
.dom-error-404__txt-01 {
  font-size: 3rem;
  margin-bottom: 1em;
  position: relative;
}
.dom-error-404__txt-01:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.dom-error-404__txt-01:before {
  color: #cc0d21;
  margin-right: .4em;
  vertical-align: middle;
}
.dom-error-404__txt-02 {
  font-size: 1.6rem;
}
.dom-error-404__txt-03 {
  font-size: 1.6rem;
}

/* referrer
---------------------------------------------------------- */
/* 施設詳細 - tour/dp からの遷移 */
.dom-referrer-tour .jtb-nav-breadcrumb,
.dom-referrer-tour .dom-page-navi,
.dom-referrer-tour .domhotel-hotel-details__action-list,
.dom-referrer-tour .domhotel-hotel-details__dp-list,
.dom-referrer-tour .dom-hotel-price,
.dom-referrer-tour .dom-hotel-details__btn,
.dom-referrer-tour .domhotel-plan-check-btn,
.dom-referrer-tour .domhotel-hotel-menu .dom-tab__list > li:nth-child(1),
.dom-referrer-tour .dom-hotel-heading-cmn,
.dom-referrer-tour .dom-note-section-01,
.dom-referrer-tour .dom-link-section-01,
.dom-referrer-tour .dom-btn-history-fixed,
.dom-referrer-tour .dom-section-crosslink,
.dom-referrer-dp .jtb-nav-breadcrumb,
.dom-referrer-dp .dom-page-navi,
.dom-referrer-dp .domhotel-hotel-details__action-list,
.dom-referrer-dp .domhotel-hotel-details__dp-list,
.dom-referrer-dp .dom-hotel-price,
.dom-referrer-dp .dom-hotel-details__btn,
.dom-referrer-dp .domhotel-plan-check-btn,
.dom-referrer-dp .domhotel-hotel-menu .dom-tab__list > li:nth-child(1),
.dom-referrer-dp .dom-hotel-heading-cmn,
.dom-referrer-dp .dom-note-section-01,
.dom-referrer-dp .dom-link-section-01,
.dom-referrer-dp .dom-btn-history-fixed,
.dom-referrer-dp .dom-section-crosslink {
  display: none;
}
.dom-referrer-tour .dom-heading-04,
.dom-referrer-dp .dom-heading-04 {
  margin-top: 30px;
}

/* 施設詳細 - 提携サイトからの遷移 */
.dom-section-heading-txt-tour {
  display: inline-block;
}

.dom-section-heading-txt-hotel {
  display: none;
}

.dom-referrer-jal .dom-referrer-teikei-hide,
.dom-referrer-jal .domhotel-hotel-details__dp-list,
.dom-referrer-jcb .dom-referrer-teikei-hide,
.dom-referrer-jcb .domhotel-hotel-details__dp-list,
.dom-referrer-jaccs .dom-referrer-teikei-hide,
.dom-referrer-jaccs .domhotel-hotel-details__dp-list,
.dom-referrer-expedia .dom-referrer-teikei-hide,
.dom-referrer-expedia .domhotel-hotel-details__dp-list {
  display: none;
}
.dom-referrer-jal .dom-section-heading-txt-tour,
.dom-referrer-jcb .dom-section-heading-txt-tour,
.dom-referrer-jaccs .dom-section-heading-txt-tour,
.dom-referrer-expedia .dom-section-heading-txt-tour {
  display: none;
}
.dom-referrer-jal .dom-section-heading-txt-hotel,
.dom-referrer-jcb .dom-section-heading-txt-hotel,
.dom-referrer-jaccs .dom-section-heading-txt-hotel,
.dom-referrer-expedia .dom-section-heading-txt-hotel {
  display: inline-block;
}

/* copy
---------------------------------------------------------- */
/* btn - リンクをコピー */
.dom-copy-btn-wrap {
  position: relative;
}
.dom-copy-btn__tip {
  position: absolute;
  bottom: 100%;
  right: 0;
  margin-bottom: 10px;
  background-color: rgba(0, 0, 0, 0.6);
  padding: 10px;
  border-radius: 6px;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  white-space: nowrap;
  display: none;
}
.dom-copy-btn__tip:after {
  content: "";
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: rgba(0, 0, 0, 0.6) transparent transparent transparent;
  position: absolute;
  bottom: -6px;
  right: 20px;
}

/* tourism
---------------------------------------------------------- */
.dom-tourism-01,
.dom-tourism-02 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.dom-tourism-01__detail,
.dom-tourism-02__detail {
  padding-left: 2rem;
}

.dom-tourism-01__image {
  width: 10rem;
  min-width: 10rem;
}

.dom-tourism-02:not(:last-child) {
  border-bottom: 1px solid #e7e7e7;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.dom-tourism-02__image {
  width: 20rem;
  min-width: 20rem;
}
.dom-tourism-02__ttl {
  font-size: 1.6rem;
  font-weight: bold;
}
.dom-tourism-02__address {
  font-size: 1.2rem;
  margin-top: .5em;
}
.dom-tourism-02__txt {
  margin-top: .5em;
}
.dom-tourism-02__btn {
  margin-top: 1em;
  text-align: right;
}
.dom-tourism-02__btn > a {
  display: inline-block;
}
