@charset "utf-8";


div#subPage{
  background: none;
  background-color: #fff;
  padding-bottom: 40px;
  background-color: #f2f2f0;
}

div.col-940{
  width: 940px;
  margin: 0 auto;
  overflow: hidden;
}

div.col-780{
  width: 780px;
  margin: 0 auto;
}

div#subPage p{
  margin-top: 0!important;
}



ul#pankuzu {
  margin-top: 16px;
  color: #333;
  letter-spacing: -.4em;
}

div.servicePage ul#pankuzu{
  margin: 0 0 64px;
}

ul.areaOrfreeWordSearchPankuzu{
  margin-bottom: 10px;
}

ul#pankuzu li{
  display: inline-block;
  letter-spacing: normal;
  font-size: 11px;
  color: #333;
}

li.li_pankuzu {
  background-image: url("../image/pankuzu_listmark.png");
  background-position: right center;
  background-repeat: no-repeat;
  padding: 0 15px 0 0;
  margin-right: 8px;
}

li.li_pankuzu a,
li.li_pankuzulast a {
  color: #333;
  text-decoration: none;
}


h1.mainTitle{
  margin-bottom: 20px;
  padding-top: 30px;
  font-size: 18px;
}


div.conciergesPage div.pageHeaderTop{
    color: #fff;
    text-align: center;
    background: url("../image/main-bg.jpg") no-repeat center center;
    background-size: cover;
}

div.pageHeaderTop div.inner{
    padding: 110px 5% 60px;
}

div.pageHeaderTop div.dot{
    background: url("../image/bg-dot.png") repeat;
}

div.pageHeaderTop div.shadow{
    background: url("../image/bg-shadow1.png") repeat-x center bottom;
}

div.pageHeaderTop h1{
    margin-bottom: 20px;
}

div.pageHeaderTop h1 img{
    width: 80%;
}

@media(min-width:768px){
    div.businessPage div.pageHeaderTop {
    margin-bottom: 20px;
    color: #fff;
    text-align: center;
    background: url("../../../img/lp/business/main-bg.jpg") no-repeat center center;
    background-size: cover;
  }
  div.pageHeaderTop div.inner{
    padding: 0 5%;
    height: 580px;
  }

  div.pageHeaderTop h1{
    padding-top: 220px;
  }

  div.businessPage div.pageHeaderTop h1 img{
    width: 789px;
    height: 115px;
  }

  div.conciergesPage div.pageHeaderTop h1 img{
    width: 598px;
    height: 115px;
  }
}


div.mainVidual{
  margin-bottom: 60px;
}

div.mainVidual div.mainVidualIn{
  width: 960px;
  margin: 0 auto;
  position: relative;
}

div.servicePage div.mainVidual{
  margin-bottom: 32px;
  background: url("../image/bg_main_service.jpg") no-repeat center center;
  min-height: 400px;
  background-size: cover;
}

div.clientPage div.mainVidual{
  background: url("../image/bg_main_client.jpg") no-repeat center center;
  min-height: 400px;
  background-size: cover;
}

div.partnerPage div.mainVidual{
  background: url("../image/bg_main_partner.jpg") no-repeat center center;
  min-height: 400px;
  background-size: cover;
}

div.conciergesPage div.mainVidual{
  background: url("../image/bg_main_concierges.jpg") no-repeat center center;
  min-height: 400px;
  background-size: cover;
}

div.businessPage div.mainVidual{
  background: url("../image/bg_main_selections.jpg") no-repeat center center;
  min-height: 400px;
  background-size: cover;
}

div.businessPage div.mainVidual{
  background: url("../image/bg_main_business.jpg") no-repeat center center;
  min-height: 400px;
  background-size: cover;
}

div.mainVidual div.logoArea{
  text-align: center;
  background-color: #fff;
  width: 180px;
  height: 180px;
  display: table-cell;
  vertical-align: middle!important;
  box-shadow: 0 1px 1px rgba(0,0,0,.1), 0 1px 5px rgba(0,0,0,.2), 0 0 0 5px rgba(200,200,200,.4);
  opacity: .9;
  position: absolute;
  top: 110px;
}

div.mainVidual h1{
  font-size: 18px;
  color: #000;
  width: 180px;
  height: 180px;
  display: table-cell;
  vertical-align: middle!important;
}

div.mainVidual p.copy{
  padding-top: 20px;
  text-align: center;
  color: #fff;
  font-size: 15px;
}


div.mainVidualShimple{
  margin-bottom: 20px;
  background-color: #fff;
  padding: 0 0 10px;
  box-shadow:0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
}

div.mainVidualShimple div.mainVidualIn{
  width: 940px;
  margin: 0 auto;
  position: relative;
}

div.mainVidualShimple ul#pankuzu{
  padding: 15px 0 10px;
}

div.mainVidualShimple .title{
  font-size: 28px;
  margin-bottom: 10px;
  text-shadow: 1px 1px 1px rgba(0,0,0,.1);
  line-height: 1;
}
div.mainVidualShimple h2.minititle{
  margin-top: 10px;
  margin-bottom: 20px;
}

div.mainVidualShimple p.description{
  line-height: 2;
  font-size: 13px;
}


table.typeA{
  width: 780px;
  margin: 0 auto 50px;
}

