
.btn_map {
  overflow: hidden;
  height: 490px;
  list-style:none;
}
.map {
  margin: 0 auto;
  width: 960px;
}
.base_map {
  min-height: 376px;
  overflow: hidden;
}
.base_map .tgl {
  background: #fff none repeat scroll 0 0;
  border: 2px solid #83cadf;
  color: #000000;
  font-size: 13px;
  height: 150px;
  margin-left: 14px;
  margin-top: -20px;
  overflow: scroll;
  padding: 20px;
  position: relative;
  width: 880px;
}
.base_map .tgl ul li {
  line-height: 1.3;
  margin-bottom: 10px;
  padding-left: 2rem;
  text-indent: -2rem;
}
.base_map .tgl p {
  overflow: hidden;
  width: 100%;
  text-align: right;
  color: #333;
}
.btn_list_left {
  float: left;
  width: 50%;
}
.btn_list_right {
  float: right;
  width: 50%;
}
.hotel_ttl_img {
  margin-top: 20px;
  text-align: center;
}
.hotel {
  margin: 0 auto;
  width: 960px;
  overflow: hidden;
}
.map_ttl_img {
  margin-top: 20px;
  text-align: center;
}
h3 {
  font-size: 33px;
  font-weight: normal;
  color: #224789;
  text-align: center;
  margin-top: 20px;
  margin-bottom: 40px;
}
h4 {
  font-size: 21px;
  font-weight: normal;
  color: #224789;
  text-align: center;
  margin-bottom: 10px;
}
.large_hotel {
  position: relative;
  height: 540px;
  margin-bottom: 10px;
}
.large_hotel p.hotel_icon {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}
.area_center {
  border-color: #e60012;
}
.area_east {
  border-color: #009b74;
}
.area_west {
  border-color: orange;
}
.area_kahala {
  border-color: #7560a4;
}
.large_hotel .s_inner, .large_hotel .a_inner, .large_hotel .l_inner {
  border-style: solid;
  border-width: 3px 1px 1px;
  margin: 4px 0 0 4px;
  width: 954px;
  position: absolute;
  padding-bottom: 10px;
}
.large_hotel .hotel_img_list {
  background: #f5f3ed none repeat scroll 0 0;
  margin-top: 80px;
  overflow: hidden;
  padding: 12px 0 12px 12px;
}
.large_hotel .hotel_img_list li {
  margin-right: 12px;
  float: left;
  width: 300px;
  height: 180px;
}
.large_hotel .grade {
  font-size: 20px;
  left: 30px;
  position: absolute;
  top: 10px;
  font-weight: bold;
}
.large_hotel .grade span {
  font-size: 14px;
}
.large_hotel .area {
  left: 120px;
  position: absolute;
  top: 10px;
}
.large_hotel .name {
  font-size: 16px;
  font-weight: bold;
  left: 10px;
  position: absolute;
  top: 50px;
}
.large_hotel .bn {
  position: absolute;
  right: 10px;
  top: 10px;
}
.l_inner .grade {
  color: #1055c6;
}
.s_inner .grade {
  color: #f240c2;
}
.a_inner .grade {
  color: #ea7d3c;
}
.b_inner .grade {
  color: #f1d20c;
}
.c_inner .grade {
  color: #848383;
}
.d_inner .grade {
  color: #7e774b;
}
.large_hotel .intro {
  clear: both;
  padding: 0 10px 10px;
  font-size: 14px;
  line-height: 22px;
  color: #333333;
  margin-bottom: 20px;
}
.large_hotel .trip {
  float: right;
  width: 360px;
}
.large_hotel .yoyaku {
  float: right;
  width: 260px;
  height: 54px;
  background: #f40000;
  margin-right: 10px;
}
.large_hotel .yoyaku a {
  text-align: center;
  font-size: 17px;
  color: #fff;
}
.large_hotel .yoyaku a p {
  padding: 12px 0;
}
.large_hotel .yoyaku span {
  font-size: 9px;
  vertical-align: middle;
}
.large_hotel .hotel_class {
  float: left;
  margin-left: 10px;
  width: 660px;
  overflow: hidden;
}
.large_hotel .hotel_class li.class {
  float: left;
  width: 190px;
  /*width: 285px;*/
  height: 30px;
  background: #333333;
  margin: 0 3px 3px 0;
  color: #fff;
  font-size: 14px;
  border-radius: 3px 3px 0 0;
  text-align: center;
}
.large_hotel .hotel_class li.first {
  margin-left: 79px;
}
.large_hotel .hotel_class li.hatsu {
  float: left;
  width: 76px;
  height: 30px;
  background: #333333;
  margin: 0 3px 3px 0;
  color: #fff;
  font-size: 14px;
  border-radius: 3px 0 0 3px;
}
.large_hotel .hotel_class li.price {
  float: left;
  width: 190px;
  /*width: 285px;*/
  height: 30px;
  background: #f5f5f5;
  margin: 0 3px 3px 0;
  color: #f40000;
  font-size: 14px;
  text-align: center;
}
.large_hotel .hotel_class li.class span {
  padding: 2px 0 0 0;
  vertical-align: middle;
}
.large_hotel .hotel_class li.hatsu span {
  padding: 2px 0 0 6px;
  vertical-align: middle;
}
.large_hotel .hotel_class li.price span {
  padding: 2px 0 0 6px;
  vertical-align: middle;
}
.h_left {
  float: left;
  width: 465px;
}
.h_right {
  float: right;
  width: 465px;
}
.small_hotel {
  position: relative;
  height: 698px;
  margin-bottom: 10px;
}
.special_box .small_hotel {
  /*height: 734px;*/
}
.hotel .small_hotel {
  height: 764px;
}
.small_hotel p.hotel_icon {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}
.small_hotel .l_inner, .small_hotel .s_inner, .small_hotel .a_inner, .small_hotel .b_inner, .small_hotel .c_inner, .small_hotel .d_inner {
  border-style: solid;
  border-width: 3px 1px 1px;
  float: left;
  margin: 4px 0 0 4px;
  padding-bottom: 10px;
  position: absolute;
  width: 458px;
}
.small_hotel .hotel_img_list {
  background: #f5f3ed none repeat scroll 0 0;
  margin-top: 102px;
  overflow: hidden;
  padding: 12px 0 12px 12px;
}
.small_hotel .hotel_img_list li {
  margin-right: 12px;
  float: left;
  width: 210px;
  height: 125px;
}
.small_hotel .grade {
  font-size: 20px;
  left: 30px;
  position: absolute;
  top: 10px;
  font-weight: bold;
}
.small_hotel .grade span {
  font-size: 14px;
}
.small_hotel .area {
  left: 30px;
  position: absolute;
  top: 40px;
}
.small_hotel .name {
  font-size: 16px;
  font-weight: bold;
  left: 10px;
  position: absolute;
  top: 55px;
  line-height: 24px;
  width: 440px;
}
.small_hotel .bn {
  position: absolute;
  right: 10px;
  top: 10px;
}
.small_hotel .intro {
  clear: both;
  padding: 0 10px 10px;
  font-size: 14px;
  line-height: 22px;
  color: #333333;
  margin-bottom: 10px;
  height: 90px;
}
.small_hotel .trip {
  float: right;
  width: 360px;
}
.small_hotel .yoyaku {
  float: right;
  width: 240px;
  height: 44px;
  background: #f40000;
  margin-right: 10px;
  margin-top: 38px;
}
.small_hotel .yoyaku a {
  text-align: center;
  font-size: 17px;
  color: #fff;
}
.small_hotel .yoyaku a p {
  padding: 7px 0;
}
.small_hotel .yoyaku span {
  font-size: 9px;
  vertical-align: middle;
}
.small_hotel .hotel_class {
  margin-left: 10px;
  width: 448px;
  overflow: hidden;
  margin-bottom: 20px;
}
.small_hotel .hotel_class li.premium {
  float: left;
  width: 178px;
  height: 47px;
  background: #333333;
  margin: 0 3px 3px 0;
  color: #fff;
  font-size: 14px;
  border-radius: 3px 3px 0 0;
  text-align: center;
  line-height: 20px;
  padding-top: 3px;
}
.small_hotel .hotel_class li.economi {
  float: left;
  width: 178px;
  /*width: 359px;*/
  height: 37px;
  background: #333333;
  margin: 0 3px 3px 0;
  color: #fff;
  font-size: 14px;
  border-radius: 3px 3px 0 0;
  text-align: center;
  padding-top: 13px;
}
.small_hotel .hotel_class li.threeclass {
  float: left;
  width: 118px;
  height: 47px;
  background: #333333;
  margin: 0 3px 3px 0;
  color: #fff;
  font-size: 14px;
  border-radius: 3px 3px 0 0;
  text-align: center;
  line-height: 20px;
  padding-top: 3px;
}
.small_hotel .hotel_class li.first {
  margin-left: 79px;
}
.small_hotel .hotel_class li.hatsu {
  float: left;
  width: 76px;
  height: 30px;
  background: #333333;
  margin: 0 3px 3px 0;
  color: #fff;
  font-size: 14px;
  border-radius: 3px 0 0 3px;
}
.small_hotel .hotel_class li.price {
  float: left;
  width: 178px;
  /*width: 359px;*/
  height: 30px;
  background: #f5f5f5;
  margin: 0 3px 3px 0;
  color: #f40000;
  font-size: 14px;
  text-align: center;
}
.small_hotel .hotel_class li.price3 {
  float: left;
  width: 118px;
  height: 30px;
  background: #f5f5f5;
  margin: 0 3px 3px 0;
  color: #f40000;
  font-size: 14px;
  text-align: center;
}
.small_hotel .hotel_class li.premium span {
  vertical-align: middle;
}
.small_hotel .hotel_class li.economi span {
  vertical-align: middle;
}
.small_hotel .hotel_class li.threeclass span {
  vertical-align: middle;
}
.small_hotel .hotel_class li.hatsu span {
  padding: 4px 0 0 6px;
  vertical-align: middle;
}
.small_hotel .hotel_class li.price span {
  padding: 2px 0 0 6px;
  vertical-align: middle;
}
.small_hotel .hotel_class li.price3 span {
  padding: 2px 0 0 6px;
  vertical-align: middle;
}
.map_bg {
  position: absolute;
  width: 950px;
}
.close {
  clear: both;
}
.hotel_under {
  margin-top: 20px;
}
.hotel_under .hotel_under_00 {
  float: left;
  width: 900px;
  height: 155px;
  margin-left: 10px;
}
.hotel_under .hotel_under_01 {
  float: left;
  width: 455px;
  height: 163px;
  margin-left: 10px;
  margin-right: 20px;
}
.hotel_under .hotel_under_02 {
  float: left;
  width: 455px;
  height: 163px;
  margin-right: 10px;
}
.campaign {
  margin-bottom: 60px;
  margin-top: 60px;
}
.campaign .line {
  margin-bottom: 10px;
}
.osusume .line {
  margin-bottom: 10px;
}
.osusume_bn p {
  margin-bottom: 5px;
}
.countrybtn {
  background: #f8f8ea;
  overflow: hidden;
  padding: 16px 0 0 0;
  margin-bottom: 20px;
}
.countrybtn li.set {
  float: left;
  width: 157px;
  height: 46px;
  margin-bottom: 20px;
}
.countrybtn li.set .cou_img {
  float: left;
  width: 46px;
  margin-top: 0px !important;
  margin-right: 10px;
}
.countrybtn li.set .cou_img img {
  width: 46px;
  height: 46px;
}
.countrybtn li.set ul li:hover {
  text-decoration: underline;
}
.countrybtn li.set ul li.cou_name {
  float: left;
  font-size: 14px;
  color: #333333;
  margin-top: 12px;
}
.countrybtn li.set ul li.cou_name span, .countrybtn li.set ul li.cou_name_2l span {
  font-size: 9px;
  vertical-align: middle;
}
.countrybtn li.set ul li.cou_name_2l {
  float: left;
  font-size: 14px;
  color: #333333;
  margin-top: 0px;
}
.islandmap {
  height: 522px;
  margin-top: 50px;
}
.islandmap_img {
  position: absolute;
}
.islandmap .kauai {
  position: relative;
  top: 110px;
  left: 90px;
  width: 132px;
  height: 114px;
}
.islandmap .maui {
  position: relative;
  top: 50px;
  left: 570px;
  width: 132px;
  height: 113px;
}
.islandmap .hawii {
  position: relative;
  top: 16px;
  left: 710px;
  width: 174px;
  height: 232px;
}
.trip_schedule {
  clear: both;
  font-size: 13px;
  line-height: 22px;
  border: 1px solid #000;
  padding: 5px 9px;
  margin-bottom: 10px;
  transform: translateY(-36px);
}
.hotel_info {
  clear: both;
  font-size: 13px;
  line-height: 22px;
}
.large_hotel .tripBox180 {
  float: right;
  margin: -50px 10px 10px 0;
}
.small_hotel .tripBox180 {
  float: left;
  margin: 0px 0 0 10px;
}

