@charset "utf-8";

.c-target {
  display: block;
}
@media (any-hover: hover) {
  .c-target__img {
    overflow: hidden;
  }
  .c-target__imgBody {
    transition: transform var(--transition);
    will-change: transform;
  }
  .c-target:where(:any-link, :enabled):hover .c-target__imgBody {
    transform: scale(1.03);
    will-change: auto;
  }
}

.c-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.c-title__en {
  font-size: calc(19em/16);
  order: 2;
  margin: calc(45em/19) 0 calc(14em/19);
  text-transform: uppercase;
}
.c-title__jp {
  font-size: calc(40em/16);
  line-height: 1.4;
  order: 3;
}
.c-title__line {
  display: flex;
  flex-direction: column;
  align-items: center;
  order: 1;
}
.c-title__line::before {
  content: "";
  display: block;
  width: 1px;
  height: calc(165em/16);
  background-color: #7e7e7e;
}
.c-title__line::after {
  content: "";
  display: block;
  width: calc(6em/16);
  height: calc(6em/16);
  border: 1px solid #7e7e7e;
  border-radius: 50%;
}


.wpcf7-text,
.wpcf7-number,
.wpcf7-textarea,
.wpcf7-select {
  appearance: none;
  font-size: 16px;
  width: 100%;
  border: 1px solid #d2d2d2;
  height: calc(60em/16);
  padding: 0 1em;
  background: #fff;
}
.wpcf7-text:focus-visible, 
.wpcf7-number:focus-visible,
.wpcf7-textarea:focus-visible,
.wpcf7-select:focus-visible {
  outline: 1px solid #d2d2d2;
  box-shadow: 0;
  outline-offset: 0;
}
.wpcf7-number::-webkit-outer-spin-button,
.wpcf7-number::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.wpcf7-number {
  -moz-appearance: textfield;
}

.wpcf7-text.is-narrow {
  max-width: calc(373em/16);
}
.wpcf7-textarea {
  padding: 1em;
  height: calc(170em/16);
}
.wpcf7-list-item {
  display: inline-block;
  font-size: calc(15em/16);
}
.wpcf7-list-item:not(:first-of-type) {
  margin-left: calc(27em/15);
}
.wpcf7-list-itemLabel {
  display: inline-flex;
  align-items: center;
}
.wpcf7-list-item-label {
  margin-left: calc(5em/15);
}