table.typeA th{
  width: 200px;
  padding: 15px 0;
  font-weight: bold;
  vertical-align: top;
}

table.typeA td{
  width: 480px;
  padding: 10px 0 10px 20px;
}


div.privacyPage ul {
  list-style: disc;
  margin-left: 1.5em;
}
div.privacyPage hr {
  margin: 50px 0;
}
div.privacyPage h2.ttl{
  margin: 30px 0 20px;
  font-size: 15px;
}
div.privacyPage p{
  margin-bottom: 20px;
  line-height: 1.8;
  text-align: justify;
}
div.privacyPage strong {
  color: #990000;
}


#contact-form table{
  width: 780px;
}

#contact-form table th{
  width: 200px;
  padding: 15px 0;
  vertical-align: top;
}

#contact-form table td{
  width: 480px;
  padding: 10px 0 10px 20px;
}

#contact-form table td input[type="radio"]{
  margin: 0 8px 20px 0;
}

#contact-form table td input[type="text"]{
  width: 400px;
  padding: 5px;
  border: 1px solid #ccc;
  background-color: #fff;
}

#contact-form table td textarea{
  width: 400px;
  padding: 5px;
  border: 1px solid #ccc;
  background-color: #fff;
}

#contact-form p.privacy-area{
  text-align: center;
  margin: 20px 0;
}

#contact-form p.submit-btn-area{
  text-align: center;
}

#contact-form p.submit-btn-area input.btn-block{
  width: 300px;
  margin: 0 auto;
}

#contact-form #success-area p{
  text-align: center;
}
#contact-form .success{
  font-size: 18px;
}
#contact-form .error-message{
  font-size: 11px;
  padding: 10px 0 5px;
  color: #e60000;
}


div.maintenance p{
  line-height: 1.8;
}

div.maintenance span.bold{
  font-weight: bold;
  font-size: 15px;
}


div.block-lr,
div.block-main{
  margin-bottom: 60px;
  padding-bottom: 60px;
  border-bottom: 1px solid #ccc;
}

div.block-lr:last-of-type,
div.block-main:last-of-type{
  margin-bottom: 0;
}

div.block-lr.noline{
  border-bottom: none;
}

div.block-lr div.section{
  margin-bottom: 30px;
}

div.block-lr div.section:last-of-type{
  margin-bottom: 0;
}

div.block-lr h2{
  width: 300px;
  float: left;
  font-size: 22px;
  color: #333;
}

div.block-lr h3{
  margin-bottom: 20px;
  font-size: 16px;
}

div.block-lr h4{
  margin: 20px 0 5px;
  font-size: 14px;
}

div.block-lr div.right{
  width: 620px;
  float: right;
}

div.block-lr p.explain{
  font-size: 16px;
  margin-bottom: 30px;
  line-height: 1.8;
}

div.block-lr p{
  line-height: 1.8;
}

div.block-lr p.name{
  line-height: 1.5;
}

div.block-lr p input[type="checkbox"].post_fb{
  margin-right: 5px;
}

div.block-lr p.floR{
  float: right;
  margin: 0 0 20px 40px;
}


div.block-lr.advantage{
  font-size: 16px;
}

div.block-lr.advantage ol{
  list-style-type: decimal;
  margin-left: 30px;
}

div.block-lr.advantage ol li{
  margin-bottom: 20px;
}

div.block-lr.advantage ol li:last-of-type{
  margin-bottom: 0;
}


div.block-lr.hotel ul.hotelList li{
  width: 130px;
  float: left;
  margin: 0 30px 0 0;
}

div.block-lr.hotel ul.hotelList li:nth-of-type(4n){
  margin: 0 0 30px 0!important;
}

div.block-lr.hotel ul.hotelList li img{
  width: 130px;
  height: 87px;
}

div.block-lr.hotel ul.hotelList li a{
  text-decoration: none;
}

div.block-lr.hotel ul.hotelList li p.name{
  font-size: 12px;
  margin: 10px 0 10px;
}


div.block-lr.hotel ul.hotelList li p.txt{
  text-decoration: none;
  font-size: 10px;
  line-height: 1.6;
}


div.block-lr ul.scene li{
  font-size: 15px;
  margin-bottom: 10px;
}

div.block-lr ul.scene li:last-child{
  margin-bottom: 0;
}


div.block-lr.results div.hotelsBox{
  background-color: #fff;
  padding: 30px 30px;
  border: 2px solid #efefef;
}

div.block-lr.results div.hotelsBox img.thum{
  width: 280px;
  float: left;
  margin: 0 30px 20px 0;
}

div.block-lr.results div.hotelsBox h4{
  font-weight: bold;
  font-size: 18px;
  margin: 0 0 20px;
  border-bottom: 1px solid #efefef;
  padding-bottom: 10px;
}

div.block-lr.results div.hotelsBox p.detail{
  font-weight: bold;
  font-size: 18px;
}

div.block-lr.results div.hotelsBox table.info{
  margin-bottom: 10px;

}

div.block-lr.results div.hotelsBox table.info th,
div.block-lr.results div.hotelsBox table.info td{
  padding: 3px 0;
}

div.block-lr.results div.hotelsBox p.txt{
  font-size: 12px;
  clear: both;
}

