@charset "UTF-8";

/* =========================================
 Contact（お問い合わせ）

    scope: .page-contact
========================================= */


.page-contact__text{
  line-height:2;
  margin-bottom:2em;
  font-family: "Noto Sans JP";

  strong{
    color:#DD2D2D;
  }
}
.page-contact__wrap{
  background: #F5F7FA;
  padding:4em 5% 6em;
}

.page-contact__form{
  max-width:1120px;
  margin-inline:auto;
   font-family: "Noto Sans JP";
}

.page-contact__item{

  display: flex;
  align-items: center;
  padding:.875em 0;
  border-top:1px solid #D7DBE0;
}

.page-contact__item.-message{
  align-items: flex-start;
  border-bottom:1px solid #D7DBE0;
}

.smf-item__col--label{
  padding-left:1em;
  width:23%;
  flex-shrink:0;
  font-weight: 500;
}
.-required .smf-item__label__text {
      position: relative;
      padding-right: 1.25em;

    }

    .-required .smf-item__label__text::before {
      position: absolute;
      top: 50%;
      right:0;
      transform: translateY(-50%);
      width: -moz-fit-content;
      width: fit-content;
      content: "※";
      font-size: 16px;
      color: #DD2D2D;
      background: var(--l-accent-color);
    }

    .smf-item__col--controls{
      flex-grow:1;
    }

.page-contact__input{
  appearance: none;
  width: 100%;
    border: 1px solid #D7DBE0;
    border-radius:5px;
    // background: #fffdf6 !important;
    padding: 0.65em 1em !important;
    position: relative;
    line-height: 1.5 !important;

    &::placeholder {
      color: #AAAAAA;
      font-size: pxToRem(16px);
    }
}
.smf-textarea-control__control {
      min-height: 240px;
    }

.smf-select-control{
  width:100%;
  max-width:400px;
}

/*プライバシーポリシー*/
.page-contact__privacy{
  margin:3em 0;
  background: #fff;
  border-radius:10px;
  padding:2em 3em 1em;
  box-shadow:inset 0 0 10px rgba(0,0,0,.16);

}
.wp-block-group__inner-container{
  height:360px;
  overflow:scroll;
}

.page-contact__privacy h2{
  font-family: "Noto Serif JP";
  text-align: center;
  font-weight: 500;
  padding-bottom: 1em;
}
.page-contact__privacy p{
  line-height: 1.8;
}

.page-contact__privacy p+p{
  margin-top:1em;
}
.smf-checkbox-control{
  display: flex!important;
  justify-content:center!important;
}
/*チェックボックス*/

.smf-form .smf-checkbox-control__control:checked{
background:#243590;
border-color:#243590;
}

.smf-checkbox-control__control:checked::focus {
  border-color: #007BFF; /* 好きな色に変更可能（例：青） */
  box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.3); /* 任意：やわらかいハイライト効果 */
}

/*送信ボタン*/
.smf-action{
  margin-top: 2em;
  display: flex;
  justify-content:center;
}
.smf-action .smf-button-control__control{
  border:none;
  appearance:none;
  background: #243590;
  font-family: 'Noto Serif Jp';
  color:#fff;
  text-align: center;
  width:320px;
  padding:.75em 1em;
  display:block;

}

@media (max-width: 768px) {
  .page-contact__item{
    flex-direction:column;
    align-items: flex-start;
    gap:.5em;
  }

  .smf-item__col--label{
    width:100%;
    padding-left:.5em;
  }
  .smf-item__col--controls{
    width:100%;
  }

  .page-contact__privacy{
    padding:2em 1.5em;
  }
}
