
/*=================================================
 * CSS for PC
 * ================================================= */

main{ min-height: auto !important;	padding-bottom: 0;}

#left{	padding-right: 0;}

#shoparea{	padding: 0;}

#hotel, #info{	padding: 0;}
.cnt .page_title{	margin-bottom: 10px;}
.cnt .page_title+.cate{	padding-top: 5px;}
#shoparea .page_title+.cate{	padding-top: 5px;}

.shopmenu_fix+.name_sc{	padding-top: 5px;}


/** shop list **/

.list_bg{
	width: auto;
	margin: 0;
}

.list_bg h4{	margin-bottom: 0;}

.list{
	font-size: 0;
	line-height: 0;
	margin: 0 0 -1px 0;
}
.list:last-of-type{	margin-bottom: 0;}

.list li{
	display: block;
	width: auto;
	margin: 0;
	border-bottom: 1px solid #3e3e41;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.list li:last-of-type{	border-bottom: none;}
.list li:nth-child(4n){	margin-right: 0;}

.list li a{
	position: relative;
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	color: #fff;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.list li a:before{
	content: '';
	width: 4px;
	height: 4px;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	position: absolute;
	top: calc(50% - 2px);
	right: 9px;
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	     -o-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.list li a span{
	display: table-cell;
	vertical-align: middle;
	height: 43px;
	font-size: 16px;
	line-height: 16px;
	padding: 0 30px 0 10px;
}
.list li a span em{ font-size: 12px;}
.list_tdhk li a span{	font-size: 14px;}
.list_tdhk li a span em{	font-size: 10px;}
.list li a span i{
	display: block;
	font-size: 10px;
	line-height: 13px;
	font-style: normal;
	padding: 1px 0 0 0;
}

.list li a:hover{
	text-decoration: none;
}


/** hlist **/

.hlist_bg{	margin-bottom: 0;}

.hlist_bg+.req_caution_box{	padding-top: 0;}

.hlist{
	position: relative;
	font-size: 0;
	line-height: 0;
	color: #fff;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.hlist:hover{
	text-decoration: none;
}

	.hlist,
	.hlist:nth-of-type(even){
		background-color: var(--main_bgcolor);
		border-radius: 5px;
		padding: 10px;
	}


.hlist h4,
.hlist p{
	display: block;
	width: auto;
	border: none;
	padding: 0;
	text-align: left;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.hlist h4{
	font-size: 16px;
	line-height: 18px;
	font-weight: bold;
	color: #d3b565;
	padding: 0 0 5px 0;
}

.hlist p{	padding: 10px;}

.hlist p.add{
	font-size: 12px;
	line-height: 14px;
	padding: 0 0 5px 0;
}

.hlist p.ok,
.hlist p.ng{
	display: inline-block;
	vertical-align: middle;
	width: auto;
	text-align: left;
	padding: 0 2px 0 0;
}

.hlist p.ok span,
.hlist p.ng span{
	display: block;
	font-weight: bold;
	color: #fff;
	border-radius: 3px;
	min-width: 85px;
	padding: 2px 5px;
	text-align: center;
}
.hlist p.ok span{	background: #347ce9;}
.hlist p.ng span{	background: #ef466a;}

.hlist p.ok span i,
.hlist p.ng span i{
	display: inline-block;
	vertical-align: middle;
	font-style: normal;
	font-size: 11px;
	line-height: 12px;
}

.hlist p.ok span em,
.hlist p.ng span em{
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
	line-height: 16px;
}
.hlist p.ok span br,
.hlist p.ng span br{	display: none;}


/** info **/

.info{
	margin-bottom: 0;
	padding: 0 10px 10px 10px;
}

.info table{
	width: 100%;
	margin: 0;
	border-top: 1px solid #3e3e41;
	border-left: 1px solid #3e3e41;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.info tr{	vertical-align: middle;}

.info th,
.info td{
	font-size: 14px;
	line-height: 16px;
	text-align: left;
	padding: 10px;
	border-bottom: 1px solid #3e3e41;
	border-right: 1px solid #3e3e41;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.info th{
	width: 75px;
	font-weight: normal;
	background: #28282a;
	padding: 10px 5px 10px 10px;
}

.info td{}

.info tr:nth-of-type(1) td a{
	color: #fff;
	text-decoration: underline;
}
.info tr:nth-of-type(1) td a:hover{	text-decoration: none;}

.info .meth{
	font-size: 0;
	line-height: 0;
	padding: 5px 0 5px 5px;
}

.info .meth div{
	display: inline-block;
	vertical-align: top;
	font-size: 10px;
	font-weight: bold;
	line-height: 16px;
	text-align: center;
	width: calc(100% / 3 - 5px);
	margin: 0 5px 0 0;
	padding: 5px 3px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.info .meth div span{
	display: inline-block;
	vertical-align: top;
	min-width: 40px;
	font-size: 14px;
	color: #fff;
	border-radius: 3px;
	margin: 0 2px 0 0;
	padding: 0 5px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.info .meth div.kaku{
	color: #ff7800;
	background: #3c2410;
}
.info .meth div.ok{
	color: #347ce9;
	background: #16293b;
}
.info .meth div.ng{
	color: #ef466a;
	background: #3a171e;
}
.info .meth div.kaku span{background: #ff7800;}
.info .meth div.ok span{background: #347ce9;}
.info .meth div.ng span{background: #ef466a;}
.info .meth div i{	font-size: 14px; font-style: normal;}

#info .bt_bg{	margin-bottom: 0;}


/** sptbox **/

.sptbox{
	display: block;
	width: auto;
	font-size: 0;
	line-height: 0;
	margin: 0 0 0 0;
	border-top: 1px solid #3e3e41;
	border-bottom: 1px solid #3e3e41;
	border-right: 1px solid #3e3e41;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.sptbox_l,
.sptbox_r{
	display: block;
	width: auto;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.sptbox_l{
	height: auto;
	vertical-align: middle;
	padding: 10px;
	border-left: 1px solid #3e3e41;
	border-bottom: 1px solid #3e3e41;
}
.sptbox_l img{
	width: 100%;
	height: auto;
}

.sptbox_r{}
.sptbox_r table{	width: 100%; border-top: none;}
.sptbox_r th,
.sptbox_r td{	height: auto; padding: 10px;}
.sptbox_r th{	width: 75px; padding: 10px 5px 10px 10px;}
.sptbox_r td{	border-right: none;}
.sptbox_r tr:last-child th,
.sptbox_r tr:last-child td{	height: auto; border-bottom: none;}
.sptbox_r td a[href^="tel:"] { cursor: pointer; text-decoration: none; color: #fff}
.sptbox_r td a[href^="tel:"]:hover{	text-decoration: none;}

.sptbox_r .price{
	vertical-align: bottom;
	font-size: 20px;
	font-weight: bold;
	line-height: 20px;
	color: #bea5eb;
	border-radius: 2px 2px 0 0;
	padding-bottom: 0px;
}

.sptbox_r .price p{
	display: inline-block;
	vertical-align: top;
	margin-right: 5px;
	line-height: 30px;
}

.sptbox_r .price span{
	display: inline-block;
	vertical-align: bottom;
	width: 35px;
	font-size: 14px;
	line-height: 18px;
	text-align: center;
	color: #1c1c1e;
	background: #bea5eb;
	border-radius: 2px;
	margin: 0px 4px 9px 0;
	padding-top: 1px;
}

.sptbox_r .price em{
	display: inline-block;
	vertical-align: baseline;
	font-family: "FontA";
	font-weight: normal;
	font-size: 28px;
	margin: -3px 0 0 0;
}

	#info.spt_hotel .bnr_exp{	margin-top: 0;margin-bottom: 10px;}


/** spt_coupon **/

.spt_coupon{
	width: auto;
	margin: 10px 0 0 0;
	border: 1px solid #3e3e41;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.spt_coupon h3{
	font-size: 14px;
	font-weight: normal;
	line-height: 20px;
	text-align: center;
	background: #28282a;
	border-bottom: 1px solid #3e3e41;
	padding: 10px;
}

.spt_coupon_box_bg{	padding: 10px;}

.spt_coupon_box{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
}

.spt_coupon_box_l,
.spt_coupon_box_r{
	display: table-cell;
	vertical-align: middle;
}

.spt_coupon_box_l{
	width: 55px;
	font-size: 12px;
	font-weight: bold;
	line-height: 14px;
	text-align: center;
	color: #fff;
	background: #ff528f;
	background: -moz-linear-gradient(left, #ff528f 0%, #ff34a7 100%);
	background: -webkit-linear-gradient(left, #ff528f 0%,#ff34a7 100%);
	background: linear-gradient(to right, #ff528f 0%,#ff34a7 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff528f', endColorstr='#ff34a7',GradientType=1 );
	border-radius: 3px;
	padding: 2px 0;
}

.spt_coupon_box_r{	padding: 0 0 0 10px;}
.spt_coupon_box_r p{
	font-size: 16px;
	font-weight: bold;
	color: #ff429c;
	line-height: 18px;
	padding: 8px 0;
	border-bottom: 1px dotted #3e3e41;
}
.spt_coupon_box_r p:first-of-type{	padding-top: 0;}
.spt_coupon_box_r p:last-of-type{
	border-bottom: none;
	padding-bottom: 0;
}

.spt_gmap{
	width: auto;
	margin: 0 10px 10px 10px;
	padding: 10px;
	border: 1px solid #3e3e41;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.spt_gmap > iframe{
	width: 100%;
	height: 400px;
}


/** review **/

#review{
	width: auto;
	margin: 0;
}

.rvbox_bg{
	display: block;
	width: auto;
	margin-bottom: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.rvbox{
	position: relative;
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	border: none;
	border-bottom: 1px solid #3e3e41;
	margin: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.rvbox:last-of-type{	margin-bottom: 0;}
.rvbox_bg:first-of-type{	border-top: 1px solid #3e3e41;}

.rvbox_l,
.rvbox_m,
.rvbox_r{
	display: table-cell;
	vertical-align: top;
}

.rvbox_l{
	width: 60px;
	padding: 10px 0 10px 10px;
}

.rvbox_l a,
.rvbox_l span{
	display: inline-block;
	width: 60px;
	height: 60px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.rvbox_l a img,
.rvbox_l span img{
	width: 60px;
	height: auto;
	border-radius: 50%;
}

.rvbox_m{
	padding: 10px;
}

.rvtxt{
	position: relative;
	height: auto;
	border: 1px solid #28282a;
	background: #28282a;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.rvtxt:after, .rvtxt:before{
	right: 100%;
	top: 20px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.rvtxt:after {
	border-color: rgba(28, 28, 30, 0);
	border-right-color: #28282a;
	border-width: 7px;
	margin-top: 1px;
}
.rvtxt:before {
	border-color: rgba(62, 62, 65, 0);
	border-right-color: #28282a;
	border-width: 8px;
	margin-top: 0px;
}

.rvtxt .rvdata{
	font-size: 10px;
	line-height: 18px;
	text-align: right;
	position: static;
	padding: 0 8px 8px 5px;
}

.rvtxt .rvmain{
	font-size: 14px;
	line-height: 18px;
	padding: 8px 5px 5px 10px;
}

.rvtxt .rvdalete{
	display: inline-block;
	font-size: 12px;
	line-height: 14px;
	text-align: center;
	margin: 10px 10px 5px 10px;
	padding: 5px;
}

.rvtxt .rvdalete span{
    display: inline-block;
	font-size: 12px;
	line-height: 14px;
	text-align: center;
	color: #fff;
	background: #ff4022;
	margin: 0 0 5px 0;
	padding: 3px;
}

.rvtxt .rvwait{
	font-size: 12px;
	line-height: 18px;
	color: #ff429c;
	text-align: center;
	padding: 20px 0;
}

.bt_bg{
	width: auto;
	margin: 0;
}
#info .bt_bg{	padding: 10px;}

.bt_bg .bt{
	display: block;
	width: auto;
	max-width: 300px;
	margin: 0 auto;
}

#hotel .form,
#hotel .error,
#hotel .over{
	width: auto;
	border-top: 1px solid #3e3e42;
}
#hotel .form textarea{	height: 130px;}
#hotel .form td div input[type="radio"]{
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	margin-right: 5px;
}

	#hotel .form td div+p{
		font-size: 10px;
		line-height: 14px;
	}



#hotel .form td div input[type="radio"]:nth-of-type(2){	margin-left: 10px;}

#hotel .form td div+p .sp{ display: inline; }

#hotel_list.bt_bg{
	margin: 10px 0 0 0;
	padding: 10px;
}

#hotel_list.bt_bg .bt{
	display: block;
	width: 100%;
}

#hotel_list.bt_bg .ent_p{
	font-size: 12px;
	font-weight: bold;
	line-height: 16px;
	padding: 0 0 10px 0;
}


/** hotel_shop **/

#hotel_shop{
	width: auto;
	margin: 0;
	padding: 0;
}

#hotel_shop h3{	margin-bottom: 10px;}
#hotel_shop_in{	border-top: none;}
#hotel_shop_in .box1{
	width: auto;
	margin: 0;
}
#hotel_shop .bt_bg{
	width: auto;
	margin: 0;
	border-top: 2px solid #3e3e41;
}

	.bnr_exp{
		display: block;
		font-size: 0;
		line-height: 0;
		text-align: center;
		margin: 10px 0 0 0;
	}
	.bnr_exp div{	padding: 0 10px;}
	.bnr_exp div img{
		width: 100%;
		max-width: 350px;
	}
	.bnr_exp p{
		font-size: 10px;
		line-height: 14px;
	}




#hotel_shop .line1_r .ch ,
#hotel_shop .line1_r .sin_box .sin_in , 
#hotel_shop .line1_r .i2{
	width: 100%;
}

#hotel_shop .box2_r h4 p{ padding-right: 0;}


/** lv **/

.lv{
	position: relative;
	width: auto;
	margin: 0 0 10px 0;
	border-top: 2px solid #3e3e41;
	border-bottom: 2px solid #3e3e41;
}

.lvbox{
	display: block;
	color: #fff;
	padding: 5px 10px 10px 10px;
	border-left: 1px solid #3e3e41;
	border-right: none;
	-webkit-transition	: 0.2s ease-in-out;
	-moz-transition	: 0.2s ease-in-out;
	-o-transition	: 0.2s ease-in-out;
	transition		: 0.2s ease-in-out;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.lvbox:hover{
	text-decoration: none;
}

.spt{
	margin: 0;
	border-top: 1px solid #3e3e41;
}
.spt .lvbox{
	position: relative;
	display: block;
	width: auto;
	margin: 0;
	padding-right: 30px;
	border: none;
	border-bottom: 1px solid #3e3e41;
	border-radius: 0;
}
.spt .lvbox:before{
	content: '';
	width: 4px;
	height: 4px;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	position: absolute;
	top: calc(50% - 2px);
	right: 9px;
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	     -o-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.spt .lvbox:after{
	content: '';
	height: 100%;
	border-left: 1px dotted #3e3e41;
	position: absolute;
	top: 0;
	right: 20px;
}

.lvbox_name{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	height: 30px;
	font-size: 15px;
	font-weight: bold;
	line-height: 15px;
	color: #d3b565;
	border-bottom: 1px solid #3e3e41;
	padding-bottom: 3px;
}

.lvbox_in{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	border: none;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.lvbox_l,
.lvbox_r{
	display: table-cell;
	vertical-align: top;
}

.lvbox_l{
	width: 95px;
	padding-top: 8px;
}
.lvbox_l img{
	width: 85px;
	height: auto;
}

.lvbox_r{
	position: relative;
	vertical-align: middle;
}

.lvbox_r .data{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	height: 38px;
}

.lvbox_r .data p{
	position: relative;
	font-size: 11px;
	line-height: 12px;
	padding: 0 5px 0 15px;
}
.lvbox_r .data p:before,
.lvbox_r .data p:after{
	position: absolute;
	margin: auto;
	content: "";
}
.lvbox_r .data p:before{
	width: 8px;
	height: 8px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #1c1c1e;
	border: 1px solid #3e3e41;
	top: calc(50% - 6px);
	left: 0;
}
.lvbox_r .data p:after{
	top: calc(50% - 3px);
	left: 4px;
	box-sizing: border-box;
	width: 2px;
	height: 2px;
	border: 2px solid transparent;
	border-left: 3px solid #3e3e41;
}
.lvbox_r .data p a{	color: #fff;}
.lvbox_r .data p a[href^="tel:"]:hover{	text-decoration: none;}

.lvbox_r .price{
	font-size: 20px;
	font-weight: bold;
	line-height: 20px;
	text-align: center;
	color: #bea5eb;
	background: #28282a;
	border-radius: 2px 2px 0 0;
	padding: 0;
}
.lvbox_r .price:last-of-type{
	padding: 8px 0 0 0;
	border-radius: 2px;
}

.lvbox_r .price span{
	display: inline-block;
	vertical-align: bottom;
	width: 35px;
	font-size: 14px;
	padding-top: 1px;
	line-height: 16px;
	color: #28282a;
	background: #bea5eb;
	border-radius: 2px;
	margin: 0px 4px 3px 0;
}

.lvbox_r .price em{
	display: inline-block;
	vertical-align: baseline;
	font-family: "FontA";
	font-weight: normal;
	font-size: 28px;
}

.lv_link{
	font-size: 13px;
	line-height: 20px;
	text-align: center;
	margin: -5px 0 5px 0;
}
.lv_link a{	color: #ff429c;}

.h_caution{
	width: auto;
	font-size: 11px;
	line-height: 16px;
	text-align: left;
	border: 1px solid #3e3e41;
	margin: 0 10px 10px 10px;
	padding: 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
.h_caution a{	color: #ff7b1c;}

	#hotel_list.bt_bg .ent_p br{	display: inline;}

	.h_caution br{	display: none;}
	#info.spt_hotel{	padding-bottom: 10px;}
	#info.spt_hotel .h_caution{	margin-bottom: 0;}
	#info.spt_hotel .req_caution{	margin-bottom: 0;}

.form th{
	width: 150px;
}
.form th br{	display: none;}

@media screen and (max-width: 650px) {
	.form th{	width: 80px;}
	.form th br{	display: inline;}
}




.common_layout_box{
	background-color: var(--main_bgcolor);
	border-radius: 5px;
}

.box2{
	width: auto;
	height: auto;
	border-bottom: none;
	border-top: none;
}
.box2:first-child{	border-top: none;}




.shop_anchor{
	display: block;
	padding-top: 92px;
	margin-top: -92px;
}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 650px) {

}
