@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Muli:300,600,700');

/*-------------------------------------------------
基本ベース
-------------------------------------------------*/
body{
	font-size:14px;
/* 	color:#444; */
	line-height:1.5;
	text-align:center;
/* 	font-family: 'Muli', sans-serif; */
	background:#FFF;
	margin:0;
	margin-bottom: 100px !important;
}

.x-large{ font-size:24px; }
.large{ font-size:18px;}
.medium{font-size: 16px;} 
.normal13{font-size:15px;}
.normal{font-size:14px;}
.small{font-size:12px;}
.x-small{font-size:11px;}


h1, h2, h3, h4, h5, dl{
	margin:0px;
}

p{
	margin-top:0px;
}

th{
	font-weight:normal;
}

dd{
	margin:0px;
}


a:link{ text-decoration:none; color:#BF0000; }
a:visited{ text-decoration:none; color:#BF0000; }
a:active{ text-decoration:none; color:#FA6A00; }
a:hover{ text-decoration:none; color:#FA6A00; }



.note{
	font-size:11px;
	color:#808080;
}

.note2{
	font-size:12px;
	font-weight:bold;
	color:#993333;
	border-top:1px solid #808080;
	border-bottom:1px solid #808080;
	padding:2px 0px;
}

.note3{
	font-size:11px;
	color:#808080;
	padding:15px 0px 15px 15px;
}


.att{
	color:#c00;
}

a img{
	border:0px;
}


.color-gold{
	color:#A49A6D;
	}
.color-blue{
	color:#155DA7;
	}
.color-red{
	color:#BF3000;
	}


.caption-l{
	font-size:11px;
	color:#808080;
}
.caption-r{
	font-size:11px;
	color:#808080;
	text-align:right;
}

.dark_red{
	color: #BF0000;
}

.underline{
	border-bottom:1px solid #C8C8C8;
}

.hidden{
	display:none;
}

.clear{
	clear:both;
}

.relative{
	position:relative;
}

form{
	margin:0px;
}

.no-setting{
	border:0px !important;
/*	padding-top:0px !important;
	padding-bottom:0px !important;*/
	margin-top:0px !important;
	margin-bottom:0px !important;
}

.center{
	text-align:center;
}
.right{
	text-align:right;
}

#preloadedimages{
	width: 0px;
	height: 0px;
	display: inline;
}




/* ページ共通部品 */
p.btn{
	overflow: hidden;
}
.btn > span,
.btn a,
.btn input[type="submit"],
.btn input[type="button"],
.btn-reserv-close input[type="button"]{
	display: block;
	width: 300px;
	font-size:1.1em;
	color: #FFF;
	text-align: center;
	border:0;
	background: #000000;
	padding: 15px 30px;
	margin: 25px auto;
	transition: all 0.3s ease-in-out 0s;
}
.btn > span:hover,
.btn a:hover,
.btn input[type="submit"]:hover,
.btn input[type="button"]:hover,
.btn-reserv-close input[type="button"]:hover{
	background: #d42b3d;
	cursor: pointer;
}

#header-top {
    box-sizing: border-box;
}

input[type="text"],
input[type="password"],
input[type="tel"],
input[type="email"],
form select,
textarea{
/* 	width:100%; */
	max-width: 100% !important;
/*     font-size:16px; */
    margin-right:0 !important;
	margin-left:0 !important;
    box-sizing:border-box;
}

input#CustAddr1,
input#CustAddr2,
select#CustCountry{
/* 	width:100%; */
}

.full-width{
	width:100%;
}
.full2-width {
    width: 80%;
}

@media only screen and (max-width: 900px) {
	.sp-full-width{
		width:100%;
	}
}


#column-main, #content, #wrapper {
    max-width: 1200px;
    width: 100%;
    padding: 0 10px;
    margin: 0 auto;
    box-sizing: border-box;
}
#children #wrapper{
	max-width:none;
}

#header {
    height: auto !important;
}
#header-top {
    margin: 0 auto !important;
    padding: 20px 0 !important;
    width: 100% !important;
    display: inline-block;
}
#contents {
    display: flex;
    justify-content: space-between;
}