div.block-lr.results .slideshow{
  width: 620px;
  overflow: hidden;
  position: relative;
}

div.block-lr.results .slideshow-nav{
  display: table;
  width: 100%;
  padding-top: 10px;
}

div.block-lr.results .slideshow-nav div.prev,
div.block-lr.results .slideshow-nav div.next{
  display: table-cell;
  width: 50%;
}

div.block-lr.results .slideshow-nav div.next{
  text-align: right;
}

div.block-lr.results .slideshow-nav a.prev,
div.block-lr.results .slideshow-nav a.next{
  text-decoration: none;
  background-color: #fff;
  padding: 6px 15px;
  border: 2px solid #efefef;
  display: inline-block;
}

div.slideshow-slides{
  width: 620px;
  overflow: hidden;
  position: relative;
  height: 460px;
}

div.slideshow-slides div.slide{
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
}

div.slideshow-slides div#slide-1{
  opacity: 1;
}


div.block-lr.grade p.link{
  margin-bottom: 0!important;
}


div.block-lr.smartphone div.thumb{
  float: left;
  margin-right: 30px;
}

div.block-lr.smartphone div.info{
  padding: 0;
}

div.block-lr.smartphone div.info p.title{
  font-size: 16px;
  margin-bottom: 20px;
}

div.block-lr.smartphone div.info p.txt{
  margin-bottom: 15px;
}

div.block-lr.smartphone div.info p.url{
  font-size: 12px;
  margin-bottom: 5px;
}


div.block-lr.push ul.socialLink{
  border-top: 1px dotted #ccc;
  padding-top: 20px;
}

div.block-lr.push ul.socialLink li{
  margin-bottom: 20px;
  border-bottom: 1px dotted #ccc;
  padding-bottom: 20px;
  line-height: 1.8;
}

div.block-lr.push ul.socialLink li:last-child{
  margin-bottom: 0;
}

div.block-lr.push ul.socialLink li a{
  text-decoration: none;
}

div.block-lr.push ul.socialLink li a:hover{
  text-decoration: underline;
}

div.block-lr.push ul.socialLink2{
  margin: 10px 0 20px;
}

div.block-lr.push ul.socialLink2 li{
  display: inline;
  margin-right: 1.5%;
  margin-bottom: 10px;
}

div.block-lr.push ul.socialLink2 li.line_add-friends{
  display: inline;
  margin-left: 1%;
  margin-bottom: 10px;
}

div.block-lr.push ul.socialLink2 li a.hover{
  text-decoration: underline;
}

div.block-lr.push ul.socialLink2 li img{
    height: 39px;
    background-repeat: no-repeat;
}


table.memberType{
  width: 100%;
  margin-bottom: 30px;
}

table.memberType thead th,
table.memberType tbody td{
  text-align: center;
}

table.memberType th,
table.memberType td{
  background: url("../image/line_01.gif") repeat-x bottom;
  padding: 10px 0;
}

table.memberType tbody th{
  padding-left: 5px;
}


div.block-lr.faq dl dt{
  margin-bottom: 15px;
  font-size: 16px;
}

div.block-lr.faq dl dd{
  margin-bottom: 30px;
  display: none;
  line-height: 1.8;
}

div.block-lr.faq p.other{
  margin-bottom: 15px;
  font-size: 14px;
}


div.block-lr.regist div.wrap{
  margin-bottom: 10px;
}

div.block-lr.regist div.facebook{
  display:block;
  width: 320px;
  padding-right: 20px;
}

div.block-lr.regist div.google{
  display: block;
  width: 320px;
}

div.block-lr.regist div.mail{
  vertical-align: middle;
}

div.block-lr.regist div.mail input.txt{
  height: 33px;
  padding-left: 10px;
  vertical-align: middle;
  width: 246px;
}

div.block-lr.regist p.memo{
  font-size: 12px;
  margin-bottom: 20px;
}


div.partnerPage div.introduction p.title{
  text-align: center;
  font-size: 30px;
  margin: 60px 0;
}

div.partnerPage p.txt{
  line-height: 2;
}

div.partnerPage div.introduction p.img{
  margin: 40px 0;
  text-align: center;
}

div.partnerPage div.merit h2,
div.partnerPage div.application h2,
div.partnerPage div.faqArea h2,
div.partnerPage div.logo h2{
  margin-bottom: 60px;
  font-size: 22px!important;
  text-align: center;
}

div.partnerPage div.merit ul li{
  font-size: 16px;
  background: url("../image/affiliate_03.jpg") no-repeat 0 50%;
  padding: 5px 0 0 30px;
  margin-bottom: 20px;
}

div.partnerPage div.application ul{
  text-align: center;
  margin-bottom: 30px;
}

div.partnerPage div.application ul li{
  display: inline;
  margin: 0 10px;
}

div.partnerPage div.faqArea dl dt{
  margin-bottom: 10px;
  font-weight: bold;
}

div.partnerPage div.faqArea dl dd{
  margin-bottom: 30px;
}

div.partnerPage div.faqArea dl dd:last-of-type{
  margin-bottom: 0;
}


#concierge-container{
  margin: 60px 0;
}

div.concierge-form-container{
  background-color: #fff;
  padding: 80px;
  border: 2px solid #efefef;
}

.concierge-form-container p.formTitle{
  text-align: center;
  font-size: 26px;
  margin-bottom: 40px;
}