.num01 {
  position: relative;
  top: 136px;
  left: -146px;
}
.num02 {
  position: relative;
  top: 136px;
  left: 750px;
}
.num03 {
  position: relative;
  top: -56px;
  left: 219px;
}
.num04 {
  position: relative;
  top: 36px;
  left: 256px;
}
.num05 {
  position: relative;
  top: 74px;
  left: 315px;
}
.num06 {
  position: relative;
  top: 136px;
  left: -112px;
}
.num07 {
  position: relative;
  top: 24px;
  left: 448px;
}
.num08 {
  position: relative;
  top: 2px;
  left: 507px;
}
.num09 {
  position: relative;
  top: 68px;
  left: 261px;
}
.num10 {
  position: relative;
  top: 6px;
  left: 481px;
}
.num11 {
  position: relative;
  top: -22px;
  left: 604px;
}
.num12 {
  position: relative;
  top: 36px;
  left: 282px;
}
.num13 {
  position: relative;
  top: 36px;
  left: -46px;
}
.num14 {
  position: relative;
  top: 50px;
  left: 398px;
}
.num15 {
  position: relative;
  top: -32px;
  left: 515px;
}
.num16 {
  position: relative;
  top: 30px;
  left: 63px;
}
.num17 {
  position: relative;
  top: 24px;
  left: -96px;
}
.num18 {
  position: relative;
  top: 42px;
  left: 425px;
}
.num19 {
  position: relative;
  top: 136px;
  left: 680px;
}
.num20 {
  position: relative;
  top: -3px;
  left: 699px;
}
.num21 {
  position: relative;
  top: 35px;
  left: 339px;
}
.num22 {
  position: relative;
  top: -65px;
  left: 687px;
}
.num23 {
  position: relative;
  top: -78px;
  left: 717px;
}
.num24 {
  position: relative;
  top: 8px;
  left: 732px;
}
.num25 {
  position: relative;
  top: -64px;
  left: -149px;
}
.num26 {
  position: relative;
  top: 30px;
  left: -12px;
}
.num27 {
  position: relative;
  top: -74px;
  left: 489px;
}
.num28 {
  position: relative;
  top: -94px;
  left: 285px;
}
.num29 {
  position: relative;
  top: -33px;
  left: 487px;
}
.num30 {
  position: relative;
  top: -58px;
  left: 408px;
}
.num31 {
  position: relative;
  top: -74px;
  left: 36px;
}
.num32 {
  position: relative;
  top: 136px;
  left: 715px;
}
.num33 {
  position: relative;
  top: -70px;
  left: 377px;
}
.num34 {
  position: relative;
  top: -34px;
  left: 728px;
}
.num35 {
  position: relative;
  top: -19px;
  left: 635px;
}
.num36 {
  position: relative;
  top: -94px;
  left: 459px;
}
.num37 {
  position: relative;
  top: -70px;
  left: 644px;
}
.num38 {
  position: relative;
  top: -34px;
  left: 413px;
}
.num39 {
  position: relative;
  top: -52px;
  left: 120px;
}
.num40 {
  position: relative;
  top: -45px;
  left: 580px;
}
.num41 {
  position: relative;
  top: -95px;
  left: 137px;
}
.num42 {
  position: relative;
  top: 6px;
  left: -72px;
}
.num43 {
  position: relative;
  top: -56px;
  left: 313px;
}
.num44 {
  position: relative;
  top: -94px;
  left: 312px;
}
.num45 {
  position: relative;
  top: -84px;
  left: 558px;
}
.num46 {
  position: relative;
  top: 16px;
  left: 757px;
}
.num47 {
  position: relative;
  top: -115px;
  left: 512px;
}
.num48 {
  position: relative;
  top: -115px;
  left: 483px;
}
.num49 {
  position: relative;
  top: -109px;
  left: 437px;
}
.num50 {
  position: relative;
  top: -95px;
  left: 164px;
}
.num51 {
  position: relative;
  top: -66px;
  left: 163px;
}
.num52 {
  position: relative;
  top: -35px;
  left: 761px;
}
.num53 {
  position: relative;
  top: -65px;
  left: 413px;
}
/*番号*/


