﻿@charset "utf-8";

.fotter_address{
padding: 30px 0;
    font-size: 80%;
    background: #152d15;
    color: #ffffff;
    font-family: trajan-pro-3, serif;
    font-style: normal;
    font-weight: 200;
    text-align: center;
}
/* 送信完了画面
=======================================================================*/
.thanks {
}
.thanks p {
	text-align: center;
    font-size: 22px;
    margin: 100px 0;
    line-height: 2;
}
#form_contents .thanks .submit a {
	padding: 10px 0;
    width: 50%;
    color: #333;
    font-size: 15px;
}

.thanks_page {
    padding-top: 105px !important;
}

/*【SP】*/
@media screen and (max-width:768px) {
body .thanks_page {
    padding-top: 50px !important;
}
}


/* フォームエリアスタイル打ち消し
=======================================================================*/
#form_contents table#calenderTable th,
#form_contents table#calenderTable td {
    padding: 10px;
}

#form_contents table#calenderTable th {
    text-align: center;
    width: auto;
    padding: 0;
    vertical-align: middle;
}


/* カレンダー　タイトルエリア
=======================================================================*/
#calenderTable th.calenderHeader {
	padding:0;
	background: #fff;
}
#calenderTable th.calenderHeader:nth-child(2) {
	font-size: 25px;
    font-weight: bold;
}
#calenderTable th.calenderHeader a {
	background:#ECECEC;
	display: block;
    font-size: 30px;
    padding: 20px 0;
}
#calenderTable th.calenderHeader a:hover {
	background:#DCDCDC;
}

/* カレンダー　日付けエリア
=======================================================================*/
#calenderTable tr td {
	height: 100px;
    font-size: 18px;
}


/* 曜日
=======================================================================*/
#calenderTable tr:nth-child(2) th {
	background:#fff;
	font-size: 16px;
    padding: 10px 0 !important;
}
#calenderTable th.youbi_0 {
	background:#F9E0E6;
}
#calenderTable td.youbi_0 {
	background:#FFF0F4 !important;
}

#calenderTable td.shukujitu {
	background:#FFF0F4 !important;
}

#calenderTable th.youbi_6 {
	background:#BBDEFF;
}
#calenderTable td.youbi_6 {
	background:#E1F0FF !important;
}

#calenderTable td {
    background: #ffffff;
}


/* 定休日 休業日
=======================================================================*/
#calenderTable td.closed,
#calenderTable td.holiday {
	background:#EEEEEE;
}

#calenderTable td.closed {
	position:relative;
}
#calenderTable td.closed:before {
	content: "定休日";
    font-size: 11px;
    margin: 0 5px 0 0;
    background: #555;
    color: #fff;
    padding: 1px 5px;
    vertical-align: 3px;
}


/* 予約可能日
=======================================================================*/
#calenderTable tr td .schedulePulldownList {
	padding: 10px 0;
    margin: 0 0 5px 0;
	border-bottom:1px dashed #B0B0B0;
	font-size: 15px;
    font-weight: bold;
    text-align: right;
}
#calenderTable tr td .schedulePulldownList:last-child {
	margin-bottom:0;
	border-bottom:none;
}
#calenderTable tr td .schedulePulldownList .countNum {
    color: red;
    display: block;
    margin: 0 0 5px 0;
    display: none;
}
#calenderTable tr td .schedulePulldownList {
}

#calenderTable form.reservForm input {
	background: #35242d;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 13px;
    display: block;
    width: 100%;
    padding: 12px 60px;
	transition: all 0.3s linear;
}

#calenderTable .reservBtnWrap input {
	background: #ccc;
    border: none;
    border-radius: 100px;
    font-size: 13px;
    display: block;
    width: 100%;
    padding: 7px 0;
    transition: all 0.3s linear;
	line-height:1;
}



#calenderTable form.reservForm input:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}


/* 【SP】
=======================================================================*/
@media screen and (max-width:768px) {

#form_contents {
    font-size: 90%;
}

/* スタイル打ち消し
=======================================================================*/
#calenderTable tr {
	width:100%;
}
#calenderTable td:empty {
    display: none;
}


/* ヘッダー曜日削除
=======================================================================*/
#calenderTable tr:nth-child(2) {
	display:none;
}


/* カレンダー　タイトルエリア
=======================================================================*/
#calenderTable th.calenderHeader:nth-child(2) {
	width:70% !important;
    border: none;
}
#calenderTable th.calenderHeader:nth-child(1),
#calenderTable th.calenderHeader:nth-child(3) {
	width:15% !important;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	border-top: none;
    border-bottom: none;
	box-sizing:border-box;
}
#form_contents table#calenderTable th {
    display: inline-block;
}
#form_contents table#calenderTable th:empty {
	border:none !important;
}
#form_contents tr:first-child {
	border-top:1px solid #ccc !important;
	border-bottom:1px solid #ccc !important;
}


