@charset "utf-8";

.row-0{ margin-left:0px;  margin-right:0px}
.row-0 >div{ padding-right:0px;  padding-left:0px}
.row-10{ margin-left:-5px;  margin-right:-5px}
.row-10 >div{ padding-right:5px;  padding-left:5px}
.row-20{ margin-left:-10px;  margin-right:-10px}
.row-20 >div{ padding-right:10px;  padding-left:10px}
.row-30{ margin-left:-15px;  margin-right:-15px}
.row-30 >div{ padding-right:15px;  padding-left:15px}
.row-40{ margin-left:-20px;  margin-right:-20px}
.row-40 >div{ padding-right:20px;  padding-left:20px}
.row-50{ margin-left:-25px;  margin-right:-25px}
.row-50 >div{ padding-right:25px;  padding-left:25px}

.clear:after{content: ".";display:block;height:0;font-size:0;clear: both;visibility:hidden;}
.clear {display: inline-block;} 
* html .clear {height: 1%;}
.clear {display:block;}

.font-size120{
	font-size: 120%;
}
.font-red{
	color: #f53d7e;
}


.badge-timesale{
    background: #f7a414;
    padding: 4px 4px;
    font-weight: normal;
    line-height: 1;
    color: #fff;
    border-radius: 4px;
    font-size: 11px;
    margin-right: 6px;
    display: inline-block;
    border: 1px solid #fff;
    position: relative;
    top: -3px;
}

.header-contents{
	margin-bottom: 24px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 767px) {
.header-contents{
	margin-bottom: 6px;
}
}


.hero{
	width: 100%;
	height: auto;
	max-height: 164px;
	background: url(/tour/campaign/tdr/img/2019/bg-main.jpg) repeat-x top center;
	background-size: auto 100%;
	overflow: hidden;
	text-align: center;
}
.hero h1,
.hero .title-hero{
	text-align: center;
}
.hero h1 img,
.hero .title-hero img{
	margin:0 auto;
}
.hero div.title-hero img{
	zoom:0.6;
}
@media screen and (max-width: 767px) {
.hero .container{
	padding: 0;
}
.hero div.title-hero img{
	zoom:0.4;
}
}


.localnavbar{
	background: #896A98;
	margin-bottom: 24px;
}


.localnavbar a{
	display: block;
	text-align: center;
	color: #fff;
	background: #714b86;
	padding: 20px 5px;
	font-size: 14px;
	letter-spacing: .1em;
}




.localnavbar.hotel-link a{
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}


.localnavbar.hotel-link a::after{
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 14px;
    font-size: 14px;;	
}

.localnavbar.hotel-link a .txt-setplan{
	display: block;
	font-size:13px;
	 position: relative;
  padding: 0 3px;
	vertical-align: top;;
	margin: 0 auto;
	font-weight: normal;
}
.localnavbar.hotel-link a .txt-setplan::before, .localnavbar.hotel-link a .txt-setplan::after {
  position: absolute;
  bottom: 2px;
  height: 1.2em;
  content: '';
}
.localnavbar.hotel-link a .txt-setplan::before {
  border-left: solid 2px;
  left: -5px;
  transform: rotate(-30deg);
  border-radius: 60px;
}
.localnavbar.hotel-link a .txt-setplan::after {
  border-right: solid 2px;
  right: -5px;
  transform: rotate(30deg);
  border-radius: 60px;
}






/*.localnavbar a:before {
	content: "";
    display: inline-block;
    width: 10px;
    height: 14px;
    margin-right: 5px;
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/arrow-down-purple.png) center 5px / contain no-repeat;
}*/
.localnavbar .col-white a{
	border-right: 1px solid #fff;
	height: 100%;
	width: 100%;
	font-weight: bold;
}


@media screen and (max-width: 992px) {
	
.localnavbar a{
	padding: 15px 2px 20px;
}
	
.localnavbar.hotel-link a::after{
    right: 50%;
	bottom: 5px;
    font-size: 14px;
}	


.localnavbar.hotel-link a .txt-setplan::before {
  left: 5px;

}
.localnavbar.hotel-link a .txt-setplan::after {
  right: 5px;

}

	
}



@media screen and (max-width: 767px) {
.localnavbar .container{
	padding: 0;
}

.localnavbar a:before {
    margin-right: 0;
 	position: absolute;
	top: 50%;
	left: 5px;
	transform: translate(0, -50%);
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/arrow-down-purple.png) center 5px / contain no-repeat;
}
}

.about{
	position: relative;
    background: #fdfdf7;
    padding: 24px 24px;
    margin-bottom: 36px;
    overflow: hidden;
}
.about .container{
	z-index: 2;
	position: relative;
}
.title-about{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 12px;
	color: #663d3e;
	line-height: 1.6;
}
.about-lead{
	text-align: center;
	font-size: 13px;
	line-height: 1.6;
}
.about:before {
	content: "";
	display: block;
	position: absolute;
    left: 0;
    bottom: -20px;
    width: 250px;
    height: 294px;
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/bg-rainbow-left.png) bottom left / contain no-repeat;
}
.about:after {
	content: "";
	display: block;
	position: absolute;
    right: 0;
    top: -80px;
    width: 250px;
    height: 294px;
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/bg-rainbow-right.png) bottom right / contain no-repeat;
}