.ul.icn {
  list-style-type: none;
}

.green ul.icn li {
  width: 24px;
  height: 24px;
  margin: 10px;
  background: linear-gradient(-45deg, #52ccad 50%, #009b74 50%, #009b74);
  border-radius: 12px;
  position: relative;
  position: absolute;
}
.red ul.icn li {
  width: 24px;
  height: 24px;
  margin: 10px;
  background: #e60012;
  border-radius: 12px;
  position: relative;
  position: absolute;
}
.purple ul.icn li {
  width: 24px;
  height: 24px;
  margin: 10px;
  background: #7560a4;
  border-radius: 12px;
  position: relative;
  position: absolute;
}
ul.icn li {
  width: 24px;
  height: 24px;
  margin: 10px;
  background: orange;
  border-radius: 12px;
  position: relative;
  position: absolute;
}
ul.icn li.hotel_icn {
  top: 150px;
  left: 150px;
}
ul.icn li a {
  display: block;
  width: 24px;
  height: 24px;
  font-size: 13px;
  color: white;
  text-decoration: none;
  text-align: center;
  line-height: 28px;
}
.green ul.icn li:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -5px;
  left: 50%;
  margin-left: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 3px 0;
  border-color: #009b74 transparent transparent transparent;
}
.red ul.icn li:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -5px;
  left: 50%;
  margin-left: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 3px 0;
  border-color: #e60012 transparent transparent transparent;
}
.purple ul.icn li:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -5px;
  left: 50%;
  margin-left: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 3px 0;
  border-color: #7560a4 transparent transparent transparent;
}
ul.icn li:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -5px;
  left: 50%;
  margin-left: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 3px 0;
  border-color: orange transparent transparent transparent;
}

