/* -----------------------------------------------------------
CSS Information

File name:      tour_detail.css
Created:        2017-03-24
Style Info:     for [tour/detail]
----------------------------------------------------------- */
.modal-body .row {
    margin-left: 0px !important;
    margin-right: 0px !important;
}

@media (max-width: 657px) {
    #tourDetail_Book1_1LinkButton {
        font-size: 18px;
    }
}

@media (min-width: 658px) and (max-width:1023px) {
    #tourDetail_Book1_1LinkButton {
        font-size: 12pt;
    }
}

/* 2017/11 niijima */
.border-mini{
    margin-bottom: 50px;
}
.main-contents h2{
    color: #333333;
    display: block;
    font-size: 28px;
    justify-content: space-between;
    margin:0 auto 20px;
    text-align: center;
    font-weight: bold;
}
.col-md-12{
    margin-bottom: 35px;
}
#slider-main{
    padding-top: 25px
}
.row .snsArea{
  background-color: #F7F5F0;
  width: 100%;
  padding:40px 0 10px;
}
.row .snsArea ul{
  margin: 0 auto;
  width: 960px;
  text-align: right;
  padding: 0;
  height: 40px;
}
.row .snsArea ul li{
  display: inline-block;
  font-size: 12px;
  vertical-align: middle;
  width:40px;
  height: 40px;
  padding: 5px 0;
  float: right;
}
.row .snsArea ul li.fav_tour{
  width: auto;
  float: left;
  height: auto;
  margin: 0;
  padding: 0;
  position: relative;
}
.row .snsArea ul li.fbBtn button {
  border:none;
  width:auto;
  height: 100%;
  padding:0;
}
.row .snsArea ul li:nth-of-type(4){
  width: auto;
  height: auto;
}
.row .snsArea ul li img{
  width:auto;
  height: 100%;
}
#SelectModal{
    text-align:left;
}
.modal button.closeBtn {
  cursor: pointer;
  position: absolute;
  right: 20px;
  padding: 0;
  top: 35px;
  width: 100%;
  border: none;
  color: #333;
  height: auto;
  background: none;
  margin: 0;
}
.tour-table .dp-search {
  background-color: #333333;
  color: #ffffff;
  cursor: pointer;
  width: 80%;
  margin: 20px auto 0;
}
.modal p.button {
  font-size: 20px;
}
#SelectModal .modal-header{
    border-top: 20px solid #f9423a;
    position: relative;
}
#SelectModal .col-md-12{
    margin-bottom: 0;
}
#SelectModal a{
    margin: 0;
}
.tab-pane .container{
    padding-top: 40px;
}
button[type="button"].fav_btn{
  line-height:1;
  color: #f9423a;
  border: solid 2px #f9423a;
  border-radius: 4px;
  display: block;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  padding: 14px 0 14px 20px;
  font-weight: bold;
  font-size: 15px;
  background: url("/images/common/heart.svg") no-repeat white;
  background-position: 10px 50%;
  overflow:visible;
  height: 50px;
  width: 400px;
  margin: 0 auto 15px;
  font-family: "驛｢譎擾ｿｽ�主ｸｷ�ｹ�ｧ�ｽ�ｮ驛｢譎���ｽ�ｧ陋幢ｽｵ邵ｺ�ｽ Pro W3", "Hiragino Kaku Gothic Pro", "驛｢譎｢�ｽ�｡驛｢�ｧ�ｽ�､驛｢譎｢�ｽ�ｪ驛｢�ｧ�ｽ�ｪ", Meiryo, "�ｽ�ｽ�ｽ�ｭ�ｽ�ｽ�ｽ�ｳ �ｽ�ｽ�ｽ�ｰ驛｢�ｧ�ｽ�ｴ驛｢�ｧ�ｽ�ｷ驛｢譎｢�ｿ�ｽ邵ｺ�ｽ", "MS PGothic", Osaka, sans-serif;
  background-size: 25px auto;
}
.snsArea button[type="button"].fav_btn{
    width: 160px;
    background-color: #f7f5f0;
    text-align: left;
    padding: 12px 10px 12px 45px;
    background-position: 5% 55%;
    margin: 0;
    font-size: 12px;
    height: 40px;
    border: 1px solid;
    background-size: 30px 24px;
}
button[type="button"].fav_btn:before{
  content:"\00304a\006c17\00306b\005165\00308a\00306b\00767b\009332";
}
button[type="button"].finish{
    background: url("/images/common/heart_on.svg") no-repeat white;
    background-position: 95% 55%;
    color:#63666a;
    border: solid 2px #b2b2b2;
    pointer-events: none;
    background-size:30px 24px;
}
.snsArea button[type="button"].finish{
    background-position: 5% 55%;
    background-color: #f7f5f0;
    border: solid 1px #f7f5f0;
    background-size: 30px 24px;
    border: 1px solid rgb(249, 66, 58);
    color: rgb(249, 66, 58);
    width: 170px;
}
button[type="button"].finish:before{
  content:"\00304a\006c17\00306b\005165\00308a\00767b\009332\006e08\00307f";
}

