@charset "UTF-8";
/*======================================
form-reset
/*======================================*/
/*placeholder*/ :placeholder-shown {
  color: rgba(120, 145, 130, .8);
}
/* Google Chrome, Safari, Opera 15+, Android, iOS */ ::-webkit-input-placeholder {
  color: rgba(120, 145, 130, .8);
}
/* Firefox 18- */ :-moz-placeholder {
  color: rgba(120, 145, 130, .8);
  opacity: 1;
}
/* Firefox 19+ */ ::-moz-placeholder {
  color: rgba(120, 145, 130, .8);
  opacity: 1;
}
/* IE 10+ */ :-ms-input-placeholder {
  color: rgba(120, 145, 130, .8);
}
/*placeholder*/
.textarea-wrap :placeholder-shown {
  color: #999;
}
/* Google Chrome, Safari, Opera 15+, Android, iOS */
.textarea-wrap ::-webkit-input-placeholder {
  color: #999;
}
/* Firefox 18- */
.textarea-wrap :-moz-placeholder {
  color: #999;
  opacity: 1;
}
/* Firefox 19+ */
.textarea-wrap ::-moz-placeholder {
  color: #999;
  opacity: 1;
}
/* IE 10+ */
.textarea-wrap :-ms-input-placeholder {
  color: #999;
}
input[type="submit"] {
  -webkit-appearance: none;
}
:-moz-placeholder {
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 1px;
  color: #777;
  font-size: 11px;
}
:-ms-input-placeholder {
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 1px;
  color: #777;
  font-size: 11px;
}
/*======================================
form-style
/*======================================*/
.form-CMN input, .form-CMN input[type="text"]:focus, .form-CMN select, .form-CMN textarea {
  text-align: center;
  background: rgba(247, 246, 245, 1);
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "sans-serif";
  border: 1px solid #ccc;
  border-radius: 3px;
  width: 100%;
  max-width: 800px;
  padding: 0 1em;
  font-size: 17px;
  height: 65px;
  color: #333;
  /*  margin-bottom: 24px;*/
}
.form-CMN input:focus, .form-CMN input[type="text"]:focus, .form-CMN select:focus, .form-CMN textarea:focus {
  border: 1px solid rgba(175, 170, 160, .9);
}
/*======================================
select
/*======================================*/
.form-CMN select {
  margin-right: .5em;
  background-color: rgba(247, 246, 245, 1);
  overflow: hidden;
  z-index: 2;
  cursor: pointer;
  color: #333;
}
.form-CMN select.is-empty {
  color: rgba(120, 145, 130, .8);
}
.select-wrap dd:before, .select-wrap dd:after {
  position: absolute;
  text-align: center;
  font-family: "dashicons";
  font-weight: 900;
  width: 55px;
  height: 55px;
  line-height: 55px;
  font-size: 100%;
  color: rgba(120, 145, 130, .8);
  z-index: 10;
  top: 0;
  right: -10px;
}
@media screen and (min-width:768px) {
  .select-wrap dd:before, .select-wrap dd:after {
    width: 65px;
    height: 65px;
  }
} /*END query*/
.select-wrap dd:before {
  transform: translateY(-5px);
  content: "\f142";
}
.select-wrap dd:after {
  transform: translateY(5px);
  content: "\f140";
}
.select-wrap select:focus, .select-option select {
  color: #333;
}
.select-wrap select::-ms-expand {
  display: none;
}
/*======================================
textarea
/*======================================*/
.form-CMN textarea {
  padding: 1em;
  text-align: justify;
  margin-bottom: 0;
  font-size: 16px;
  letter-spacing: 1px;
  height: 15em;
}
/*======================================
checkbox
/*======================================*/
.form-CMN input[type="checkbox"] {
  display: none;
}
.acceptance-wrap .inner {
  text-align: center;
}
.wpcf7-list-item-label {
  position: relative;
}
.acceptance-wrap input[type=checkbox] {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 1;
  margin: 0;
  width: 16px;
  height: 16px;
  cursor: pointer;
  opacity: 0;
}
.acceptance-wrap .wpcf7-list-item-label::before {
  position: absolute;
  cursor: pointer;
  content: "";
  top: 52%;
  left: -1.7em;
  transform: translateY(-50%);
  width: 1.2em;
  height: 1.2em;
  border: 1px solid #ccc;
  background: #fff;
  transition: all 0.3s;
}
.acceptance-wrap .wpcf7-list-item-label::after {
  position: absolute;
  content: '';
  display: block;
  font-family: "Dashicons";
  font-weight: 900;
  content: "\f147";
  color: rgba(210, 100, 100, 1);
  left: -1em;
  opacity: 0;
  top: 50%;
  margin-top: -.6em;
  font-size: 200%;
}
input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}
/*======================================
submit
/*======================================*/
input[type="submit"], button[type="submit"] {
  position: relative;
  overflow: hidden;
  display: block;
  text-align: center;
  padding: 0;
  border: none;
  outline: none;
  opacity: 1;
  transition: all .3s ease;
  transform: translateY(0px);
  cursor: pointer;
  background: #ccc;
}
input[type="submit"]:hover, button[type="submit"]:hover {
  opacity: .7;
  transition: all .3s ease;
  transform: translateY(-5px);
}
input[type="submit"]:focus, button[type="submit"]:focus {
  border: none;
}
/*======================================
radioBtn
/*======================================*/
input[type="radio"] {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}
.form-CMN .radio-wrap .wpcf7-list-item:hover {
  opacity: .7;
}
.form-CMN .radio-wrap .wpcf7-list-item.first, .form-CMN .radio-wrap .wpcf7-list-item.last {
  display: inline-block;
  width: auto;
  font-size: 110%;
}
.form-CMN .radio-wrap .wpcf7-list-item.first {
  margin-left: 0;
}
.form-CMN .radio-wrap span.wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.form-CMN .radio-wrap span.wpcf7-list-item-label::before {
  display: block;
  content: "";
  border-radius: 50%;
  border: 3px solid rgba(160, 135, 120, .5);
  width: 20px;
  height: 20px;
  margin-right: 10px;
}
.form-CMN .radio-wrap span.wpcf7-list-item-label::after {
  display: block;
  position: absolute;
  content: "";
  border-radius: 50%;
  width: 12px;
  height: 12px;
  background-color: rgba(210, 100, 100, 1);
  left: 4px;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}