.concierge-form-container ul.stepNav{
  text-align: center;
  margin-bottom: 40px;
  font-size: 14px;
}

.concierge-form-container ul.stepNav li{
  display: inline;
  margin: 0 30px;
  color: #999;
}

.concierge-form-container ul.stepNav li.on{
  color: #000;
}

.concierge-form-container .input,
.concierge-form-container select{
  margin: 0 0 20px;
}

.concierge-form-container label{
  display: block;
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: bold;
  border-left: 1px solid #000;
  padding-left: 10px;
}

.concierge-form-container input[type="text"]{
  width: 100%;
  padding: 5px;
  border: 1px solid #ccc;
}

.concierge-form-container .checkbox{
  display: inline;
}

.concierge-form-container .checkbox input{
  display: inline;
  width: 20px;
}

.concierge-form-container .checkbox label{
  display: inline;
  border-left: none;
  padding-left: 0;
  font-weight: normal;
}

.concierge-form-container textarea{
  width: 80%;
  max-width: 100%;
  border: 1px solid #ccc;
  padding: 5px;
}

.concierge-form-container .submit{
  margin: 30px auto 15px;
  text-align: center;
}

.concierge-form-container .submit input[type="submit"].btn1{
  width: 250px;
  border: none;
  margin-bottom: 30px;
}

.concierge-form-container .submit input[type="submit"].btn2{
  width: 250px;
  border: none;
}

.concierge-form-container .submit input[type="submit"].btn3{
  width: 250px;
  border: none;
  margin-bottom: 30px;
}

.concierge-form-container .date-example{
  margin: -10px 0 15px;
  color: #777;
  font-size: 12px;
}

.concierge-form-container .error-message{
  color: #e60000;
  font-size: 11px;
  margin-top: 5px;
}

.concierge-form-container .attention{
  margin: -10px 0 15px;
  color: red;
  font-size: 12px;
}

.concierge-form-container table{
  width: 100%;
  margin: 0 0 30px;
}

.concierge-form-container th{
  padding: 10px;
  color: #333;
  background-color: #f7f7f7;
  border: 1px solid #e5e5e5;
}

.concierge-form-container td{
  padding: 10px;
  border: 1px solid #e5e5e5;
}

#concierge-container #request-complete h3{
  margin-bottom: 20px;
}

#concierge-container #request-complete p{
  margin-bottom: 10px;
}

#concierge-container #request-complete a.top-link-btn{
  margin-top: 10px;
}

#concierge-container #ConciergeName,
#concierge-container #ConciergeEmail,
#concierge-container #ConciergeTel,
#BusinessRequestCompanyName,
#BusinessRequestStationName,
#BusinessRequestName,
#BusinessRequestEmail,
#BusinessRequestTel{
  width: 400px;
}

#concierge-container #ConciergeMinBudget,
#concierge-container #ConciergeMaxBudget{
  width: 100px;
}

#concierge-container #ConciergeCheckinYear,
#concierge-container #ConciergeCheckinMonth,
#concierge-container #ConciergeCheckinDay{
  margin: 0;
}

#concierge-container .feature-container .checkbox{
  display: inline-block;
  width: 220px;
  margin: 0 0 5px;
}

#concierge-container .budget-container{
  position: relative;
}

#concierge-container .budget-container .budget-yen{
  position: absolute;
  left: 80px;
  top: 30px;
}

#concierge-container .concierge-ssl-container{
  margin: 20px 0;
}

#concierge-container .concierge-ssl{
  width: 100px;
  margin: 0 20px 0 0;
}

#concierge-container .concierge-ssl-container span{
  font-size: 11px;
  color: #777;
  padding-top: 15px;
}

#concierge-container div.opneBox select{
  margin-right: 15px;
}

#concierge-container div.opneBox div.title{
  margin-bottom: 10px;
  font-weight: bold;
  text-align: center;
  font-size: 16px;
}

#concierge-container div.opneBox div.childTitle{
  margin-bottom: 5px;
  font-weight: bold;
}

#concierge-container div.opneBox div.room01,
#concierge-container div.opneBox div.room02,
#concierge-container div.opneBox div.room03,
#concierge-container div.opneBox div.room04{
  background-color: #efefef;
  padding: 20px 20px 0;
  margin-bottom: 20px;
  border: 1px solid #dfdfdf;
}


div#success-area{
  text-align: center;
  margin-top: 100px;
}

div#success-area p.success{
  font-size: 20px;
  margin-bottom: 40px;
}

div#success-area p{
  margin-bottom: 30px;
}


#ssl-mark{
  width: 100px;
  height: 72px;
  position: absolute;
  top: 0;
  right: 0;
}

#reserve-ssl{
  width: 100px;
  height: 72px;
  float: right;
}

.reserve-footer{
  width: 550px;
  margin: 0 auto;
  text-align: left;
  color: #777;
  font-size: 11px;
  padding-bottom: 20px;
  position: relative;
}

.reserve-footer p{
  float: left;
  position: absolute;
  bottom: 15px;
}

#top-footer{
  position: relative;
}

#top-footer .ssl{
  margin-top: 40px;
  position: absolute;
  right: 50px;
}

#detail_rightcol .ssl{
  margin: 50px;
}