#tourDetail_PRICE_REMARKSPanel .row{
    margin: 0;
}

.cvButton.sp {
  display: block;
}
.snsArea.bottomButton,
.favButton.bottomButton {
  display: none;
}
.snsArea.pc {
  display: block;
}

@media (max-width: 657px) {
.modal button.closeBtn {
  top: 23px;
  right: 5px;
}
.tour-table button.dp-search {
  width: 100%;
}
.modal p.button{
    font-size:20px!important;
  }
.snsArea.bottomButton,
.favButton.bottomButton {
  display: block;
}
.container-fluid .row .snsArea.pc {
  display: none;
}
.main-contents h2{
    border-bottom: 1px solid #dcdcdc;
    font-size: 16px;
    font-weight: bold;
    padding: 12px 0 12px;
    text-align: center;
}
.col-md-12{
    margin-bottom: 15px;
}
.border-mini{
    display: none;
}
#slider-main{
    padding-top: 10px;
}
.row .snsArea {
  background-color: #F7F5F0;
  padding: 0 12px;
  display: flex;
  height: 45px;
  align-items: center;
  margin-bottom: 15px;
}
.row .snsArea h3{
  font-size: 14px;
  width: 100%;
  padding: 0;
}
.row .snsArea ul{
margin: 5px auto;
width: 100%;
max-width: 640px;
text-align: right;
}
.row .snsArea ul li{
display: inline-block;
font-size: 12px;
letter-spacing: 0.14em;
margin-right:4%;
vertical-align: middle;
width: 25px;
float: right;
}
.row .snsArea ul li.fav_tour{
width: auto;
float: left;
height: auto;
margin: 0;
margin-left: 2%;
padding: 0;
position: relative;
}

button[type="button"].finish {
  background-position: 3% 55%;
  color: #f9423a;
  border: solid 2px #f9423a;
  background-size: 25px auto;
}

.snsArea button[type="button"].fav_btn{
    width: 160px;
    background-color: #f7f5f0;
    text-align: right;
    padding: 12px 20px 12px 40px;
    background-position: 8% 55%;
    margin: 0;
    height: 40px;
    font-size: 12px;
    font-weight: normal;
    background-size: 28px 23px;
}
.row .snsArea button.finish{
    background-color: #f7f5f0;
    padding: 5px 10px 5px 40px;
    background-position: 5% 50%!important;
    background-size: 25px auto;
}

.row .snsArea button.finish{
    background-size: 25px auto;
    background-position: 5% 50%;
    background-color: #f7f5f0;
    border: none;
}

.tab-pane .container{
    padding-top: 0;
}
}


/* モーダル追記 */
.modal-backdrop{
    background: #000000;
    opacity: 0.1 !important;
}


button[type="button"]:focus{
  outline: none;
}
@media (min-width: 1023px) {
    .container{
        width: 990px;
    }
    .row .snsArea, .Top-text{
        width: 100%;
    }
}
@media print, screen and (min-width: 658px) and (max-width:1023px){
    .hidden-xs {
        display: none !important;
    }
    #CalendarPanel .hidden-xs {
        display: block !important;
    }
    #tab3{
        margin-bottom: 50px;
    }
    .col-md-2, .col-md-9, .col-md-10, .col-md-12{
        float: none;
    }
    .col-md-9 {
        width: 100%;
        margin: 0 auto;
    }
    .row .snsArea,.Top-text{
        padding-left: 15px;
        padding-right: 15px;
        width: auto;
    }
    .container{
        width: 100%;
    }
}
@media (min-width:658px){
    #booking_form{
        width: 600px;
        margin: 0 auto;
    }
}

.importantExplanationWrap {
  margin: 60px auto 40px;
  width: 960px;
}

.importantExplanation {
  background-color: #f6f6f6;
  padding: 10px 30px 30px;
  font-size: 13px;
  line-height: 1.5;
}

.importantExplanation h2 {
  font-size: 16px;
  font-weight: bold;
  text-align: center!important;
  border-bottom: none!important;
  margin-bottom: 20px!important;
}

.cvButton {
  margin: 20px auto;
  text-align: center;
  width: 400px;
}

