@charset "utf-8";

/**
 * error message
 */
#contact_form .err {
	font-size : 93%;
	color : #B70000;
	display : none;
}

/**
 * error message of akismet
 */
.form .akismet_error {
	display: block;
}

/**
 * vertical style of radio and checkbox
 */
.form .vertical-item {
	display: block;
}
.form .vertical-item + .vertical-item {
	margin-top: 5px;
}

/**
 * horizontal style of radio and checkbox
 */
.form .horizontal-item + .horizontal-item {
	margin-left: 10px;
}

/**
 * radio and checkbox
 */
.form-checkbox-field label,
.form-radio-field label {
	font-weight: normal;
	margin-bottom: 0;
}
.form-checkbox-field input,
.form-radio-field input {
	margin-right: 5px;
}

/**
 * datepicker
 */
.form .ui-datepicker .ui-datepicker-title select.ui-datepicker-month,
.form .ui-datepicker .ui-datepicker-title select.ui-datepicker-year {
	width: 40%;
	margin: 0 5px;
}

/**
 * deprecated message
 */
.form-deprecated-message {
	background: #fdeeee;
	border: 1px solid #f7bdb8;
	border-radius: 5px;
	color: #af4040;
	font-size: 13px;
	line-height: 1.6;
	margin: 0 0 10px;
	padding: 1em;
}

/**
 * file
 */
.form input[type="file"] {
	display: inline-block;
}

/**
 * file delete button
 */
.form-file-delete {
	cursor: pointer;
	visibility: hidden;
}

/**
 * tel and zip
 */
.form-tel-field input[type="text"],
.form-zip-field input[type="text"] {
	display: inline-block;
	width: auto;
}

/*モーダルウィンドウ全体のレイアウト（画面いっぱいに表示）*/
.modal {
  visibility: hidden;
  overflow-y: scroll;
  opacity: 0;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0 50px;
  transition: opacity 0.3s, visibility 0s 0.3s;
  background: rgba(0, 0, 0, 0.5);
}
.modal.is-active {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.3s, visibility 0s 0s;
}
.modal_container {
  display: flex;
  min-height: 100%;
  justify-content: center;
  align-items: center;
}
/*以下、IE11 ハック（IEでこれがないと上下中央寄せが出来ない）*/
.modal_container _:-ms-lang(x)::-ms-backdrop, .modal_container {
  min-height: 100vh;
}
.modal_container::after {
  content: "";
  min-height: inherit;
  font-size: 0;
}
.modal_inner {
  margin: 20px auto;
  width: 100%;
}
.modal_content {
  display: none;
  width: 100%;
  max-width: 600px;  border-radius: 5px;
  background: #fff;
  padding: 40px;
  margin: 20px auto;
}
.is-active .modal_content {
  display: block;
}

/*閉じるボタン*/
.modal_close {
  position: relative;
  text-align: right;
  font-size: 16px;
}

.confirm dt {
  font-weight:bold;
}

.confirm dd {
  margin-bottom: 5px;
}