.nav-hotelcategory{
	margin:0 auto;
	padding: 0;
	display: flex;
    justify-content: center;
	width:100%;
	position: relative;
	z-index: 1;
}
.nav-hotelcategory li{
	display: table-cell;
	width:20%;
	list-style: none;
	margin:0;
	text-align: center;
	vertical-align: middle;
	padding: 0 2.5px;
}
.nav-hotelcategory li a{
	display: flex;
	padding: 8px 10px 8px 12px;
	position: relative;
	background:#fff;
	border:solid 2px #663d3e;
	border-radius: 4px;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	align-items: center;
	justify-content: center;
}
.nav-hotelcategory li a.link-disney{color: #af37db;}
.nav-hotelcategory li a.link-official{color: #37b1db;}
.nav-hotelcategory li a.link-partner{color: #2ed08f;}
.nav-hotelcategory li a.link-neighbor{color: #eeb414;}
.nav-hotelcategory li a.link-other{color: #f15b9a;}

.nav-hotelcategory li a:hover{
	text-decoration: none;
	opacity: 0.5;
}
.nav-hotelcategory li a.link-official::before,.nav-hotelcategory li a.link-other::before{
	position: absolute;
	background:#f5ce66 ;
	color: #fff;
	content: "おすすめ";
	font-size: 10px;
	padding: 1px 3px;
	top: -10px;
	left: 3px;
	
}


.nav-hotelcategory li a:after{
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	position: absolute;
	top: 50%;
	right: 5px;
	transform: translate(0, -50%);
}
.nav-hotelcategory li a.link-active.link-disney{
	background:#af37db;
	color: #fff;
	border-color:#af37db;
}
.nav-hotelcategory li a.link-active.link-official{
	background:#37b1db;
	color: #fff;
	border-color:#37b1db;
}
.nav-hotelcategory li a.link-active.link-partner{
	background: #2ed08f;
	color: #fff;
	border-color:#2ed08f;
}
.nav-hotelcategory li a.link-active.link-other{
	background:#f15b9a;
	color: #fff;
	border-color:#f15b9a;
}





.nav-hotelcategory li a small{
	display: block;
}


.wrap-hotelcategoryfeature{
	width: 80%;
	margin:24px auto;
	background: #fff;
	padding: 12px;
	border-radius: 4px;
    box-shadow: 0px 0px 6px #E7E7E7;
}
.tbl-feature{
	border-bottom: 1px solid #d9d9d9;
	border-left: 1px solid #d9d9d9;
	margin-bottom: 6px;
	background: #fff;
	width: 100%;
}
.tbl-feature th,.tbl-feature td{
	border-top: 1px solid #d9d9d9;
	border-right: 1px solid #d9d9d9;
	padding: 5px;
	vertical-align: middle;
	text-align: center;
	width:20%;
	font-size: 11px;
}
.tbl-feature thead th{
	background: #fafafa;
}
.tbl-feature thead th small{
	display: block;
}
.tbl-feature tbody th{
	background: #3766db;
	color: #fff;
	text-align: left;
}
.tbl-feature thead th.hotelcategory-disney a{color: #af37db;}
.tbl-feature thead th.hotelcategory-official a{color: #37b1db;}
.tbl-feature thead th.hotelcategory-partner a{color: #2ed08f;}
.tbl-feature thead th.hotelcategory-neighbor a{color: #eeb414;}
.tbl-feature td .icon-maru:before{
	content: "〇";
	font-family: "Century Gothic" !important;
	font-weight: bold;
	font-size: 22px;
	color: red;
}
.tbl-feature td .icon-no:before{
	content: "×";
	font-family: "Century Gothic" !important;
	font-weight: bold;
	font-size: 14px;
	color: #666;
}
.tbl-feature td .icon-sankaku:before{
	content: "△";
	font-family: "Century Gothic" !important;
	font-weight: bold;
	font-size: 20px;
}

@media screen and (max-width: 767px) {
.about{
    padding: 4px 12px;
    margin-bottom: 12px;
}
.about .container{
	padding: 0;
}
.title-about{
	font-size: 13px;
	margin-bottom: 0;
	line-height: 1.4;
}
.about-lead{
	text-align: left;
}

.nav-hotelcategory{
	margin:0 0 0 0;
	padding: 0;
	display: block;
	width:100%;
}
.nav-hotelcategory li{
	float: left;
	display:block;
	width:50%;
	margin:10px 0 0;
}
.nav-hotelcategory li a:after{
	font-size: 10px;
}
.wrap-hotelcategoryfeature{overflow: auto;width: 100%;box-shadow: 0px 0px 6px #E7E7E7;border-radius: 4px;}
.wrap-hotelcategoryfeature-inner{width: 500px;box-shadow: none;}
.tbl-feature th,.tbl-feature td{
	font-size: 11px;
}
}
@media screen and (max-width: 320px) {
.nav-hotelcategory li{
	float: none;
	width:100%;
	margin:0;
}
.nav-hotelcategory li + li{
	margin-top: 5px;
}
}


.wrap-map{
	text-align: center;
	padding: 24px;
	position: relative;
	z-index: 1;
	border: 2px solid #bab453;
	background: #fff;
	width:100%;
	max-width: 800px;
	margin:24px auto 0;
}
.title-map{
	font-weight: bold;
	margin-bottom: 24px;
	color: #663d3e;
}
.g-map {
position: relative;
padding-bottom: 350px;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.g-map iframe,
.g-map object,
.g-map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.icon-map{
	margin:0;
	background: #fafafa;
	padding:12px 12px;
}
.icon-map li{
	padding-left: 24px;
	position: relative;
	text-align: left;
	font-size: 13px;
	width: 50%;
	float: left;
}
.icon-map li:before{
	content: "●";
	display: block;
	position: absolute;
	top:0;
	left: 0;
}
.icon-map li.icon-map-01:before{color: #af37db;}
.icon-map li.icon-map-02:before{color: #37b1db;}
.icon-map li.icon-map-03:before{color: #2ed08f;}
.icon-map li.icon-map-04:before{color: #eeb414;}
.icon-map li.icon-map-05:before{color: #f15b9a;}
.icon-map li.icon-map-06:before{color: #0288d1;}
@media screen and (max-width: 767px) {
.wrap-map{
	padding: 12px;
	width:98%;
	max-width: 100%;
	margin:12px auto 12px;
}
.title-map{
	margin-bottom: 12px;
	font-size: 14px;
}
.icon-map li{
	padding-left: 24px;
	position: relative;
	text-align: left;
	font-size: 13px;
	width: 100%;
	float: none;
}
}


.title-category-name{
	font-size: 20px;
	line-height: 1.6;
	font-weight: bold;
	border-bottom:4px solid #3766db;
	color: #3766db;
	margin-bottom: 0;
	padding: 0 6px 12px 6px;
}

.list-hotel{
	background: #fdfdf7;
	overflow: visible;
	box-shadow: 0px 0px 6px #E7E7E7;
}
.list-hotel + .list-hotel{
	margin-top: 24px;
}
.list-hotel-nextbtn{
	text-align: right;
}
.list-hotel-nextbtn a{
	display: inline-block;
	padding: 12px 18px 12px 12px;
	position: relative;
	background:#3766db;
	border-radius: 4px;
	color: #fff;
	font-size: 13px;
}
.list-hotel-nextbtn a.link-disney{background: #af37db;}
.list-hotel-nextbtn a.link-official{background: #37b1db;}
.list-hotel-nextbtn a.link-partner{background: #2ed08f;}
.list-hotel-nextbtn a.link-neighbor{background: #eeb414;}
.list-hotel-nextbtn a.link-other{background: #f15b9a;}
.list-hotel-nextbtn a:hover{
	text-decoration: none;
	opacity: 0.5;
}
.list-hotel-nextbtn a:after{
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	position: absolute;
	top: 50%;
	right: 5px;
	transform: translate(0, -50%);
}
.list-hotel + .list-hotel-nextbtn{
	margin-top: 12px;
	margin-bottom: 24px;
}
.lead-hotelcategory{
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 24px;
}
.list-hotel-inner{
	padding: 24px;
}
.position-time{
	background: #f53d7e;
	border-radius: 100px;
	color: #fff;
	position: absolute;
	top: -5px;
	left: 0;
	display: flex;
	width: 45px;
	height: 45px;
	align-items: center;
	justify-content: center;
	line-height: 1;
}
.position-room{
	background: #f53d7e;
	border-radius:4px 4px 0 0;
	color: #fff;
	display: block;
	width: 100%;
	padding: 8px 3px;
	line-height: 1.1;
	text-align: center;
	font-size: 80%;
}
.position-room-02{
	background: #26bd80;
	border-radius:4px 4px 0 0;
	color: #fff;
	display: block;
	width: 100%;
	padding: 8px 3px;
	line-height: 1.1;
	text-align: center;
	font-size: 80%;
}
.title-list-name{
	font-size: 18px;
	line-height: 1.6;
	background: #567fe5;
	color: #fff;
	margin-bottom: 0;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}
.wrap-list-hotel .list-hotel:nth-child(even) .title-list-name{
	background: #3766db;
}
.wrap-list-hotel{
	padding: 24px 0 24px 24px;
	width:98%;
	margin-left: auto;
	margin-right: 0;
}
.wrap-disney{
	border-left: 2px dotted #3766db;
}
.title-list-name a{
	display: block;
	font-weight: normal;
	padding: 10px 14px;
	color: #fff;
	text-decoration: none;
}
.label-disney{
	background: #af37db;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
}
.label-official{
	background: #37b1db;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
}
.label-partner{
	background: #2ed08f;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
}
.label-neighbor{
	background: #eeb414;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
}
.label-other{
	background: #f15b9a;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
}
.label-plan-hotel{
	background: #3766db;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	margin-top: 6px;
	margin-bottom: 6px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
	color: #fff;
}
.label-plan-busset{
	background: #3766db;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	margin-top: 6px;
	margin-bottom: 6px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
	color: #fff;
}
.label-plan-pass{
	background: #d2dfff;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	margin-top: 6px;
	margin-bottom: 6px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
	color: #3766db;
}
.label-plan-goto{
	background: #ec3e86;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	margin-right: 12px;
	margin-top: 6px;
	margin-bottom: 6px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
	color: #fff;
}
.label-plan-benefits{
	background: #fafafa;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 12px;
	margin-right: 6px;
	margin-top: 3px;
	margin-bottom: 3px;
	border:1px solid #fff;
	position: relative;
	top: -2px;
	color: #333;
}
.icon-hotelcategory .label-on-partner,
.icon-hotelcategory .label-on-neighbor{
	display: none;
}
.icon-hotelcategory.label-on-partner .label-on-partner{
	display: inline-block;
}
.icon-hotelcategory.label-on-neighbor .label-on-neighbor{
	display: inline-block;
}
.label-on-official .label-plan-benefits.label-off-official{
	display: none;
}
.label-on-partner .label-plan-benefits.label-off-partner{
	display: none;
}
.label-on-neighbor .label-plan-benefits.label-off-neighbor{
	display: none;
}
.text-overview{
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 12px;
}
.btn-detail{
	text-align: center;
}
.btn-detail a{
    display: inline-block;
    padding: 15px 15px;
    border: 1px solid #f53d7e;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.4;
    color: #f53d7e;
    background:#fff;
    border-radius: 4px;
    width: 100%;
    max-width: 400px;
    text-align: center;
    position: relative;
}
.btn-detail a:after{
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0, -50%);
}
.btn-detail a:hover{
	text-decoration: none;
	background: #f53d7e;
	color: #fff;
}
.link-roomselect{
	background: none;
	padding: 0;
	margin: 0;
	cursor: pointer;
}
.link-roomselect:hover{
	text-decoration: underline;
}

.tbl-hotelspec{
	border-top: 1px solid #e7e7e7;
	border-right: 1px solid #e7e7e7;
	width:100%;
}
.tbl-hotelspec th,.tbl-hotelspec td{
	border-bottom: 1px solid #e7e7e7;
	border-left: 1px solid #e7e7e7;
    padding: 10px;
    font-size: 12px;
}
.tbl-hotelspec th{
	width:35%;
    background: #fcf2f5;
    text-align: center;
    font-weight: normal;
}
.tbl-hotelspec td{
	width:65%;
    background: #fff;
}
.td-map a{
	color: #f8689b;
	text-decoration: underline;
}
.td-map a:hover{
	text-decoration: none;
}
.row-specicon div{padding-top:5px;}
@media screen and (max-width: 767px) {
.title-category-name{
	font-size: 18px;
	padding: 0 6px 6px 6px;
}
.list-hotel + .list-hotel{
	margin-top: 12px;
}
.lead-hotelcategory{
	font-size: 13px;
	margin-bottom: 12px;
}
.list-hotel-inner{
	padding: 12px;
}
.title-list-name{
	position: sticky;
	position: -webkit-sticky;
	top: 0;
	z-index: 1;
}
.title-list-name a{
	font-size: 14px;
	position: relative;
}
/*.title-list-name a:before{
	content: "";
	position: absolute;
	top: 50%;
	left:-17px;
	transform: translate(0, -50%);
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 100px;
	background:#3766db;
}*/
.wrap-list-hotel{
  counter-reset: number 0;
}
.wrap-list-hotel .list-hotel .title-list-name a:before {
	counter-increment: number 1;
	content: counter(number , decimal-leading-zero) " ";
	position: absolute;
	top: 50%;
	left:-22px;
	transform: translate(0, -50%);
	display: block;
	padding: 1.5px 4px;
	text-align: center;
	background:#3766db;
	color: #fff;
	font-size: 10px;
	border-radius: 100px;
}
.wrap-list-hotel{
	padding: 12px 0 12px 12px;
	width:100%;
}
.wrap-disney{
	border-left: 1px dotted #3766db;
}
.text-overview{
	font-size: 13px;
}

.tbl-hotelspec{
	margin-bottom: 12px;
}
.tbl-hotelspec th{
	display: block;
	width:100%;
	padding: 6px;
}
.tbl-hotelspec td{
	display: block;
	width:100%;
	padding: 6px 8px;
}
}



#hoteldetails{
	overflow: visible;
	margin-bottom: 72px;
}
#hoteldetails #hotelname{
	padding: 0;
	background: #3766db;
	color: #fff;
	text-align: center;
}
#Disney #hoteldetails #hotelname{
	background: #af37db;
}
#Official #hoteldetails #hotelname{
	background: #37b1db;
}
#Partner #hoteldetails #hotelname{
	background: #2ed08f;
}
#Neighbor #hoteldetails #hotelname{
	background: #eeb414;
}
#Other #hoteldetails #hotelname{
	background: #f15b9a;
}
.title-main-name{
	font-size: 16px;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: 0.1em;
    margin-bottom: 0;
    line-height: 1.6;
	padding: 10px 0;
}
.title-main-name small{
	margin-right: 6px;
}
#hotelname .title-main-name{
	font-size: 22px;
}
#hotelname .title-main-name small{
	display: block;
	margin-right: 0;
}

#hotelimage{
	position: relative;
    background: #fdfdf7;
    padding: 15px 24px 36px 24px;
    margin-bottom: 0;
    overflow: hidden;
}
#hotelimage .container{
	max-width: 960px;
}
#hotelimage .header-contents{
	margin-bottom: 24px;
}
.title-hotelimage{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 24px;
	color: #663d3e;
	line-height: 1.6;
}
.hotelimage-lead{
	text-align: center;
	font-size: 13px;
	line-height: 1.6;
	margin-bottom: 0;
}
#hotelimage:before {
	content: "";
	display: block;
	position: absolute;
    left: 0;
    bottom: -80px;
    width: 250px;
    height: 294px;
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/bg-rainbow-left.png) bottom left / contain no-repeat;
}
#hotelimage:after {
	content: "";
	display: block;
	position: absolute;
    right: 0;
    bottom: 200px;
    width: 250px;
    height: 294px;
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/bg-rainbow-right.png) bottom right / contain no-repeat;
}
.wrap-mainimg{
	position: relative;
	z-index: 1;
	margin-bottom: 48px;
}
/*.wrap-mainimg img{
	width:100%;
}*/
.wrap-pickupprice{
	width: 100%;
}


@media screen and (max-width: 767px) {
#hotelname .title-main-name{
	font-size: 18px;
}
#hotelname .title-main-name small{
	font-size: 12px;
}
#hotelimage .container{
	width:100%;
	padding: 0;
}
#hotelimage .header-contents{
	padding: 0 12px;
	margin-bottom: 12px;
}
#hotelimage{
    padding: 2px 0px 24px 0;
    margin-bottom: 0;
}
.title-hotelimage{
	font-size: 16px;
	margin-bottom: 12px;
}
.hotelimage-lead{
	text-align: left;
	font-size: 14px;
}
#hotelimage:before {
	display: none;
}
#hotelimage:after {
	display: none;
}
.wrap-pickupprice{
	padding: 0 15px;
}
.list-hotel-inner .wrap-pickupprice{
	padding: 0;
}
	.wrap-pickupprice small{
		font-size:70%;
	}
}