#side-navi, #resv-flow {
    float: left;
    margin: 0 auto;
    padding: 0;
    width: 240px;
}
#contents #contents-main {
    float: right;
    margin: 0 auto;
    padding: 0;
    width: 70%;
}

#resvcancel #contents {
    display: block;
}
#resvcancel .resv_inner{
	text-align:left;
}


/*-------------------------------------------------
カレンダー
-------------------------------------------------*/
#wrapper-cal{
	text-align:left;
}


#wrapper-cal #cal-box01,
#wrapper-cal #cal-box02{
	/*width:640px;
	background:url(../img/resv_bg01.gif) left top no-repeat;
	padding:15px;
	margin:0px auto;*/
}


#cal-box01 #cal-box01-name{
	position:relative;
	margin-bottom:10px;
/* 	border-bottom:1px solid #7C903C; */
/* 	color:#fff; */
/* 	padding-bottom:5px; */
}
#cal-box01 #cal-box01-name dt{
	color:#ba2636;
	font-size:21px;
	font-weight:bold;
	line-height:1.3em;
}
#cal-box01 #cal-box01-name dd{
	color:#666;
	font-size:	11px;
	line-height:1.2em;
	position:absolute;
	top:0;
	right:3px;
}




#verisign{
	display:none;
	height:72px;
	margin-bottom:15px;
}
#verisign div{
	width:110px;
	float:left;
}
#verisign p{
	width:525px;
	font-size:11px;
	padding-top:20px;
	float:left;
}


.resv_tit{
	font-size: 1.4em;
	background:#000;
	color:#fff;
	margin-bottom:20px;
	padding: 10px;
	line-height: 1.0em;
}
.resv_tit p{
	margin:0;
	padding: 0;
}

.resv_inner table{
	border-collapse: collapse;
}


.resv_login_btn-table{
	width:670px;
	background:url(../img/login_img03.gif) left top repeat-y;
	text-align:center;
}
.resv_login_btn-table td{
	padding:5px 0px;
}

.resv_login_btn-table a{
	display:block;
}

.resv_login_btn-table a:hover{
	position:relative;
	top:1px;
	left:0px;
}


.resv_inner table{
/* 	font-size:14px; */
	/*margin-bottom:10px;*/
	width:100%;
}
.resv_inner table .normal,
.resv_inner table .small{
	font-size:1em;
}
*:first-child+html #long_btn{
	margin-left:-170px;
} 
.resv_inner table hr{
}
.resv_inner .resv_mail_tb{
	border:1px solid #CCC;
	background:#F2F2F2;
	padding:10px;
}

.input-form-table > tbody > tr > th{
	width:30%;
}

.green_box,.green_box2{
	border:1px solid #CCC;
	padding:10px;
	margin-bottom:20px;
	background:#F2F2F2;
}
.green_box td,.green_box th{
    padding:5px;
}
.green_box table td,.green_box table th{
    padding:0;
}
.green_box2{
	background:#fff;
}

.resv-table-title{
	font-size: 1.2em;
	margin-bottom:3px;
}

.form-table{
	border:2px solid #a6a6a6;
/*
	border-top:1px solid #CCC;
	border-left:1px solid #CCC;
	border-right:1px solid #CCC;
*/
	margin-bottom:20px;
/* 	padding: 0; */
}
.form-table th{
	background: #f3efeb;
/* 	text-align:center; */
	border-bottom:1px solid #a6a6a6;
	border-right:1px solid #a6a6a6;
/* 	padding: 0; */
}
.form-table th.col-room-no{
	background: #e6dfd7;
}

.form-table td{
	background:#fff;
	border-bottom:1px solid #a6a6a6;
}
.form-table .has-table tr:last-child th,
.form-table .has-table tr:last-child td{
	border-bottom:none;
}

.form-table th,
.form-table td,
.has-table table th,
.has-table table td{
	padding:8px;
}
.form-table td.has-table{
	padding:0px;
}
.form-table table td,
.form-table table th{
/* 	padding:0; */
/* 	border:none; */
}
.form-table td.has-table{
/* 	border:none; */
	border: 1px solid #a6a6a6;
}
.form-table th.col-ninzu-tit{
	background-color:transparent;
}