/*ホバーでも変わるように*/
.green ul.icn li:hover {
  background: linear-gradient(-45deg, #52ccad 50%, #009b74 50%, #009b74);
}
.red ul.icn li:hover {
  background: #e60012;
}
.purple ul.icn li:hover {
  background: #7560a4;
}
ul.icn li:hover {
  background: orange;
}
.green ul.icn li:hover:after {
  border-color: #009b74 transparent transparent transparent;
}
.red ul.icn li:hover:after {
  border-color: #e60012 transparent transparent transparent;
}
.purple ul.icn li:hover:after {
  border-color: #7560a4 transparent transparent transparent;
}
ul.icn li:hover:after {
  border-color: orange transparent transparent transparent;
}
.num01 ul.icn li:hover:after {
  border-color: transparent #7560a4 transparent transparent;
}
.num02 ul.icn li:hover:after {
  border-color: transparent transparent transparent #7560a4;
}
.num06 ul.icn li:hover:after {
  border-color: transparent #7560a4 transparent transparent;
}
.num18 ul.icn li:hover:after {
  border-color: transparent transparent transparent #e60012;
}
.num19 ul.icn li:hover:after {
  border-color: transparent transparent transparent #009b74;
}
.num32 ul.icn li:hover:after {
  border-color: transparent transparent transparent #009b74;
}
/*クラスがついても変わるように*/
.green ul.icn li.hover {
  background: linear-gradient(-45deg, #52ccad 50%, #009b74 50%, #009b74);
}
.green ul.icn li.hover:after {
  border-color: #009b74 transparent transparent transparent;
}
.red ul.icn li.hover {
  background: #e60012;
}
.red ul.icn li.hover:after {
  border-color: #e60012 transparent transparent transparent;
}
.purple ul.icn li.hover {
  background: #7560a4;
}
.purple ul.icn li.hover:after {
  border-color: #7560a4 transparent transparent transparent;
}
ul.icn li.hover {
  background: orange;
}
ul.icn li.hover:after {
  border-color: orange transparent transparent transparent;
}
.num01 ul.icn li:hover:after {
  border-color: transparent orange transparent transparent;
}
.num02 ul.icn li:hover:after {
  border-color: transparent transparent transparent orange;
}
.num06 ul.icn li:hover:after {
  border-color: transparent orange transparent transparent;
}
.num18 ul.icn li:hover:after {
  border-color: transparent transparent transparent orange;
}
.num19 ul.icn li:hover:after {
  border-color: transparent transparent transparent orange;
}
.num32 ul.icn li:hover:after {
  border-color: transparent transparent transparent orange;
}
/*ホテル名*/
p.hotelName {
  position: absolute;
  top: 80px;
  left: 54px;
  width: 240px;
  z-index: 1;
  display: none;
}
.num01 p.hotelName {
  position: absolute;
  top: 80px;
  left: 144px;
  width: 255px;
}
.num02 p.hotelName {
  position: absolute;
  top: 97px;
  left: -24px;
  width: 235px;
}
.num03 p.hotelName {
  position: absolute;
  top: 80px;
  left: 38px;
  width: 268px;
}
.num04 p.hotelName {
  position: absolute;
  top: 80px;
  left: 52px;
  width: 240px;
}
.num05 p.hotelName {
  position: absolute;
  top: 100px;
  left: 118px;
  width: 110px;
}
.num06 p.hotelName {
  position: absolute;
  top: 80px;
  left: 110px;
  width: 310px;
}
.num07 p.hotelName {
  position: absolute;
  top: 60px;
  left: 17px;
  width: 310px;
}
.num08 p.hotelName {
  position: absolute;
  top: 80px;
  left: 41px;
  width: 262px;
}
.num09 p.hotelName {
  position: absolute;
  top: 80px;
  left: 59px;
  width: 226px;
}
.num10 p.hotelName {
  position: absolute;
  top: 80px;
  left: 59px;
  width: 226px;
}
.num11 p.hotelName {
  position: absolute;
  top: 80px;
  left: 82px;
  width: 180px;
}
.num12 p.hotelName {
  position: absolute;
  top: 80px;
  left: 25px;
  width: 294px;
}
.num13 p.hotelName {
  position: absolute;
  top: 100px;
  left: 85px;
  width: 174px;
}
.num14 p.hotelName {
  position: absolute;
  top: 100px;
  left: 85px;
  width: 174px;
}
.num15 p.hotelName {
  position: absolute;
  top: 80px;
  left: 32px;
  width: 280px;
}
.num16 p.hotelName {
  position: absolute;
  top: 80px;
  left: 54px;
  width: 240px;
}
.num17 p.hotelName {
  position: absolute;
  top: 100px;
  left: 92px;
  width: 162px;
}
.num18 p.hotelName {
  position: absolute;
  top: 80px;
  left: 37px;
  width: 270px;
}
.num19 p.hotelName {
  position: absolute;
  top: 80px;
  left: 69px;
  width: 200px;
}
.num20 p.hotelName {
  position: absolute;
  top: 80px;
  left: 40px;
  width: 210px;
}
.num21 p.hotelName {
  position: absolute;
  top: 77px;
  left: 31px;
  width: 290px;




}
.num22 p.hotelName {
  position: absolute;
  top: 80px;
  left: 82px;
  width: 180px;
}
.num23 p.hotelName {
  position: absolute;
  top: 80px;
  left: 53px;
  width: 180px;
}
.num24 p.hotelName {
  position: absolute;
  top: 98px;
  left: 30px;
  width: 190px;
}
.num25 p.hotelName {
  position: absolute;
  top: 97px;
  left: 135px;
  width: 260px;
}
.num26 p.hotelName {
  position: absolute;
  top: 80px;
  left: 40px;
  width: 265px;
}
.num27 p.hotelName {
  position: absolute;
  top: 100px;
  left: 102px;
  width: 140px;
}
.num28 p.hotelName {
  position: absolute;
  top: 100px;
  left: 19px;
  width: 306px;
}
.num29 p.hotelName {
  position: absolute;
  top: 80px;
  left: 72px;
  width: 200px;
}
.num30 p.hotelName {
  position: absolute;
  top: 80px;
  left: 62px;
  width: 220px;
}
.num31 p.hotelName {
  position: absolute;
  top: 80px;
  left: 52px;
  width: 240px;
}
.num32 p.hotelName {
  position: absolute;
  top: 97px;
  left: 20px;
  width: 216px;
}
.num33 p.hotelName {
  position: absolute;
  top: 80px;
  left: 75px;
  width: 192px;
}
.num34 p.hotelName {
  position: absolute;
  top: 80px;
  left: 34px;
  width: 188px;
}
.num35 p.hotelName {
  position: absolute;
  top: 80px;
  left: 78px;
  width: 188px;
}
.num36 p.hotelName {
  position: absolute;
  top: 100px;
  left: 28px;
  width: 288px;
}
.num37 p.hotelName {
  position: absolute;
  top: 80px;
  left: 80px;
  width: 184px;
}
.num38 p.hotelName {
  position: absolute;
  top: 80px;
  left: 7px;
  width: 330px;
}
.num39 p.hotelName {
  position: absolute;
  top: 80px;
  left: 70px;
  width: 205px;
}
.num40 p.hotelName {
  position: absolute;
  top: 100px;
  left: 62px;
  width: 220px;
}
.num41 p.hotelName {
  position: absolute;
  top: 96px;
  left: -14px;
  width: 370px;
}
.num42 p.hotelName {
  position: absolute;
  top: 80px;
  left: 72px;
  width: 200px;
}
.num43 p.hotelName {
  position: absolute;
  top: 80px;
  left: 72px;
  width: 200px;
}
.num44 p.hotelName {
  position: absolute;
  top: 100px;
  left: -8px;
  width: 360px;
}
.num45 p.hotelName {
  position: absolute;
  top: 100px;
  left: 77px;
  width: 190px;
}
.num46 p.hotelName {
  position: absolute;
  top: 100px;
  left: -4px;
  width: 205px;
}
.num47 p.hotelName {
  position: absolute;
  top: 112px;
  left: -63px;
  width: 472px;
}
.num48 p.hotelName {
  position: absolute;
  top: 112px;
  left: 64px;
  width: 216px;
}
.num49 p.hotelName {
  position: absolute;
  top: 112px;
  left: 72px;
  width: 200px;
}
.num50 p.hotelName {
  position: absolute;
  top: 100px;
  left: -8px;
  width: 360px;
}
.num51 p.hotelName {
  position: absolute;
  top: 100px;
  left: 77px;
  width: 190px;
}
.num52 p.hotelName {
  position: absolute;
  top: 100px;
  left: -15px;
  width: 360px;
}
.num53 p.hotelName {
  position: absolute;
  top: 100px;
  left: 30px;
  width: 280px;
}
/*角丸*/
.green p.hotelName span {
  display: inline-block;
  margin: 10px;
  font-size: 13px;
  background: linear-gradient(-25deg, #52ccad 50%, #009b74 50%, #009b74);
  padding: 10px;
  color: white;
  border-radius: 50px;
  line-height: 1.5;
  position: relative;
  border: 2px solid #fff;
  text-align: center;
}
.red p.hotelName span {
  display: inline-block;
  margin: 10px;
  font-size: 13px;
  background: #e60012;
  padding: 10px;
  color: white;
  border-radius: 50px;
  line-height: 1.5;
  position: relative;
  border: 2px solid #fff;
  text-align: center;
}
.purple p.hotelName span {
  display: inline-block;
  margin: 10px;
  font-size: 13px;
  background: #7560a4;
  padding: 10px;
  color: white;
  border-radius: 50px;
  line-height: 1.5;
  position: relative;
  border: 2px solid #fff;
  text-align: center;
}
p.hotelName span {
  display: inline-block;
  margin: 10px;
  font-size: 13px;
  background: orange;
  padding: 10px;
  color: white;
  border-radius: 50px;
  line-height: 1.5;
  position: relative;
  border: 2px solid #fff;
  text-align: center;
}
p.hotelName.hotel1 span {
  border-radius: 50px;
}
p.hotelName.hotel2 span {
  border-radius: 50px;
  width: 95px;
}
p.hotelName.hotel19 span {
  border-radius: 50px;
}
p.hotelName.hotel25 span {
  border-radius: 50px;
}
p.hotelName.hotel32 span {
  border-radius: 50px;
}
p.hotelName.hotel46 span {
  border-radius: 50px;
}
p.hotelName.hotel52 span {
  border-radius: 50px 0 0 50px;
}
p.hotelName.hotel47 span {
  padding: 4px 10px;
}
p.hotelName.hotel48 span {
  padding: 4px 10px;
}
p.hotelName.hotel49 span {
  padding: 4px 10px;
}
/*吹き出し三角*/
.green p.hotelName:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 6px;
  left: 50%;
  margin-left: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 3px 0;
  border-color: #009b74 transparent transparent transparent;
}
.red p.hotelName:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 6px;
  left: 50%;
  margin-left: -5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 5px 0 5px;
  border-color: #e60012 transparent transparent transparent;
}
.purple p.hotelName:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 6px;
  left: 50%;
  margin-left: -5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 5px 0 5px;
  border-color: #7560a4 transparent transparent transparent;
}
p.hotelName:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 6px;
  left: 50%;
  margin-left: -5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 5px 0 5px;
  border-color: orange transparent transparent transparent;
}
p.hotelName.hotel1:after {
  left: 11%;
}
p.hotelName.hotel2:after {
  left: 83%;
}
p.hotelName.hotel6:after {
  left: 20%;
}
p.hotelName.hotel19:after {
  left: 51%;
}
p.hotelName.hotel20:after {
  left: 63%;
}
p.hotelName.hotel23:after {
  left: 66%;
}
p.hotelName.hotel24:after {
  left: 75%;
}
p.hotelName.hotel25:after {
  left: 14%;
}
p.hotelName.hotel32:after {
  left: 70%;
}
p.hotelName.hotel34:after {
  left: 73%;
}
p.hotelName.hotel46:after {
  left: 86%;
}
.open {
  background: rgba(0, 0, 0, 0) url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/"../img/map/hotel_open.png") no-repeat scroll center center;
  padding: 4px;
  /* text-align: center; */
  /* text-indent: -9999px; */
}
.close {
  background: rgba(0, 0, 0, 0) url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/"/intltour/hwi/free/img/hotel_close.gif") no-repeat scroll center center;
  padding: 4px;
  /* text-align: center; */
  /* text-indent: -9999px; */
}
.bn_box {
  margin: 20px auto 60px;
  overflow: hidden;
}
.bn_box .bn_left {
  float: left;
  width: 460px;
  height: 100px;
}
.bn_box .bn_right {
  float: right;
  width: 460px;
  height: 100px;
}
.tgl ul li a.orange:hover {
  color: orange;
  text-decoration: none;
}
.tgl ul li a.red:hover {
  color: #e60012;
  text-decoration: none;
}
.tgl ul li a.green:hover {
  color: #009b74;
  text-decoration: none;
}
.tgl ul li a.purple:hover {
  color: #7560a4;
  text-decoration: none;
}
.green_num {
  color: #009b74;
}
.red_num {
  color: #e60012;
}
.orange_num {
  color: orange;
}
.purple_num {
  color: #7560a4;
}