#leftcol .ssl{
  margin-top: 40px;
}

#mypage-footer{
  position: relative;
  height: 80px;
  margin-bottom: 20px;
}

#mypage-footer .ssl{
  position: absolute;
  right: 0;
}


div.overlay{
  position: relative;
  width: 100%;
}

div.overlay div.whiteArea{
  background: url("../image/bg-overlay1.png");
  position: absolute;
  top: 470px;
  left: 0;
  width: 100%;
  height: 100%;
}

div.overlay div.whiteArea div.overlayBox{
  padding: 60px 60px 40px;
  background-color: #fff;
  width: 840px;
  margin: 40px auto 0;
  text-align: center;
  position: relative;
  box-shadow: 0 1px 4px rgba(0,0,0,.3), 0 0 40px rgba(0,0,0,.1) inset;
}

div.overlay div.whiteArea div.overlayBox::before,
div.overlay div.whiteArea div.overlayBox::after{
  content: "";
  position: absolute;
  z-index: -1;
  box-shadow: 0 0 20px rgba(0,0,0,.8);
  top: 10px;
  bottom: 10px;
  left: 0;
  right: 0;
  border-radius: 100px / 10px;
}

div.overlay div.whiteArea div.overlayBox::after{
  right: 10px;
  left: auto;
  transform: skew(8deg) rotate(3deg);
}

div.overlay div.whiteArea div.overlayBox p.title{
  font-size: 26px;
  margin-bottom: 30px;
  line-height: 1.8;
}

div.overlay div.whiteArea div.overlayBox p.txt{
  margin-bottom: 40px;
  font-size: 14px;
  line-height: 1.8;
}


.review-post{
  width: 720px;
  margin: 48px auto 0;
  border: none;
}

.review-post-header{
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-bottom: 64px;
}

.review-post-header > *{
  display: table-cell;
  vertical-align: middle;
}

.review-post-header__body{
  padding-right: 60px;
}


.review-post-header__title{
  font-size: 18px;
  margin-bottom: 16px;
}


.review-post-header__text{
  font-size: 13px;
  line-height: 1.7;
  color: #666;
}


.review-post-header__image{
  width: 184px;
}

.review-post-header__image-box{
  width: 100%;
  height: 184px;
  position: relative;
  overflow: hidden;
}

.review-post-header__image-box img{
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  max-height: 100%;
  transform: translate(-50%,-50%);
}

.review-post-section{
  margin-bottom: 56px;
}

.review-post-section__title{
  font-size: 20px;
  color: #000;
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}

.review-post-section .review-post-section__title{
  margin-bottom: 24px;
}


.review-post-section__title .label__required{
  margin-right: 10px;
  background-color: #e5625c;
  color: #fff;
  display: inline-block;
  min-width: 30px;
  height: 16px;
  line-height: 16px;
  text-align: center;
  font-size: 10px;
  border-radius: 2px;
  box-sizing: border-box;
  padding: 0 4px;
}

.review-post-status{
  color: #0f0a64;
  font-size: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
  position: relative;
}

