@charset "UTF-8";

/* contact
---------------------------------------------------------------------------*/
#contactContents {
	padding: 0 0 0 100px;
}

/* .sec-lead
------------------------------------*/
#contactContents .sec-lead {
	margin: 5px 0 65px;
}

#contactContents .sec-lead p {
	margin-bottom: 30px;
	font-size: 14px;
}

#contactContents .sec-lead p.txt-serif {
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: 0.04em;
}

#contactContents .sec-lead:last-of-type { margin-bottom: 0; }

/* .contact-area
------------------------------------*/
.contact-area {
	width: 670px;
}

.form-table {
	width: 100%;
	margin: 0 0 30px;
	line-height: 1.8;
}

.form-table th,
.form-table th p {
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.form-table th {
	position: relative;
	padding: 10px 0 0;
	text-align: left;
	vertical-align: top;
}

.form-table th strong {
	position: relative;
}

.form-table th em {
	display: block;
	margin-top: -1px;
	color: #858C97;
	font-size: 12px;
	letter-spacing: 0.05em;
}

.form-table th span {
	padding-left: 7px;
	font-size: 11px;
	font-weight: normal;
}

.form-table th.required strong:before {
	display: block;
	content: '*';
	position: absolute;
	top: -7px;
	right: -9px;
	font-size: 13px;
}

.form-table th i {
	display: block;
	margin: -3px 0 0 2px;
	font-size: 12px;
	letter-spacing: 0.1em;
}

.form-table td {
	width: 470px;
	padding: 10px 0;
	letter-spacing: 0.05em;
}

.form-table td input,
.form-table td textarea {
	box-sizing: border-box;
	border: 1px solid #E5E5E5;
	width: 100%;
	padding: 12px 12px 10px 12px;
	font-size: 14px;
	letter-spacing: 0.05em;
}

.form-table td textarea {
	height: 290px;
}

.form-table td label {
	cursor: pointer;
}

.form-table td span {
	display: block;
  font-size: 13px;
  letter-spacing: 0.05em;
}

.form-table td span input[type=checkbox]{
  display: inline;
  width: 20px;
  background: #fff;
  border: 1px solid #e5e5e5;
}

/* Google Chrome, Safari, Android, iOS */
::-webkit-input-placeholder {
	line-height: 1.8;
}

.contact-area .btn-submit {
	width: calc(100% - 200px);
	margin: 35px 0 0 200px;
}

.contact-area .btn-submit input {
	background: #0E2F53;
	border: none;
	width: 100%;
	margin: 0;
	padding: 13px 0;
	color: #FFFFFF;
	font-size: 16px;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.3em;
	transition: .2s linear;
}

.contact-area .btn-submit input:hover {
	opacity: 0.5;
}

.contact-area .check {
	display: block !important;
	margin: 15px 0 0 200px;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.wpcf7-form-control-wrap {
	display: inline-block;
	margin-right: 2px;
	transform: translateY(2px);
}

_::-webkit-full-page-media, _:future, :root .wpcf7-form-control-wrap {
	transform: translateY(-1px);
}

/* alert
------------------------------------*/
.wpcf7-not-valid-tip {
	display: inline-block;
/* 	border-bottom: 1px solid #0E2F53; */
	text-decoration: underline;
	margin: 0 0 0 2px;
	padding: 6px 0 0;
	color: #C81414;
	font-size: 11px;
	letter-spacing: 0.1em;
	white-space: nowrap;
}

.form-table tr:last-of-type td .wpcf7-not-valid-tip {
	display: block;
	margin-bottom: -15px;
}

.screen-reader-response {
	display: none;
}

.wpcf7-response-output {
	display: inline-block;
	width: 470px;
	margin: 20px 0 0 200px;
	padding: 0 0 8px;
	color: #C81414;
	font-size: 13px;
	text-align: left;
	letter-spacing: 0.1em;
}

.hidden-fields-container {
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
}


/* .sec-privacy
---------------------------------------------------------------------------*/
.sec-privacy {
	overflow: hidden;
	box-sizing: border-box;
	border: 1px solid #E5E5E5;
	width: 470px;
	height: 380px;
	margin-left: 200px;
	padding: 5px;
}

.sec-privacy .inner {
	box-sizing: border-box;
	height: 100%;
	padding: 42px 45px 45px 35px;
	overflow-x: auto;
	position: relative;
}

.sec-privacy .inner::-webkit-scrollbar { width: 1px; }
.sec-privacy .inner::-webkit-scrollbar-track { background: #FFFFFF; }
.sec-privacy .inner::-webkit-scrollbar-thumb { background: #C6CDD7; }

.sec-privacy h2 {
	margin-bottom: 22px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.11em;
}

.sec-privacy p { margin-bottom: 10px; }
.sec-privacy p a { text-decoration: underline; }

.sec-privacy p,
.sec-privacy li {
	font-size: 13px;
	line-height: 2;
	letter-spacing: 0.11em;
	text-align: justify;
}

.sec-privacy li {
	position: relative;
	margin-bottom: 6px;
	padding-left: 20px;
	line-height: 1.7;
}

.sec-privacy li i {
	display: block;
	position: absolute;
	top: 0;
	left: 3px;
}

.sec-privacy dl { margin-top: 45px; font-size: 12px; }
.sec-privacy dl > div { margin-bottom: 50px; }
.sec-privacy dl > div:last-of-type { margin-bottom: 0; }

.sec-privacy dt {
	margin-bottom: 16px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.16em;
}

.sec-privacy ul { margin: 15px 0 30px; }

.sec-privacy .list-dot li:before {
	width: 3px;
	height: 3px;
}