.cvButton a {
  color: rgb(255, 255, 255);
  padding: 18px 0px 18px 0;
  border-radius: 5px;
  font-weight: bold;
  font-size: 18px;
  background-attachment: initial;
  background-origin: initial;
  background-clip: initial;
  background-color: rgb(249, 66, 58);
}

.container .img_notice {
  text-align: right;
  font-size: 14px;
  max-width: 960px;
  margin: 12px auto 0;
  padding: 0 15px;
}

.Bg_f8f5f0 h1 {
  font-size: 20px;
  margin-top: 5px;
  margin: 0 auto;
  padding: 22px 3%;
  line-height: 1.5;
  font-weight: bold;
  width: 960px;
  text-align: center;
}

.Bg_f8f5f0 .fsLL {
  font-size: 16px;
  text-align: center;
  margin: 0 auto;
  background: #f7f5f0;
  max-width: 960px;
}

.col-md-12 h2 {
  font-weight: bold;
  font-size: 20px;
  text-align: left;
  margin: 15px 0 0;
}

.col-md-12 table {
  width: 960px;
  margin: 15px auto 0;
}

.col-md-12.point {
  font-size: 15px;
  margin-bottom: 0;
  line-height: 1.5;
}
.col-md-12.local {
  margin-bottom: 0;
}

#tourDetail_UpdatePanel1 {
    margin: 0 auto;
    width: 84%;
}

table {
  font-size: 15px;
}

.other table th {
    width: 30%;
}
.local table th {
    width: 30%;
}
.tourPriceCaution h2 {
  background-color: #f6f6f6;
  border: 1px solid #dcdcdc;
  font-size: 15px;
  padding: 15px;
}
.tourPriceCaution .bt {
  border-top: 1px #DCDCDC solid!important;
}
.tourPriceCaution p {
  border: 1px solid #dcdcdc;
  border-top: none;
  font-size: 15px;
  line-height: 1.69;
  padding: 15px;
  margin: 0 auto;
}
.tourPriceCaution .table-money h2 {
  margin: 15px auto 0;
  border-bottom: none;
}
.tourPriceCaution table {
  margin: 0 auto;
  border: solid 1px #dcdcdc;
  border-top: none;
}
.tourPriceCaution .table-money td {
  padding: 15px;
}
.tourPriceCaution .table-money td.Line2{
  width: 350px;
}
.tourPriceCaution .col-md-12 {
  width: 960px;
  border-bottom: 0;
}
.col-md-12 .table-about {
  width: 960px;
}
h2.subTitle {
  font-size: 28px;
  display: block;
  text-align:center;
  margin: 0 auto 20px;
}
.col-md-12.Bg_f6f6f6 {
  margin-bottom: 0!important;
  width: 100%;
}
.importantExplanationWrap h2 {
  font-size: 16px;
}
.importantExplanationWrap span {
  font-size: 15px;
}
.col-md-12.summary > h2:first-child {
  margin-top: 0;
}
.col-md-12.summary .hint {
  margin-top: 8px;
  font-size: 15px;
}
.col-md-12 .table-about td #tourDetail_TOUR_HOTELPanel.indent{
  display: block;
  padding: 1em;
}
#tourDetail_AIR_TIME {
  display: block;
  padding-left: 1em;
}
#tourDetail_CLASS_KBN_NM {
  display: inline-block;
  padding-top: 1em;
  padding-left: 1em;

}
#tourDetail_TOUR_SCHEDULEPanel dt a {
  pointer-events: none;
}
#tourDetail_TOUR_SCHEDULEPanel dt a:hover {
    opacity: 1;
    cursor: default;
    text-decoration: none;
}
.tabAreaWrap {
  margin-top: 40px;
}
.container.tab-main.js-fixed {
  position: fixed;
  top: 0;
  z-index: 1000;
  margin-top: 0;
}
@media (min-width:658px){
  .container.tab-main.js-fixed {
    position: static;
  }
}

#CalendarPanel table{
  width: 100%;
}
.snsArea .fav_on {
  left: 24px;
}