/*モーダル*/
/*
#lean_overlay {
  position: fixed;
  z-index: 100;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: #000;
  display: none;
}
*/
#popup {
  width: 900px;
  padding: 50px 45px 80px;
  background: #fff;
  border: 4px solid #08b7f1;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#popup02 {
  width: 900px;
  padding: 50px 45px 80px;
  background: #fff;
  border: 4px solid #d02d2d;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
#popup .ttl {
  border: 4px solid #08b7f1;
  color: #08b7f1;
  font-size: 24px;
  font-weight: bold;
  margin: 0 auto 30px;
  padding: 20px 0;
  text-align: center;
  width: 632px;
}
#popup02 .ttl {
  border: 4px solid #d02d2d;
  color: #d02d2d;
  font-size: 24px;
  font-weight: bold;
  margin: 0 auto 30px;
  padding: 20px 0;
  text-align: center;
  width: 632px;
}
#popup .txt, #popup02 .txt {
  margin: 0 auto;
  width: 640px;
  line-height: 30px;
}
#popup .txt ul, #popup02 .txt ul {
  width: 640px;
  margin-bottom: 6px;
}
#popup .txt ul li.square {
  background: #08b7f1 none repeat scroll 0 0;
  display: inline-block;
  float: left;
  height: 18px;
  margin-right: 5px;
  margin-top: 7px;
  vertical-align: middle;
  width: 6px;
}
#popup02 .txt ul li.square {
  background: #d02d2d none repeat scroll 0 0;
  display: inline-block;
  float: left;
  height: 18px;
  margin-right: 5px;
  margin-top: 7px;
  vertical-align: middle;
  width: 6px;
}
#popup .txt li.point, #popup02 .txt li.point {
  width: 620px;
  color: #000000;
  font-size: 14px;
  padding-left: 12px;
}
#popup .txt .point span, #popup02 .txt .point span {
  color: #eeb13c;
  font-size: 18px;
  font-weight: bold;
}