/* カレンダー　日付けエリア
=======================================================================*/
#form_contents table#calenderTable td {
    padding: 10px 5%;
    width: 89.5%;
	height: auto;
	border-top: none;
}
#calenderTable form.reservForm input {
	max-width:100%;
}

#form_contents table#calenderTable tr {
	border:none;
}

#calenderTable tr td {
	font-size: 22px;
}
#calenderTable tr td .schedulePulldownList .countNum {
    font-size: 20px;
}
#calenderTable form.reservForm input {
	font-size: 20px;
	padding: 15px 0;
}
#calenderTable tr td .schedulePulldownList {
    padding: 0 0 15px 0;
    margin: 0 0 10px 0;
	font-size: 22px;
}
#calenderTable .reservBtnWrap input {
	font-size: 20px;
    padding: 15px 0;
	max-width:100% !important;
}


/* カレンダー　曜日
=======================================================================*/
#calenderTable td {
	position:relative;
}

#calenderTable td.closed:before {
	content: "定休日" !important;
}
#calenderTable td:nth-child(1):before {
    content: "日";
}
#calenderTable td:nth-child(2):before {
    content: "月";
}
#calenderTable td:nth-child(3):before {
    content: "火";
}
#calenderTable td:nth-child(4):before {
    content: "水";
}
#calenderTable td:nth-child(5):before {
    content: "木";
}
#calenderTable td:nth-child(6):before {
    content: "金";
}
#calenderTable td:nth-child(7):before {
    content: "土";
}

#calenderTable td:before {
    margin: 0 10px 0 0 !important;
    padding: 1px 6px;
    height: 25px;
    width: 25px;
    background: #EAEAEA;
    text-align: center;
    line-height: 25px;
	font-size: 16px !important;
}


}

#form_contents {
	padding: 100px 0 0 0;
	max-width: 1260px;
	margin: 0 auto;
}
#form_contents #PageTitle {
	padding-top: 0;
}

#form_contents .contact-form {
/*	box-shadow: 0 2px 5px #ddd;
    border-radius: 10px;*/
    padding: 50px 0%;
/*    width: 80%;*/
    margin: 0 auto;
}
#form_contents h2 {
	text-align: center;
	background: #152D15;
    color: #fff;
    font-weight: bold;
    padding: 12px 20px;
    font-size: 22px;
/*	margin: 0 0 40px 0;*/
}

.select_text{
	text-align: center;
    font-weight: bold;
    padding: 12px 20px;
    font-size: 22px;

}

.month_text{
    text-align: center;
    background: #bea873;
    font-weight: bold;
    padding: 12px 20px;
    font-size: 22px;

}


#form_contents h3 {
	margin: 0 0 20px 0;
    font-weight: bold;
    font-size: 20px;
    padding: 10px 0 10px 0;
    border-bottom: 1px solid #ddd;
}

/* テーブル　入力
=======================================================================*/
#form_contents table {
/*	width:100%;*/
	max-width:1200px;
	margin: 30px auto;
}
#form_contents table th, #form_contents table td {
    vertical-align: top;
    padding: 10px 0 30px 30px;
}

#form_contents table th {
    text-align: left;
/*    width: 40%;*/
    padding-top: 10px;
}



#form_contents table small {
	font-size:12px;
}

/* お名前 -----------------*/
#form_contents table  #RowMessageName1 .col-input small,
#form_contents table #RowMessageNameKana1 .col-input small {
	letter-spacing: 5px;
    font-size: 12px;
}
#form_contents table #RowMessageName1 .col-input span:nth-child(1) .mail-before-attachment,
#form_contents table #RowMessageNameKana1 .col-input span:nth-child(1) .mail-before-attachment {
	margin: 0 10px 0 0;
}
#form_contents table #RowMessageName1 .col-input span:nth-child(2) .mail-before-attachment,
#form_contents table #RowMessageNameKana1 .col-input span:nth-child(2) .mail-before-attachment {
	margin: 0 10px 0 20px;
}

/* 住所 -----------------*/
#form_contents table #RowMessageZip #FieldMessageZip input {
	margin:0 10px;
}
#form_contents table #RowMessageZip td > span {
	padding: 0 0 15px 0;
    display: block;
}

/* 電話番号 -----------------*/
#form_contents table #RowMessageTel1 .col-input .mail-after-attachment {
	margin: 0 10px;
}

