@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);


/* !--------------------------------------- ユーザーページ -- */
.page_user .aside_user {
  background: #224477;
  border-color: transparent;
}
/* !-- プロフィール -- */
.profile {
  padding: 40px 0;
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
  -webkit-align-items: center; align-items: center;
  position: relative;
}
@media screen and (max-width: 480px){
  .profile {
    padding: 20px 0;
  }
}

/* プロフィール　リンク */
.list_profile_link {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
}
.list_profile_link > li {
  padding: 2px;
}
.list_profile_link [class*="btn_"]{
  text-align: center;
  display: block;
}
@media screen and (max-width: 560px){
  .list_profile_link {
    float: none;
    margin: 10px 0 0;
  }
}

/* プロフィール　フォーム */
.profile form {
  margin: 40px 0 0;
  max-width: 480px;
  width: 100%;
}
.profile .form_ttl {
  padding: .4em 0 0;
  -webkit-align-items: stretch; align-items: stretch;
  -webkit-flex: 0 0 160px; flex: 0 0 160px;
}
.profile .form_ttl:before {
  display: none; /* 任意などの表示をなくす */
}
.profile_img {
  width: 100px;
  height: 100px;
  border-radius: 100px;
  background-size: cover !important;
  position: relative;
}
.profile_img input {
  display: none;
}
.profile_img label {
  cursor: pointer;
  color: #fff;
  font: 600 10px/1em 'noto sans japanese';
  text-align: center;
  display: block;
  width: 100%;
  background: rgba(0,0,0,.5);
  border-radius: 100px;
  padding: 5px;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(50%);
  -ms-transform: translateY(50%);
  transform: translateY(50%);
}
.profile_img label:hover {
  background: #224477;
}
.profile form .btnarea_center {
  padding: 20px 0 0;
}
@media screen and (max-width: 640px){  
  .profile .form_ttl {
    -webkit-flex: 0 0 120px; flex: 0 0 120px;
  } 
}

/* プロフィール_プラン */
.form_cnt > .plan_type {
  color: #fff;
  font: 600 11px/1em 'noto sans japanese';
  padding: 3px 10px;
  display: inline-block;
  background: #247;
  margin: 0 5px 0 0;
}
.form_cnt > .play_type.basic {
  background: #ff3b7b;
}
.form_cnt > .plan_date {
  font: 300 11px/1em 'noto sans japanese';
  display: inline-block;
}

/* !-------------------- 通知期間 -- */
.period .form_cnt {
  max-height: 310px;
  overflow: auto;
}
.period .form_cnt > a {
  display: inline-block;
  margin: 15px 0 5px;
}
.period .form_cnt > a:first-of-type{
  margin-top: 0;
}





/* !-------------------- ダウンロードセンター -- */
.list_downloadcenter .table_wrap{
  margin: 10px 0 0;
}

/* !--------------------------------------- お気に入り -- */
.list_favorite .table_wrap {
  margin: 10px 0 0;
}
.table_favorite .ico {
  position: static;
  color: #ddd;
}
.tab_favorite .select_wrap {
  margin: 0 10px 0 0;
}
.tab_favorite .button_wrap {
  margin: 0 0 0 10px;
}

.modal_adr .form_cnt {
  margin: 0 0 20px;
}

@media screen and (max-width: 640px){
  .list_favorite .list_download > li:nth-of-type(1) {
    -webkit-flex: 0 0 100%; flex: 0 0 100%;
  }
}

/* !--------------------------------------- 自分のホテル -- */
.list_hotel_btn {
  padding: 0 5px 5px;
}
.list_hotel_btn > li {
  padding: 5px;
}
.list_hotel_btn [class*="btn_"] {
  text-align: center;
}

