.form-box{}

.form-box .form-subtext{
	margin:10px;
	line-height: 150%;
}
.form-box .shop-attbox{
	line-height: 150%;
	margin: 0 0 10px 0;
	border: 1px solid #CC0000;
	padding: 8px;
}

.form-box .form-list{
	width: 100%;
    border-collapse: collapse;
    border: solid 1px #1869c3;
}

.form-box .form-list th{
    padding: 5px;
    background: #EEF5FC;
    border: solid 1px #1869c3;
    width: 25%;
    color: #1869c3;
}
.form-box .form-list td{
	width: 75%;
    border: solid 1px #1869c3;
    padding: 5px;
}

.form-box .form-list p + p{
	margin-top: 5px;
}

.form-box .form-list input[type=text],
.form-box .form-list input[type=email],
.form-box .form-list input[type=tel],
.form-box .form-list input[type=number],
.form-box .form-list select {
    height: 30px;
	width:100%;
}

.form-box .form-list .input-innerst{
	display: inline-block;
	margin-bottom: 5px;
}

.form-box .radio_btn,
.form-box .check_btn {
   padding:0 5px;
}
.form-box .radio_btn p,
.form-box .check_btn p {
   margin:10px 0;
}

.form-box .naiyou textarea{
	width: 100%;
    height: 180px;
    padding: 5px;
    resize:none;
}

.form-box .form-list a{
	color:#1869c3;
}


.btn-box .submit-button{
	position:relative;
}

.btn-box .submit-button,
.btn-box .backtop{
	display: inline-block;
	width:300px;
	font-family:'Noto sans japanese',sans-serif;
	font-size:16px;
	border:1px solid #1869c3; 
	font-weight:500;
	color:#FFFFFF;
	background:#1869c3;
	padding:15px;
	text-align: center;
}

.error .btn-box .pageback{
	display: inline-block;
	width:300px;
	font-family:'Noto sans japanese',sans-serif;
	font-size:16px;
	font-weight:500;
	color:#FFFFFF;
	padding:20px;
	text-align: center;
	position:relative;
	background:#ff0000;
	border:1px solid #ff0000; 
}
/*shop-reserve*/
.al-subst{
	display: block;
    text-align: left;
    padding: 10px;
    background: #EEF5FC;
    font-weight: bold;
    color: #1869c3;
    border: solid 1px #1869c3;
}

.shop-reserve .select-list{
	display: table;
	width: 100%;
    overflow: hidden;
    margin: 10px 0;
    padding: 0;
}

.shop-reserve .select-list li{
	display: table-cell;
	width:50%;
	vertical-align: middle;
	text-align: center;
	padding:0 5px;
}

.shop-reserve .select-list li input[type=radio]{
	display: none;
}

.shop-reserve .select-list li label{
	display: block;
	padding:10px;
	background:#999999;
	color:#FFFFFF;
		
	font-family:'Noto sans japanese',sans-serif;
	font-size:20px;
	font-weight:600;
	line-height: 130%;
}

.shop-reserve .select-list li label img{
	width:30px;
	vertical-align: middle;
	margin-bottom:10px;
}

.shop-reserve .select-list li label span{
	display: block;
	vertical-align: middle;
}

.shop-reserve .select-list li input[type=radio]:checked + label{
	background:#1869c3;
}