.review-post-status::after{
  width: 100%;
  height: 1px;
  background-color: #0f0a64;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}


.review-post-status > *{
  width: calc(100% / 3);
}

.review-post-section .review-post-status > *{
  width: 50%;
}

.review-post-status__item{
  z-index: 1;
}

.review-post-status__item:nth-child(2){
  text-align: center;
}

.review-post-status__item:last-child{
  text-align: right;
}

.review-post-status__item span{
  background-color: #fff;
  padding: 0 6px;
}

.review-post-status__item:first-child span{
  padding-left: 0;
}

.review-post-status__item:last-child span{
  padding-right: 0;
}


.review-post-table{
  margin-bottom: 56px;
}

.review-post-table__inner{
  position: relative;
  margin-bottom: 24px;
}

.review-post-table__inner:first-of-type{
  margin-bottom: 56px;
}

.review-post-table__title{
  font-size: 13px;
  margin-bottom: 16px;
  zoom: 1;
}
.review-post-table__title::after{
  display: block;
  clear: both;
  content: "";
}

.review-post-table__list{
  display: table;
  table-layout: fixed;
  width: 100%;
  counter-reset: number;
}

.review-post-table__list .noInput{
  display: none;
}

.review-post-table__item{
  display: table-cell;
  vertical-align: top;
  width: 20%;
}

.review-post-table__item .review-post-radio input{
  display: none;
}

.review-post-table__item .review-post-radio__text{
  display: block;
  width: 100%;
  height: 44px;
  outline: none;
  border: 1px solid #e1dee5;
  background-color: #f0f1f6;
  text-align: center;
  cursor: pointer;
  line-height: 44px;
  font-size: 18px;
  color: #0f0a64;
}

.review-post-table__item:first-child .review-post-radio__text{
  border-radius: 4px 0 0 4px;
}

.review-post-table__item:nth-child(5) .review-post-radio__text{
  border-radius: 0 4px 4px 0;
}


.review-post-table__item input:checked + .review-post-radio__text{
  background-color: #0f0a64;
  border: 1px solid #0f0a64;
  color: #fff;
}

.review-post-section .review-post-table__item:nth-child(5) .review-post-radio__text{
  border-radius: 0;
}

.review-post-section .review-post-table__item:nth-child(11) .review-post-radio__text{
  border-radius: 0 4px 4px 0;
}


.review-post-table__item input:disabled + .review-post-radio__text{
  border: solid 1px #d8d8d8;
  background-color: #eaeaea;
  color: #d8d8d8;
  cursor: default;
}


.review-post__noSelect{
  font-size: 13px;
  letter-spacing: 0.2px;
  color: #e5625c;
  margin-top: 8px;
}


.review-post-radio__excluded{
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
}

.review-post-radio__excluded input{
  display: none;
}

.review-post-radio__excluded span{
  font-size: 12px;
  position: relative;
  padding-left: 20px;
}

.review-post-radio__excluded span::before,
.review-post-radio__excluded span::after{
  position: absolute;
}

.review-post-radio__excluded span::before{
  width: 16px;
  height: 16px;
  border-radius: 2px;
  border: solid 1px #979797;
  box-sizing: border-box;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.review-post-radio__excluded input:checked + span::before{
  background-color: #0f0a64;
  border-color: #0f0a64;
}
.review-post-radio__excluded input:checked + span::after{
  width: 4px;
  height: 8px;
  border: 2px solid transparent;
  border-right-color: #fff;
  border-bottom-color: #fff;
  content: "";
  top: -2px;
  left: 4px;
  transform: rotate(35deg);
}


.review-post__text{
  font-size: 13px;
  margin-bottom: 24px;
}


.review-post-form__textarea{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
  width: 100%;
  height: 180px;
  border: 1px solid #d8d8d8;
  padding: 8px;
  box-sizing: border-box;
  margin-bottom: 16px;
  font-size: 13px;
}

.review-post-checkarea{
  display: flex;
  align-items: center;
  font-size: 11px;
}

.review-post-checkarea .review-check,
.review-post-checkarea .review-check *{
  cursor: pointer;
}

.review-post-checkarea label{
  margin-left: 4px;
}

.review-post-checkarea__count{
  flex: 1;
  text-align: right;
}


.review-post-button{
  margin: 56px auto 0;
  width: 300px;
}


#reservation.review-confirm{
  width: 720px;
  margin: 48px auto 0;
  border: none;
}

.review-confirm__title{
  font-size: 24px;
  margin-bottom: 64px;
}

.review-confirm-section{
  margin-bottom: 56px;
}

.review-confirm-section__title{
  font-size: 20px;
  color: #000;
  margin-bottom: 24px;
}

.review-confirm-section__title span{
  font-size: 15px;
  margin-left: 12px;
}

.review-confirm-table{
  border: 1px solid #e4e4e4;
  border-radius: 4px;
  border-collapse: separate;
}

.review-confirm-table__title,
.review-confirm-table__desc{
  border-top: 1px solid #e4e4e4;
  padding: 16px 30px;
  font-size: 13px;
  box-sizing: border-box;
}

.review-confirm-table tr:first-of-type .review-confirm-table__title,
.review-confirm-table tr:first-of-type .review-confirm-table__desc{
  border-top: none;
}

.review-confirm-table__title{
  width: 193px;
  border-right: 1px solid #e4e4e4;
}

.review-confirm-table__desc{
  width: 350px;
}

.review-confirm-table__desc > *{
  display: inline-block;
}

.review-confirm-table .noInput,
.review-confirm-table__desc input{
  display: none;
}

.review-confirm-table__number{
  margin-right: 4px;
}

.review-confirm__message{
  font-size: 13px;
  line-height: 1.7;
  margin-bottom: 16px;
}

.review-confirm-btn{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
}

.review-confirm-btn__item{
  width: 300px;
}

.review-confirm-btn__item:not(:first-child){
  margin-left: 16px;
}

.review-confirm-btn__item input{
  width: 100%;
  border: 1px solid #0f0a64;
}

.review-confirm-btn__item .btn-back{
  color: #0f0a64;
  background-color: #fff;
}

.review-confirm__annotation{
  text-align: center;
  font-size: 11px;
}

.review-confirm__text{
  font-size: 13px;
  margin-bottom: 24px;
}

.review-confirm__text span{
  display: table-cell;
  vertical-align: middle;
  font-size: 11px;
}


.review-complete__wrapper{
  background-color: #fff;
  margin-bottom: -30px;
  padding-bottom: 120px;
}

.review-complete__wrapper #maincontentarea{
  margin-bottom: 0;
}

#reservation.review-complete{
  width: 720px;
  margin: 120px auto 0;
  border: none;
}

.review-complete__body{
  text-align: center;
}

.review-complete__title{
  font-size: 28px;
  margin-bottom: 56px;
}

.review-complete__text{
  font-size: 14px;
  line-height: 1.7;
}

.review-complete-button{
  margin: 56px auto 0;
  width: 300px;
}

.review-complete-button .btn{
  padding: 12px;
  border-radius: 4px!important;
}


div#subPage.selectionsPage{
  padding-bottom: 0!important;
  clear: both;
}

div.selection-list{
  max-width: 940px;
  margin: 0 auto 30px;
}

div.selectionBox {
  margin-bottom: 30px;
  background-color: #fff;
  float: left;
  margin: 0 20px 20px 0;
  width: 300px;
  box-shadow:0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
}