@media (max-width:657px){
  #header .spNavi, .drawer-hamburger{
    position: absolute!important;
  }
  h2.subTitle {
    display: none;
  }
  .container .img_notice {
    max-width: 600px;
    margin: 5px 0 10px;
    font-size: 1.2rem;
  }
  .cvButton {
    margin: 20px 10px 10px;
    text-align: center;
    width: 95%;
  }
  .Bg_f8f5f0 h1 {
    font-size: 1.6rem;
    font-weight: normal;
    text-align: left;
    padding: 0 3%;
    width: 100%;
    margin-top: 15px;
  }
  .Bg_f8f5f0 .fsLL {
    font-size: 1.4rem;
    margin: 10px 10px 20px;
    padding: 10px;
    max-width: 94%;
  }
  .col-md-12 .table-about {
    width: 94%;
    font-size: 1.4rem;
  }
  .col-md-12 .table-about .price {
    font-size: 1.8rem;
  }
  #tourDetail_UpdatePanel1 {
    width: 94%;
  }
  .importantExplanationWrap {
    margin: 20px auto 40px;
    padding: 20px 10px 0;
    width: 100%;
    font-size: 1.2rem;
    border-top: 3px solid #dcdcdc;
  }
  .importantExplanationWrap h2 {
    font-size: 14px!important;
    margin: 0 auto!important;
  }
  .importantExplanation {
    padding: 19px 16px 18px 12px;
  }
  .col-md-12 .importantExplanation h2 {
    border: none;
    padding-left: 0px;
    padding-top: 0px;
  }
  .col-md-12 .importantExplanationWrap span {
    margin: 0;
    font-size: 1.4rem;
    line-height: 1.5;
    border: none;
  }
  .cvButton.sp {
    display: none;
  }
  button[type="button"].fav_btn{
    width: 95%;
    margin: 0 10px 15px;
  }
  #tourDetail_TOUR_SCHEDULEPanel dt,
    #tourDetail_TOUR_SCHEDULEPanel dd {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  dd.elemClose {
    display: none;
  }
  .arrow:before, .arrow:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
  }
  .col-md-12 h2 {
    font-size: 14px;
    padding: 11px 0 11px 13px;
    margin: 0;
    width: 100%;
    background-color: #f6f6f6;
    border-bottom: 1px solid #DCDCDC;
    border-top: 1px solid #DCDCDC;
    border-left: 0px solid #DCDCDC;
    border-right: 0px solid #DCDCDC;
  }
  .col-md-12 h2.detail {
    margin: 0 15px;
    background-color: inherit;
    border-bottom: 1px solid #;
    padding: 11px 0 11px 0px;
    font-size: 18px;
    border-top: none;
    width: calc(100% - 30px);
  }
  .tourPriceCaution .col-md-12 {
   width: 100%;
  }
  .tourPriceCaution p {
    padding: 12px 10px 8px;
    margin: 0;
    font-size: 1.4rem;
    line-height: 1.5;
    border: none;
  }
  .tourPriceCaution .table-money h2 {
    font-size: 14px!important;
    padding: 11px 0 11px 13px!important;
    margin: 0;
    width: 100%;
    border-bottom: 1px solid #DCDCDC;
    border-top: 1px solid #DCDCDC;
    border-left: 0px solid #DCDCDC;
    border-right: 0px solid #DCDCDC;
  }
  .tourPriceCaution .table-money table {
    margin: 15px;
    width: calc(100% - 30px);
    border: none;
   }
  .tab-calendar {
   margin-top: 15px;
  }
  .col-md-12.point {
    margin: 15px 10px 10px;
    background: #fff;
    padding: 0;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  #tourDetail_OIL_FLG_NM {
    font-size: 12px;
  }
  .tourPriceCaution .includeSurcharge {
    padding: 12px 10px 8px;
    margin: 0;
    font-size: 1.4rem;
    border-left: none;
  }
  .tourPriceCaution .table-money td {
    font-size: 1.4rem;
    padding: 10px;
  }
  .tourPriceCaution .table-money td.Line2{
    width: 130px;
  }
  .col-md-12.summary .hint {
    padding: 10px 10px 0;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .col-md-12.summary > h2:first-child {
    margin-top: 5px;
  }
  #tourDetail_TOUR_SCHEDULEPanel dt a {
    pointer-events: auto;
  }
  .container.main,
  .container.tab-main {
    margin-top: 30px;
  }
  .tab-main .nav-tabs > li > a > p {
    font-size: 1.4rem;
  }
  .other table th {
    width: 40%;
  }
  .local table th {
    width: 40%;
  }
}

@media print {
  #header, #campaign, #pan, .snsArea, .sp-thumbnails-container, .fsLL.sp, .visible-xs.tour-calendar-box-res-fnc,
  .cvButton, .request-box, h1.sp, .favButton, #footer2015 {
    display: none!important;
  }
  h1.pc {
    text-align: center;
    font-weight: bold;
  }
  h1.pc, .fsLL.pc {
    display: block;
  }
  .img_notice {
    float: right;
  }
  #slider-main {
    max-height: 280px!important;
  }
  .arrow:before, .arrow:after {
    content: none;
  }
  h2.subTitle {
    display: block;
    border-bottom: none;
  }
  #tourDetail_Table1 {
    width: 50%!important;
  }
  dd.elemClose {
    display: block !important;
  }
  .tab-content > .tab-pane {
    display: block !important;
  }
}

