@charset "utf-8";

/* ==========================================================

title : 多度予約システム

scope : ログイン・予約フォーム・パスワード関係

2016/03/03 230inagaki 新規

rule : 

last modify : 

memo  :


========================================================== */

/*--#login_box--*/

#login_box {
	overflow: hidden;
	background: #fff;
	margin: 0 auto;
	text-align: center;
}

#login_box .read {
	margin: 30px 0;
	font-size: 16px;
	line-height: 1.5;
}

#login_box h2{
	width: 100%;
	padding: 20px 0;
	background: #BF3435;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
}

.login_btn_box {
	width: 400px;
	margin:0 auto;
	border-bottom: 2px solid #ccc;
}

.login_btn_box ul {
	margin:0;
	padding:0;
}

.login_btn_box li {
	margin-bottom: 30px;
}

.btn_close {
	width: 92px;
	margin: 30px auto;
	font-size: 20px;
	text-align: left;
}

.btn_close a {
	display: block;
	width: 92px;
	padding: 10px 0;
	background: url("../image/login/btn_login_close.gif") no-repeat right center;
	color: #333;
}


/* --------------------------------------
ログイン後画面共通
--------------------------------------- */
#main_img {
	margin-top: 20px;
	text-align: center;
}

#form_area {
	width: 100%;
	margin:0 auto 50px;
	padding:1px 0;
	background: #F6F5F1; 
}

.pw {
	margin-top: 30px;
	text-align: center;
	font-size: 14px;
}

.green {
	color: #448720;
}

.btn_login {
	width: 215px;
	height: 50px;
	margin: 0 auto;
	border: none;
	cursor: pointer;
}

.btn_submit {
	width: 215px;
	height: 51px;
	margin: 0 auto;
	border: none;
	cursor: pointer;
}
.read_text {
	width: 770px;
	margin: 30px auto 30px;
	padding-bottom: 30px;
	border-bottom: 2px solid #ccc;
	text-align: center;
	font-size: 23px;
	line-height: 2em;
}
.input_text {
	-webkit-appearance:none;
	width: 350px;
	height: 25px;
	border: 1px solid #ccc;
	border-radius: 0;
	background: #fff;
	font-size: 15px;
	text-indent: 0.5em;
}
.input_btn{
	width: 218px;
	margin: 30px auto 20px;
}
.label_name {
	display: inline-block;
	font-size: 18px;
}
.check {
	margin:10px 0 0 57px;
	font-size: 14px;
	color: #0000ff;
}

.notes{
	margin-left: 220px;
	margin-top: 8px;
	font-size: smaller;
}

/*---------------------------------------
#login ホテル会員ログイン
----------------------------------------*/
#login {
    width: 500px;
    margin: 65px auto;
}
.sub_text_hotel{
	width: 700px;
	margin: 30px auto;
	text-align: left;
	line-height: 1.7em;

}
#login .label_name {
    width: 110px;
}
form[name="login"] div:nth-of-type(1) {
	margin-bottom:30px;
}
/*---------------------------------------
#login_ticket チケット会員ログイン
----------------------------------------*/
#login_ticket {
    width: 600px;
    margin: 65px auto;
}
.sub_text_ticket{
	width: 755px;
	margin: 30px auto;
	text-align: left;
	line-height: 1.7em;

}
#login_ticket .label_name {
    width: 180px;
}
/*---------------------------------------
#login ゴルフ会員ログイン
----------------------------------------*/
#login_golf {
    width: 500px;
    margin: 65px auto;
}
.sub_text_golf {
    width: 700px;
    margin: 30px auto;
    text-align: left;
    font-size: 16px;
    line-height: 1.7em;
}
#login_golf .sec {
	text-indent:0.01px; /* Firefox用 */
    text-overflow:""; /* Firefox用 */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 15px;
	text-indent: 0.5em;
	width: 350px;
	height: 30px;
	border: 1px solid #ccc;
	border-radius: 0;
	background: #fff url("../image/login/form_parts.gif") right 50% no-repeat;
	cursor:pointer;
}