/* 自分のホテル詳細 */
.form_myhotel_search {
  margin: 0 0 20px;
}
.table_hotels_room h4 {
  color: #247;
}
.table_hotels_room h4 .price {
  font: 900 28px/1em 'gotham';
  float: right;
  margin: 0 0 15px;
}
.table_hotels_room th.number {  width: 8%;}
.table_hotels_room th.room {  width: 18%;}
.table_hotels_room th.price {  width: 34%;}
.table_hotels_room th.report {  width: 40%;}
.table_hotels_room.table_normal tbody tr:nth-of-type(odd),
.table_hotels_room.table_normal tbody tr:nth-of-type(even) {
  background: #fff;
}
.table_hotels_room tbody tr td {
  border-top: 1px solid #bbb;
  vertical-align: top;
}
.table_hotels_room td.number {
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
}
.table_hotels_room td.number > span {
  font: 900 24px/1em 'gotham';
  text-align: center;
  display: block;
}
.table_hotels_room td.number .list_btn {
  margin: 30px 0 0;
}
.table_hotels_room td.number .list_btn li {
  text-align: center;
}
.table_hotels_room td.number .list_btn li + li {
  margin: 8px 0 0;
}
@media screen and (max-width: 900px){
  .form_myhotel_search .form_cnt > .input_wrap {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .form_myhotel_search .form_cnt  .input_wrap .input_wrap:nth-of-type(odd) {
    -webkit-flex: 0 0 30%; flex: 0 0 30%;
    max-width: none;
  }
  .form_myhotel_search .form_cnt  .input_wrap .input_wrap:nth-of-type(even) {
    -webkit-flex: 0 0 50%; flex: 0 0 50%;
    max-width: none;
  }
  .form_myhotel_search .form_cnt  .input_wrap .input_wrap:last-of-type{
    -webkit-flex: 0 0 70px; flex: 0 0 70px;
  }
}
@media screen and (max-width: 640px){
  .form_myhotel_search .form_cnt > .input_wrap {
    margin: -5px;
  }
  .form_myhotel_search .form_cnt  .input_wrap .input_wrap {
    display: block;
    padding: 5px;
  }
  .form_myhotel_search .form_cnt  .input_wrap .input_wrap [class*="unit"] {
    margin: 0 0 3px;
  }
  .form_myhotel_search .form_cnt  .input_wrap .input_wrap:last-of-type{
    display: -webkit-flex; display: flex;
    -webkit-align-items: flex-end; align-items: flex-end;
  }
}

/* 価格部分のテーブルのナビゲーション */
.table_hotels_price_nav {
  clear: both;
  width: 100%;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
}
.table_hotels_price_nav a {
  width: 20px;
  height: 20px;
  border-radius: 3px;
  margin: 0 3px;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
  border: 1px solid transparent;
}
.table_hotels_price_nav a:hover {
  border-color: #0e9ea5;
}
.table_hotels_price_nav span {
  font: 500 12px/1em 'gotham';
  margin: 0 16px;
}
/* 価格部分のテーブル */
.table_hotels_price {
  clear: both;
  width: 100%;
}
.table_hotels_price thead th {
  font: 500 11px/1em 'noto sans japanese';
  background: #bbb;
  padding: 5px;
}
.table_hotels_price + .list_btn {
  display: -webkit-flex; display: flex;
  -webkit-justify-content: flex-end; justify-content: flex-end;
}
.table_hotels_price + .list_btn li {
  padding: 3px;
}

/* 同タイプ客室の稼働率 */
.hotels_report {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap; 
}
.hotels_report_text {
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}
.hotels_report_text [class*="list_normal"] {
  margin: 15px 0 0;
}
.hotels_report_text [class*="list_normal"] > li {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.hotels_report_text .list_ttl {
  -webkit-flex: 0 0 70px; flex: 0 0 70px;
}
.hotels_report_text .list_cnt {
  text-align: right;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}
.hotels_report_img {
  -webkit-flex: 0 0 100px; flex: 0 0 100px;
  margin: 0 0 0 20px;
}
/* カレンダー */
.table_hotels_room .list_calendar_normal {
  margin: 15px 0 0;
}

/* 自分のホテルの競合リスト */
.list_myhotel_conflict .color_a { color: #1c6a9c;}
.list_myhotel_conflict .color_b { color: #0f9da5;}
.list_myhotel_conflict .color_c { color: #0f9ea5;}
.list_myhotel_conflict .pagination {
  margin: 20px 0 0;
}

/* !--------------------------------------- プラン設定 -- */
/* !--------------------------------------- プラン設定　ヘッド -- */
/* ヘッド行 */
.planset_hotel_head {
  background: #f5f5f5;
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.planset_hotel_head_ttl {
  -webkit-flex: 0 0 220px; flex: 0 0 220px;
}
.planset_hotel_head_ttl h3 {
  color: #fff;
  font: 600 15px/1em 'noto sans japanese';
  text-align: center;
  width: 100%;
  padding: 10px;
  background: #247;
}
.planset_hotel_head_cnt {
  padding: 0 20px;
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-align-items: center; align-items: center;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}
.planset_hotel_head_cnt .description_up,
.planset_hotel_head_cnt .description_down {
  font: 300 10px/1em 'noto sans japanese';
  padding: 0 0 0 16px;
  position: relative;
}
.planset_hotel_head_cnt .description_up {
  margin-right: 12px;
}
.planset_hotel_head_cnt .description_up:before,
.planset_hotel_head_cnt .description_down:before {
  content: "";
  width: 12px;
  height: 8px;
  background: #ff3b7b;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.planset_hotel_head_cnt .description_down:before {
  background: #4b99f7;
}
.planset_hotel_head_cnt .description_unit {
  font: 300 10px/1em 'noto sans japanese';
  margin-left: auto;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}

@media screen and (max-width: 800px){
  .planset_hotel_head {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .planset_hotel_head_ttl {
    -webkit-flex: 0 0 100%; flex: 0 0 100%;
  }
  .planset_hotel_head_cnt {
    padding: 10px;
  }
}

/* ソートボタン */
.planset_hotel_sort {
  margin: 5px 0 0;
  position: relative;
  z-index: 3;  
}

/* !--------------------------------------- プラン設定 コンテンツ -- */
.list_planset_cnt {
  position: relative;
}
.list_planset_cnt_inner {
  overflow: auto;
  position: relative;
}
.list_planset_cnt_inner_noscroll {
  width: 100px;
  height: 100px;
  background: skyblue;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

/* サイド開閉ボタン */
/*
.btn_planset {
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0;
  left: 200px;
  z-index: 2;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
}
.btn_planset:before{
  content: "\f054";
  font: normal 13px/1em 'fontawesome';
}
*/

/* レイアウト */
.list_planset_min {
  width: 400px;
  padding-right: 40px;
  background: #fff;
  border: 2px solid #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.list_planset_wide {
  padding-left: 400px;
  border: 2px solid transparent;
  width: 5190px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.list_planset_cnt.on .list_planset_min {
  width: 400px;
}
.list_planset_cnt.on  .list_planset_wide {
  padding-left: 400px;
}
.list_planset_min_inner {
  position: relative;
}
.button_shut {
  cursor: pointer;
  background: #ccc;
  padding: 3px;
  height: 56px;
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translateX(150%);
  -ms-transform: translateX(150%);
  transform: translateX(150%);
  z-index: 1;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
}
.button_shut:before {
  content: "\f104";
  color: #fff;
  font: normal 16px/1em 'fontawesome';
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.button_shut.min:before {
  content: "\f105";
}

@media screen and (max-width: 860px){
  .list_planset_min,
  .list_planset_cnt.on .list_planset_min {
    width: 240px;
  }
  .list_planset_wide,
  .list_planset_cnt.on .list_planset_wide {
    padding-left: 240px;
  }
}
@media screen and (max-width: 640px){
  .list_planset_min {
    width: 160px;
  }
  .list_planset_wide {
    padding-left: 160px;
  width: 720px;
  }
}

/* ボタンを押して幅を小さく */
.list_planset_min.min {
  width: 200px;
}
.list_planset_cnt_inner.min .list_planset_wide {
  padding-left: 200px;
}



.list_planset_min .planset_hotel_plan {
  width: 400px;
}

/* 高さを揃える */
.planset_hotel_ttl {
  height: 30px;
  margin: 30px 0 20px;
}
.planset_hotel_bed {
  height: 33px;
  padding: 5px 0 0;
}
.planset_hotel_plan {
  height: 30px;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
}

/* 縦のスクロール */
.planset_hotel_plan_scroll {
  max-height: 260px;
  overflow: scroll;
}
/*

#service2 .planset_hotel_plan_scroll{
	margin: 0 !important;
}
*/

/* ボタンで開閉 */
.js_run_toggle {
  cursor: pointer;
}

/* テキストデザイン */
/* ホテル名 */
.planset_hotel_ttl h4 {
  color: #247;
  font: 700 15px/1.4em 'noto sans japanese';
  position: relative;
}
.planset_hotel_ttl h4:before {
  content: "\f078";
  font: normal 12px/1em 'fontawesome';
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.planset_hotel_bed h5 {
  color: #fff;
  font: 500 12px/1em 'noto sans japanese';
  background: #247; 
  padding: 8px 16px;
  position: relative;
}
.planset_hotel_bed h5:before {
  content: "\f078";
  font: normal 11px/1em 'fontawesome';
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.planset_hotel_bed h5:after {
/*   content: "稼働率:"; */
  color: #000;
  font: 500 11px/1em 'noto sans japanese';
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(115% , -50%);
  -ms-transform: translate(115% , -50%);
  transform: translate(115% , -50%);
}
.planset_hotel_plan p {
  font: 400 11px/1.3 'noto sans japanese';
  padding: 0 0 0 15px;
}

.list_planset_ttl > article {
  -webkit-align-items: center; align-items: center;
}

[class^="plan_group"] h6,
[class*=" plan_group"] h6{
	padding: 5px 25px 5px 10px;
    background: #f5f5f5;
    font-size: 11px;
    letter-spacing: 1px;
    position: relative;
    line-height: 1.3;
}
article.planset_hotel_bed.grid_wrap.capacity {
    pointer-events: none;
}

[class^="plan_group"] h6:before,
[class*=" plan_group"] h6:before{
	content: "\f078";
	color: #ccc;
	font: normal 11px/1em 'fontawesome';
	display: block;
	position: absolute;
	top: 50%; right: 10px;
	transform: translate(0,-50%);
}
[class^="cnt_hotel_"] .planset_hotel_plan_scroll.space,
[class*=" cnt_hotel_"] .planset_hotel_plan_scroll.space{
	margin: 60px 0 0 0 !important;
}
[class^="plan_price_"].planset_hotel_plan.grid_wrap.price,
[class*=" plan_price_"].planset_hotel_plan.grid_wrap.price{
	height: 60px !important;
}

[class^="table_group_"],
[class*=" table_group_"] {
    overflow: hidden;
}
[class*="table_group_"] .planset_hotel_plan_scroll {
	width: 5190px;/* 合わせる */
}


/*
#service2 article.planset_hotel_plan.space{
	margin: 3px 0 0 0;
}
*/
[class^="cnt_hotel_"] .planset_hotel_plan_scroll.space.no_space,
[class*=" cnt_hotel_"] .planset_hotel_plan_scroll.space.no_space{
	margin: 0 !important;
}
.group_type [class^="plan_group"],
.group_type [class*=" plan_group"]{
	margin: 5px 0 0;
}
.group_type [class^="plan_group"] > article, 
.group_type [class*=" plan_group"] > article{
	height: 55px;
	overflow-y: scroll;
}
.group_type.on > div{
	display: block !important;	
}
article.planset_hotel_plan.grid_wrap.price.group_type.on{
	display: flex !important;	
}


/* グリッド */
.grid_wrap {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
  position: relative;
}
.grid {
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
  position: relative;
}

/* カレンダー */
.grid.day {
  cursor: pointer;
  color: #247;
  font: 900 11px/1em 'noto sans japanese';
  text-align: center;
  -webkit-flex: 1 1 0; flex: 1 1 0;
  min-width: 55px;
}
.grid.day span {
  font: 500 10px/1em 'noto sans japanese';
  display: block;
  margin: 8px 0 0;
  position: relative;
}
/*
li.plan_list_scroll {
    overflow-y: scroll;
    height: 480px;
}
*/
/* 祝日 */
[class*="holiday"].grid:before {
  content: attr(data-subtitle);
  color: #fff;
  font: 500 10px/1em 'noto sans japanese';
  text-align: center;
  background: #0e9ea5;
  width: 100%;
  position: absolute;
  padding: 2px;
  bottom: -5px;
  left: 0;
  -webkit-transform: translate3d(0,100%,0);
  transform: translate3d(0,100%,0);
}
[class*="holiday"][class*="2"].grid:before { width: 200%;}
[class*="holiday"][class*="3"].grid:before { width: 300%;}
[class*="holiday"][class*="4"].grid:before { width: 400%;}
[class*="holiday"][class*="5"].grid:before { width: 500%;}
[class*="holiday"][class*="6"].grid:before { width: 600%;}
[class*="holiday"][class*="7"].grid:before { width: 700%;}
[class*="holiday"][class*="8"].grid:before { width: 800%;}
[class*="holiday"][class*="9"].grid:before { width: 900%;}
[class*="holiday"][class*="10"].grid:before { width: 1000%;}
.grid.day span.holiday {
  color: #0e9ea5;
}
.grid.day span.holiday:before {
  content: "";
  width: 17px;
  height: 17px;
  border-radius: 50%;
  border: 2px solid #0e9ea5;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%,-50%,0);
  transform: translate3d(-50%,-50%,0);
}

.modal_plan .modal_cnt > img {
  width: 400px;
  display: block;
  margin: 20px auto;
}
.planset_hotel_cnt {
  padding: 2px 0;
}
.planset_hotel_cnt .list_planset_min p {
  font: 400 11px/1em 'noto sans japanese';
}

/* !-------------------- グリッドのデザイン -- */
/* 稼働率 */
.grid_wrap.capacity .grid {
  cursor: pointer;
  font: 900 15px/1em 'noto sans japanese';
  display: -webkit-flex; display: flex;
  -webkit-align-items: flex-end; align-items: flex-end;
  -webkit-justify-content: center; justify-content: center;
  padding: 0 0 5px;
  min-width: 55px;
  text-align: center;
}
.grid_wrap.capacity .grid span {
  font-size: .7em;
  margin: 0 0 0 3px;
  -webkit-transform: translateY(2px);
  -ms-transform: translateY(2px);
  transform: translateY(2px);
}
/* 金額 */
.grid_wrap.price .grid {
  cursor: pointer;
  color: #fff;
  font: 600 14px/1em 'noto sans japanese';
  padding: 5px 0;
  background: #247;
  border: 1px solid #fff;
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: column; flex-direction: column;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: center; justify-content: center;
  position: relative;
  max-width: 55px;
  min-width: 55px;
  text-align: center;
}
.grid_wrap.price .grid .before_price {
  font-size: 11px;
  font-weight: 300;
  margin: 3px 0 0;
  display: block;
}
.grid_wrap.price .grid a:hover {
  text-decoration: underline;
}
.grid_wrap.price .grid.up {
  background: #ff3b7b;
}
.grid_wrap.price .grid.down {
  cursor: pointer;
  background: #4b99f7;
}

.grid_wrap.price .grid.day{
	background: #3b6b98;
}
.grid_wrap.price .grid.day.up{
	background: #093d6d;
}
.grid_wrap.price .grid.day.down{
	background: #7498b9;
}
/* 価格調整プランを選択 */
.grid_wrap.price .grid.select:before {
  content: "";
  width: 100%;
  height: 100%;
  border: 3px dotted #f7bb41;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-shadow: 0px 1px 1px 0px rgba(0,0,0,.2);
  box-shadow: 0px 1px 1px 0px rgba(0,0,0,.2);
}

/* プラン名 */
.grid_wrap.price .plan_name {
  width: 400px;
  background: skyblue;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 860px){  
  .grid_wrap.price .plan_name {
    width: 240px;
  }
}


/* モーダル 売上情報 */
.modal_sales table {
  width: 100%;
}
.modal_sales table th,
.modal_sales table td {
  padding: 8px;
}
.modal_sales table thead {
  border-bottom: 1px solid #000;
}
.modal_sales table .total {
  border-top: 1px dotted #ccc;
}
.modal_sales table .total td {
  font-weight: 600;
  font-size: 14px;
}


/* モーダル　反映 */
.modal_sync .modal_ttl,
.modal_update .modal_ttl,
.modal_change .modal_ttl,
.modal_sales .modal_ttl {
  text-align: center;
  border-bottom: none;
  padding-top: 40px;
  padding-bottom: 0;
}
.remodal.modal_sync [class*="btnarea"],
.remodal.modal_update [class*="btnarea"],
.remodal.modal_change [class*="btnarea"],
.remodal.modal_sales [class*="btnarea"] {
  margin-top: 20px;
}


/* !--------------------------------------- 全国のホテル -- */
.hotels_search {
  margin: 0 0 20px;
  -webkit-flex: none; flex: none;
}
.hotels_search .input_btn {
  margin: 0 0 0 3px;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
}
@media screen and (max-width: 640px){
  .hotels_search .input_wrap {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .hotels_search .input_wrap .select_wrap {
    width: 50%;
    margin-left: 0;
  }
}

/* Planned hotels */
th.edit {
  width: 60px;
}
td.edit {
  text-align: center;
  vertical-align: middle;
}
td.edit a {
  color: #247;
  display: inline-block;
  padding: 3px;
}
td.edit a:hover {
  color: #0e9ea5;
}
td.edit i {
  font: normal 14px/1em 'fontawesome';
}

/* 民泊ヒートマップタブ */
.heatmap_advance > li {
  padding: 10px;
}

/* プラン設定_プラン詳細設定ページ */
.plan_setting {
  
}
@media screen and (max-width: 1080px){
  .plan_setting .form_cnt > .input_wrap {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .plan_setting .input_wrap > .input_wrap{
    max-width: 50% !important;
    margin-top: 5px;
  }
  .plan_setting .input_wrap > .input_wrap:last-of-type{
    max-width: 100% !important;
  }
  .plan_setting .input_wrap > .input_wrap:last-of-type .button_wrap{
    margin-left: auto;
  }
  .plan_setting .input_wrap > .input_wrap [class*="unit"] {
    -webkit-flex: 0 0 80px; flex: 0 0 80px;
    text-align: right;
  }
}
@media screen and (max-width: 640px){
  .plan_setting .input_wrap > .input_wrap{
    max-width: 100% !important;
  }
}

.list_plangroup {
  margin: 20px 0 0;
}
.list_plangroup > li {
  padding: 10px;
}
.list_plangroup > li > article {
  background: #f9f9f9;
  padding: 20px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 0px 1px 0px rgba(0,0,0,.3) inset;
  box-shadow: 0px 0px 1px 0px rgba(0,0,0,.3) inset;
}
.list_plangroup > li > article > h1 {
  font-size: 19px;
}

.list_plantype {
  margin: 10px -5px -5px;
}
.list_plantype > li {
  padding: 5px;
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}

.list_plantype > li > span,ul.plan_list span{
  cursor: move;
  font: 400 12px/1.2em 'noto sans japanese';
  display: block;
  border-left: 3px solid #247;
  background: #fff;
  padding: 5px 8px;
  -webkit-box-shadow: 0px 1px 1px 1px rgba(0,0,0,.2);
  box-shadow: 0px 1px 1px 1px rgba(0,0,0,.2);
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}
.list_plantype > li > div {
  -webkit-flex: 0 0 70px; flex: 0 0 70px;
  display: -webkit-flex; display: flex;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: flex-end; justify-content: flex-end;
}
.list_plantype > li > div [class*="btn"] + [class*="btn"] {
  margin-left: 4px;
}

/* プラン設定_下部詳細リスト */
.list_plangroup_detail > li {
  padding: 20px;
  background: #fff;
  border: 1px solid #eee;
}
.list_plangroup_detail > li + li {
  margin: 10px 0 0;
}
.list_plangroup_detail h2 {
  font-size: 15px;
}
.list_plangroup_detail .button_wrap [class*="btn"] + [class*="btn"]{
  margin-left: 4px;
}
@media screen and (max-width: 1080px){
  .list_plangroup_detail .form_cnt > .input_wrap {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
}


.list_plangroup_tag {
  min-height: 40px;
  margin: 8px 0 0;
  background: #f9f9f9;
  border-radius: 3px;
  padding: 8px;
  -webkit-box-shadow: 0px 0px 1px 0px rgba(0,0,0,.3) inset;
  box-shadow: 0px 0px 1px 0px rgba(0,0,0,.3) inset;
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
  position: relative;
  z-index: 1;
  -khtml-user-drag: element;
  padding-right: 50px;
}
li.right_btn {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translate(0,-50%);
}
.list_plangroup_tag:before {
  content: "タグをドラッグアンドドロップしてください";
  color: #ccc;
  font: 200 13px/1em 'noto sans japanese';
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50% , -50%);
  -ms-transform: translate(-50% , -50%);
  transform: translate(-50% , -50%);
  z-index: -1;
}
.list_plangroup_tag > li {
  padding: 3px;
}
.list_plangroup_tag span {
  cursor: move;
  font: 400 12px/1.2em 'noto sans japanese';
  display: inline-block;
  border-left: 3px solid #247;
  background: #fff;
  padding: 5px 8px;
  -webkit-box-shadow: 0px 1px 1px 1px rgba(0,0,0,.2);
  box-shadow: 0px 1px 1px 1px rgba(0,0,0,.2);
}

div.add_type {
    background: #ccc;
    display: inline-block;
    height: 25px;
    line-height: 2;
    width: 25px;
    text-align: center;
    border-radius: 50%;
    color: white;
    font-weight: bold;
    margin: 0 0 0 5px;
    cursor: pointer;
    -webkit-box-shadow: 3px 3px 4px rgba(0,0,0,.08);
    	  box-shadow: 3px 3px 4px rgba(0,0,0,.08);
    
}
div.add_type:hover{
	background: rgb(255,59,123);
    background: -moz-linear-gradient(-45deg, rgba(255,59,123,1) 0%, rgba(247,195,60,1) 100%);
    background: -webkit-linear-gradient(-45deg, rgba(255,59,123,1) 0%,rgba(247,195,60,1) 100%);
    background: linear-gradient(135deg, rgba(255,59,123,1) 0%,rgba(247,195,60,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff3b7b', endColorstr='#f7c33c',GradientType=1 );
}

.list_plangroup_tag span + span{
	margin: 0 0 0 6px;
}
li#dropbox{
    min-width: 30%;
    padding: 3px 50px 3px 3px;
}

/* !--------------------------------------- 日本全国のデータ -- */
.page_data [class*="list_main_"] > li > [class*="list_main_"] {
  margin: -5px;
}
.page_data .count {
  font-size: 12px;
  margin: 0 8px 0 0;
  display: inline-block;
}
.page_data .count .number {
  font-size: 14px;
  color: #4b99f7; 
}

/* !--------------------------------------- ホテル詳細ページ -- */
/* メトロエンジンレビュースコア */
.review_score {
  border: 3px solid #247;
  border-radius: 5px;
  padding: 5px 8px;
  width: 200px;
  background: #fff;
}
.review_score .ttl {
  color: #247;
  font: 900 12px/1em 'noto sans japanese';
}
.review_score_count {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-align-items: center; align-items: center;
}
.review_score .count {
  color: #247;
  font: 900 32px/1em 'noto sans japanese';
  letter-spacing: .1em;
}
.review_score .compare {
  color: #ff3b7b;
  font: 900 19px/1em 'noto sans japanese';
  margin: 0 0 0 10px;
}

/* ホテルのタイトル */
.hotels_ttl_wrap {
  margin: 0 0 8px;
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.hotels_ttl_wrap h2 {
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
  position: relative;
}
.hotels_ttl_wrap h2 .ico {
  position: relative;
  font-size: 15px;
  top: 0;
  right: 0;
  padding: 10px;
}
.hotels_ttl_wrap .review_score {
  -webkit-flex: 0 0 200px; flex: 0 0 200px;
}
@media screen and (max-width: 640px){
  .hotels_ttl_wrap {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .hotels_ttl_wrap .review_score {
    margin: 8px 0 0;
  }
}
@media screen and (max-width: 480px){
  .review_score {
    text-align: center;
  }
  .hotels_ttl_wrap .review_score {
    -webkit-flex: 0 0 100%; flex: 0 0 100%;
  }
  .review_score_count {
    justify-content: center;
  }
}

/* ダウンロードリスト */
.list_download {
  margin: 0 -2px 8px;
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-align-items: center; align-items: center;
  -webkit-flex: 0 0 auto; flex: 0 0 auto;/* 高さを保持 */
}


/* サービスフレーム */

ul.list_planset{
	display: none;
}
ul.list_planset.view{
	display: block;
}

.list_download > li {
  padding: 2px;
  display: inline-block;
}

a.btn_small.service_change {
    width: 90px;
    text-align: center;
}

/* ホテル詳細 */
.list_hotel_detail {
  margin: -10px;
}
.list_hotel_detail > li {
  padding: 10px;
}
.list_hotel_info {
  margin: -10px;
  overflow: hidden;
}
.list_hotel_info > li{
  padding: 10px;
  border-top: 1px dotted #eee;
  border-left: 1px dotted #eee;
  -webkit-transform: translate(-1px , -1px);
  -ms-transform: translate(-1px , -1px);
  transform: translate(-1px , -1px);
}

/* !-- アメニティ -- */
.list_hotel_info_detail{
}
.list_hotel_info_detail > li > article {
  font: 500 11px/1.3em 'noto sans japanese';
  padding: 5px;
  margin-top: -1px;
  margin-left: -1px;
}

/* ホテル詳細下部タブ */
.tab_cnt li h4 {
  margin: 20px 0 15px;
  padding-left: 1em;
  border-left: 3px solid #224477;
}
.tab_cnt li:first-of-type h4 {
  margin-top: 0;
}
.tab_cnt h5 {
  margin: 30px 0 15px;
  font: 500 12px/1em 'noto sans japanese';
}
.form_tab {
  margin: 0 0 10px;
}

/* 地域データ */
.area_info {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-align-items: center; align-items: center;
  -webkit-justify-content: space-between; justify-content: space-between;
}
.area_info p {
  position: relative;
  padding-left: 20px;
}
.area_info p:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ffa500;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 640px){
  .area_info p {
    width: 100%;
  }
}

/* 競合施設内訳 */
.list_conflict_info {
  margin: -5px;
}
.list_conflict_info > li {
  padding: 5px;
}
.list_conflict_info .ttl {
  font: 500 13px/1.3em 'noto sans japanese';
  margin: 0 0 10px;
  display: block;
  text-align: center;
}
.list_conflict_info p {
  padding: 20px;
  background: #f5f5f5;
}



/* レートアナライザ */
.rateana {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
}
.rateana_select {
  width: 180px;
  padding: 0 20px 0 0;
}
.rateana_select > ul {
  margin: -3px;
}
.rateana_select > ul > li{
  padding: 3px;
}
/* レートアナライザ　タブ分け */
.rateana_main {
  width: -webkit-calc((100% - 180px));
  width: calc((100% - 180px));
}
.rateana_main .list_calendar_normal .price {
  font-size: 13px;
}
@media screen and (max-width: 860px){
  .rateana_select,
  .rateana_main {
    width: 100%;
  }
  .rateana_select {
    padding: 0 0 30px;
  }
}
@media screen and (max-width: 768px){
  .rateana_main .list_calendar_normal .price {
    font-size: 10px;
  }
}

/* レートアナライザ　カレンダー */
.rateana_main h4 {
  margin: 0 0 10px;
}
.rateana_main .list_calendar_normal {
  margin-bottom: 20px;
}

/* レートアナライザ　設定 */
.list_rateana_setting {
  margin: -15px 0;
}
.list_rateana_setting > li {
  padding: 15px 0;
}
.list_rateana_setting > li > article {
  padding: 20px;
}
.list_rateana_setting > li + li {
  border-top: 1px dotted #bbb;
}
.list_rateana_setting h3 {
  margin: 0 0 15px;
}
.list_rateana_setting [class*="list_main"] {
  margin: -3px;
}
.list_rateana_setting [class*="list_main"] > li {
  padding: 3px;
}

/* レビュー分析　レビューカテゴリ　開閉 */
.button_group:before {
  content: "\f067";
  font: normal 10px/1em 'fontawesome';
  margin: 0 5px 0 0;
  color: #247;
}
.button_group.off:before {
  content: "\f068";
}
.group_parent.off + .group_child,
.group_parent.off + .group_child + .group_child,
.group_parent.off + .group_child + .group_child + .group_child,
.group_parent.off + .group_child + .group_child + .group_child + .group_child,
.group_parent.off + .group_child + .group_child + .group_child + .group_child + .group_child,
.group_parent.off + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child,
.group_parent.off + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child,
.group_parent.off + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child,
.group_parent.off + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child + .group_child{
  display: none;
}
.group_child {
  background: #f5f5f5;
}

/* レビュー分析　レビューカテゴリ　UP DOWN PLUS MINUS */
td.up {
  color: #0e9ea5;
  font-weight: 500;
}
td.up:before {
  content: "\f062";
  font: normal 10px/1em 'fontawesome';
  margin: 0 5px 0 0;
  color: #0e9ea5;
}
td.down {
  color: #ff3b7b;
  font-weight: 500;
}
td.down:before {
  content: "\f063";
  font: normal 10px/1em 'fontawesome';
  margin: 0 5px 0 0;
  color: #ff3b7b;
}
td.plus {
  color: #0e9ea5;
  font-weight: 500;
}
td.plus:before {
  content: "\f067";
  font: normal 10px/1em 'fontawesome';
  margin: 0 5px 0 0;
  color: #0e9ea5;
}
td.minus {
  color: #ff3b7b;
  font-weight: 500;
}
td.minus:before {
  content: "\f068";
  font: normal 10px/1em 'fontawesome';
  margin: 0 5px 0 0;
  color: #ff3b7b;
}


/* レビュー分析　レビューカテゴリ　グラフ */
.table_graph {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-align-items: center; align-items: center;
}
.table_graph .graph {
  display: block;
  width: 200px;
  height: 6px;
  border-radius: 100px;
  background: #4b99f7;
  position: relative;
  overflow: hidden;
}
.table_graph .bar {
  display: block;
  background: #224477;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.table_graph .number {
  display: block;
  width: 40px;
  text-align: right;
}
/* レビュー分析　- レビュー分析 */
.list_review_analysis .tab_wrap4 {
  margin: 30px 0 0;
}
.list_review_analysis .review_score {
  margin: 0 0 20px;
}
/* レビュー分析　- レビュー */
.list_review_star_main {
  margin: 5px 0;
  border-bottom: 1px solid #0e9ea5;
  display: inline-block;
  padding: .5em;
  font-size: 14px;
}
.list_review_star {
  margin: -5px -5px 10px;
}
.list_review_star > li {
  padding: 5px;
  display: -webkit-flex; display: flex;
  -webkit-flex-direction: row; flex-direction: row;
  -webkit-align-items: center; align-items: center;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.list_review_star > li > span {
  color: #777;
  font: 500 10px/1em 'noto sans japanese';
  -webkit-flex: 0 0 60px; flex: 0 0 60px;
}
.list_review_star > li > .list_star {
  margin: 0;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}

/* レビュー分析　- 比較研究 */
.list_review_lab form {
  margin: 20px 0;
}
.list_review_lab .form_cnt + .form_cnt {
  margin: 10px 0 0;
}

/* イベント */
.list_event form {
  margin: 0 0 10px;
}
.list_event .table_wrap {
  margin: 20px 0;
}
.list_event .pagination {
  margin: 0 0 30px;
}
.list_event .list_calendar_normal {
  margin: 10px 0 0;
}

/* 競合一覧 */
.list_conflict > li > .article_cnt {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.list_conflict_select {
  -webkit-flex: 0 0 220px; flex: 0 0 220px;
  margin-right: 20px;
}
.list_conflict_select > form > ul {
  margin: -3px -3px 20px;
}
.list_conflict_select > form > ul > li {
  padding: 3px;
}
.list_conflict_select .list_normal > li {
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.list_conflict_select .list_normal_ttl {
  -webkit-flex: 0 0 100px; flex: 0 0 100px;
}
.list_conflict_select .list_normal_cnt {
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
}
.list_conflict_select [class*="btn_"] {
  margin: 20px 0 0;  
}
@media screen and (max-width: 860px){
  .list_conflict > li > .article_cnt {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .list_conflict_select {
    -webkit-flex: 0 0 100%; flex: 0 0 100%;
    margin: 0 0 40px;
  }
}

/* マップとカレンダー */
.list_conflict_main {
  margin: -5px;
}
.list_conflict_main > li {
  padding: 5px;
}
.list_conflict_main .list_calendar_normal {
  margin: 20px 0;
}
.list_conflict_main .list_calendar_normal .price {
  font-size: 12px;
}

/* 在庫 */
.conflict_stock .list_calendar_normal {
  margin: 20px 0
}
.conflict_stock .list_calendar_normal .price {
  font-size: 12px;
}

/*  共通画像要素 */
.widget_img {
  text-align: center;  
}
.widget_img img {
  width: auto;
}

/*  共通テキスト要素 */
.widget_text {
  background: #eee;
  -webkit-flex: 1 1 auto; flex: 1 1 auto;
  padding: 15px 15px 40px;
  position: relative;
}
.widget_text pre {
  font: 300 12px/1.5em 'noto sans japanese';
  white-space: pre-wrap;
  word-break: break-all;
}
.widget_text button {
  position: absolute;
  bottom: 15px;
  right: 15px;
}

/* !-- ウィジェット　スコア -- */
.list_widget_score {
  margin: -10px;
}
.list_widget_score li {
  padding: 10px;
}
.list_widget_score article{
  display: -webkit-flex; display: flex;
  -webkit-flex-wrap: nowrap; flex-wrap: nowrap;
}
.list_widget_score .widget_img {
  -webkit-flex: 0 0 200px; flex: 0 0 200px;
  margin-right: 30px;
}
@media screen and (max-width: 640px){
  .list_widget_score article {
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
  }
  .list_widget_score .widget_img {
    -webkit-flex: 0 0 100%; flex: 0 0 100%;
  }
}

/* !-- ウィジェット　メタ -- */
.list_widget_meta .widget_img {
  width: 100%;
  margin: 0 0 20px;
}

/* !-- ウィジェット　レビュー -- */
.list_widget_review .widget_img {
  width: 100%;
  margin: 0 0 20px;
}

/* !-- ウィジェット　バッジ -- */
.list_widget_badge .widget_img {
  width: 100%;
  margin: 0 0 20px;
}

/* !-- ウィジェット　ソーシャル -- */

.list_widget_social .widget_img {
  width: 100%;
  margin: 0 0 20px;
}




/* !--------------------------------------- レビュー一覧 -- */
.page_review .list_article_review_wrap {
  max-height: none;
  overflow: auto;
}

/* !--------------------------------------- 競合グループ -- */

/* グループ詳細 */
.list_group_hotels {
  margin: 15px -3px -3px;
}
.list_group_hotels > li {
  padding: 3px;
}
.list_group_hotels > li > article {
  color: #247;
  font: 500 12px/1.3em 'noto sans japanese';
  padding: 8px 10px;
  border: 1px solid #247;
  background: #fff;
  position: relative;
}
.list_group_hotels > li > article a {
  color: #bbb;
  padding: 8px;
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.list_group_hotels > li > article a:hover{
  color: #247;
}

/* !--------------------------------------- Review Analytics -- */
.form_analytics {
  margin: 0 0 8px;
}

/* !--------------------------------------- ワトソンを用いた分析 -- */
/* !--------------------------------------- ベッドの色 -- */
.list_bed table + table {
  margin: 5px 0 0 ;
}
.list_bed thead,
.list_bed tbody,
.list_bed tr {
  display: block;
  width: 100%;
}
.list_bed tbody {
  height: 215px;
  overflow-y: scroll;
}
.list_bed th,
.list_bed td{
  display: inline-block;
  table-layout:fixed;
}
.list_bed .color {
  width: -webkit-calc((100% - 100px));
  width: calc((100% - 100px));
}
.list_bed .count {
  width: 90px;
}
@media screen and (max-width: 768px){
  .list_bed .color {
    width: -webkit-calc((100% - 80px));
    width: calc((100% - 80px));
  }
  .list_bed .count {
    width: 64px;
  }
}