/*.shop-reserve .todohuken-list{
	margin:20px 10px;
}

.shop-reserve .todohuken-list dl{
	margin:10px 0;
	display: block;
	width:100%;
	overflow: hidden;
	border:1px solid #1869c3;
}

.shop-reserve .todohuken-list dl dt{
	color:#1869c3;
	font-weight:bold;	
	padding:20px;
	background:#EEF5FC;
}

.shop-reserve .todohuken-list dl dd{
	padding:10px;
}

.shop-reserve .todohuken-list dl dd span{
	display: inline-block;
	padding:10px;
	width:80px;
	text-align: center;
	margin:0 5px 5px 0;
	text-decoration: underline;
	color:#1869c3;
}

.shop-reserve .todohuken-list dl dd span:hover{
	background:#EEF5FC;
}

.shop-reserve .sl-shoplist{
	margin:10px 0;
}

.shop-reserve .sl-shoplist ul{
	display: block;
	overflow: hidden;
	border:1px solid #1869c3;
	margin-bottom:10px;
	padding:10px;
}

.shop-reserve .sl-shoplist ul li{
	line-height: 150%;
}

.shop-reserve .sl-shoplist ul li:first-of-type{
	font-size:16px;
	border-bottom: 1px solid #EEF5FC;
    font-weight: bold;
    text-decoration: underline;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

.shop-reserve .sl-shoplist ul.sl-sl-tenpo li:first-of-type span{
	text-decoration: underline;
	color:#1869c3;
}

.shop-reserve .sl-shoplist ul.sl-sl-tenpo li:nth-of-type(3){
	font-weight: bold;
    margin: 10px 0;
}

.shop-reserve .sl-shoplist ul.sl-sl-tenpo li:nth-of-type(3) a{
	color:#1869c3;
}

.shop-reserve .sl-shoplist ul.sl-sl-tenpo li:last-of-type a{
	display: block;
	padding:10px;
	color:#FFFFFF;
	background:#1869c3;
	font-weight:bold;
	text-align: center;
}

.shop-reserve .sl-shoplist ul.sl-sl-tenpo li:last-of-type a:hover{
	opacity: .7;
	text-decoration:none;
}


.shop-reserve .sl-dateselect{
	overflow: hidden;
	margin: 10px 0;
    padding: 10px 5px;
	background:#EEF5FC;
}

.shop-reserve .sl-dateselect ul {
    display: block;
    overflow: hidden;
    color: #FFFFFF;
    font-weight: bold;
    padding: 0 5px;
}

.shop-reserve .sl-dateselect ul li.back-week {
    float: left;
    display: inline-block;
    padding: 10px;
    background: #FF0004;
}
.shop-reserve .sl-dateselect ul li.next-week {
    float: right;
    display: inline-block;
    padding: 10px;
    background: #FF0004;
}

.shop-reserve .sl-dateselect table{
	margin:10px 0;
	width:100%;
	border-collapse: separate;
    border-spacing: 2px;
}

.shop-reserve .sl-dateselect table tbody{
	
}

.shop-reserve .sl-dateselect table tr{}

.shop-reserve .sl-dateselect table tr th{
	width:12%;
	padding:10px 0;
	background:#FFFFFF;
	text-align: center;
}

.shop-reserve .sl-dateselect table tr td{
	width:12%;
	text-align: center;
}

.shop-reserve .sl-dateselect table tr td.ng{
	background:#EEF5FC;
	text-decoration:line-through;
	padding:10px;
}

.shop-reserve .sl-dateselect table tr td.ok{
}

.shop-reserve .sl-dateselect table tr td.ok a{
	padding: 10px 0;
	display: block;
	background:#1869c3;
	color:#FFFFFF;
}

.shop-reserve .sl-dateselect table tr td.ok a:hover{
	opacity: .7;
	text-decoration: none;
}
*/

.shop-reserve .about-list ul li label {
    display: inline-block;
    margin-left: 15px;
	width:30%;
}

.shop-reserve .about-list ul li span.alist-desc input[type=text],
.shop-reserve .about-list ul li span.alist-desc input[type="email"],
.shop-reserve .about-list ul li span.alist-desc input[type="tel"]{
	height:30px;
}

.estimated_table tr td input[type=text],
.estimated_table tr td input[type="email"],
.estimated_table tr td input[type="tel"]{
	height:30px;
	box-sizing: border-box;
}

	
#sr-formdesc{
	display: none;
}
.emphasis-text{
	display: block;
	margin-top: 5px;
	color: #FF0000;
	font-weight: bolder;
		
}


/*20181210おすすめサイト申請用追加*/
.form-box .form-subst{
	margin:10px 0 5px;
	font-size:16px;
	font-weight:bold;
}

.siterecommend .green-btn{
	display: inline-block;
    font-family: 'Noto sans japanese',sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #FFFFFF;
    text-align: center;
    background: #00a372;
    border: 1px solid #00a372;
    border-radius: 5px;
	width: 100%;
    max-width: 400px;
    height: 40px;
    line-height: 40px;
}

.siterecommend .submit-button{
	background: #00a372;
	border-color: #00a372;
}


/**/
.form-select{
	display: block;
	overflow: hidden;
	margin: 20px 0;
}

.form-select li{
	display: block;
	border: 1px solid #000000;
	background: url(../img/common/icon-right.png) no-repeat 97% center;
	background-size: 15px;
}

.form-select li + li{
	margin-top: 10px;
}
.form-select li a {
	display: block;
	padding: 10px;
	cursor: pointer;
	width: 100%;
	height: 100%;
}
.form-select li a.fs-on{
	border-color: #1869c3;
	background: #1869c3;
	color: #FFFFFF;
}

.shop-detail-reserve{}

.reserve-flow{
	display: table;
	width: 100%;
	overflow: hidden;
	margin: 20px 0;
}