.btn_map {
  overflow: hidden;
  height: 465px;
  list-style-type: none;
  margin-top: 25px;
}
.mapbg {
  position:relative;
  height: auto;
  padding-bottom: 53px;
  width: 100%;
}
.mapbg:after{
  content: "";
  position: absolute;
  width: 100vw;
  height: calc(100% + 138px);
  background: #FFF6B5;
  top: -138px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 calc(50% - 50vw);
  z-index: 0;
}
.mapbg > * {
  position: relative;
  z-index:1;
}
.mapbg{
  list-style-type: none;
}
.num01 {
  position: relative;
  top: 179px;
  left: -133px;
}
.num02 {
  position: relative;
  top: 75px;
  left: 326px;
}
.num03 {
  position: relative;
  top: 100px;
  left: 677px;
}
.num04 {
  position: relative;
  top: 179px;
  left: -98px;
}
.num05 {
  position: relative;
  top: -55px;
  left: 220px;
}
.num06 {
  position: relative;
  top: 34px;
  left: 254px;
}
.num07 {
  position: relative;
  top: 28px;
  left: 441px;
}

.num09 {
  position: relative;
  top: 24px;
  left: -96px;
}
.num10 {
  position: relative;
  top: 36px;
  left: -46px;
}

.num11 {
  position: relative;
  top: 25px;
  left: 52px;
}
.num12 {
  position: relative;
  top: 67px;
  left: 263px;
}
.num13 {
  position: relative;
  top: 29px;
  left: 282px;
}
.num14 {
  position: relative;
  top: 35px;
  left: 339px;
}
.num15 {
  position: relative;
  top: 52px;
  left: 388px;
}
.num16 {
  position: relative;
  top: 44px;
  left: 420px;
}
.num17 {
  position: relative;
  top: 3px;
  left: 476px;
}
.num18 {
  position: relative;
  top: -32px;
  left: 515px;
}
.num19 {
  position: relative;
  top: -27px;
  left: 606px;
}
.num20 {
  position: relative;
  top: -25px;
  left: 635px;
}
.num21 {
  position: relative;
  top: -7px;
  left: 699px;
}
.num22 {
  position: relative;
  top: 100px;
  left: 708px;
}
.num23 {
  position: relative;
  top: -72px;
  left: -147px;
}
.num24 {
  position: relative;
  top: 30px;
  left: -12px;
}
.num25 {
  position: relative;
  top: -50px;
  left: 120px;
}
.num26 {
  position: relative;
  top: -95px;
  left: 279px;
}
.num27 {
  position: relative;
  top: -58px;
  left: 352px;
}
.num28 {
  position: relative;
  top: -70px;
  left: 377px;
}
.num29 {
  position: relative;
  top: -78px;
  left: 408px;
}
.num30 {
  position: relative;
  top: -34px;
  left: 408px;
}
.num31 {
  position: relative;
  top: -94px;
  left: 454px;
}
.num32 {
  position: relative;
  top: -36px;
  left: 482px;
}
.num33 {
  position: relative;
  top: -69px;
  left: 683px;
}
.num34 {
  position: relative;
  top: -76px;
  left: 724px;
}
.num35 {
  position: relative;
  top: -34px;
  left: 728px;
}
.num36 {
  position: relative;
  top: 9px;
  left: 734px;
}
.num37 {
  position: relative;
  top: -30px;
  left: 762px;
}
.num38 {
  position: relative;
  top: 100px;
  left: 739px;
}
.num39{
  position: relative;
  top: 6px;
  left: -72px;
}

.num40 {
  position: relative;
  top: -70px;
  left: 35px;
}
.num41 {
  position: relative;
  top: -105px;
  left: 159px;
}
.num42 {
  position: relative;
  top: -94px;
  left: 312px;
}
.num44 {
  position: relative;
  top: -78px;
  left: 481px;
}
.num45 {
  position: relative;
  top: -115px;
  left: 512px;
}
.num46 {
  position: relative;
  top: -82px;
  left: 554px;
}
.num47 {
  position: relative;
  top: -44px;
  left: 581px;
}
.num48 {
  position: relative;
  top: 22px;
  left: 765px;
}
.num49 {
  position: relative;
  top: -64px;
  left: 163px;
}
ul.icn li.hotel_icn.gradeS{
  background: #b0971a;
}
ul.icn li.hotel_icn.gradeS:after {
  border-color: #b0971a transparent transparent transparent;
}
ul.icn li.hotel_icn.gradeL{
  background: #66471c;
}
ul.icn li.hotel_icn.gradeL:after {
  border-color: #66471c transparent transparent transparent;
}
ul.icn li.hotel_icn.gradeA{
  background: #dc6d1e;
}
ul.icn li.hotel_icn.gradeA:after {
  border-color: #dc6d1e transparent transparent transparent;
}


ul.icn li.hotel_icn.gradeB{
  background: #457aab;
}
ul.icn li.hotel_icn.gradeB:after {
  border-color: #457aab transparent transparent transparent;
}

ul.icn li.hotel_icn.gradeC{
  background: #3e9947;
}
ul.icn li.hotel_icn.gradeC:after {
  border-color: #3e9947 transparent transparent transparent;
}

ul.icn li.hotel_icn.gradeD{
  background: #996ea7;
}
ul.icn li.hotel_icn.gradeD:after {
  border-color: #996ea7 transparent transparent transparent;
}
ul.icn li {
  width: 26px;
  height: 26px;
  border-radius: 50%;
}
ul.icn li a {
  display: block;
  width: 26px;
  height: 26px;
  font-size: 16px;
  color: white;
  text-decoration: none;
  text-align: center;
  line-height: 28px;
  font-feature-settings: 'palt';
  font-weight: 500;
}


.num11 ul.icn li.hotel_icn.gradeA,
.num13 ul.icn li.hotel_icn.gradeA,
.num15 ul.icn li.hotel_icn.gradeA,
.num18 ul.icn li.hotel_icn.gradeA,
.num20 ul.icn li.hotel_icn.gradeA,
.num21 ul.icn li.hotel_icn.gradeA{
  width: 31px;
  height: 31px;
  border-radius: 50%;
}
.num11 ul.icn li.hotel_icn.gradeA a,
.num13 ul.icn li.hotel_icn.gradeA a,
.num15 ul.icn li.hotel_icn.gradeA a,
.num18 ul.icn li.hotel_icn.gradeA a,
.num20 ul.icn li.hotel_icn.gradeA a,
.num21 ul.icn li.hotel_icn.gradeA a {
  width: 31px;
  height: 31px;
  line-height: 35px;
  font-weight: bold;
}