.card-price{
	box-shadow: 0px 0px 6px #E7E7E7;
	background: #fff;
	border-radius: 4px;
    padding: 30px;
    position: relative;
    z-index: 1;
}
.obi-timesale{
	background:#f7a414;
	color: #fff;
	padding: 18px 6px;
	border-radius: 4px 4px 0 0;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	z-index: 1;
}
.obi-timesale .text-timesale{
	background:#fff;
	color: red;
	border-radius: 100px;
	display: inline-block;
	padding: 6px 12px;
	margin-left: 24px;
	font-size: 14px;
	font-weight: normal;
}
#hotelplan .obi-timesale{
	background:#fff;
	color: red;
	padding: 12px 6px;
	border-radius: 4px;
	text-align: left;
	font-size: 14px;
	font-weight: normal;
	border:1px solid #f7a414;
	width: 80%;
	margin:24px auto;
}
/*.obi-timesale span{
	background:none;
	color: red;
	border-radius: 0;
	display: inline;
	padding: 0;
	margin-left: 12px;
	font-size: 14px;
	font-weight: normal;
}*/
.tbl-pricehikaku{
	border-top: 1px solid #e7e7e7;
	border-right: 1px solid #e7e7e7;
	width:100%;
	margin-bottom: 0;
	background: #fff;
	position: relative;
}
.tbl-pricehikaku th,.tbl-pricehikaku td{
	border-bottom: 1px solid #e7e7e7;
	border-left: 1px solid #e7e7e7;
    width:50%;
    text-align: center;
}
.tbl-pricehikaku th{
    background: #DFE1FC;
    color: #896A98;
    padding: 10px;
    font-size: 18px;
}

