@charset "utf-8";
/* CSS Document */

/* template01 */
.form__wrap {
  max-width: none;/*フォームの最大幅*/
}
.wpcf7 .template01 {
  color: inherit;
  font-size: inherit;
}
.wpcf7 .template01 a {
  transition: none;
}
.wpcf7 .template01 a:hover {
  opacity: .8;
  transition: none;
}
.wpcf7 .template01 div.form__row {
  /*margin-top: 2em;*/
}
.wpcf7 .template01 div.form__row.row-privacy {
    /*margin-top: 3.5em;*/
    text-align: left;
    font-size: 16px;
}
    .wpcf7 .template01 div.form__row.row-privacy a {
        color: var(--vk-color-text-link);
        text-decoration: underline;
    }
.wpcf7 .template01 div.form__row.row-submit {
  /*margin-top: 3em;*/
  text-align: left;
}
.wpcf7 .template01 p.form__label,
.wpcf7 .template01 p.form__body {
    /*margin-bottom: .5em;*/
    line-height: var(--vk-line-height-low);
}
.wpcf7 .template01 p.form__label label {
    
}
.wpcf7 .template01 p.form__label.is-required label {
    --is-required-width: 40px;
    padding-right: calc( var(--is-required-width) + 16px );
}
.wpcf7 .template01 p.form__label.is-required label::after {
    --is-required-height: 24px;
    content: "必須";
    top: auto;
    bottom: 0;
    width: var(--is-required-width);
    padding: 0;
    background-color: var(--orange);
    font-size: 12px;
    line-height: var(--is-required-height);
    border-radius: 99px;
}
/* テキストフィールド */
.wpcf7 .template01 input[type=text],
.wpcf7 .template01 input[type=tel],
.wpcf7 .template01 input[type=email],
.wpcf7 .template01 input[type=url],
.wpcf7 .template01 input[type=date],
.wpcf7 .template01 input[type=number],
.wpcf7 .template01 textarea {
    border-radius: var(--vk-size-radius);
}
    .wpcf7 .template01 input[type=text],
    .wpcf7 .template01 input[type=tel],
    .wpcf7 .template01 input[type=email],
    .wpcf7 .template01 input[type=url],
    .wpcf7 .template01 input[type=date],
    .wpcf7 .template01 input[type=number] {
        width: 440px;
        max-width: 100%;
    }
    .wpcf7 .template01 textarea {
        max-width: 100%;
        resize: vertical;
    }