.num11 ul.icn li.hotel_icn.gradeA:before,
.num13 ul.icn li.hotel_icn.gradeA:before,
.num15 ul.icn li.hotel_icn.gradeA:before ,
.num18 ul.icn li.hotel_icn.gradeA:before,
.num20 ul.icn li.hotel_icn.gradeA:before ,
.num21 ul.icn li.hotel_icn.gradeA:before {
  content: "";
  position: absolute;
  width: 20px;
  height: 14px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/gradeAbadge.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: none;
  top: -6px;
  left: 5.5px;
  border: none;
}

.num23 ul.icn li.hotel_icn.gradeB,
.num29 ul.icn li.hotel_icn.gradeB,
.num30 ul.icn li.hotel_icn.gradeB,
.num32 ul.icn li.hotel_icn.gradeB,
.num33 ul.icn li.hotel_icn.gradeB,
.num35 ul.icn li.hotel_icn.gradeB,
.num36 ul.icn li.hotel_icn.gradeB{
  width: 31px;
  height: 31px;
  border-radius: 50%;
}
.num23 ul.icn li.hotel_icn.gradeB a,
.num29 ul.icn li.hotel_icn.gradeB a,
.num30 ul.icn li.hotel_icn.gradeB a,
.num32 ul.icn li.hotel_icn.gradeB a,
.num33 ul.icn li.hotel_icn.gradeB a,
.num35 ul.icn li.hotel_icn.gradeB a,
.num36 ul.icn li.hotel_icn.gradeB a {
  width: 31px;
  height: 31px;
  line-height: 35px;
  font-weight: bold;
}

.num23 ul.icn li.hotel_icn.gradeB:before,
.num29 ul.icn li.hotel_icn.gradeB:before,
.num30 ul.icn li.hotel_icn.gradeB:before,
.num32 ul.icn li.hotel_icn.gradeB:before,
.num33 ul.icn li.hotel_icn.gradeB:before,
.num35 ul.icn li.hotel_icn.gradeB:before,
.num36 ul.icn li.hotel_icn.gradeB:before {
  content: "";
  position: absolute;
  width: 20px;
  height: 14px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/gradeBbadge.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: none;
  top: -6px;
  left: 5.5px;
  border: none;
}
.num41 ul.icn li.hotel_icn.gradeC,
.num43 ul.icn li.hotel_icn.gradeC,
.num44 ul.icn li.hotel_icn.gradeC{
  width: 31px;
  height: 31px;
  border-radius: 50%;
}
.num41 ul.icn li.hotel_icn.gradeC a,
.num43 ul.icn li.hotel_icn.gradeC a,
.num44 ul.icn li.hotel_icn.gradeC a {
  width: 31px;
  height: 31px;
  line-height: 35px;
  font-weight: bold;
}

.num41 ul.icn li.hotel_icn.gradeC:before,
.num43 ul.icn li.hotel_icn.gradeC:before,
.num44 ul.icn li.hotel_icn.gradeC:before {
  content: "";
  position: absolute;
  width: 20px;
  height: 14px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/gradeCbadge.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: none;
  top: -6px;
  left: 5.5px;
  border: none;
}
.map {
  width: 950px;
}
.map_bg {
  position: absolute;
  width: 950px;
}

.base_map .tgl {
  background: #fff none repeat scroll 0 0;
  border: none;
  color: #000000;
  font-size: 14px;
  height: 359px;
  margin-left: 0;
  margin-top: 0;
  overflow: scroll;
    overflow-x: scroll;
  padding: 0;
  position: relative;
  width: 100%;
  overflow-x: hidden;
}

.base_map .tgl ul li {
  line-height: 3.1;
  line-height: 1.75;
  margin-bottom: 0;
  padding: 0;
  text-indent: 0;
  position: relative;
}
.base_map .tgl ul li span {
  position: absolute;
  left: 25px;
}
.base_map .tgl ul li:nth-of-type(even) {
  background:#F5F5F5;
}
.base_map .tgl ul li a{
  font-size: 14px;
  padding: 10px 0;
  letter-spacing: -.03em;
  word-break: break-all;
  display: block;
  width: 100%;
  padding-left: 60px;
  box-sizing: border-box;
}
.base_map .tgl ul li a span {
  position: absolute;
  left: 25px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #cdcdcd;
  top: 0;
  bottom: 0;
  margin: auto;
  line-height: 27px;
  color: #fff;
  text-align: center;
}
.base_map .tgl ul li a span {
  background:#b0971a;
}
.base_map .tgl .btn_list_left li:nth-of-type(n+4) span {
  background:#66471C;
}
.base_map .tgl .btn_list_left li:nth-of-type(n+9) span {
  background:#DC6D1E;
}
.base_map .tgl .btn_list_left li:nth-of-type(n+23) span {
  background:#457AAB;
}
.base_map .tgl .btn_list_right li span {
  background:#457AAB;
}
.base_map .tgl .btn_list_right li:nth-of-type(n+14) span {
  background:#3E9947;
}
.base_map .tgl .btn_list_right li:nth-of-type(n+24) span {
  background:#996EA7;
}
.base_map .tgl ul li a{
  position: relative;
}
.base_map .tgl ul li a:after{
  content: "";
  display: inline-block;
  width: 7px;
  height: 13px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/arrow_01.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  margin-left:23px;
  position: relative;
  top: 1px;
}
.base_map .tgl .btn_list_left li:nth-of-type(11) span:before,
.base_map .tgl .btn_list_left li:nth-of-type(13) span:before,
.base_map .tgl .btn_list_left li:nth-of-type(15) span:before,
.base_map .tgl .btn_list_left li:nth-of-type(18) span:before,
.base_map .tgl .btn_list_left li:nth-of-type(20) span:before,
.base_map .tgl .btn_list_left li:nth-of-type(21) span:before {
  content: "";
  position: absolute;
  width: 16px;
  height: 12px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/gradeAbadge.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: none;
  top: -7px;
  left: 5px;
  border: none;
}
.base_map .tgl .btn_list_left li:nth-of-type(23) span:before {
  content: "";
  position: absolute;
  width: 16px;
  height: 12px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/gradeBbadge.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: none;
  top: -7px;
  left: 5px;
  border: none;
}