div.selectionBox:nth-child(3n){
  margin: 0 0 20px 0;
}

div.selectionBox div.thum img{
  width: 100%;
}

div.selectionBox div.thum a{
  display: inline-block;
  height: 203px;
  width: 300px;
}

div.selectionBox div.info{
  padding: 20px;
}

div.selectionBox div.info .title{

  margin-bottom: 10px;
  font-size: 16px;
}

div.selectionBox div.info .title a{
 color: #000;
 text-decoration: none;
}

div.selectionBox div.info .title a:hover{
 text-decoration: underline;
}

div.selectionBox div.info p.description{
  margin-bottom: 10px;
  font-size: 11px;
  line-height: 1.8;
}

div.selectionsPage p.more-btn,
div.selectionsPage p.more-btn-regist{
  clear: both;
  text-align: center;
  margin-bottom: 30px;
  font-size: 18px;
  cursor: pointer;
  background-color: #fff;
  color: #333;
  padding: 20px 0;
  box-shadow:0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
}

div.selectionsPage p.more-btn:hover,
div.selectionsPage p.more-btn-regist:hover{
  text-decoration: underline;
}


div.selection-header div.thum{
  float: left;
  width: 258px;
  margin-right: 20px;
}

div.selection-header div.thum img{
  width: 258px;
  border: 1px solid #ddd;
  padding: 3px;
}

div.selection-header div.info{
  float: left;
  width: 650px;
}

div.selection-header .detail-title{
  font-size: 28px;
  margin-bottom: 10px;
  margin-top: 5px;
}

div.selection-header p.detail-description{
  line-height: 2.2;
}


div.selectionsPage ul.socialBtns{
  display: table;
  clear: both;
}

div.selectionsPage ul.socialBtns li{
  display:table-cell;
  vertical-align: middle;
  line-height: 1.0;
}