.text-planhosoku{
	display: block;
	line-height: 1.4;
	font-size: 13px;
	margin-top: 12px;
	color:#333;
}
.tbl-pricehikaku td{
    background: #fff;
}
.list-ticketspec li{
	float: left;
	padding: 3px 3px;
	display: inline-block;
}
.list-ticketspec li span{
	background: #3766db;
	padding: 3px 8px;
	display: inline-block;
	border-radius: 4px;
	font-size: 13px;
	border: 1px solid #fff;
	position: relative;
	top: -2px;
	color: #fff;
}
.list-ticketspec li span.label-sea{
	background: #3765db;
}
.list-ticketspec li span.label-land{
	background: #af37db;
}
.list-ticketspec li span.label-two{
	background: #db3771;
}
.list-ticketspec li span.label-toujitsu{
	background: #9f7615;
}
.list-ticketspec li span.label-yokujitsu{
	background: #2c8c33;
}
.list-ticketspec li span.label-twopark{
	background: #07c;
}



.list-ticketspec li span.label-timesale{
	background: #f7a414;
}
#hotelplan .tbl-pricehikaku,
.modal-body .tbl-pricehikaku{border: none;background: none;}
#hotelplan .tbl-pricehikaku th,
.modal-body .tbl-pricehikaku th{
    width:100%;
    padding:0;
    font-size: 18px;
    background: none;
    border: none;
    text-align: left;
    position: relative;
    display: block;
}
#hotelplan .acc-box .tbl-pricehikaku th:before{
	content: "GOTO対象";
	background: #ec3e86;
    padding: 4px 4px;
    font-weight: normal;
    line-height: 1;
	color: #fff;
	border-radius: 4px;
    font-size: 11px;
	margin-right: 6px;
	display: inline-block;
    border: 1px solid #fff;
    position: relative;
    top: -3px;
}
#hotelplan .tbl-pricehikaku td,
.modal-body .tbl-pricehikaku td{
	width:100%;
	text-align: right;
	padding: 0;
	border: none;
	background: none;
	display: block;
}
#hotelplan .tbl-pricehikaku td .box-wrap-block,
.modal-body .tbl-pricehikaku td .box-wrap-block{
	padding: 0;
}