.base_map .tgl .btn_list_right li:nth-of-type(4) span:before,
.base_map .tgl .btn_list_right li:nth-of-type(5) span:before,
.base_map .tgl .btn_list_right li:nth-of-type(7) span:before,
.base_map .tgl .btn_list_right li:nth-of-type(8) span:before,
.base_map .tgl .btn_list_right li:nth-of-type(10) span:before,
.base_map .tgl .btn_list_right li:nth-of-type(11) span:before {
  content: "";
  position: absolute;
  width: 16px;
  height: 12px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/gradeBbadge.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: none;
  top: -7px;
  right: 5px;
  border: none;
}
.base_map .tgl .btn_list_right li:nth-of-type(16) span:before,
.base_map .tgl .btn_list_right li:nth-of-type(18) span:before,
.base_map .tgl .btn_list_right li:nth-of-type(19) span:before {
  content: "";
  position: absolute;
  width: 16px;
  height: 12px;
  background: url(/jp/ja/intltour/hwi/hnl/waikiki/img_sites/gradeCbadge.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: none;
  top: -7px;
  right: 5px;
  border: none;
}

.btn_map > li p.hotelName span{
  background:#b0971a;
}
.btn_map > li p.hotelName::after {
  border-color: #b0971a transparent transparent transparent;
}
.btn_map > li:nth-of-type(n+4) p.hotelName span {
  background:#66471C;
}
.btn_map > li:nth-of-type(n+4) p.hotelName::after {
  border-color: #66471C transparent transparent transparent;
}
.btn_map > li:nth-of-type(n+9) p.hotelName span {
  background:#DC6D1E;
}
.btn_map > li:nth-of-type(n+9) p.hotelName::after {
  border-color: #DC6D1E transparent transparent transparent;
}
.btn_map > li:nth-of-type(n+23) p.hotelName span {
  background:#457AAB;
}
.btn_map > li:nth-of-type(n+23) p.hotelName::after {
  border-color: #457AAB transparent transparent transparent;
}
.btn_map > li:nth-of-type(n+39) p.hotelName span {
  background:#3e9947;
}
.btn_map > li:nth-of-type(n+39) p.hotelName::after {
  border-color: #3e9947 transparent transparent transparent;
}
.btn_map > li:nth-of-type(n+49) p.hotelName span {
  background:#996EA7;
}
.btn_map > li:nth-of-type(n+49) p.hotelName::after {
  border-color: #996EA7 transparent transparent transparent;
}

.num01 p.hotelName {
  position: absolute;
  top: 80px;
  left: 136px;
  width: 325px;
}
.num02 p.hotelName {
  position: absolute;
  top: 97px;
  left: 105px;
  width: 85px;
}
.num03 p.hotelName {
  position: absolute;
  top: 101px;
  left: 38px;
  width: 268px;
}
.num04 p.hotelName {
  position: absolute;
  top: 80px;
  left: 112px;
  width: 260px;
}
.num04 p.hotelName::after {
  left: 60px;
}
.num05 p.hotelName {
  position: absolute;
  top: 80px;
  left: 33px;
  width: 280px;
}
.num09 p.hotelName {
  position: absolute;
  top: 100px;
  left: 89px;
  width: 166px;
}
.num10 p.hotelName {
  position: absolute;
  top: 100px;
  left: 59px;
  width: 226px;
}
.num11 p.hotelName {
  position: absolute;
  top: 74px;
  left: 50px;
  width: 250px;
}
.num13 p.hotelName {
  position: absolute;
  top: 72px;
  left: 23px;
  width: 304px;
}
.num14 p.hotelName {
  position: absolute;
  top: 100px;
  left: 30px;
  width: 284px;
}
.num15 p.hotelName {
  position: absolute;
  top: 93px;
  left: 35px;
  width: 280px;
}
.num16 p.hotelName {
  position: absolute;
  top: 80px;
  left: 44px;
  width: 262px;
}
.num17 p.hotelName {
  position: absolute;
  top: 81px;
  left: 62px;
  width: 222px;
}
.num18 p.hotelName {
  position: absolute;
  top: 80px;
  left: 27px;
  width: 290px;
}
.num22 p.hotelName {
  position: absolute;
  top: 80px;
  left: 52px;
  width: 240px;
}

.num23 p.hotelName {
  position: absolute;
  top: 70px;
  left: 140px;
  width: 180px;
}
p.hotelName.hotel23::after {
  left: 45px;
}

.num24 p.hotelName {
  position: absolute;
  top: 78px;
  left: 30px;
  width: 270px;
}
p.hotelName.hotel24::after {
  left: 45px;
}
p.hotelName.hotel24::after {
  left: 53%;
}
.num27 p.hotelName {
  position: absolute;
  top: 80px;
  left: 85px;
  width: 176px;
}
.num28 p.hotelName {
  position: absolute;
  top: 80px;
  left: 19px;
  width: 306px;
}
.num30 p.hotelName {
  position: absolute;
  top: 36px;
  left: 65px;
  width: 220px;
}
.num32 p.hotelName {
  position: absolute;
  top: 74px;
  left: 24px;
  width: 216px;
}
.num33 p.hotelName {
  position: absolute;
  top: 74px;
  left: 79px;
  width: 192px;
}
.num35 p.hotelName {
  position: absolute;
  top: 73px;
  left: 38px;
  width: 188px;
}
p.hotelName.hotel35::after {
  left: 73%;
}
.num36 p.hotelName {
  position: absolute;
  top: 96px;
  left: 28px;
  width: 288px;
}
.num37 p.hotelName {
  position: absolute;
  top: 98px;
  left: -14px;
  width: 214px;
}
p.hotelName.hotel37::after {
  left: 83%;
}
.num38 p.hotelName {
  position: absolute;
  top: 100px;
  left: 7px;
  width: 330px;
}
.num40 p.hotelName {
  position: absolute;
  top: 80px;
  left: 54px;
  width: 240px;
}
.num43 p.hotelName {
  position: absolute;
  top: 94px;
  left: 100px;
  width: 150px;
}
.num45 p.hotelName {
  position: absolute;
  top: 100px;
  left: -67px;
  width: 480px;
}
.num46 p.hotelName {
  position: absolute;
  top: 100px;
  left: 14px;
  width: 185px;
}
.num47 p.hotelName {
  position: absolute;
  top: 112px;
  left: 62px;
  width: 222px;
}
.num48 p.hotelName {
  position: absolute;
  top: 112px;
  left: -5px;
  width: 216px;
}
p.hotelName.hotel48::after {
  left: 83%;
}

.base_map .tgl ul li .anchor:after{
  width: 12px;
  height: 12px;
  background-position: -53px -53px;
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-image: url(/content/dam/sites/global/Y18/img/icons_utility.svg);
  background-repeat: no-repeat;
  background-size: 100px auto;
}


.base_map .tgl ul li.num020,
.base_map .tgl ul li.num032,
.base_map .tgl ul li.num038,
.base_map .tgl ul li.num041,
.base_map .tgl ul li.num043,
.base_map .tgl ul li.num036{
  min-height:69px;
}