/* テキストフィールド placeholder */
.wpcf7 .template01 input[type=text]::placeholder,
.wpcf7 .template01 input[type=tel]::placeholder,
.wpcf7 .template01 input[type=email]::placeholder,
.wpcf7 .template01 input[type=url]::placeholder,
.wpcf7 .template01 input[type=date]::placeholder,
.wpcf7 .template01 input[type=number]::placeholder,
.wpcf7 .template01 textarea::placeholder {
  
}
.wpcf7 .template01 input[type=text]:-ms-input-placeholder,
.wpcf7 .template01 input[type=tel]:-ms-input-placeholder,
.wpcf7 .template01 input[type=email]:-ms-input-placeholder,
.wpcf7 .template01 input[type=url]:-ms-input-placeholder,
.wpcf7 .template01 input[type=date]:-ms-input-placeholder,
.wpcf7 .template01 input[type=number]:-ms-input-placeholder,
.wpcf7 .template01 textarea:-ms-input-placeholder {
  
}
.wpcf7 .template01 input[type=text]::-ms-input-placeholder,
.wpcf7 .template01 input[type=tel]::-ms-input-placeholder,
.wpcf7 .template01 input[type=email]::-ms-input-placeholder,
.wpcf7 .template01 input[type=url]::-ms-input-placeholder,
.wpcf7 .template01 input[type=date]::-ms-input-placeholder,
.wpcf7 .template01 input[type=number]::-ms-input-placeholder,
.wpcf7 .template01 textarea::-ms-input-placeholder {
  
}
/* テキストフィールド フォーカス時 */
.wpcf7 .template01 input[type=text]:focus,
.wpcf7 .template01 input[type=tel]:focus,
.wpcf7 .template01 input[type=email]:focus,
.wpcf7 .template01 input[type=url]:focus,
.wpcf7 .template01 input[type=date]:focus,
.wpcf7 .template01 input[type=number]:focus,
.wpcf7 .template01 textarea:focus {
  
}
/* チェックボックス */
.wpcf7 .template01 input[type=checkbox] {
  
}
.wpcf7 .template01 input[type=checkbox] + span {
  
}
.wpcf7 .template01 input[type=checkbox] + span::before {
  
}
.wpcf7 .template01 input[type=checkbox] + span::after {
  
}
.wpcf7 .template01 input[type=checkbox]:checked + span {
  
}
.wpcf7 .template01 input[type=checkbox]:checked + span::before {
  
}
.wpcf7 .template01 input[type=checkbox]:checked + span::after {
  
}
/* ラジオボタン */
.wpcf7 .template01 input[type=radio] {
  
}
.wpcf7 .template01 input[type=radio] + span {
  
}
.wpcf7 .template01 input[type=radio] + span::before {
  
}
.wpcf7 .template01 input[type=radio] + span::after {
  
}
.wpcf7 .template01 input[type=radio]:checked + span {
  
}
.wpcf7 .template01 input[type=radio]:checked + span::after {
  
}
/* セレクト */
.wpcf7 .template01 span.select-wrap {
  
}
.wpcf7 .template01 select {
  
}
.wpcf7 .template01 select::-ms-expand {
  
}
.wpcf7 .template01 span.select-wrap::after {
  
}
.wpcf7 .template01 select:focus {
  
}
.wpcf7 .template01 span.select-wrap:focus-within::after {
  
}
/* 送信ボタン */
.wpcf7 .template01 .submit-btn {
  position: relative;
  width: auto;
  height: auto;
  margin: 0;
}
.wpcf7 .template01 input[type="submit"] {
    width: auto;
    padding: 18px 104px;
    border-radius: 999px;
    box-shadow: var(--box-shadow);
    border: 1px solid var(--orange);
    background-color: var(--orange);
    transition: none;
    letter-spacing: 1px;
}
.wpcf7 .template01 input[type="submit"]:disabled {
    
}
.wpcf7 .template01 input[type="submit"]:hover {
    border: 1px solid var(--orange);
    background-color: var(--orange);
    color: #fff;
    transition: none;
    opacity: .8;
}
.wpcf7 .template01 input[type="submit"]:focus {
    outline: 1px var(--orange) solid;
    border: 1px solid var(--orange);
}
.wpcf7 .template01  span.wpcf7-list-item {
  
}
.wpcf7 .template01 .ajax-loader {
  
}
@media only screen and (max-width: 768px) {
  .wpcf7 .template01 span.wpcf7-list-item {
    
  }
}

/*追加設定*/
.wpcf7 form .wpcf7-response-output {
    margin: 2em 0 1em!important;
    padding: 32px!important;
    border-width: 1px!important;
    text-align: center;
    position: relative;
    z-index: 1;
    border-radius: var(--vk-size-radius);
}
.wpcf7-spinner {
    background-color: var(--vk-color-text-body)!important;
    margin-top: 24px!important; 
}
.wpcf7 .template01 input[type=text].wpcf7-not-valid, 
.wpcf7 .template01 input[type=tel].wpcf7-not-valid, 
.wpcf7 .template01 input[type=email].wpcf7-not-valid, 
.wpcf7 .template01 input[type=url].wpcf7-not-valid, 
.wpcf7 .template01 input[type=date].wpcf7-not-valid, 
.wpcf7 .template01 input[type=number].wpcf7-not-valid, 
.wpcf7 .template01 textarea.wpcf7-not-valid {
    background-color: rgba(255, 75, 0, .1) !important;
}
.wpcf7-not-valid-tip {
    padding-top: .5em;
}
.wpcf7-form.sent div.form__wrap {
    display: none;
}
/*@media only screen and (max-width: 768px) {
    .wpcf7 .template01 p.form__label.is-required label {
        display: inline-block;
    }
    .wpcf7 .template01 p.form__label.is-required label::after {
        top: 1px;
    }
}*/