.resv-option-inner-table .resv-option-img{
	width:20%;
}
.sp-vertical-cell2.resv-price-details .col-ninzu-tit{
	background-color:#f2f2f2 !important;
}
.resv-option-inner-table .planopt-name,
.resv-option-inner-table .planopt-name2{
	line-height:1.2;
}
.resv-option-inner-table .planopt-name2{
	font-size:0.85em;
}

.tb-resv-info{
/* 	border-collapse: collapse; */
	
}
.tb-resv-info{

}
.col-tit{
	width:30%;
}
.col-ninzu-tit{
	background-color:#F2F2F2;
}
.inner_box{
}
.inner_box th{
}
.inner_box td{
}
.resv_note{
	font-size:12px;

	font-weight:bold;
}
.resv_last_txt{
	margin-top:20px;
}
.fee_box th{
	width:150px;
}
.fee_box td{
	text-align:right;
}

input#CustName, 
input#CustName2, 
input#CustName3{ 
/*	width: 120px;	*/
}

.required-icon{
	color:#cc0000;
}
.error_input{
	background-color: #ffe0e0 !important;
	box-shadow: 0px 0px 3px 0 #c00 inset !important;
}
.error_msg{
	font-size:0.9em;
	color: #ff7070;
}

.input-form-table td p{
	margin:0;
}

.total-price big{
	font-size: 1.4em;
	color:#bf0000;
}

.resv-price-details .col-data-age{
	width:60%;
}
.resv-price-details .col-data-subtotal{
/* 	width: 30%; */
	text-align:right;
	line-height: 1.4;
	white-space: nowrap
}
.resv-price-details .col-data-subtotal .rate{
	font-size:0.9em;
}
.resv-price-details .col-data-subtotal .total-rate{
	font-size:1.1em;
	font-weight:bold;
}

.note-table{
	border: 1px solid #CCC;
	padding: 10px 15px;
	margin-bottom: 20px;
	background: #f3efeb;
}
.note-table dl{
	border-bottom:1px solid rgba(0,0,0,0.25);
	padding:10px 0;
}
.note-table dl:last-child{
	border-bottom:0px;
}
@media (min-width: 900px) {
	.note-table dl{
		display:flex;
	}
	.note-table dt{
		width:30%;
	}
	.note-table dd{
		width:70%;
	}
}
@media (max-width: 899px) {
	.note-table dt{
		font-weight:bold;
	}
}

/* 表のあしらい */
.tb-resv-info{
/*
	border-bottom: 1px solid #CCC;
	border-left:1px solid #CCC;
	border-right:1px solid #CCC;
	border-top:1px solid #CCC;
*/
}
.tb-resv-info td,.tb-resv-info th{
/* 	border-bottom: 1px solid #CCC; */
/* 	padding-left:10px; */
}
.tb-resv-info th{
	border-right: 1px solid #CCC;
}

.tb-resv-info table td, .tb-resv-info table th{
/*
    border:none;
	padding: 3px;
*/
}
.resv_last_tb{
	margin-top:30px;
}

.resv_last_tb a:hover img{
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter: “alpha( opacity=80 )”;
}

.resv_last_tb button:hover{
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter: “alpha( opacity=80 )”;
}


.resv_last_tb td{
	text-align: center;
}

.resv_inner button{
	border:0;
	background:none;
	cursor:pointer;
	margin:0;
/* 	padding:0; */
}
.erm_tb{
	font-size:12px;
}
.error-message{
	color:#ff0000;
	margin-bottom:1em;
}


.btn-back,
.btn-next,
.resv_btn {
    font-size: 1.1em;
}

.planopt table{
	border-bottom:1px dashed #CCCCCC;
}
.planopt table td{
	font-size:12px;
	padding-top:5px;
	padding-bottom:5px;
}

.planopt .planopt-name{
	font-weight:bold !important;
}
.planopt .planopt-name2{
	font-size:11px;
}




.clearfix:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.clearfix {
display: inline-block;
}
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

.payment-select label{
	display:block;
	font-weight:bold;
	border-radius:5px;
	background:#f2f2f2;
	padding:8px 10px;
	margin-bottom:5px;
}
.payment-select label.selected_payment{
	color:#fff;
	background:#e65d02;
}