#login_golf .label_name {
    width: 110px;
}
form[name="login_golf"] div:nth-of-type(1) {
	margin-bottom:30px;
}
form[name="login_golf"] div:nth-of-type(2) {
	margin-bottom:30px;
}
/* --------------------------------------
#reminder リマインダー
--------------------------------------- */
#reminder {
	width: 965px;
	margin: 20px auto 10px;
	height: 247px;
	background: url("../image/login/bg_ttl_reminder.gif") no-repeat center top;
	overflow: hidden;
}

#reminder h2{
	width: 365px;
	margin: 0 auto 5px;
	border-bottom: 2px solid #d1d0cc;
	font-size: 24px;
	text-align: center;
	font-weight: 100;
}

.reminder_ttl{
	width: 965px; 
	margin: 60px auto 0;
}

.reminder_txt {
	width: 580px;
	font-size: 16px;
	margin: 50px auto 0;
	line-height: 1.5;
}
form[name="reminder"] div:nth-of-type(1){
	margin-bottom:30px;
}
form[name="remind_golf"] div{
	margin-bottom:30px;
}
form[name="remind_golf"] div:nth-of-type(4){
	margin-bottom:0;
}


#residence_idpw_forget {
	width: 580px;
	margin: 65px auto;
}

#residence_idpw_forget .sec {
	text-indent:0.01px; /* Firefox用 */
    text-overflow:""; /* Firefox用 */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 340px;
	height: 30px;
	border: 1px solid #ccc;
	border-radius: 0;
	background: url("../image/login/form_parts.gif") right 50% no-repeat #fff;
	font-size: 15px;
	text-indent: 0.5em;
	cursor:pointer;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) {
#residence_idpw_forget .sec {
	width: 355px !important;
}
}

#residence_idpw_forget .input_text {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 340px;
	height: 25px;
	text-indent: 0.5em;
	border: 1px solid #ccc;
	border-radius: 0;
	font-size: 15px;
}

#residence_idpw_forget .label_name {
	display: inline-block;
	width: 180px ;
	font-size: 18px;
}

#residence_idpw_forget .input_btn {
	width: 215px;
	margin: 40px auto 0;
}



/* --------------------------------------
#pw_end pw問い合せ送信完了画面
--------------------------------------- */

#pw_end {
	background: url("../image/login/bg_remaind_img.jpg") no-repeat center 25px;
	width: 930px;
	height: 500px;
	margin: 20px auto;
	padding-top: 1px;
}

.pw_wrap {
	width: 750px;
	margin: 70px auto 0;
}

.pw_box {
	width: 740px;
	border: 3px double #e3d5ed;
	background: #fff;
}

#pw_end h2{
	width: 100%;
	background: url("../image/login/bg_ttl_comp_reminder.gif") no-repeat 0 0;
	line-height: 70px;
	font-size: 28px;
	text-align: center;
	font-weight:100;
}

#pw_end .text {
	width: 75%;
	margin: 30px auto;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:0.1em;
}

#pw_end .attention_ttl {
	margin-top: 30px;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	color: #c04c4d;
	text-shadow: 0px 1px 2px #fff;
}

#pw_end .attention_ttl:before {
	content: url("../image/login/ico_excla.png");
	position: relative;
	top: 10px;
	margin-right: 10px;
} 

#pw_end .attention_txt {
	width: 660px;
	margin: 30px auto 0;
	font-size: 14px;
	color: #c04c4d;
	line-height: 2;
}

/* --------------------------------------
#lodging_end 仮予約受付完了
--------------------------------------- */

#lodging_end {
	position: relative;
	width: 930px;
	height: auto;
	margin: 10px auto 0;
	padding-top: 55px;
	background: url("../image/login/bg_remind_comp.jpg") no-repeat 0 -15px;
}

#lodging_end  .text_box {
	width: 745px;
	border: 3px double #ddd;
	margin: 0 auto 0;
	background: #fff;
}

#lodging_end h3{
	background: url("../image/login/bg_ttl_remind_comp.gif") no-repeat 0 0;
	letter-spacing:0.1em;
	line-height:70px;
	text-align: center;
	font-size: 28px;
	font-weight:100;
}
#lodging_end .text {
	width: 62%;
	margin: 30px auto;
	font-size: 18px;
	line-height: 1.5em;
	letter-spacing:0.1em;
}
#lodging_end .attention {
	margin: 35px auto 0;
	text-align: center;
}