/* メールアドレス -----------------*/
#form_contents table #RowMessageEmail1 .col-input input {
	margin: 6px 10px 9px 0;
}

/* 家族構成
=======================================================================*/
#RowMessageKazoku1 .col-input span span {
	margin: 0 10px 0 0;
	font-size: 12px;
}
#RowMessageKazoku1 .col-input .mail-after-attachment {
	margin: 0 0 0 10px;
	font-size: 12px;
}
#RowMessageKazoku1 .col-input #FieldMessageKazoku1 {
}

/* ご計画時期
=======================================================================*/
#RowMessageJiki .col-input label {
	margin: 0 15px 0 0;
}

/* 弊社を知ったきっかけ
=======================================================================*/
#RowMessageKikkake .col-input span small {
	margin: 0 10px 0 15px;
}



/* ラジオ　チェック　ボタンカスタマイズ
=======================================================================*/
input[type="radio"] {
	display: none;
}
input[type="radio"] + label{
	padding-left: 30px;
	position:relative;
	margin-right: 30px;
}
input[type="radio"] + label::before{
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 50%;
}
input[type="radio"]:checked + label{
  color: #973E23;
}
input[type="radio"]:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 4px;
  width: 14px;
  height: 14px;
  background: #973E23;
  border-radius: 50%;
}


input[type="checkbox"] {
	display: none;
}
.checkbox label {
	padding-left: 30px;
	position:relative;
	margin-right: 30px;
}
.checkbox label::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 17px;
	height: 17px;
	border: 1px solid #999;
	border-radius: 2px;
}
input[type="checkbox"]:checked + label {
	color: #973E23;
}
input[type="checkbox"]:checked + label:after {
	content: "";
	display: block;
	position: absolute;
	top: -5px;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 6px solid #973E23;
	border-right: 6px solid #973E23;
}

/* ボタン
=======================================================================*/
#form_contents .submit #tes span {
	background:#35242d;
	padding:10px 30px;
	border-radius:3px;
}

#form_contents .submit .button {
	border:none;
	color:#fff;
	text-shadow:none;
	transition: all 0.5s linear;
	margin:0 10px;
}
#form_contents .submit .button:hover {
	filter:alpha(opacity=90);
	-moz-opacity: 0.9;
	opacity: 0.9;
	transition: all 0.5s linear;
}
#form_contents .submit .btn-gray,
#form_contents .submit #BtnMessageBack {
	background:#bea873;
	font-size:12px;
}
#form_contents .submit #BtnMessageConfirm,
#form_contents .submit #BtnMessageSubmit{
	background:#973e23;
	font-size:17px;
	font-weight:bold;
	padding:15px 20px;
}
#form_contents .submit #BtnMessageConfirm.btnlock{
	pointer-events:none;
	background:#9B9B9B;
}

/* ボタン 確認
=======================================================================*/

/* エラーメッセージ -----------------*/
#form_contents .alert-message {
	color:#F36D86;
	margin:0 0 20px 0;
}
#form_contents .error-message {
	color:#F36D86;
}

/* チェックボックス -----------------*/
#form_contents .checkbox {
	margin: 10px 0 20px 0;
}
#form_contents #FieldMessageKikkakeTx1,
#form_contents #FieldMessageKikkakeTx2 {
	margin: -14px 0 20px 20px;
    display: block;
}
#form_contents #FieldMessageKikkakeTx1 .mail-before-attachment,
#form_contents #FieldMessageKikkakeTx2 .mail-before-attachment {
}

/* 必須　任意
=======================================================================*/
#form_contents .required,
#form_contents .normal {
	color:#fff;
	padding:3px 10px;
	font-size:12px;
	border-radius:2px;
	margin:0 0 0 5px;
    vertical-align: 3px;
}
#form_contents .required {
	background:#973E23;
}
#form_contents .normal {
	background:#152D15;
}

/* 入力ボックス
=======================================================================*/
#form_contents input,
#form_contents select,
#form_contents textarea{
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 10px 20px;
    border-radius: 10px;
    font-size: 15px;
/*	color:#fff;*/
}

@media screen and (max-width:1060px) {
#form_contents input,
#form_contents select,
#form_contents textarea{
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 12px 40px;
    border-radius: 5px;
    font-size: 15px;
}
#form_contents input:disabled {
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 7px 40px;
    border-radius: 5px;
    font-size: 15px;
}
}
@media screen and (max-width:900px) {
#form_contents input,
#form_contents select,
#form_contents textarea{
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 12px 20px;
    border-radius: 5px;
    font-size: 15px;
    width:90%;
}