#OnlineCardPayment{
	border:2px solid #e65d02;
	padding:15px;
	margin-bottom:25px;
}
#OnlineCardPayment .form-table{
	margin-top:20px;
	margin-bottom:0;
}
#OnlineCardPayment .resv-table-title{
	color:#e65d02;
	border-bottom:1px solid #bfbfbf;
	padding-bottom:5px;
}

.commit_table_inner{
	border: 2px solid #808080;
	padding:25px;
}



@media (max-width: 450px) {
    .col-ninzu-tit{
/*         width: 120px; */
    }
}
.col-data{
}

.col-room-no{
	font-weight:bold;
	background-color:#F2F2F2;
}


.bg_red{
	background:pink;
	color:#bf0000;
	padding:3px;
	text-align:center;
}
table.bg_red{
	margin-bottom:10px;
}

.cancel_wrap{
	width:690px;
	margin:0 auto;
}

#resv_cancel_btn{
/*	background:url(/en/img/cancel_btn.jpg) no-repeat;
	width:291px;
	height:31px;*/
	border:0!important;
	
	cursor:pointer;
	
}

.info_box_3c {
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    border-top: 1px solid #CCC;
    margin-bottom: 20px;
}
.info_box_3c th {
    background: none repeat scroll 0 0 #F2F2F2;
    border-bottom: 1px solid #CCC;
    border-right: 1px solid #CCC;
    padding: 5px 0;
    text-align: center;
}
.info_box_3c td {
    background: none repeat scroll 0 0 #FFFFFF;
    border-bottom: 1px solid #CCC;
    padding: 5px 0 5px 5px;
}
.info_box_tit{
	font-size: 1.0em;
	font-weight:bold;
	letter-spacing: -0.01em;
}

.mb_5{
    margin-bottom:5px;
}
.mb_20{
    margin-bottom:20px;
}



table.fee_child_box{
	border-top:#CCC 1px solid;
	border-left:#CCC 1px solid;
/* 	border-collapse: collapse; */
}
table.fee_child_box th,table.fee_child_box td{
	border-right:#CCC 1px solid;
	border-bottom:#CCC 1px solid;
	padding: 0;
}
table.fee_child_box th{
	text-align:center;
	background:#eee;
	padding: 5px;
}
table.fee_child_box td{
	padding: 5px;
}


#resv_cancel_btn{
/*	background: url(/img/btn_cancel.png) left top no-repeat;
	width: 156px;
	height: 45px;
	cursor: pointer;
	margin: 20px 0 0;*/
}

.close-child input{
	border: 1px solid #CCC!Important;
	padding: 10px!Important;
	border-radius: 5px!Important;
	cursor: pointer;
	background: #F2F2F2;
	margin: 30px auto 0;
}

.close-child input:hover{
	background: #CCC;
}






/*-------------------------------------------------
reservation cancel
-------------------------------------------------*/
#copyright{
	font-size: 0.7em;
	margin: 10px 0 0;
}

#resvcancel  table th{
	text-align: left;
}

#resvcancel  input{
/*	border: 1px solid #CCC;
	font-size: 1.2em;
	padding: 5px;
	width: 170px;*/
}


#resvcancel #header,
#children #header{
	padding:20px 3%;
}


.mini_box_tit{
	max-width:600px;
	height:30px;
	background:#000;
	margin:0 auto 20px;
	color:#fff;
	text-align:center;
	font-size: 1.2em;
	padding: 5px;
	line-height: 1.5em;
}
table.mini_box{
	max-width:600px;
	margin:0 auto;
	border:1px solid #E2E2E2;
	padding: 10px;
}
table.mini_box td{
	padding:5px;
}

table.mini_box td .color-red{
	letter-spacing: -0.01em;
}

table.mini_box td div{
	border-bottom:1px solid #E2E2E2;
	text-align:center;
	padding: 0 0 5px;
	letter-spacing: -0.001em;
}
table.mini_box td table{
	width:60%;
	margin:0 auto;
}

#resvcancel .btn-login{
	border-bottom: none;
	padding: 0;
	margin: 10px 0 0;
}

