@charset "UTF-8";


/*========*/
/* お問い合わせ */
/*========*/

#mailform {
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom: 0px;
	margin-top: 0px;
	padding-top: 0px;
}
@media (min-width: 768px) {
#mailform {
	padding-top: 0px;
}}
.mailcont {
}
#mailform dl input,#mailform dl textarea{
	border:0;
	color:#000000;
	border:none;
	border-radius: 5px;
	font-weight: normal;
	margin-top: 5px;
	margin-right: 0px;
	margin-bottom: 5px;
	margin-left: 0px;
	padding: 5px;
}
#mailform dl {
	overflow: hidden;
	padding: 0px;
	display: table;
	margin: 0px;
	width: 100%;
	position: relative;
}

#mailform dl dt {
	margin: 0px;
	display: block;
	text-align: left;
	padding: 0px;
	vertical-align: top;
}
#mailform dl dd{
	margin: 0px;
	display: block;
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 10px;
	padding-left: 0px;
	-moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media (min-width: 768px) {
#mailform dl dt {
	padding: 20px;
	width: 300px;
	display: table-cell;
}
#mailform dl dd{
	display: table-cell;
	padding-top: 15px;
	padding-right: 0px;
	padding-bottom: 15px;
	padding-left: 0px;
}}

#mailform  label {
	font-weight: normal;
	color: rgba(255,255,255,1.00);	
}
#mailform  label em {
	font-style: normal;
	font-weight: normal;
	padding-top: 0.1em;
	padding-right: 0.3em;
	padding-left: 0.3em;
	padding-bottom: 0.1em;
	font-size: 0.8em;
	border-radius: 5px;
	background-color: #0055A5;
	margin-left: 1em;
}
#mailform .size-s {
	width: 25%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#mailform .size-m {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media (min-width: 768px) {
#mailform .size-m {
	width: 50%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}}
#mailform .size-l {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#mailform .addresssearch {
	padding-top: 5px;
	padding-bottom: 5px;
	border: 1px solid #CCCCCC;
	background-color: #FFFFFF;
	font-size: 10px;
	color: #000000;
	text-align: center;
	display: inline;
	padding-right: 10px;
	padding-left: 10px;
}
#mailform .addresssearch:hover {
	background-color: #CCFFFF;
	text-decoration: none;
}
#formbutton {
	text-align: center;
	padding-top: 15px;
}
#formbutton .submit-button input {
	background-color: #fff;
	color: #267FD3;
	padding-top: 15px;
	padding-right: 15px;
	padding-bottom: 15px;
	padding-left: 15px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 50em;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
	max-width: 420px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	background-image: url(../images/right-arrow1.svg);
	background-repeat: no-repeat;
	background-position: 90% center;
	font-weight: 700;
}
#formbutton .submit-button input:hover {
	background-color: #999999;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

#mailform .contactfoot {

	margin-top: 50px;
	margin-bottom: 20px;
}
#mailform dl.col1 textarea,#reservation #mailform dl textarea {

}
#mailform h4 {
	font-weight: bold;
	margin-top: 30px;
	font-size: 120%;
}
#mailform .priv_info {
	border: 1px solid #CCCCCC;
	padding: 10px;
	height: 140px;
	overflow: scroll;
	margin-bottom: 15px;
	font-size: 80%;
	overflow-x:hidden;
	background-color: #FFFFFF;
}
#mailform .priv_info h6 {
	font-size: 110%;
	font-weight: bold;
	margin-bottom: 10px;
}
#mailform select {
	font-size: 1.1em;
}#mailform h3 {
	float: none;
	margin-bottom: 30px;
}
/* チェックボックスデザイン */

/*リセット */
input[type="checkbox"]  {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }


input[type="checkbox"] {
    cursor: pointer;
    padding-left: 30px;/*label手前にチェックボックス用の余白を開ける*/
    vertical-align: middle;
    position: relative;
  }
 
  input[type="checkbox"]::before,
  input[type="checkbox"]::after {
    content: "";
    display: block; 
    position: absolute;
  }
 
  input[type="checkbox"]::before {
    background-color: #fff;
    border-radius: 5px;
    width: 20px;/*チェックボックスの横幅*/
    height: 20px;/*チェックボックスの縦幅*/
    transform: translateY(-50%);
    top: 50%;
    left: 5px;
	  
  }
 
  input[type="checkbox"]::after {
    border-bottom: 3px solid #666464;/*チェックの太さ*/
    border-left: 3px solid #666464;/*チェックの太さ*/
    opacity: 0.2;/*チェック前は非表示*/
    height: 6px;/*チェックの高さ*/
    width: 11px;/*チェックの横幅*/
    transform: rotate(-45deg);
    top: 4px;/*チェック時の位置調整*/
    left: 10px;/*チェック時の位置調整*/
  }
   input[type="checkbox"]:checked::before {
	background-color: #0055A5;	   
	  
  }
  input[type="checkbox"]:checked::after {
    opacity: 1;/*チェック後表示*/
	  border-bottom: 3px solid #fff;/*チェックの太さ*/
    border-left: 3px solid #fff;/*チェックの太さ*/
  }

  .form-check-input:checked[type=checkbox] {
	  background-image: none;
  }

.thanks {
	padding-top: 30px;
	padding-right: 15px;
	padding-left: 15px;
	padding-bottom: 0px;
	background-color: rgba(255,255,255,1.00);
	position: relative;
	top: -160px;
	margin-bottom: -160px;
	z-index: 20;
}

.thanks h2{
	font-size: 5.5vw;
	font-weight: 700;
	color: rgba(32,59,148,1.00);
	letter-spacing: 0.2em;		
}

.thanks h3{
	text-align: center;	
	font-size: 1.25em;
	font-weight: 700;
	color: rgba(32,59,148,1.00);
}



.ajax-loader,.wpcf7-spinner {
	display: none !important;
}
select.select-form {
	border: 1px solid #CCC;
	font-size: .3em;
}

.field-invalid::before {
	content: "こちらは必ず入力してください。";
	display: block;
	color: #ffebaf;
}
.field-invalid-email::before {
	content: "正しい形式のメールアドレスを入力してください。";
	display: block;
	color: #ffebaf;
}
.field-invalid-tel::before {
	content: "正しい形式の電話番号を入力してください。";
	display: block;
	color: #ffebaf;
}
.field-invalid-privacy::before {
	content: "プライバシーポリシーに同意してください。";
	display: block;
	color: #ffebaf;
}
.field-invalid input.field-required,
.field-invalid textarea.field-required {
	border: 1px solid #ffebaf;
}