.reserve-flow li{
	display: table-cell;
	width: 33.33%;
	color: #FFFFFF;
	height: 50px;
	text-align: center;
	vertical-align: middle;
	position: relative;
	border: 1px solid;
}

.reserve-flow li:first-of-type{
	background: #1ca097;
	border-color: #1ca097;
}

.reserve-flow li:first-of-type.now{
	color: #1ca097;
	background: #FFFFFF;
	border-right: 1px solid #FFFFFF;
}

.reserve-flow li:first-of-type:after{
	content: "";
	position: absolute;
	top: 0;
	right: -1px;
	z-index: 99;
	
	-ms-transform: translateX( 100% );
	-webkit-transform: translateX( 100% );
	transform: translateX( 100% );
	
    box-sizing: border-box;
    width: 48px;
    height: 48px;
    border: 24px solid transparent;
    border-left: 15px solid #1ca097;
}

.reserve-flow li:nth-of-type(2){
	background: #1870b6;
	border-color: #1870b6;
}

.reserve-flow li:nth-of-type(2).now{
	color: #1870b6;
	background: #FFFFFF;
	border-right: 1px solid #FFFFFF;
}


.reserve-flow li:nth-of-type(2):after{
	content: "";
	position: absolute;
	top: 0;
	right: -1px;
	z-index: 99;
	
	-ms-transform: translateX( 100% );
	-webkit-transform: translateX( 100% );
	transform: translateX( 100% );
	
    box-sizing: border-box;
    width: 48px;
    height: 48px;
    border: 24px solid transparent;
    border-left: 15px solid #1870b6;
}

.reserve-flow li:last-of-type{
	background: #162e86;
	border-color: #162e86;
}


.reserve-flow li.now{
	font-weight: bold;
}

.reserve-flow li.now:after{
	border-left-color: #FFFFFF;
}


.shop-detail-reserve .date-select{
	display: block;
	overflow: hidden;
	margin: 20px 0;
}

.shop-detail-reserve .date-select li{
	width: 49%;
	display: block;
	border: 1px solid #1869c3;
	padding: 10px;
	text-align: center;
	color: #1869c3;
	cursor: pointer;
}

.shop-detail-reserve .date-select li.ds-back{
	display: none;
	float: left;
	background: url(../img/common/icon-left-b.png) no-repeat 3% center;
	background-size: 10px;
}

.shop-detail-reserve .date-select li.ds-next{
	float: right;
	background: url(../img/common/icon-right-b.png) no-repeat 97% center;
	background-size: 10px;
}

.shop-detail-reserve .reserve-att{
	margin: 20px 0;
	display: block;
	border: 1px solid #FF0004;
	padding: 10px;
	color: #FF0004;
	line-height: 150%;
}

.reserve-calendar{
	margin: 20px 0;
	display: block;
	overflow-x: auto;
    padding-bottom: 10px;
}

.reserve-calendar::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    background-color: #f5f5f5;
}

.reserve-calendar::-webkit-scrollbar{
    height: 3px;
    background-color: #f5f5f5;
}

.reserve-calendar::-webkit-scrollbar-thumb{
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    background-color: #1869c3;
}


.reserve-calendar table{
	border-collapse: collapse;
	width: 100%;
	table-layout: fixed;
}

.reserve-calendar table tr{
	border: 1px solid #000000;
}

.reserve-calendar table tr th,
.reserve-calendar table tr td{
	border-right: 1px solid #000000;
	padding: 8px;
	text-align: center;
	width: 80px;
}

.reserve-calendar table tr td.rc-on{
	cursor: pointer;
}

.reserve-calendar table tr .rc-sat{
	background: #6fbeeb;
}
.reserve-calendar table tr .rc-sun{
	background: #f8c399;
}

.shop-reserve-form{
	display: none;
}

.reserve-resultbox{
	margin: 20px 0;
}

.reserve-resultbox ul{
	display: block;
	overflow: hidden;
	border: 1px solid #1869c3;
	border-bottom: 0;
}

.reserve-resultbox ul li{
	display: block;
	padding: 10px;
	border-bottom: 1px solid #1869c3;
}

.reserve-resultbox ul li img{
	width: 20px;
	vertical-align: middle;
}


.shop-detail-contact{
	display: none;
}

/* キャンペーンバナー（コンパクト版） */

.campaign-banner {
    float: left;
    margin-left: 2em;
    color: #fff;
    width: 32%;
}
.campaign-banner-inner {
    background: #00a78f;
    display: block;
    padding: 0em 0.5em;
    position: relative;
}
.campaign-banner-inner strong {
    font-weight: normal;
    line-height: 1;
}