.btn-planselect{
	display: block;
	width: 100%;
	height: 100%;
	padding: 10px;
}
.btn-planselect:hover{
	text-decoration: none;
	background:#fcf2f5;
}
.plan-icon{
	font-size: 14px;
	margin-bottom: 3px;
	color: #714b86;
}
.plan-icon i{
	margin:0 6px;
}
.btn-plan{
	display: inline-block;
    padding: 8px 15px;
    border: 1px solid #f53d7e;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.4;
    color: #f53d7e;
    background:#fff;
    border-radius: 4px;
    position: relative;
    top: -7px;
    margin-left: 10px;
}
.hikaku-price{
	display: inline-block;
	text-align: center;
}
.hikaku-price .num {
    font-family: 'Oswald', sans-serif;
    font-size: 180%;
    font-weight: bold;
    color: #F14482;
}
.hikaku-price .num:after {
    content: "円～";
    font-size: 14px;
}
.hikaku-price .normal .num {
    font-size: 20px;
    color: #666;
}
.price{
    font-size: 18px;
    font-weight: bold;
    color: #f53d7e;
}
.card-header .price .goto-line,.card-header .price .normal-line {
	display: inline-block;
}
.card-header .price .goto-line{
	display: block !important;
}
.price .goto-line .num{
    font-size: 22px;
    color: #f53d7e;
}
.price .normal-line .num{
    font-size: 18px;
    color: #666;
    font-weight: normal;
}
.price .num:after {
    content: "円～";
    font-size: 14px;
}
.card-header .price .num:after {
    content: "～";
    margin-right: 3px;
}
.card-body .price .num:after {
    content: "～";
    margin-right: 3px;
}
.price .num.max:after {
    content: "円";
}
@media screen and (max-width: 767px) {
.card-price{
    padding: 15px;
}
.obi-timesale{
	padding: 12px 12px;
	font-size: 16px;
}
.obi-timesale .text-timesale{
	display: block;
	padding: 3px 3px;
	margin-left:0;
	margin-top: 3px;
}
#hotelplan .obi-timesale{
	width: 96%;
}
.tbl-pricehikaku th{
    font-size: 13px;
    padding: 3px;
}
#hotelplan .tbl-pricehikaku th,
.modal-body .tbl-pricehikaku th{
    width:100%;
    display: block;
    padding: 0;
    font-size: 14px;
}
#hotelplan .tbl-pricehikaku td,
.modal-body .tbl-pricehikaku td{
    width:100%;
    display: block;
    padding: 6px 0 0 0;
}
#hotelplan .tbl-pricehikaku td .box-wrap-block,
.modal-body .tbl-pricehikaku td .box-wrap-block{
	padding: 0;
}
.plan-icon{
	font-size: 13px;
}
.hikaku-price{
	display:block;
}
.btn-plan{
    margin-top: 12px;
    top: auto;
    margin-left: 0;
    font-size: 12px;
}
.hikaku-price .num {
    font-size: 18px;
}
.hikaku-price .normal .num {
    font-size: 13px;
}
.price .goto-line{
	display: block !important;
}
.price .goto-line .num{
    font-size: 18px;
}
.price .normal-line{
	line-height: 1;
}
.price .normal .num{
    font-size: 14px;
}
.card-header .price .goto-line{
	margin-right: 0px;
}
}




.layout-hotel-01 + .layout-hotel-01{
	margin-top: 48px;
}
.title-hotelspeck{
	padding-top: 30px;
	font-size: 26px;
	letter-spacing: .1em;
	position: relative;
    padding-bottom: 18px;
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/title02-bottom-decor.png) bottom center / 122px 8px no-repeat;
    color: #896A98;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
}
.hotel-frame{
	position: relative;
	margin: 35px 0 0;
	padding: 40px 40px 40px;
	background: #faf2dc url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/bg-grad-brown.png) repeat-x top left;
}
/*.hotel-frame:after{
    position: absolute;
    left: 0;
    width: 100%;
    height: 10px;
    background: url(/tour/campaign/tdr/hotel/img/bg-texture-craft.png) repeat-x;
    background-size: 30%;
    content: "";
    z-index: 1;
}*/