div.selectionsPage ul.socialBtns li.facebook{ background-color: #265a96; }
div.selectionsPage ul.socialBtns li.twitter{ background-color: #00acec; }
div.selectionsPage ul.socialBtns li.google{ background-color: #df4a32; }
div.selectionsPage ul.socialBtns li.hatebu{ background-color: #0083d1; }
div.selectionsPage ul.socialBtns li.pocket{ background-color: #f13d53; }

div.selectionsPage ul.socialBtns li.facebook i,
div.selectionsPage ul.socialBtns li.twitter i,
div.selectionsPage ul.socialBtns li.google i,
div.selectionsPage ul.socialBtns li.hatebu i,
div.selectionsPage ul.socialBtns li.pocket i{
  display: inline-block;
  vertical-align: middle;
  width: 13px;
  height: 26px;
  margin-right: 3px;
  margin-bottom: 2px;
}

div.selectionsPage ul.socialBtns li.facebook i{
  background: url("../image/icon-selection-facebook.png") no-repeat 0 50%;
  background-size: auto 13px;
}

div.selectionsPage ul.socialBtns li.twitter i{
  background: url("../image/icon-selection-twitter.png") no-repeat 0 50%;
  background-size: auto 13px;
}

div.selectionsPage ul.socialBtns li.hatebu i{
  background: url("../image/icon-selection-hatebu.png") no-repeat 0 50%;
  background-size: auto 13px;
}

div.selectionsPage ul.socialBtns li.google i{
  background: url("../image/icon-selection-google.png") no-repeat 0 50%;
  background-size: auto 13px;
}

div.selectionsPage ul.socialBtns li a{
  display: inline-block;
  width: 169px;
  text-align: center;
  text-decoration: none;
  line-height: 30px;
  font-size: 12px;
  outline: none;
  position: relative;
  color: #fff;
  -webkit-transition: none;
  vertical-align: middle;
}

div.selectionsPage ul.socialBtns li.like{
  padding-left: 20px;
}

div.selectionsPage ul.socialBtns li.like div.fb-save{
  margin-top: 5px;
}


div.selectionsPage div.hotel-list{
  max-width: 940px;
  margin: 0 auto;
}

div.selectionsPage div.hotel{
  margin-bottom: 30px;
  position: relative;
  background-color: #fff;
  box-shadow:0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
}

div.selectionsPage div.hotel a{
  text-decoration: none;
  color: #000;
}

div.selectionsPage div.hotel div.thum{
  width: 50%;
  float: left;
  margin-bottom: 0;
}

div.selectionsPage div.hotel div.thum a{
  display: block;
  height: 319px;
  width: 470px;
}

div.selectionsPage div.hotel div.thum img{
  width: 100%;
  vertical-align: bottom;
}

div.selectionsPage div.hotel div.info{
  padding: 20px 10px 10px;
  width: 46%;
  float: right;
  padding-right: 2%;
}

div.selectionsPage div.hotel div.info .name{
  margin-bottom: 10px;
  font-size: 24px;
  margin-top: 10px;
}

div.selectionsPage div.hotel div.info p.grade{
  float: right;
  margin-top: 2px;
}

div.selectionsPage div.hotel div.info p.grade .museum,
div.selectionsPage div.hotel div.info p.grade .star{
  height: 13px;
}

div.selectionsPage div.hotel div.info p.grade .casual{
  height: 12px;
}

div.selectionsPage div.hotel div.info p.grade .star{
  margin-right: 2px;
}

div.selectionsPage div.hotel div.info p.area{
  margin-bottom: 20px;
  font-size: 11px;
  line-height: 1.8;
}

div.selectionsPage div.hotel div.info p.name a:hover,
div.selectionsPage div.hotel div.info p.area a:hover{
  text-decoration: underline;
}

div.selectionsPage div.hotel div.info p.copy{
  margin-bottom: 10px;
  font-size: 18px;
}

div.selectionsPage div.hotel div.info p.description{
  line-height: 2.2;
  margin-bottom: 10px;
  font-size: 11px;
}

div.hotel div.info p.btn-detail{
  text-align: right;
}


h3.sub-title{
  font-size: 26px;
  padding: 50px 0;
  text-align: center;
  text-shadow: 1px 1px 1px rgba(0,0,0,.1);
}

div.popularArea{
  background-color: #dfdfdf;
  padding-bottom: 20px;
  margin-bottom: 50px;
}

div.popularArea div.selectionBox{
  box-shadow:0 0 1px #fff, 0 0 1px #bebebe, 0 0 1px #bebebe;
}


div.nav-page{
  width: 900px;
  display: table;
  padding: 20px;
  margin-bottom: 30px;
  clear: both;
  vertical-align: middle;
  line-height: 1.0;
  background-color: #fff;
  box-shadow:0 0 1px #fff, 0 0 1px #ddd, 0 0 1px #ddd;
}

div.nav-page div.left,
div.nav-page div.center,
div.nav-page div.right{
  display: table-cell;
  width: 300px;
}

div.nav-page div.center{
  text-align: center;
}

div.nav-page div.right{
  text-align: right;
}

div.nav-page a:link{
  text-decoration: none;
  color: #000;
}

div.nav-page a:hover{
  text-decoration: underline;
}


div.commonRegistArea{
  background-color: #fff;
  color: #333;
  padding: 0;
}

div.commonRegistArea.selectionsDetail{
  margin-bottom: 20px;
  padding: 50px 0;
}

div.commonRegistArea.selectionsDetail p.message{
  font-size: 13px;
  margin-bottom: 24px;
}

div.commonRegistArea p.message{
  text-align: center;
  font-size: 14px;
  color: #000;
}

div.commonRegist{
  display: table;
  margin-left: auto;
  margin-right: auto;
}

div.commonRegist div.left,
div.commonRegist div.right,
div.commonRegist div.center{
  display: table-cell;
  width: 280px;
}

div.commonRegist a.btn{
  padding-top: 12px;
  padding-bottom: 12px;
}

div.commonRegist div.left div.facebookBox{
  padding: 0 20px 0 0;
}

div.commonRegist div.right div.mailBox{
  padding: 0 0 0 20px;
}

div.commonRegist label.facebookCheck{
  font-size: 11px;
  cursor: pointer;
}

div.commonRegist div.facebookBox label.facebookCheck span{
  margin-left: 5px;
}

div.commonRegist div.facebookBox label.facebookCheck:hover{
  text-decoration: underline;
}

div.commonRegist div.reservations input[type="text"]{
  border: 0;
  height: 27px;
  line-height: 27px;
  border: 1px solid #ccc;
  padding: 5px;
  vertical-align: top;
  width: 180px;
}

div.commonRegist div.reservationMailBox input[type="text"]{
  border: 0;
  height: 30px;
  line-height: 30px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  padding: 5px;
  width: 60%;
}

div.commonRegist div.mailBox input[type="text"]:focus{
  outline: none;
}

div.commonRegist div.mailBox a.btn{
  padding-bottom: 14px;
  vertical-align: top;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  -webkit-appearance: none;
  width: 25%;
}

.selection-signin-btnArea{
  display: flex!important;
  justify-content: center;
  margin-bottom: 24px;
}

.selection-attention{
  font-size: 10px;
  margin-bottom: 24px;
  text-align: center;
}

.selection-signin-btn{
  width: 308px;
  height: 40px;
  padding: 0;
  line-height: 40px;
  border-radius: 4px;
}

div.commonRegistArea p.txt{
  clear: both;
}

div.commonRegistArea p.txt a{
  text-decoration: underline;
}

div.commonRegistArea p.txt a:hover{
  text-decoration: none;
}

div.commonRegistArea p.loginBtn{
  text-align: center;
  margin: 0;
}

div.section.lineBox{
  border: 2px solid #efefef;
  background: #fff!important;
  padding: 30px;
}

div.section.lineBox img{
  float: left;
  margin-right: 20px;
}


#concierge-container div.commonRegistArea{
  padding: 50px 0;
}
#concierge-container div.commonRegistArea p.txt{
  margin-left: 50px;
}
#concierge-container div.commonRegistArea .right div.reservationMailBox input[type="text"]{
  height: 33px;
}
#concierge-container div.commonRegistArea .right div.reservationMailBox a.btn{
  padding-bottom: 12px;
}
.selectionsDetail .commonRegist{
  margin-top: 20px;
}
.selectionsDetail .right .mailBox input[type="text"]{
  width: 60%;
  height: 33px;
  line-height: 30px;
  padding: 5px;
  border: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
.selectionsDetail .right .mailBox a.btn{
  padding-bottom: 12px;
}
.selectionsDetail p.txt{
  margin-left: 50px;
}