input[type="radio"]:checked + span.wpcf7-list-item-label::after {
  display: block;
}
/*======================================
flatpickr
/*======================================*/
.flatpickr-day:hover {
  background-color: rgba(120, 170, 115, .7);
  border-color: transparent;
  color: #fff;
}
.flatpickr-day.selected {
  background-color: rgba(120, 170, 115, .9);
  border-color: transparent;
  color: #fff;
}
/*======================================
form-output
/*======================================*/
.schedule-wrap .wpcf7-form-control {
  position: relative;
  cursor: pointer;
}
.schedule-wrap .wpcf7-form-control::-webkit-calendar-picker-indicator {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.schedule-wrap .wpcf7-form-control::before, .schedule-wrap .wpcf7-form-control::after, .schedule-wrap .wpcf7-form-control-wrap::before, .schedule-wrap .wpcf7-form-control-wrap::after {
  position: absolute;
  text-align: center;
  font-family: "dashicons";
  font-weight: 900;
  width: 55px;
  height: 55px;
  line-height: 55px;
  font-size: 100%;
  color: rgba(120, 145, 130, .8);
  z-index: 10;
  top: 0;
  right: -10px;
}
@media screen and (min-width:768px) {
  .schedule-wrap .wpcf7-form-control::before, .schedule-wrap .wpcf7-form-control::after, .schedule-wrap .wpcf7-form-control-wrap::before, .schedule-wrap .wpcf7-form-control-wrap::after {
    width: 65px;
    height: 65px;
  }
} /*END query*/
.schedule-wrap .wpcf7-form-control::before, .schedule-wrap .wpcf7-form-control-wrap::before {
  transform: translateY(-5px);
  content: "\f142";
}
.schedule-wrap .wpcf7-form-control::after, .schedule-wrap .wpcf7-form-control-wrap::after {
  transform: translateY(5px);
  content: "\f140";
}
/*======================================
form-output
/*======================================*/
.wpcf7-spinner {
  display: none !important;
}
div.wpcf7-response-output {
  margin: 2em 0 !important;
  padding: 1.5em .5em !important;
  font-feature-settings: "palt";
  line-height: 1.3em;
  font-size: 100%;
  text-align: center;
}
@media screen and (min-width:768px) {
  div.wpcf7-response-output {
    font-size: 110%;
  }
} /*END query*/
div.wpcf7 .ajax-loader {
  display: none !important;
  opacity: 0 !important;
  margin: 2em auto !important;
}
.wpcf7 span.wpcf7-not-valid-tip {
  font-size: 80%;
  text-align: left;
  margin-top: .5em;
  position: relative;
  padding-left: 1.5em;
  color: rgba(197, 86, 86, 1);
}
.wpcf7 span.wpcf7-not-valid-tip:before {
  position: absolute;
  text-align: center;
  font-family: "dashicons";
  font-weight: 900;
  content: "\f343";
  top: 0;
  left: 0;
  width: 1.5em;
  height: 2em;
  font-size: 100%;
}
#index .wpcf7 span.wpcf7-not-valid-tip {
  padding-left: 0;
}
#index .wpcf7 span.wpcf7-not-valid-tip:before {
  border: none;
}
.wpcf7 .wpcf7-mail-sent-ok, .wpcf7 .wpcf7-mail-sent-ng, .wpcf7 .wpcf7-validation-errors {
  width: 100%;
  margin-top: 3em;
  background: none;
  font-size: 110%;
  font-weight: bold;
  line-height: 1.3em;
  text-align: center;
  text-decoration: none;
  border: none;
  padding: 1em;
}
.wpcf7 .wpcf7-mail-sent-ok, .wpcf7 form.sent .wpcf7-response-output {
  color: rgba(42, 130, 138, 1);
  background: rgba(59, 166, 175, 0.1);
  border: none;
}
.wpcf7 .wpcf7-mail-sent-ng, .wpcf7 .wpcf7-validation-errors {
  color: rgba(197, 86, 86, 1);
  background: rgba(197, 86, 86, 0.1);
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
  color: rgba(197, 86, 86, 1);
  background: rgba(197, 86, 86, 0.1);
  border: none;
}
.wpcf7 .wpcf7c-conf {
  background-color: #fff;
  border: 1px solid rgba(160, 135, 120, 1);
}