.txt-hotel-setplan{
    color: #896A98;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}


.title-frame-name{
	text-align: center;
	width:100%;
	position: absolute;
	top:-20px;
	left: 0;
}
.title-frame-name span{
	display: inline-block;
    font-size: 18px;
	padding: 5px 15px;
	color: #fff;
	border-radius: 100px;
	background: #714b86;
}
.hotel-frame-inner{
	padding: 24px;
	background:#fff;
	box-shadow: 0px 0px 6px #E7E7E7;
}
.pickup-setsubi{
	margin-top: 30px;
}
.title-hotelspeckpickup{
	margin: 0 0 15px 0;
    color: #714b86;
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}
.ico-dia{
	position: relative;
    padding: 0 27px;
}
.ico-dia:before {
    position: absolute;
    top: 2px;
    width: 12px;
    height: 16px;
    background: url(/tour/campaign/tdr/hotel/img/ico-dia.png) center / contain no-repeat;
    content: "";
    left: 0;
}
.ico-dia:after {
    position: absolute;
    top: 2px;
    right: 0;
    width: 12px;
    height: 16px;
    background: url(/tour/campaign/tdr/hotel/img/ico-dia.png) center / contain no-repeat;
    content: "";
}
.row-setsubi + .row-setsubi{
	margin-top:12px;
	padding-top: 12px;
	border-top: 1px dotted #ccc;
}
.dl-setsubi{
	color: #666;
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 0;
}
.dl-setsubi dt{
	margin-bottom: 3px;
}
.dl-setsubi dd{
	margin-bottom: 0;
}


.tbl-pickupprice02 i{
	font-size: 0.9em;
}
.tbl-pickupprice02 th{
	font-size: 16px;
}
.tbl-pickupprice02 td{
	padding:5px 0;
}

@media screen and (max-width: 992px) {
.wrap-hotelcategoryfeature{
	width: 96%;
}
.tbl-pickupprice02 th{
		font-size:13px;
	}
}

@media screen and (max-width: 767px) {
.layout-hotel-01 + .layout-hotel-01{
	margin-top: 24px;
}
.title-hotelspeck{
	padding-top: 30px;
	font-size: 26px;
	letter-spacing: .1em;
	position: relative;
    padding-bottom: 18px;
    background: url(https://travel.willer.co.jp/tour/campaign/tdr/hotel/img/title02-bottom-decor.png) bottom center / 122px 8px no-repeat;
    color: #896A98;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
}
.hotel-frame{
	margin: 15px -15px 0;
	padding: 15px;
}
.title-frame-name{
	text-align: center;
	margin-bottom: 12px;
	width:100%;
	position: relative;
	top: auto;
	left: 0;
}
.title-frame-name span{
	display: block;
    font-size: 16px;
	padding: 5px 10px;
}
.hotel-frame-inner{
	padding: 15px;
}
.pickup-setsubi{
	margin-top: 6px;
}
.title-hotelspeckpickup{
    font-size: 16px;
}
.dl-setsubi dd{
	font-size: 13px;
}
	
.tbl-pickupprice02 th{
	font-size: 11px;
}	
.tbl-pickupprice02 th i{
	font-size: 10px;
}	
		
}



.plan-frame{
    margin: 20px auto 0 auto;
	/*padding: 30px;
	overflow: hidden;
	box-shadow: 0px 0px 6px #E7E7E7;
	background: #fff;
	border-radius: 4px;*/
	width:90%;
}
/*.plan-frame + .plan-frame{
	margin-top: 48px;
}*/

.title-busset{
	text-align: center;
	font-weight: bold;
	margin-bottom: 12px;
	margin-top: 48px;
	font-size: 18px;
	color: #666;
}
.box-wrap-block{
	display: block;
	background: #fdfdf7;
	box-shadow: 1px 1px 4px 0px rgba(0,0,0,0.2);
	border-radius: 4px;
	position: relative;
	padding:20px 40px 20px 20px;
	width: 100%;
	cursor: pointer;
}
.box-wrap-block:after{
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #f53d7e;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translate(0, -50%);
    font-size: 22px;
}
.box-wrap-block:hover{
	text-decoration: none;
	background: #fff9fb;
}
.box-wrap-block + .box-wrap-block{
    margin-top: 10px;
}
.box-wrap-block dl{
    display: table;
    margin-bottom: 0;
}
.box-wrap-block dl dt{
	display: table-cell;
	vertical-align: middle;
    width: 77%;
    line-height: 1.4;
}
.box-wrap-block dl p{
	margin-bottom: 0;
}
.ico{
    width: 56px;
    margin: 0;
    padding-left: 30px;
	display: table-cell;
	vertical-align: middle;
}
.box-wrap-block dl dt .text{
	display: table-cell;
    vertical-align: middle;
    width: calc(100% - 40px);
	padding: 0 0 0 15px;
	color: #333;
	font-size: 18px;
}
.box-wrap-block dl dt .label-pickup{
	display: inline-block;
	font-size: 80%;
	color: #896A98;
	font-weight: normal;
	text-align: left;
	margin-bottom: 6px;
}
.box-wrap-block dl .price{
	display: table-cell;
	vertical-align: middle;
    padding: 10px 0;
    width: 100%;
    text-align: right;
    line-height: 1;
    color: #f53d7e;
}
.box-wrap-block dl .btn-box{
	display: table-cell;
	vertical-align: middle;
	width: 140px;
	font-size: 14px;
	padding-left: 30px;
	margin-bottom: 0;
}
.btn01 {
    width: 100%;
    min-width: 140px;
    background: #f53d7e;
    color: #fff;
    font-size: 15px;
	display: block;
    padding: 8px;
    font-weight: normal;
    text-align: center;
    border-radius: 2px;
}
.box-wrap-block:hover .btn01 {
    background: #feebf2;
    color: #f53d7e;
}
.title-busplan{
	margin-top: 48px;
	margin-bottom: 24px;
	text-align: center;
	font-size: 20px;
	color: #714b86;
}

.plan-frame .acc-box .card{
	border: none;
	background: #fafafa;
}
.plan-frame .acc-box .card-depselect + .card-depselect{
	margin-top: 6px;
}
.plan-frame .acc-box .card-header .btn01 {
    width: 100%;
    min-width: auto;
    background: none;
    color: #f53d7e;
    font-size: 24px;
	display: block;
    padding: 8px;
    font-weight: normal;
    text-align: center;
    border-radius: 2px;
}
.plan-frame .acc-box .card-body{
	padding: 20px;
}
.plan-frame .acc-box .card-header{
	padding: 0px;
	border:none;
}
.plan-frame .acc-box .card-header button{
	display: block;
	width: 100%;
	background: none;
	text-align: left;
	cursor: pointer;
	background: none;
	box-shadow: none;
	position: relative;
	background:#DFE1FC;
}
.plan-frame .acc-box .card-header button:hover{
	background: #fff9fb;
}
.plan-frame .acc-box .card-header button:after{
    content: "\f106";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #f53d7e;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translate(0, -50%);
    font-size: 22px;
}
.plan-frame .acc-box .card-header button.collapsed:after{
	content: "\f107";
}
.plan-frame .acc-box .card-header button .price{
    color: #666;
}

.btn-select{
	background:#714b86;
	padding: 12px;
	width: 100%;
	max-width: 500px;
	margin:0 auto 36px auto;
	position: relative;
	border-radius: 4px;
}
.btn-select:before {
    border: 20px solid transparent;
    border-top: 20px solid #714b86;
    left: 50%;
    content: "";
    display: block;
    bottom: -40px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
}
.title-depselect{
	text-align: center;
	color: #fff;
	font-size: 16px;
	margin-bottom: 12px;
}
#pref-table{
	margin-top: 24px;
}
.table-tr{
	width: 100%;
	margin-bottom: 24px;
}
.table-tr .box-wrap-block{
	margin-bottom: 12px;
}
.title-target-dep{
	margin-bottom: 12px;
	font-weight: bold;
}
.title-target-dep:before{
    content: "\f3c5";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #f53d7e;
    margin-right: 6px;
}
.wrap-select{
	width: 100%;
	display: block;
	position: relative;
}
#pref-select{
	font-size: 20px;
    width: 100%;
    padding: 16px 10px;
    cursor: pointer;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    height: auto;
    display: block;
    text-align: left !important;
    line-height: 1;
}
.wrap-select:after {
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #f53d7e;
    position: absolute;
    top:50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
}
@media screen and (max-width: 767px) {
.plan-frame{
    width: 100%;
}
/*.box-wrap .box-wrap-block:first-child{
	padding: 0;
}
.box-wrap .box-wrap-block:last-child{
	padding: 0;
}*/
.box-wrap-block{
	padding:10px 30px 10px 15px;
}
.box-wrap-block:after{
    right: 10px;
}
#pref-table td .box-wrap-block{
	padding: 15px 0;
}
.ico{
	float: left;
	width: 26px;
	display: inline-block;
	margin-right: 0;
	padding: 0;
}
.box-wrap-block dl{
	display: block;
	width: 100%;
}
.box-wrap-block dl dt{
	display: block;
	width:100%;
}
.box-wrap-block dl dt .text{
    display: block;
    float: left;
    width: calc(100% - 40px);
    padding: 0;
    text-align: left;
}
.box-wrap-block dl .price{
	display: block;
	clear: both;
    padding: 10px 0;
    width: 100%;
}
.box-wrap-block dl .btn-box{
    display: block;
	vertical-align: middle;
	width: 100%;
	font-size: 14px;
	padding-left: 0;
}
.plan-frame .acc-box .card-body{
	padding: 10px;
}
.plan-frame .acc-box .card-header button:after{
    right: 10px;
}

#pref-select{
	font-size: 16px;
}
}





.slick-prev{
  left: 0;
  z-index: 2;
}
.slick-next{
  right: 0;
  z-index: 2;
}
.slick-dots{
  bottom: -25px;
}
.slick-dots li button:before{
  font-size: 14px;
}
.slider-fade div{
	position: relative;
}
.slide-text{
	width: 100%;
	display: block;
	font-size: 13px;
	padding: 3px;
}
.slider-stop{
	display: flex !important;
}
@media screen and (max-width: 567px) {
.height-fix-tsh{
	width: auto !important;
	height: 200px !important;
	margin: 0 auto;
}
}

.wrap-hotelnav .title-category-name{
	margin-bottom: 24px;
}
.wrap-hotelnav{
	margin-bottom: 48px;
}
.card-hotel{
	background: #fdfdf7;
	overflow: hidden;
	box-shadow: 0px 0px 6px #E7E7E7;
	display: block;
	text-decoration: none;
	border-radius: 4px;
}
.card-hotel:hover{
	text-decoration: none;
}
.title-hotelnav{
	padding: 12px;
	margin:0;
	font-size: 14px;
	color: #896A98;
}
@media screen and (max-width: 767px) {
.wrap-hotelnav .title-category-name small{
	display: block;
	margin-bottom: 6px;
}
.wrap-hotelnav{
	margin-bottom: 24px;
}
}


.movie-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.movie-wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}