#form_contents input:disabled {
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 12px 60px !important;
    border-radius: 10px;
    font-size: 15px;
}

#form_contents h2 {
	text-align: center;
	background: #152D15;
    color: #fff;
    font-weight: bold;
    padding: 12px 0;
    font-size: 100%;
    line-height:2em;
}

.select_text{
	text-align: center;
    font-weight: bold;
    padding: 12px 0;
    font-size: 100%;
    line-height:2em;

}

}



#form_contents input:disabled {
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 10px 60px;
    border-radius: 5px;
    font-size: 15px;
    color:#333333;
}
#form_contents textarea {
	line-height: 1.8;
    padding: 15px 25px;
}

.reqNum{
	background:rgba(255,240,240,0.8);
	padding:20px;
	border-radius:5px;
	position:fixed;
	bottom:10px;
	left:10px;
}
.reqNum p{
	font-size:16px;
	text-align:center;
}
.reqNum p span{
	font-size:28px;
	color:#AA0000;
}

.req{
	background-color:#f9eaeb !important;
}
#tes{
	text-align:center;
}
#tes span{
	background:#AA0000;
	color:#FFF;
	padding:5px 20px;
	font-size:14px;
	display:inline-block;
	margin-top:30px;
}


/* カレンダー
=======================================================================*/

/* 空欄削除
-----------------*/
.calendar_main .scheduleCalendar .scheduleOn,
.calendar_main .scheduleCalendar .holiday{
	display: block !important;
}
.calendar_main .scheduleCalendar td:empty {
	display: none;
}



.calendar table{
	width:100%;
}
.calendar_main table th,
.calendar_main table td{
	border:1px solid #ccc;
	margin-bottom: -1px;
}
.calendar_main {
	margin:0 0 30px;
}

#Cale_title {
	text-align:center;
	color:#fff;
	margin:20px 0;
}
#Cale_title .title{
	background: #3e3432;
vertical-align: middle;
font-size: 1.2em;
border-left:5px solid #fff;
border-right:5px solid #fff;
}
#Cale_title .link{
	background:#c4bdba;
	width: 10%;
	font-size:0.9em;
}
#Cale_title td a{
	display: inline-block;
width: 100%;
padding: 15px 0;
}

.scheduleCalendar thead {
	display:none;
}
.scheduleCalendar td{
	/* width: 94%; */
}
.scheduleCalendar td,
.scheduleCalendar th{
padding: 10px;
    font-size: 0.8em;
    display: block;
	position: relative;
	min-height: 1.5em;
}
.scheduleCalendar .sun,
.scheduleCalendar tbody tr td:first-child{
	background:#ffe2d7;
}
.scheduleCalendar .sat,
.scheduleCalendar tbody tr td:last-child{
	background:#daebff;
}
.scheduleCalendar .holiday {
	background:#d6d4d4 !important;
}
.scheduleCalendar a{
	text-decoration: underline !important;
margin: 0 0 5px 0;
font-size: 1.2em;
display: inline-block;
font-weight:bold;
}
.scheduleCalendar .ibnum{
width: 100%;
display: inline-block;
font-size: 1.3em;
font-weight: bold;
}
.scheduleCalendar .sun .ibnum,
.scheduleCalendar tbody td:first-child .ibnum {
	color:#eb552d;
}
.scheduleCalendar .sat .ibnum,
.scheduleCalendar tbody td:last-child .ibnum{
	color:#2c82e5;
}
.scheduleCalendar .holiday .ibnum{
	color:#A4A4A4 !important;
}

.scheduleCalendar td:after {
    position: absolute;
    top: 0.8em;
    left: 40px;
    height: 25px;
    width: 25px;
    background: #EAEAEA;
    text-align: center;
    line-height: 25px;
}

.scheduleCalendar td:nth-child(2):after {
    content: "月";
}
.scheduleCalendar td:nth-child(3):after {
    content: "火";
}
.scheduleCalendar td:nth-child(4):after {
    content: "水（定休日）";
	width: 90px;
    background: #888888;
    color: #fff;
}
.scheduleCalendar td:nth-child(5):after {
    content: "木";
}
.scheduleCalendar td:nth-child(6):after {
    content: "金";
}
.scheduleCalendar td:nth-child(7):after {
    content: "土";
    background: #6DA1ED;
	color:#fff;
}
.scheduleCalendar td:nth-child(1):after {
    content: "日";
    background: #FFA0A3;
	color:#fff;
}


/* 【SP】
=======================================================================*/
@media screen and (max-width:768px) {
#form_contents .contact-form {
    padding: 30px 0;
    width: 90%;
}
#form_contents table th,
#form_contents table td {
	list-style-type: none;
}

