@charset "UTF-8";
/**
 * _mixin 2.14.4
 * Released on: October 28, 2020
 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap");
/**
 * Fonts
 */
.contact {
  padding-bottom: 95px; }
  @media screen and (max-width: 900px) {
    .contact {
      padding-bottom: 12.36979vw; } }
  @media screen and (max-width: 600px) {
    .contact {
      padding-bottom: 19.32367vw; } }
  .contact__head__ttl {
    font-size: 2.8rem;
    line-height: 1;
    text-align: center;
    color: #333;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-style: normal; }
    @media screen and (max-width: 900px) {
      .contact__head__ttl {
        font-size: 3.64583vw; } }
    @media screen and (max-width: 600px) {
      .contact__head__ttl {
        font-size: 5.7971vw; } }
  .contact__head__txt {
    font-size: 1.6rem;
    line-height: 1.875;
    margin-top: 28px;
    text-align: center;
    color: #333;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-style: normal; }
    @media screen and (max-width: 900px) {
      .contact__head__txt {
        font-size: 3.64583vw;
        margin-top: 6.76329vw; } }
    @media screen and (max-width: 600px) {
      .contact__head__txt {
        font-size: 3.86473vw;
        margin-top: 7.72947vw; } }
  .contact__status {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 64px auto 0;
    border: 1px solid #1D1D1F; }
    @media screen and (max-width: 900px) {
      .contact__status {
        margin: 8.33333vw auto 0; } }
    @media screen and (max-width: 600px) {
      .contact__status {
        margin: 10.38647vw auto 0; } }
    .contact__status li {
      font-size: 1.8rem;
      line-height: 64px;
      position: relative;
      width: calc( 1 / 3 * 100%);
      text-align: center;
      color: #333;
      background: #FFF;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700;
      font-style: normal; }
      @media screen and (max-width: 900px) {
        .contact__status li {
          font-size: 2.08333vw;
          line-height: 8.33333vw; } }
      @media screen and (max-width: 600px) {
        .contact__status li {
          font-size: 3.86473vw;
          line-height: 15.45894vw; } }
      .contact__status li:before, .contact__status li:after {
        position: absolute;
        top: 0;
        left: 0;
        content: ''; }
      .contact__status li:first-of-type:before, .contact__status li:first-of-type:after {
        display: none; }
      .contact__status li:before {
        z-index: 1;
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 32px 0 32px 16px;
        border-color: transparent transparent transparent #FFF; }
        @media screen and (max-width: 900px) {
          .contact__status li:before {
            display: block;
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 4.16667vw 0 4.16667vw 2.08333vw;
            border-color: transparent transparent transparent #FFF; } }
        @media screen and (max-width: 600px) {
          .contact__status li:before {
            display: block;
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 7.72947vw 0 7.72947vw 3.86473vw;
            border-color: transparent transparent transparent #FFF; } }
      .contact__status li:after {
        z-index: 0;
        left: 1px;
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 32px 0 32px 16px;
        border-color: transparent transparent transparent #1D1D1F; }
        @media screen and (max-width: 900px) {
          .contact__status li:after {
            display: block;
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 4.16667vw 0 4.16667vw 2.08333vw;
            border-color: transparent transparent transparent #1D1D1F; } }
        @media screen and (max-width: 600px) {
          .contact__status li:after {
            display: block;
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 7.72947vw 0 7.72947vw 3.86473vw;
            border-color: transparent transparent transparent #1D1D1F; } }
    .contact__status--contact li:first-of-type {
      color: #FFF;
      background: #1D1D1F; }
    .contact__status--contact li:nth-of-type(2):before {
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 32px 0 32px 16px;
      border-color: transparent transparent transparent #1D1D1F; }
      @media screen and (max-width: 900px) {
        .contact__status--contact li:nth-of-type(2):before {
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 4.16667vw 0 4.16667vw 2.08333vw;
          border-color: transparent transparent transparent #1D1D1F; } }
      @media screen and (max-width: 600px) {
        .contact__status--contact li:nth-of-type(2):before {
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 7.72947vw 0 7.72947vw 3.86473vw;
          border-color: transparent transparent transparent #1D1D1F; } }
    .contact__status--confirm li:nth-of-type(2) {
      color: #FFF;
      background: #1D1D1F; }
    .contact__status--confirm li:nth-of-type(3):before {
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 32px 0 32px 16px;
      border-color: transparent transparent transparent #1D1D1F; }
      @media screen and (max-width: 900px) {
        .contact__status--confirm li:nth-of-type(3):before {
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 4.16667vw 0 4.16667vw 2.08333vw;
          border-color: transparent transparent transparent #1D1D1F; } }
      @media screen and (max-width: 600px) {
        .contact__status--confirm li:nth-of-type(3):before {
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 7.72947vw 0 7.72947vw 3.86473vw;
          border-color: transparent transparent transparent #1D1D1F; } }
    .contact__status--thanks li:nth-of-type(3) {
      color: #FFF;
      background: #1D1D1F; }
    .contact__status--thanks li:nth-of-type(3):before {
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 32px 0 32px 16px;
      border-color: transparent transparent transparent #FFF; }
      @media screen and (max-width: 900px) {
        .contact__status--thanks li:nth-of-type(3):before {
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 4.16667vw 0 4.16667vw 2.08333vw;
          border-color: transparent transparent transparent #FFF; } }
      @media screen and (max-width: 600px) {
        .contact__status--thanks li:nth-of-type(3):before {
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 7.72947vw 0 7.72947vw 3.86473vw;
          border-color: transparent transparent transparent #FFF; } }
  .contact__input {
    margin-top: 40px; }
    @media screen and (max-width: 900px) {
      .contact__input {
        margin-top: 5.20833vw; } }
    @media screen and (max-width: 600px) {
      .contact__input {
        margin-top: 5.7971vw; } }
    .contact__input dl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      padding: 24px 20px;
      border-bottom: 1px solid #CCC; }
      @media screen and (max-width: 900px) {
        .contact__input dl {
          padding: 3.125vw 2.60417vw; } }
      @media screen and (max-width: 600px) {
        .contact__input dl {
          display: block;
          padding: 9.66184vw 0; } }
    .contact__input dt {
      font-size: 1.6rem;
      line-height: 1;
      width: 214px;
      margin: auto;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700;
      font-style: normal; }
      @media screen and (max-width: 900px) {
        .contact__input dt {
          font-size: 2.08333vw;
          width: 27.86458vw;
          padding-top: 2.14844vw; } }
      @media screen and (max-width: 600px) {
        .contact__input dt {
          font-size: 3.86473vw;
          width: 100%;
          padding-top: 0; } }
      .contact__input dt.required {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; }
        .contact__input dt.required:after {
          font-size: 1.2rem;
          line-height: 23px;
          display: block;
          width: 60px;
          content: '必 須';
          text-align: center;
          color: #FFF;
          background: #9E0400;
          font-family: 'Noto Sans JP', sans-serif;
          font-weight: 400;
          font-style: normal; }
          @media screen and (max-width: 900px) {
            .contact__input dt.required:after {
              font-size: 1.5625vw;
              line-height: 2.99479vw;
              width: 7.8125vw; } }
          @media screen and (max-width: 600px) {
            .contact__input dt.required:after {
              font-size: 2.89855vw;
              line-height: 5.55556vw;
              width: 14.49275vw; } }
      .contact__input dt.txt__top {
        margin-top: 0;
        padding-top: 16.5px; }
    .contact__input dd {
      font-size: 1.6rem;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto;
      width: calc( 100% - 214px);
      padding-left: 60px; }
      @media screen and (max-width: 900px) {
        .contact__input dd {
          font-size: 2.08333vw;
          width: calc( 100% - 27.86458vw);
          padding-left: 7.8125vw; } }
      @media screen and (max-width: 600px) {
        .contact__input dd {
          font-size: 3.86473vw;
          width: 100%;
          margin-top: 7.24638vw;
          padding-left: 0; } }
    .contact__input__btn {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-top: 64px; }
      @media screen and (max-width: 900px) {
        .contact__input__btn {
          margin-top: 8.33333vw; } }
      @media screen and (max-width: 600px) {
        .contact__input__btn {
          margin-top: 11.5942vw; } }
      .contact__input__btn__item {
        position: relative;
        max-width: 320px; }
        @media screen and (max-width: 900px) {
          .contact__input__btn__item {
            max-width: 41.66667vw; } }
        @media screen and (max-width: 600px) {
          .contact__input__btn__item {
            max-width: 77.29469vw; }
            .mw_wp_form_confirm .contact__input__btn__item {
              max-width: 42.99517vw; } }
        .contact__input__btn__item:before {
          width: 16px;
          height: 16px;
          content: '';
          background: url(../img/contact/arrow--submit.svg) center no-repeat;
          background-size: contain; }
          @media screen and (max-width: 900px) {
            .contact__input__btn__item:before {
              width: 2.08333vw;
              height: 2.08333vw; } }
          @media screen and (max-width: 600px) {
            .contact__input__btn__item:before {
              width: 3.86473vw;
              height: 3.86473vw; } }
        .contact__input__btn__item input {
          font-size: 1.6rem;
          line-height: 80px;
          display: block;
          width: 320px;
          -webkit-transition: all .3s;
          -o-transition: all .3s;
          transition: all .3s;
          border: 1px solid #1D1D1F;
          font-family: 'Noto Sans JP', sans-serif;
          font-weight: 700;
          font-style: normal; }
          @media screen and (max-width: 900px) {
            .contact__input__btn__item input {
              font-size: 2.08333vw;
              line-height: 10.41667vw;
              width: 41.66667vw; } }
          @media screen and (max-width: 600px) {
            .contact__input__btn__item input {
              font-size: 3.86473vw;
              line-height: 19.32367vw;
              width: 77.29469vw; }
              .mw_wp_form_confirm .contact__input__btn__item input {
                width: 42.99517vw; } }
        .contact__input__btn__item--back {
          margin-right: 24px; }
          @media screen and (max-width: 900px) {
            .contact__input__btn__item--back {
              margin-right: 3.125vw; } }
          @media screen and (max-width: 600px) {
            .contact__input__btn__item--back {
              margin-right: 6.28019vw; } }
          .contact__input__btn__item--back:before {
            right: calc( 50% + 16px + 19px);
            position: absolute;
            bottom: 50%;
            -webkit-transform: translate(0, 50%);
            -ms-transform: translate(0, 50%);
            transform: translate(0, 50%); }
            @media screen and (max-width: 900px) {
              .contact__input__btn__item--back:before {
                right: calc( 50% + 2.08333vw + 2.47396vw); } }
            @media screen and (max-width: 600px) {
              .contact__input__btn__item--back:before {
                right: calc( 50% + 3.86473vw + 4.58937vw); } }
          .contact__input__btn__item--back input {
            padding-left: calc( 16px + 19px);
            color: #333;
            background: #FFF; }
            @media screen and (max-width: 900px) {
              .contact__input__btn__item--back input {
                margin-right: 5.7971vw;
                padding-left: 4.55729vw; } }
            @media screen and (max-width: 600px) {
              .contact__input__btn__item--back input {
                margin-right: 6.28019vw;
                padding-left: 8.45411vw; } }
            .contact__input__btn__item--back input:hover {
              color: #FFF;
              background: #1D1D1F; }
          .mw_wp_form_input .contact__input__btn__item--back {
            display: none; }
        .contact__input__btn__item--submit:before {
          position: absolute;
          bottom: 50%;
          left: calc( 50% + 16px + 19px);
          -webkit-transform: rotate(180deg) translate(0, -50%);
          -ms-transform: rotate(180deg) translate(0, -50%);
          transform: rotate(180deg) translate(0, -50%); }
          @media screen and (max-width: 900px) {
            .contact__input__btn__item--submit:before {
              left: calc( 50% + 2.08333vw + 2.47396vw); } }
          @media screen and (max-width: 600px) {
            .contact__input__btn__item--submit:before {
              left: calc( 50% + 3.86473vw + 4.58937vw); } }
        .contact__input__btn__item--submit input {
          padding-right: calc( 16px + 19px);
          color: #FFF;
          background: #1D1D1F; }
          @media screen and (max-width: 900px) {
            .contact__input__btn__item--submit input {
              padding-right: 4.55729vw; } }
          @media screen and (max-width: 600px) {
            .contact__input__btn__item--submit input {
              padding-right: 8.45411vw; } }
          .contact__input__btn__item--submit input:hover {
            color: #333;
            background: #FFF; }
  .contact__thanks {
    margin-top: 64px; }
    @media screen and (max-width: 900px) {
      .contact__thanks {
        margin-top: 8.33333vw; } }
    @media screen and (max-width: 600px) {
      .contact__thanks {
        margin-top: 15.45894vw; } }
    .contact__thanks__inner {
      padding: 64px 20px;
      text-align: center;
      background: #F8F8F8; }
      @media screen and (max-width: 900px) {
        .contact__thanks__inner {
          padding: 8.33333vw 2.60417vw; } }
      @media screen and (max-width: 600px) {
        .contact__thanks__inner {
          padding: 9.66184vw; } }
    .contact__thanks__ttl {
      font-size: 2.6rem;
      line-height: 1;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700;
      font-style: normal; }
      @media screen and (max-width: 900px) {
        .contact__thanks__ttl {
          font-size: 3.38542vw; } }
      @media screen and (max-width: 600px) {
        .contact__thanks__ttl {
          font-size: 4.83092vw; } }
    .contact__thanks__txt {
      font-size: 1.6rem;
      line-height: 2;
      margin-top: 32px;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 400;
      font-style: normal; }
      @media screen and (max-width: 900px) {
        .contact__thanks__txt {
          font-size: 2.08333vw;
          margin-top: 4.16667vw; } }
      @media screen and (max-width: 600px) {
        .contact__thanks__txt {
          font-size: 3.86473vw;
          margin-top: 7.72947vw; } }
    .contact__thanks__btn {
      margin-top: 64px; }
      @media screen and (max-width: 900px) {
        .contact__thanks__btn {
          margin-top: 8.33333vw; } }
      @media screen and (max-width: 600px) {
        .contact__thanks__btn {
          margin-top: 11.5942vw; } }
      .contact__thanks__btn a {
        font-size: 1.6rem;
        line-height: 64px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-transition: all .3s;
        -o-transition: all .3s;
        transition: all .3s;
        letter-spacing: 0.16em;
        color: #FFF;
        background: #1D1D1F;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 700;
        font-style: normal; }
        @media screen and (max-width: 900px) {
          .contact__thanks__btn a {
            font-size: 2.08333vw;
            line-height: 8.33333vw; } }
        @media screen and (max-width: 600px) {
          .contact__thanks__btn a {
            font-size: 3.86473vw;
            line-height: 19.32367vw;
            width: 77.29469vw;
            margin: 0 auto; } }
        .contact__thanks__btn a:before {
          display: block;
          width: 16px;
          height: 16px;
          margin-right: 25px;
          content: '';
          background: url(../img/contact/arrow--submit.svg) center no-repeat;
          background-size: contain; }
          @media screen and (max-width: 900px) {
            .contact__thanks__btn a:before {
              width: 2.08333vw;
              height: 2.08333vw;
              margin-right: 3.25521vw; } }
          @media screen and (max-width: 600px) {
            .contact__thanks__btn a:before {
              width: 3.86473vw;
              height: 3.86473vw;
              margin-right: 6.03865vw; } }
        .contact__thanks__btn a:hover {
          opacity: .7; }
  .contact .mw_wp_form_confirm .required:after {
    display: none; }

.grecaptcha-badge{
    margin-bottom: 5px; z-index:10000
}