/* モーダル内の設定 */
.modal-areaselect .modal-header{
    background: #062364;
    color: #fff;
}
.wrap-reservestep + .wrap-reservestep{
    margin-top: 36px;
}
.wrap-reservestep h2{
    font-size: 16px;
    padding-bottom: 12px;
    border-bottom: 1px dotted #333;
    margin-bottom: 24px;
    margin-top: 36px;
    font-weight: bold;
    position: relative;
    padding-left: 80px;
}
.wrap-reservestep h2 span{
    background: #f53d7e;
    color: #fff;
    margin-right: 6px;
    padding: 3px 12px;
    font-size: 80%;
    position: absolute;
    top: 0;
    left: 0;
}
.wrap-reservestep p{
    font-size: 14px;
    line-height: 1.6;
    padding: 0 12px;
    margin-bottom: 0;
}
.wrap-reservestep p + p{
    margin-top: 12px;
}
.wrap-reservestep p + img{
    margin-top: 6px;
}
.wrap-reservestep img{
    padding: 6px;
    background: #fff;
    border: 1px solid #eee;
}



.kv-conceptroom{
	position: relative;
}
.kv-conceptroom .title-main-name{
	position: absolute;
	top: 50%;
	z-index: 1;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.8);
	text-align: center;
	width: 100%;
	transform: translate(0, -50%);
}
@media screen and (max-width: 767px) {
}




/* FAQ */
#faq-accordion{
}
#faq-accordion .card .card-header button{
	padding: 20px 45px 20px 20px;
	width: 100%;
	text-align: left;
	position: relative;
}
#faq-accordion .card .card-header button:before,
#faq-accordion .card .card-header a:before {
	counter-increment:renban;
	content:"Q"counter(renban) ;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    background: #3788e5;
    padding: 7px 7px;
    margin-right: 15px;
    width: 70px;
    display: inline-block;
    text-align: center;
    border-radius: 3px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 20px;
}
#faq-accordion{counter-reset:renban;}
#faq-accordion .card-header button:after{
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 20px;
	content: "\f077";
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	color:#999;
}
#faq-accordion .card-header button.collapsed:after{
	content: "\f078";
}

@media screen and (max-width: 767px) {
.title02{
	font-size:24px;
}
#faq-accordion .card .card-header button:before,
#faq-accordion .card .card-header a:before {
	font-size:16px;
	width:55px;
	left:10px;
}
#faq-accordion .card-header button,
#faq-accordion .card-header a{
	padding:7px 20px 7px 10px;
}
.faq-ttl{
	font-size:14px;
	line-height:1.4;
	margin-left:65px;
}
#faq-accordion .card-header button:after,
#faq-accordion .card-header a:after{
	font-size:14px;
	right:7px;
}
#faq-accordion .card-body{
	padding:10px;
}
}


/* 隠しバス
----------------------------------------------------*/
.hit-img {
	display: none;
 /* animation: poyon 1.2s infinite;
  width: 25%;
  height: auto;*/
}
/* 768px以上 */
@media only screen and (min-width: 768px) {
  .hit-img {
    width: 15%;
    height: auto;
  }
}
@keyframes poyon {
  0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
  15%  { transform: scale(0.9, 0.9) translate(0%, 5%); }
  30%  { transform: scale(1.3, 0.8) translate(0%, 10%); }
  50%  { transform: scale(0.8, 1.3) translate(0%, -10%); }
  70%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}


/* 提携ホテルカテゴリー別 宿泊特典内　ボタン
----------------------------------------------------*/

.tbl-feature thead a.link-disney-s{
	color: #fff!important;
	display: block;
	padding: 3px 8px 3px 3px;
	border-radius: 60px;
	position: relative;
	font-size: 0.9em;
	width: 95%;
	margin: 5px auto 0;
}
.tbl-feature thead a.link-disney-s:after{
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	position: absolute;
	top: 50%;
	right: 5px;
	transform: translate(0, -50%);
}
.tbl-feature thead a.link-disney-s:hover{
	text-decoration: none;
	opacity: 0.7;

}

.tbl-feature thead th.hotelcategory-disney a.link-disney-s{
	background: #af37db;
}

.tbl-feature thead th.hotelcategory-official a.link-disney-s{
	background: #37b1db;	
}
.tbl-feature thead th.hotelcategory-partner a.link-disney-s{
	background: #2ed08f;	
}
.tbl-feature thead th.hotelcategory-neighbor a.link-disney-s{
	background: #eeb414;	
}
.btn-detail-p{
	text-align: center;
}

.btn-detail-p a{
    display: inline-block;
    padding: 15px 15px;
    font-weight: bold;
    font-size: 14px;
    line-height: 1.4;
	border: 1px solid #f53d7e;
    color: #FFF;
    background:#f53d7e;
    border-radius: 4px;
    width: 100%;
    max-width: 400px;
    text-align: center;
    position: relative;
}
.btn-detail-p a:after{
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0, -50%);
}
.btn-detail-p a:hover{
	text-decoration: none;
	opacity: 0.7;
}
.tbl-feature th.no-border-top{
	border-top:none;
	padding-top: 0;
}

/* ホテルのみボタン */
.btn-hotelonly{
	margin: 20px auto 40px;
	position: relative;
	max-width: 400px;
	border: #F53D7E solid 3px;;
	color: #F53D7E;
	font-weight: 900;
	background: #FFF;
	border-radius: 8px;
	display: block;
	padding: 15px 30px 15px 20px;
	text-align: center;
}

.btn-hotelonly::after{
	content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 14px;
    font-size: 1.1em;
}

.btn-hotelonly:hover{
	text-decoration: none;
	color: #FFF;
	background: #F53D7E;
}

.hotel-top-link{
	
}

/* modal
****************************************/

.btn-modal-hotel{
	text-align: right;
	font-size: 14px;
	display: inline-block;
	width: 90%;
	color: #007bff!important;
}

.btn-modal-hotel:hover{
	text-decoration: underline 1px #007bff!important;
}

.link-dantai {
    text-align: left;
	  margin-top: 30px;

}

.link-dantai button, .link-dantai a {
    background: none;
    border: none;
    padding: 0;
    display: inline;
    cursor: pointer;
    color:#3994BB;
	margin: 0 10px;

}
.link-dantai button:hover, .link-dantai a:hover{
		text-decoration: underline;

}

.link-dantai button:after, .link-dantai a:after {
    content: "\f24d";
    font-family: "Font Awesome 5 Free";
    font-size: 80%;
    position: relative;
    top: -2px;
	padding-left: 4px;
	text-decoration:none;
}

.modal-areaselect .modal-header {
    font-size: 16px;
}
.modal-areaselect .modal-header {
    background: #a1cacb;
    color: #fff;
}

.tel-box {
    display: block;
    margin: 30px auto;
    padding: 10px 40px;
    text-align: center;
    text-decoration: none!important;
    border: 2px solid #ec6580;
    border-radius: 5px;
}