.wpcf7 { position:relative; clear:both; border-color:inherit; }
.wpcf7 .screen-reader-response { display:none; }
.wpcf7-form { position:relative; border-width:0; }
.wpcf7-form, .wpcf7-form::before, .wpcf7-form::after { transition:opacity var(--transition);}
.wpcf7-form > :first-child, .wpcf7-form > div[style="display: none;"]:first-child + * { margin-top:0; } /* wpcf7によって最初に吐き出されるhidden要素 */
.form-send .watermark { color:#d7072e; }
.form-box .wpcf7-radio, .form-box .wpcf7-checkbox { padding:16px 16px 8px 16px; background-color:var(--layer-color); display: inline-block; }
.form-box > p:first-child { margin:0; }
.wpcf7-list-item { font-size:16px; display:inline-block; padding:0; margin:0; }
.form-box { clear:both; width:auto; padding:16px 0 0; margin:0; position:relative; }
.small-form-box .wpcf7-form-control-wrap { width:15em }
.medium-form-box .wpcf7-form-control-wrap { width:30em; }
.form-head { clear:both; width:100%; margin:var(--column-gap) 0 0; padding:16px 0 0; }
.form-head h3 { font-size:1.1em; margin: 0; }
.form-head h4 { font-size:1em; margin: 0; }
.form-box em, .form-head em, .required { color:var(--caution-color); background-color:transparent; font-family:inherit; border-width:0; text-decoration:none; border-width:0; }
.form-box em::before, .form-head em::before, .required::before { content:' '; }
.wpcf7 .headword { display:block; padding:0; font-size:.875em; }
.wpcf7-form-control-wrap { padding:0; margin:0; display:block; position:relative; max-width:100%; }
.wpcf7-form-control-wrap + .wpcf7-form-control-wrap { margin-top:8px;}
.form-box-acceptance .wpcf7-form-control-wrap { border-width:0; }
.wpcf7 input[type="text"], .wpcf7 input[type="tel"], .wpcf7 input[type="email"], .wpcf7 input[type="number"], .wpcf7 input[type="url"], .wpcf7 input[type="date"], .wpcf7 input[type="password"] , .wpcf7 select { width:100%; /*padding-left:86px; */text-align:left; }
.wpcf7 .wpcf7-textarea { display:block; width:100%; resize:vertical; padding:12px 8px; margin:0!important; text-align:left; }
.form-send, .cf7mls-btns { clear:both; padding:0; margin:0; position:relative; }
.form-send .wpcf7-submit { width:100%; display:block; }
.wpcf7-form.ajaxsending .cf7mls-btns::before, .wpcf7-form.ajaxsending .form-send::before { display:block; content:''; background-color:transparent; border-width: 0; position:absolute; left: 0; top: 0; bottom: 0; right: 0; z-index: 2; } /* click block */
.form-box.no-border .wpcf7-form-control-wrap { border-color:transparent; background-color:transparent; }
.form-box.no-border .wpcf7-radio, .form-box.no-border .wpcf7-checkbox { padding:0; background-color:transparent; }
.captcha-box { display:block; background-color:var(--layer-color); padding:4px; font-size:11px; }
.captcha-box .captchac { float:left; display:block; line-height:36px; }
.captcha-box .captchac img { vertical-align:middle; }
.captcha-box::after { content:''; display:table; clear:both; }
.captcha-box .captchar input[type="text"] { float:right; display:block; width:100px; height:40px; }
.grecaptcha-badge { visibility: hidden; }
.recaptcha_policy { font-size:10px; margin:1em 0 0; color:gray; text-align:center; }
.wpcf7-not-valid-tip { position:absolute; top:1px; right:1px; z-index:10; }
.wpcf7-mail-sent-ok, .wpcf7-not-valid-tip, .wpcf7-mail-sent-ng, .wpcf7-spam-blocked, .wpcf7-validation-errors, .wpcf7-acceptance-missing, .wpcf7-not-valid-tip-no-ajax { color:#d7072e; border-width:0; background-color:#fff; font-weight:600; font:12px; padding:6px; line-height:1; }
.wpcf7-mail-sent-ok { display:none!important; }
/* .form-response,  */
.wpcf7-response-output { font-weight:600; text-align:center; padding:8px; font:12px; line-height:16px; vertical-align:middle; color:#d7072e;}
.wpcf7-response-output:empty, .wpcf7-form.sent .wpcf7-response-output { display:none }
.form-response { position:relative; margin:8px 0; z-index:2; height:32px; }
.form-response .wpcf7-response-output { position:absolute; top:0; left:0; right:0; bottom:auto; }
.wpcf7-form.submitting::before, .wpcf7-form.resetting::before, .wpcf7-form.sent::before { display:block; content:''; position:absolute; z-index:41; left:0; right:0; bottom:0; top:0; opacity:1; }
.wpcf7-form.submitting::after, .wpcf7-form.resetting::after { display:block; content:''; border-radius:50%; font-size:10px; width:6em; height:6em; margin:auto; position:absolute; opacity:1; z-index:42; left:0; right:0; bottom:calc(50vh - 3em); top:auto; border-width:.5em; border-style:solid; border-color:rgba(0,0,0,0.05) rgba(0,0,0,0.05) rgba(0,0,0,0.05) rgba(0,0,0,0.25); transform:translateZ(0); animation:load8 1.1s infinite linear; }
@keyframes load8 { 0% { transform:rotate(0deg); } 100% { transform:rotate(360deg); } }
.thankyou_message::after { content:'×'; display:block; position:absolute; right:0; top:0; }
.thankyou_message { display:none!important; position:absolute; top:0; left:0; right:0; bottom:0; z-index:49; }
.thankyou_message > div { text-align:center; position:absolute; bottom:160px; left:0; right:0; padding:3em; }
.thankyou_message > div > p { text-align:center; }
.thankyou_message .button { width: 100%; max-width:360px; margin:16px auto 0; }
.thankyou_message h2 { font-size:1.2em; text-align:center; }
.wpcf7-form.submitting > *, .wpcf7-form.resetting > *, .wpcf7-form.sent:not(.cf7mls) > * { opacity:.15;  }
.wpcf7-form.sent > .thankyou_message { display:block!important; opacity: 1; }

.c-submit {
  width: calc(320em/16);
  height: calc(69em/16);
  border-radius: 100vmax;
  background-color: #455d50;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  cursor: pointer;
}
@media (any-hover: hover) {
  .c-submit:where(:any-link, :enabled) {
    transition: filter var(--transition);
  }
  .c-submit:where(:any-link, :enabled):hover {
    filter: brightness(.8);
  }
}
@media screen and (max-width: 640px) {
  .wpcf7-text,
  .wpcf7-select {
    height: calc(50em/16);
  }
}
@media screen and (max-width: 430px) {
  .c-submit {
    width: 90%;
  }
}