#resvcancel .btn-login input{
	width: 100px;
	border: 1px solid #CCC;
	background: #F2F2F2;
	cursor: pointer;
}

#resvcancel .btn-login input:hover{
	background: #CCC;
}

.txt-cancel-confirm{
	text-align: center;
	font-weight: bold;
	font-size: 1.6em;
}

.txt-questions{
	text-align: center;
}

.cancel-contact{
	border: 1px solid #CCC;
	background: #F2F2F2;
	border-radius: 5px;
	padding: 15px;
	margin: 0 0 30px;
}

.btn-close{
	cursor: pointer;
}

.btn-close:hover{
	background: #CCC;
}

.txt-retry{
	font-size: 1.6em;
	text-align: center;
	line-height: 2.4em;
}

.btn-reserv-close input{
	cursor: pointer;
}

.btn-reserv-close input:hover{
	background: #CCC;
}



#agree_wrap{
	font-weight:bold;
	text-align:center;
    padding: 10px;
}
#agree_wrap.warning{
    color: #FFF;
    border-radius: 10px;
    background: #cc0000;
}
#agree_wrap.warning a{
    color: #FFF;
}


#resend_mail{
	margin: 20px auto 50px;
	border: 1px solid rgba(0,0,0,0.1);
	padding: 20px 30px;
	width: 90%;
	background: rgba(0,0,0,0.02);
}



@media only screen and (max-width: 900px) {
	#resv-flow{
		display:none;
	}
	
	#contents #contents-main {
	    width: 94%;
	}
	
	.green_box_form td.col-ninzu-tit,
	.green_box_form td.col-data{
	    display: block;
	    width: auto;
	}
	table.mini_box{
		width:90%;
	}
	table.mini_box th,
	table.mini_box td{
		display:block;
	}
	
	.form-table th,
	.form-table td,
	.has-table table th,
	.has-table table td {
	    padding: 5px 8px;
	}
	.form-table td.has-table{
		border-top:0;
	}
	
	.sp-vertical-cell th,
	.sp-vertical-cell td{
		display:block;
		width:100% !important;
		border-right:0px !important;
	}
	.sp-vertical-cell2 > tbody > tr > th,
	.sp-vertical-cell2 > tbody > tr > td/*
,
	.resv-price-details th,
	.resv-price-details td
*/{
		display:block;
		width:100% !important;
		border-right: 0;
	}
/*
	.resv-price-details th.col-ninzu-tit{
		background: #f3efeb;
	}
	.resv-price-details .col-data-num,
	.resv-price-details .col-data-subtotal,
	.resv-price-details .col-data-total{
		text-align:right;
		padding-top:0;
	}
	.resv-price-details .col-data-age,
	.resv-price-details .col-data-num,
	.resv-price-details .col-data-subtotal{
		border:0;
		padding-bottom:0;
	}
*/


/*
	.tb-resv-info > tbody > tr > th,
	.tb-resv-info > tbody > tr > td,
	.green_box_form > tbody > tr > th,
	.green_box_form > tbody > tr > td {
	    display:block;
	    width:100%;
	    box-sizing:border-box;
	}
*/
	.tb-resv-info > tbody > tr > th,
	.green_box_form > tbody > tr > th{
	    border-right:0;
	}
	.tb-resv-info > tbody > tr > th.col-ninzu-tit{
		background-color:#f2f2f2 !important;
	}
	.sp-vertical-cell2 .has-table .col-ninzu-tit{
		background-color:transparent !important;
	}
	.resv-price-details .col-data-age{
/* 		width: 60%; */
		line-height: 1.1;
		word-break: break-all;
	}
	.resv-price-details .col-data-num{
		padding-left:0;
		padding-right:0;
	}
	.resv-price-details .col-data-subtotal .total-rate {
/* 	    font-size: 0.9em; */
	}
	
	.note-table dd {
	    font-size: 0.9em;
		line-height: 1.4;
	}
	
	.cancel_wrap {
	    width: 90%;
	}
	
	#resend_mail{
		margin: 10px auto 30px;
		padding: 15px 20px;
		width: 95%;
	}
}