.headline3 {
  font-size: 14px;
  font-weight: normal;
  margin: 0 15px;
  width: calc(100% - 30px);
}
h3.headline3 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 0;
  padding-top: 15px;
}
@media (max-width: 657px) {
    h3.headline3 {
      font-size: 14px;
    }
}

.headline3 a {
  text-decoration: underline;
}

.hotelLay {
  margin: 6px 0;
  text-align: center;
}

.hotelData {
  text-align: center;
}

.hotelData .img_area img {
  height: auto;
  max-width: 100%;
}

/* more - script.js */
.appealDesc_more {
  padding: 0;
  background-color: transparent;
  border: none;
  font-size: 15px;
  text-decoration: underline;
}
@media (max-width: 657px) {
    .appealDesc_more {
      font-size: 14px;
    }
}

.appealDesc_more::after {
  content: "";
  display: inline-block;
  border: 2px solid #333;
  border-top-width: 0;
  border-left-width: 0;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  margin-left: 8px;
  margin-bottom: 3px;
}

.appealDesc_more.is-shown::after {
  transform: translateY(3px) rotate(-135deg);
}

/* hotel rank*/
.hotelRank {
  margin: 5px 15px 0;
  width: calc(100% - 30px);
}

.hotelRank::after {
	content: '';
	display: table;
	clear: both;
}

.hotelRank > .rankLabel {
  float: left;
  margin-top: 2px;
  padding-right: 8px;
  font-size: 15px;
  line-height: 1.5;
}
@media (max-width: 657px) {
    .hotelRank > .rankLabel {
      font-size: 14px;
    }
}

.hotelRank > .rankData {
    float: left;
    position: relative;
}

.hotelRank > .rankData > .rankAcrive {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.hotelRank > .rankData[data-rank='1'] > .rankAcrive {
    width: 20px;
}

.hotelRank > .rankData[data-rank='2'] > .rankAcrive {
    width: 40px;
}

.hotelRank > .rankData[data-rank='3'] > .rankAcrive {
    width: 62px;
}

.hotelRank > .rankData[data-rank='4'] > .rankAcrive {
    width: 82px;
}

.hotelData,
.hotelDesc {
  margin: 3px 15px 0;
  width: calc(100% - 30px);
}

@media (max-width: 657px) {
    .hotelData > p,
    .hotelDesc > p{
        font-size: 14px;
    }
}

.hotelDesc p {
  margin-bottom: 14px;
}

.hotelDesc .hotelInfo {
  margin-left: 14px;
}

/* star-rating-desc */
.star-rating-desc {
	display: inline-flex;
	position: relative;
}

.star-ration-desc-icon {
	background-color: transparent;
	border: none;
	padding: 0;
}

.star-ration-desc-item {
	background-color: #fff;
	border: 3px solid #ccc;
	display: none;
	font-size: 13px;
	margin-top: 10px;
	position: absolute;
	top: 100%;
	left: -150px;
	width: 258px;
	z-index: 1;
}

.star-ration-desc-item.is-show {
	display: block;
}

.star-ration-desc-item p {
	margin-top: 5px;
}

.star-ration-desc-item > .inner {
	padding: 15px 18px;
}

.star-ration-desc-item > .inner > :first-child {
	margin-top: 0;
}

.star-ration-desc-item .item-title {
	font-size: 14px;
}

.star-ration-desc-item .item-title::before {
	background-color: #333;
	content: '';
	display: inline-block;
	margin-right: 5px;
	height: 10px;
	width: 10px;
}

.star-ration-desc-item .item-title b {
	font-weight: normal;
}

.star-ration-desc-item .item-foot {
	margin-top: 8px;
	text-align: right;
}

.star-ration-desc-item .item-foot .item-close-button {
	background-color: transparent;
	border: none;
	font-size: 13px;
	padding: 0;
	text-decoration: underline;
}

@media (min-width:658px){
  .headline3,
  .hotelRank,
  .hotelData,
  .hotelDesc {
    margin-left: 0;
    margin-right: 0;
    width: auto;
  }

  .hotelLay {
    overflow: hidden;
  }

  .hotelData {
    float: left;
  }

  .hotelData {
    width: 50%;
  }

  .hotelDesc {
    font-size: 15px;
    margin-top: 25px;
  }

  .hotelLay::after {
    content: '';
    clear: both;
    display: table;
  }
}