#form_contents table th {
	width: 100%;
    background: none;
    padding: 20px 0;
    font-size: 100%;
}
#form_contents table small {
    font-size: 15px;
}
#form_contents textarea {
    width: 80% !important;
}

#form_contents .submit .button {
	margin:10px 0;
}

.reqNum {
    padding: 10px 0;
    border-radius:0;
    bottom: 0;
    left: 0;
    width: 100%;
}
.reqNum br {
	display:none;
}

#form_contents #RowMessageName1 td > span,
#form_contents #RowMessageNameKana1 td > span {
	display:block;
	margin: 0 0 20px 0;
}
#form_contents #RowMessageName1 span,
#form_contents #RowMessageNameKana1 span {
	margin-left:0 !important;
}

#RowMessageTel1 input {
/*	width: 70%;*/
}

#RowMessageKikkake .col-input span small {
    margin: 0 0 10px 0;
    display: block;
}

.main tr {
    width: 95%;
    display: block;
}
#form_contents input,
#form_contents select,
#form_contents textarea {
/*    max-width: 90%;*/
}

#RowMessageJiki .col-input label {
    display: block;
}

#form_contents .submit #BtnMessageConfirm {
	width:80%;
}

}


/* カレンダー
=======================================================================*/
.calendar table{
	width:100%;
}
.calendar_main table th,
.calendar_main table td{
	border:1px solid #ccc;
}
.calendar_main {
	margin:0 0 30px;
}

#Cale_title {
	text-align:center;
	color:#fff;
	margin:20px 0;
}
#Cale_title .title{
	background: #3e3432;
vertical-align: middle;
font-size: 1.8em;
border-left:5px solid #fff;
border-right:5px solid #fff;
}
#Cale_title .link{
	background:#c4bdba;
	width: 15%;
}
#Cale_title td a{
	display: inline-block;
width: 100%;
padding: 15px 0;
}

.scheduleCalendar thead th{
	background:#E8E8E8;
	text-align:center;
	font-weight:bold;
	font-size:1.2em;
	padding: 3px 0 1px;
}
.scheduleCalendar thead .sunday{
	background:#f8a18a;
}
.scheduleCalendar thead th:nth-child(4){
	background:#6c6a6a;
}
.scheduleCalendar thead .satday{
	background:#9ccaff;
}
.scheduleCalendar td{
	width: 14.28571428%;
}
.scheduleCalendar td,
.scheduleCalendar th{
	padding: 10px;
line-height: 1.4;
font-size: 0.8em;
}
.scheduleCalendar .sun,
.scheduleCalendar tbody tr td:first-child{
	background:#ffe2d7;
}
.scheduleCalendar .sat,
.scheduleCalendar tbody tr td:last-child{
	background:#daebff;
}
.scheduleCalendar .holiday {
	background:#d6d4d4 !important;
}
.scheduleCalendar tbody td:nth-child(4){
	width: 1%;
}
.scheduleCalendar tbody td:nth-child(4) .ibnum{
	text-align: center !important;
}
.scheduleCalendar a{
	text-decoration: underline !important;
margin: 0 0 5px 0;
display: inline-block;
font-weight:bold;
}
.scheduleCalendar .ibnum{
	text-align: right;
width: 100%;
display: inline-block;
font-size: 1.3em;
font-weight: bold;
}
.scheduleCalendar .sun .ibnum,
.scheduleCalendar tbody td:first-child .ibnum {
	color:#eb552d;
}
.scheduleCalendar .sat .ibnum,
.scheduleCalendar tbody td:last-child .ibnum{
	color:#2c82e5;
}
.scheduleCalendar .holiday .ibnum {
	color:#A4A4A4 !important;
}


@media screen and (max-width:1200px) {
#calenderTable form.reservForm input {
	background: #35242d;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 13px;
    display: block;
    width: 100%;
    padding: 7px 40px;
	transition: all 0.3s linear;
}

#form_contents input:disabled {
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 5px 40px;
    border-radius: 5px;
    font-size: 15px;
    color:#333333;
/*    background-color:#333;*/
}
}

@media screen and (max-width:950px) {
#calenderTable form.reservForm input {
	background: #35242d;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 13px;
    display: block;
    width: 100%;
    padding: 7px 30px;
	transition: all 0.3s linear;
}

#form_contents input:disabled {
	box-shadow: none;
    border: 1px solid #ccc;
    padding: 7px 30px;
    border-radius: 5px;
    font-size: 13px;
    color:#333333;
/*    background-color:#fff;*/
}

}