#lodging_end h4{
	margin-bottom: 10px;
}

#lodging_end .attention span {
	font-size: 16px;
	color: #c04c4d;
	letter-spacing:0.1em;
}

.btn {
	width: 100%;
	text-align: center;
	margin: 30px auto 50px;
}

.btn_text {
	font-size: 1.1em;
	text-align: center;
	margin-top: 25px;
}

.btn_general {
  color: #FFF;
  background: #d42222;
  border-bottom: solid 3px #a01515;
  border-radius: 5px;
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  display: block;
  font-weight: bold;
  margin: 3em auto;
  padding: 0 2.5em 0 2em;
  position: relative;
  text-decoration: none;
  width: 20em;
}

.btn_general:before {
  background: url(../image/cmn/ico-btn-arrow.png) center center no-repeat;
  background-size: 0.6em;
  border: none;
  bottom: 0;
  content: "";
  display: block;
  right: 0;
  position: absolute;
  top: 0.3em;
  transform: none;
  width: 3em;
}

.btn_general:hover {
  opacity: .8;
  transition: .5s all;
}

.btn_general a {
  color: #fff;
  display: block;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.3em;
  padding: 0.5em 0;
  text-align: center;
}


/* --------------------------------------
お客様情報入力
--------------------------------------- */
#user_info {
	width: 750px;
	margin: 50px auto 50px;
	border: 2px solid #694035; 
}

#user_info .cup {
	font-size: 16px;
	margin-bottom: 20px;
}

.info_wrap {
	width: 670px;
	margin: 40px auto 15px ;
}

#user_form {
	width: 100%;
	font-size: 16px;
}

#user_form dt {
	display:inline-block;
	vertical-align: top;
	width: 210px;
	margin-bottom: 20px;
	background: #f6f5f1;
	line-height: 35px;
}

#user_form label{
	display:inline-block;
	vertical-align: middle;
	text-indent: 1em;
}

#user_form dd {
	display:inline-block;
	vertical-align: top;
	margin-bottom: 20px;
	padding-left: 30px;	
	font-size:0.9em;
}
#user_form dd > p {
	margin-top:5px;
}
#user_form dd > p.note {
	margin-top:20px;
	color:#cb3d3f;
}
#user_form dd input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 290px;
	height: 35px;
	border: 1px solid #ccc;
	border-radius: 0;
	font-size: 1em;
	text-indent: 1em;
}

#user_info .message_ttl{
	width: 670px;
	margin: 20px auto 10px;
	text-align: center;
}

#user_info .message{
	width: 670px;
	margin: 0 auto 10px;
	padding:0;
	text-align: center;
}

#user_info .message > textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 653px;
	height: 120px;
	margin:0 auto;
	padding: 8px;
	resize: none;
	border: 1px solid #ccc;
	border-radius: 0;
	font-size: 16px;
	
}
#user_info + .btn {
	width: 100%;
	text-align: center;
	margin: 30px auto;
}

.text_r {
	text-align: right !important;
}

.ast {
	color: #cb3d3f;
}

.no_ast {
	padding-left: 1.2em;
}

/* --------------------------------------
#check_info 予約確認画面
--------------------------------------- */
/*--共通--*/
#check_info,#check_info_golf{
	width: 670px;
	margin: 50px auto 0;
	border: 2px solid #694035;
	overflow: hidden;
	background: url("../image/login/bg_check_info.gif") 0 0 repeat-y;
}

#check_info h3{
	padding: 10px 0;
	margin-bottom: 20px;
	background:#fdfdf5;
	border-top: 1px solid #cccabb;
	border-bottom: 1px solid #cccabb;
	text-align: center;
	font-size: 18px;
	color: #684036;
}

#check_info h3.ttl_chk_info:before {
	content: "■";
	color: #eacc6c;
	font-size: 16px;
	margin-right: 10px;
}
#check_info h3.ttl_chk_info:after {
	content: "■";
	color: #eacc6c;
	font-size: 16px;
	margin-left: 10px;
}
#check_info h3.ttl_chk_golf:before {
	content: "■";
	color: #9dbf8c;
	font-size: 16px;
	margin-right: 10px;
}