.tel-box dt {
    vertical-align: middle;
    line-height: 1.2;
    font-size: 22px;
    color: #ec6580!important;
    text-decoration: none!important;
    cursor: default;
}

.tel-box dd {
    font-size: 14px;
    color: #333;
}



.wrap-hotel-plan{
	    background: #ffeaf2;
    padding: 15px 15px;
	
}
.wrap-hotel-plan p{
    font-size: 16px;
    font-weight: bold;
    color: #f54b6b;
    margin: 0;
}
.wrap-sample-hotel {
    background: #fff;
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
}

.col-hotel-text{
	color: #77653c;
}

.btn-close{
	background: #ccc;
	color: #666;
	font-size: 13px;
	padding: 6px 10px;
	border-radius: 4px;
}

@media (max-width: 767px) {
	.link-dantai button{
		font-size:16px;
	}
	.onlysm + button {
		margin-top: 10px;
	}
	.link-dantai {
    text-align: center;
		margin-top: 12px;

}
	.btn-modal-hotel{
		width: 100%;
	}
}

/* パスポート購入可能なホテル
****************************************/

.pass-hotel{
	padding:  0 0 10px;
	margin-bottom: 24px;
	background: #fafafa;	
}

.title-pass-hotel{
	font-size: 1.1em;
	text-align: center;
	color: #663d3e;
	font-weight: bold;
	padding: 14px 0 4px;

}

.pass-hotel ul{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 12px;
	padding: 10px 10px 0;
}

.pass-hotel ul li{
	width: 42%;
	margin-bottom: 4px;
}
 
.pass-hotel ul li a{
	
}

.pass-hotel small{
	line-height: 1.4em!important;
	display: inline-block;
	text-align: center;
	width: 100%;
		padding: 0 10px;
}
@media (max-width: 991px) {
	.pass-hotel{
	margin-bottom: 12px;	
}
	.title-pass-hotel{
	font-size: 15px;
		
	}
	.pass-hotel ul li{
	width: 100%;
}
	.pass-hotel ul li{
	font-size: 14px;
}
	.pass-hotel small{
		text-align: left;
		font-size: 11px;
	}

}
.slick-slider{
	margin-bottom: 4px;
}
.box-attribute {
	display: flex;
	align-items: stretch;
}

.box-attribute b{
	height: 30px;
	display: block;
}

.box-attribute a{
	background: #fff;
	box-shadow: 1px 1px 4px #999;
	padding: 10px;
	font-size: 13px;
	line-height: 1.3em;
	flex-wrap: wrap;
	color: #333;
	border-radius: 6px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 10px 10px 12px;
}
.box-attribute a small{
	font-size: 11px;
}


.box-attribute a:hover{
	text-decoration: none;
	opacity: 1.0!important;
	background: #fdfdf7;
}


.box-attribute a div{
	width: 100%;
	display: inline-block;
	align-self: flex-start;
}

.box-attribute a div.txt-attribute{
		width: 100%;
	margin-top: 8px;
}

.box-attribute a small{
	text-align: left;
	padding: 5px 0 0;
}

@media (max-width: 767px) {
	.box-attribute a{
		margin: 8px 6px 12px;
	}
	
.box-attribute a div{
	width: 100%;
	margin-bottom: 10px;
}

.box-attribute a div.txt-attribute{
		width: 100%;
}	
	.box-attribute a small{
		padding: 5px 0 0;
		
	}	
	
}

.btn-return{
	padding: 12px 16px 12px 8px;
    font-size: 16px;
    color: #333;
    border: 1px solid #ced4da;
    border-radius: 4px;
    display: block;
    margin: 0 auto;
    max-width: 650px;
    position: relative;
	font-size: 12px;
}

.btn-return:hover{
	text-decoration:none;
	background:#feebf2;
    color: #333;	
}
.btn-return:after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    right: 10px;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #f53d7e;
}
.btn-return span{
	font-size: 0.85em;
}


/* 768px以上 */
@media only screen and (min-width: 768px) {
	.btn-return{
		font-size: 14px;
		padding: 16px 20px 16px 10px;	
	}
  }

/* 2024/12/24 セレブレーションホテル対応、学生旅行バナー追加*/

.bnr-hotel-mordal{
	width: 90%;
	max-width: 500px;
	margin: 0 auto;
}
.bnr-hotel-mordal a{
	display: block;
}

/* pack plan modal */


.pack-plan-modal .modal-header{
    background: #F7F1B8;
}
.pack-plan-modal .modal-header h3{
    color: #3a3a3a;
    font-size: 14px;
    font-weight: bold;
}

.pack-plan-modal .modal-footer {
    justify-content: center;
    color: #3a3a3a;
}

.pack-plan-modal .btn-close {
    border: 1px solid #3b3b3b;
    font-size: 13px;
    color: #3b3b3b;
    border-radius: 3px;
    padding: 3px 4px;
}

.pack-plan-modal .modal-body .row p {
    line-height: 1.2;
}

/* price */
.pack-plan-item a {
    display: flex;
    align-items: center;
    color: #3a3a3a;
    padding: 16px 30px 16px 13px;
    transition: 0;
	border: 1px solid #3B3B3B;
	border-radius: 10px;
	position: relative;
	font-size: 14px;
}
.pack-plan-item a:hover {
    opacity: 0.6;
    text-decoration: none;
    transform: none;
}

.pack-plan-modal .wrap-price .num {
    color: #DF5682;
}
.pack-plan-modal .wrap-price {
    color: #DF5682;
	font-size:110%;
	font-weight: bold;
}
 .wrap-price .num.min + .max:before {
    content: "～";
    font-size: 12px;
    margin-left: 3px;
    margin-right: 3px;
}

.wrap-price .num.min + .max:after {
    content: "円";
    font-size: 12px;
    margin-left: 3px;
}

.ico-detail{
	display: flex;
	margin-top: 5px;
	margin-bottom: 10px;
}

.ico-detail li{
	font-size: 11px;
	background: #81C1C4;
	padding: 5px 6px;
	text-align: center;
	border-radius: 100px;
	color: #fff;
	font-weight: bold;
	margin-right: 4px;
	line-height: 1;
}

.bnr-themepark{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.bnr-themepark li{
	width: 49%;
	margin-bottom: 3%;
}

.bnr-themepark li a{
	display: block;
}

.bnr-themepark li a:hover{
	opacity: 0.7;
}


.bnr-themepark li img{
	border-radius: 15px;
	box-shadow: 0px 7px 5px -5px rgba(0,0,0,0.4);
	
}

.bnr-themepark li a:hover img{
	box-shadow: none;
}
.pack-plan-item a::after {
    content: '\f105';
    font-family: "font awesome 5 free";
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 3%;
    transform: translateY(-50%);
    color: #3a3a3a;
    font-size: 13px;
}

@media(min-width:768px) {
    .bnr-themepark li{
        width: 24%;
    }	
.border-link::after {
        top: 50%;
        right: 3%;
        font-size: 16px;
    }
	.pack-plan-item a {
		font-size: 16px;
	}	
	
}