#check_info h3.ttl_chk_golf:after {
	content: "■";
	color: #9dbf8c;
	font-size: 16px;
	margin-left: 10px;
}
.chk_info_box {
	width: 615px;
	margin:30px auto;
	text-align:center;
}
.chk_info_box  section{
	margin-bottom:30px;
}
.chk_info_box li{
#	display:inline-block;
	vertical-align:top;
	margin:1em 1.5em 0 0;
}

.chk_info_box dl {
	letter-spacing:0.1em;
}
.chk_info_box dt {
	line-height:1.2em;
}
.chk_info_box span{
	display:inline-block;
	margin-right:1.2em;
	line-height:1.5em;
}
.chk_info_box span.price{
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border-radius:3px;
	background:#f7e7ec;
	margin:5px;
	padding:5px 10px;
	text-align:center;
	white-space:nowrap;
}
.chk_info_box span.member{
	white-space:nowrap;
}
.chk_price_total{
	margin:15px auto 20px;
	font-size:1.7em;
	color:#fd4442;
	text-align:center;
}
.chk_price_val{
	margin:20px auto 0;
	font-size:0.9em;
	text-align:center;
}
#chk_room > dl {
	padding:30px 0 20px;
	border-bottom:1px dotted #999;
}
#chk_room > dl:first-of-type{
	padding:0 0 20px;
	border-bottom:1px dotted #999;
}
#chk_room > dl:last-of-type{
	padding-bottom:0;
	border-bottom:none;
}
#chk_room > dt{
	margin-top:0;
}
#chk_stay_golf > dl {
	border-bottom:1px dotted #999;
}
#chk_stay_golf > dl:first-of-type{
	border-bottom:1px dotted #999;
}
#chk_stay_golf > dl:last-of-type{
	border-bottom:none;
}
.chk_price_mem{
	margin:20px auto 0;
}
.chk_option_txt{
	margin-top:20px;
}
.chk_note_box{
	width:545px;
	margin:15px auto 20px;
	font-size:0.9em;
	text-align:left;
}
.chk_note_box02{
	width:570px;
	margin:20px auto 40px;
	padding:0 50px 30px;
	border-bottom:1px solid #bf4e4a;
	font-size:0.9em;
	text-align:left;
}
.chk_note_box p,.chk_note_box02 p{
	padding-left:1em;
	text-indent:-1em;
	line-height:1.5em;
}
.chk_note_box p:before,.chk_note_box02 p:before{
	content:"※";
}
.chk_note_box p.note01,.chk_note_box02 p.note01{
	margin-top:5px;
	color:#27a081;
}
.chk_note_box p.note02,.chk_note_box02 p.note02{
	margin-top:5px;
	color:#fe0000;
}
.chk_note_box p.note03,.chk_note_box02 p.note03{
	margin-top:10px;
	color:#27a081;
	text-align:center;
	font-size:1.2em;
}

/*--#chk_play--*/
.chk_playlist{
	/*--width:550px;--*/
	margin:20px auto 40px;
	padding:0 25px;
	text-align:left;
}
.chk_playlist:last-of-type{
	margin:20px auto 0;
	/*--padding-bottom:30px;--*/
}
.chk_playlist dt{
	display:inline-block;
	vertical-align:top;
	margin:0;
	width:205px;
}
.chk_playlist dd{
	display:inline-block;
	vertical-align:top;
}
.chk_playlist dd.price_box{
	display:block;
}

.chk_play_info li{
	display:block;
	margin:0 auto 20px;
}
.chk_play_txt{
	margin:10px auto 0;
	width:340px;
}
.chk_play_txt li{
	display:block;
	margin:0 auto 10px;
	text-align:left;
	font-size:0.9em;
	line-height:1.5em;
}
.chk_play_txt li:last-child{
	margin:0 auto;
}
/*--#chk_stay_golf--*/
.golfplay_type01{
	width:130px;
	margin:8px 0;
	background:#c04c4d;
	color:#fff;
	font-size:0.9em;
	text-align:center;
	line-height:1.8em;
}
.golfplay_type02{
	width:130px;
	margin:8px 0;
	background:#4b4794;
	color:#fff;
	font-size:0.9em;
	text-align:center;
	line-height:1.8em;
}
.golfplay_type03{
	width:130px;
	margin:8px 0;
	background:#ff8503;
	color:#fff;
	font-size:0.9em;
	text-align:center;
	line-height:1.8em;
}
.golftype_nomal{
	width:130px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background:#bcfec0;
	text-align:center;
	line-height:1.8em;
}
.golftype_early{
	width:130px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background:#bbf8fb;
	text-align:center;
	line-height:1.8em;
}
.golftype_late{
	width:130px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background:#ffeaa7;
	text-align:center;
	line-height:1.8em;
}
.chk_price_stay_golf {
	margin:20px 0;
    font-size: 1.7em;
    color: #fd4442;
}
.chk_stay_golf_free{
	display:inline-block;
	margin:20px auto 0;
	width:215px;
	height:40px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	line-height:40px;
	text-align:center;
}
.chk_stay_golf_free.half{
	background:#bcfec0;
}

/*--#chk_price--*/
#chk_price{
	border-top:1px solid #bf4e4a;
}
.chk_total_price{
	width: 440px;
	margin:20px auto 0;
}
.chk_total_price li{
	margin-bottom:20px;
}
.chk_total_price li:first-child{
	vertical-align:middle;
	font-size:1.5em;
}
.chk_total_price li:last-child{
	vertical-align:middle;
#	font-size:1.2em;
}
.chk_total_all{
	width:430px;
	margin:0 auto 30px;
	border:3px solid #c04c4d;
}
.chk_total_all dt{
	display:inline-block;
	vertical-align:middle;
	width:145px;
	margin:0 0 0 -1px;
	padding:20px 0;
	background:#c04c4d;
	color:#fff;
	font-weight:800;
	font-size:1.3em;
}
.chk_total_all dd{
	display:inline-block;
	vertical-align:middle;
	width:277px;
	font-size:2em;
	color:#fd4442;
}
.chk_txt_golf{
	color:#fe0000;
	margin:30px auto 50px;
	text-align:left;
	text-indent:-1em;
	padding-left:1em;
	line-height:1.3em;
}
/*--#chk_ticket--*/
.chk_ticket{
	width:365px;
	margin:20px auto 0;
}
.chk_ticket dt{
	text-align:center;
	color: #684036;
	font-weight:800;
	margin-top:0;
}
.chk_ticket dt:before {
	content: "■";
	color: #eacc6c;
	font-size: 0.9em;
	margin-right: 10px;
}
.chk_ticket dt:after {
	content: "■";
	color: #eacc6c;
	font-size: 0.9em;
	margin-left: 10px;
}
.chk_ticket dd{
	margin:0 auto 30px;
}
.chk_ticket li{
	display:inline-block;
	vertical-align:top;
	width:170px;
	margin:10px 0 0 0;
	border: 1px solid #694135;
    background: #fbfdd5;
    text-align: center;
    line-height: 30px;
}
.chk_ticket li.blank{
	width:172px;
	height:32px;
	background:url("../image/login/bg_check_ticket.png") repeat 0 0;
	border:none;
}

.chk_ticket li:nth-child(odd){
	margin-right:5px;
}

/*--#chk_customer--*/
.chk_customer_info{
	width:450px;
	margin:0 auto;
}
.chk_customer_info li{
	display:block;
	margin:10px 0 20px 0;
}
.chk_customer_info li span{
	margin:10px 0 0 10px;
}
.chk_customer_mess{
	margin:0 auto 30px;
}
.chk_customer_mess dt{
	margin: 15px auto;
	font-size: 1em;
}
.chk_customer_mess dd{
	text-align:left;
	line-height:2em;
}
/*--共通エラー画面--*/
.error_box{
	width:700px;
	margin:0 auto;
	text-align:center;
}
.er_ttl{
	margin-top:50px;
	color:#c04c4d;
	font-weight:800;
	font-size:1.5em;
}
.er_ttl img{
	margin-bottom:20px;
}
.error_alart{
	margin-top:20px;
	font-size:1.3em;
}
.error_txt{
	width:580px;
	margin:50px auto 0;
	text-align:left;
	line-height:1.5em
}
select::-ms-expand {
  display: none;
}