@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap);
:root {
  --ff-noto-sans: "Noto Sans JP", Meiryo, sans-serif;
  --c-white: #ffffff;
  --c-black: #000000;
  --c-gray-light: #eeeeee;
  --c-green-primary: #23ac48;
  --c-green-dark: #009943;
  --c-green-light: #7bcd91;
  --c-text-main: #333333;
  --c-red-accent: #b34040;
}

/* ==========================================================================//
//
//　calc関数、エディターコンパイル用
//（calc関数をそのままscssに入れてコンパイルすると、自動で計算後のvwに変換されるため用意しています。）
//
//
// ========================================================================== */
/** -------------------------------- **
	PC用
*** ----------------------------------------------------------------- ***/
/*-- 基本ヘッダーフッター用、またはコンテンツ幅を超えてアートボードいっぱいにデザインされているもの --*/
/*-- mainタグ内（デザインのコンテンツ幅1280pxと両サイドのpadding40pxを足して1320） --*/
/** -------------------------------- **
	タブレット用
*** ----------------------------------------------------------------- ***/
/** -------------------------------- **
	SP用
*** ----------------------------------------------------------------- ***/
.red {
  color: var(--c-red-accent);
}

.contact-contents__body {
  letter-spacing: 0.025em;
}
.contact-contents__text {
  text-align: center;
}
.contact-contents__text-inner {
  display: inline-block;
  margin: 50px auto;
}
@media (max-width: 767px) {
  .contact-contents__text-inner {
    margin-block: calc( 10/375 * 100vw);
  }
}
.contact-contents__text-inner p {
  line-height: 2;
  text-align: left;
  font-size: min(calc(16 / 1320 * 100vw), 16px);
  letter-spacing: 0.025em;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .contact-contents__text-inner p {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .contact-contents__text-inner p {
    font-size: calc( 16/375 * 100vw);
  }
}
.contact-contents__text-note {
  text-indent: -1em;
  padding-left: 1em;
}
.contact-contents__text-right {
  text-align: right;
  width: min(100%, 980px);
  margin: 50px auto 20px;
}
@media (max-width: 767px) {
  .contact-contents__text-right {
    margin-block: calc( 40/375 * 100vw) calc( 20/375 * 100vw);
  }
}
.contact-contents__text-right p {
  font-size: min(calc(16 / 1320 * 100vw), 16px);
}
@media (max-width: 767px) {
  .contact-contents__text-right p {
    font-size: calc( 16/375 * 100vw);
  }
}
.contact-contents__text-confirm {
  padding-block: min(calc(52 / 1320 * 100vw), 52px) min(calc(40 / 1320 * 100vw), 40px);
}
@media (max-width: 767px) {
  .contact-contents__text-confirm {
    padding-block: calc( 22/375 * 100vw) calc( 40/375 * 100vw);
  }
}
.contact-contents__text-confirm p {
  font-size: min(calc(22 / 1320 * 100vw), 22px);
}
@media (max-width: 767px) {
  .contact-contents__text-confirm p {
    font-size: calc( 22/375 * 100vw);
  }
}
.contact-contents__text-thanks {
  padding-block: min(calc(52 / 1320 * 100vw), 52px) min(calc(40 / 1320 * 100vw), 40px);
}
.contact-contents__text-thanks h2 {
  font-size: min(calc(22 / 1320 * 100vw), 22px);
  line-height: 2;
}
@media (max-width: 767px) {
  .contact-contents__text-thanks h2 {
    font-size: calc( 22/375 * 100vw);
  }
}
.contact-contents__text-thanks p {
  font-size: min(calc(16 / 1320 * 100vw), 16px);
  line-height: 2;
  margin-block-start: min(calc(20 / 1320 * 100vw), 20px);
}
@media (max-width: 767px) {
  .contact-contents__text-thanks p {
    margin-block: calc( 20/375 * 100vw);
    font-size: calc( 16/375 * 100vw);
    text-align: left;
  }
}
.contact-contents__text-thanks-note {
  background-color: #f3f3f3;
  padding: min(calc(22 / 1320 * 100vw), 22px) min(calc(30 / 1320 * 100vw), 30px);
  width: min(100%, 980px);
  margin: auto;
}
@media (max-width: 767px) {
  .contact-contents__text-thanks-note {
    padding: calc( 22/375 * 100vw) min(calc( 20/375 * 100vw), 20px);
  }
}
.contact-contents__text-thanks-note ul {
  text-align: left;
  font-size: min(calc(16 / 1320 * 100vw), 16px);
  line-height: 2;
  text-indent: -1em;
  padding-inline-start: 1em;
}
@media (max-width: 767px) {
  .contact-contents__text-thanks-note ul {
    font-size: calc( 16/375 * 100vw);
  }
}
.contact-contents__form-wrap {
  padding-bottom: 110px;
}
@media (max-width: 767px) {
  .contact-contents__form-wrap {
    padding-bottom: calc( 80/375 * 100vw);
  }
}
.contact-contents__form-list {
  background-color: #f3f3f3;
  padding: 10px min(calc(30 / 1320 * 100vw), 30px);
  width: min(100%, 980px);
  margin: auto;
}
@media (max-width: 767px) {
  .contact-contents__form-list {
    padding: 0 min(calc( 30/375 * 100vw), 30px);
  }
}
.contact-contents__form-list li {
  padding: 30px 0;
}
@media (min-width: 768px) {
  .contact-contents__form-list li {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 30px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .contact-contents__form-list li {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .contact-contents__form-list li {
    padding: min(calc( 30/375 * 100vw), 30px) 0;
  }
}
.contact-contents__form-list li + li {
  border-top: 1px solid #ccc;
}
@media (min-width: 768px) {
  .contact-contents__form-list li.note-padding {
    padding-block-end: 65px;
  }
}
.contact-contents__form-label {
  display: flex;
  justify-content: space-between;
  width: calc(100% - min(calc( 690/900 * 100vw), 690px));
  align-items: center;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .contact-contents__form-label {
    min-width: 220px;
  }
}
@media (max-width: 767px) {
  .contact-contents__form-label {
    width: 100%;
    margin-block-end: calc( 20/375 * 100vw);
  }
}
.contact-contents__form-label label {
  font-weight: 500;
}
.contact-contents__form-label .required {
  color: var(--c-red-accent);
  font-weight: 600;
  display: inline-block;
  padding: 7px 11px;
  background-color: var(--c-red-accent);
  color: var(--c-white);
  font-size: 14px;
}
.contact-contents__form-input {
  width: min(calc( 660/900 * 100vw), 660px);
}
@media (min-width: 768px) and (max-width: 1024px) {
  .contact-contents__form-input {
    width: calc(100% - 240px);
  }
}
@media (max-width: 767px) {
  .contact-contents__form-input {
    width: 100%;
  }
}
.contact-contents__form-input input, .contact-contents__form-input textarea, .contact-contents__form-input .form-value {
  background-color: var(--c-white);
  padding: 11px 18px;
  border: 1px solid #ccc;
  border-radius: 4px;
  width: 100%;
  line-height: 2;
}
.contact-contents__form-input .form-value {
  border: 0;
  min-height: 52px;
}
.contact-contents__form-input-note {
  color: var(--c-red-accent);
  padding-block: 16px 0;
}
@media (min-width: 768px) {
  .contact-contents__form-input-note {
    position: absolute;
  }
}
@media (max-width: 767px) {
  .contact-contents__form-input-note {
    letter-spacing: 0;
  }
}
.contact-contents__form-input .error {
  font-size: min(calc(14 / 1320 * 100vw), 14px);
  color: var(--c-red-accent);
  margin-block-end: 10px;
}
@media (max-width: 767px) {
  .contact-contents__form-input .error {
    font-size: calc( 14/375 * 100vw);
  }
}
.contact-contents__form-privacy {
  margin: 30px auto;
}
@media (max-width: 767px) {
  .contact-contents__form-privacy {
    margin: calc( 40/375 * 100vw) auto calc( 30/375 * 100vw);
  }
}
.contact-contents__form-privacy p {
  text-align: center;
  font-size: min(calc(16 / 1320 * 100vw), 16px);
  letter-spacing: 0.025em;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .contact-contents__form-privacy p {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .contact-contents__form-privacy p {
    line-height: 2;
    font-size: calc( 16/375 * 100vw);
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .contact-contents__form-privacy p .link-text {
    font-size: inherit;
  }
}
.contact-contents__form-submit {
  text-align: center;
  background-color: #f3f3f3;
  width: min(100%, 980px);
  margin: auto;
  border-radius: 20px;
  padding: 40px;
}
@media (max-width: 767px) {
  .contact-contents__form-submit {
    padding: calc( 30/375 * 100vw);
  }
}
.contact-contents__form-submit .privacy-confirm {
  margin: auto;
  padding-bottom: 40px;
  display: flex;
  align-items: center;
  column-gap: 4px;
  width: fit-content;
  line-height: 1;
  cursor: pointer;
}
@media (max-width: 767px) {
  .contact-contents__form-submit .privacy-confirm {
    padding-bottom: calc( 30/375 * 100vw);
  }
}
.contact-contents__form-submit .privacy-confirm input[type=radio] {
  appearance: auto;
  margin-right: 4px;
  appearance: none;
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #000000;
  border-radius: 9999px;
  cursor: pointer;
}
.contact-contents__form-submit .privacy-confirm input[type=radio]:checked::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  border-radius: 9999px;
  background-color: #000000;
}
@media (min-width: 768px) {
  .contact-contents__form-submit .btn {
    width: min(calc(400 / 1320 * 100vw), 400px);
  }
}
@media (max-width: 767px) {
  .contact-contents__form-submit .btn {
    width: 100%;
  }
}
.contact-contents__form-submit .btn > * {
  width: 100%;
}
@media (min-width: 768px) {
  .contact-contents__form-submit .btn > * {
    justify-content: space-between;
    padding-inline: min(calc(60 / 1320 * 100vw), 60px) min(calc(20 / 1320 * 100vw), 20px);
    text-align: center;
  }
}
.contact-contents__form-submit .btn button:disabled {
  background: #777777;
  padding-inline: min(calc(60 / 1320 * 100vw), 60px);
}
.contact-contents__form-submit .btn button:disabled:hover {
  opacity: 1;
}
.contact-contents__form-submit .btn button:disabled .icon-circle-chevron-right {
  display: none;
}
.contact-contents__form-submit .btn span {
  margin: auto;
}
.contact-contents__form-submit .btn .icon-circle-chevron-right {
  margin: 0;
}
.contact-contents__confirm-submit {
  display: flex;
  justify-content: center;
  gap: 40px;
  width: min(calc(980 / 1320 * 100vw), 980px);
  margin-block: min(calc(80 / 1320 * 100vw), 80px) 0;
  margin-inline: auto;
  padding: 0 min(calc(70 / 1320 * 100vw), 70px);
}
@media (max-width: 767px) {
  .contact-contents__confirm-submit {
    width: 100%;
    flex-direction: column;
    gap: calc( 20/375 * 100vw);
    align-items: center;
    margin-block: calc( 50/375 * 100vw);
    padding: 0;
  }
}
.contact-contents__confirm-submit .btn {
  width: min(calc(400 / 1320 * 100vw), 400px);
}
@media (max-width: 767px) {
  .contact-contents__confirm-submit .btn {
    width: calc( 275/375 * 100vw);
  }
}
.contact-contents__confirm-submit .btn button {
  width: 100%;
}
@media (min-width: 768px) {
  .contact-contents__confirm-submit .btn button {
    justify-content: space-between;
    padding-inline: min(calc(60 / 1320 * 100vw), 60px) min(calc(20 / 1320 * 100vw), 20px);
    text-align: center;
  }
}
.contact-contents__confirm-submit .btn.circle-chevron-left button {
  background: #000000;
  padding-inline: min(calc(20 / 1320 * 100vw), 20px) min(calc(60 / 1320 * 100vw), 60px);
}
@media (max-width: 767px) {
  .contact-contents__confirm-submit .btn.circle-chevron-left button {
    padding-inline: calc( 20/375 * 100vw) calc( 30/375 * 100vw);
  }
}
.contact-contents__confirm-submit .btn .icon-circle-chevron-right {
  margin: 0;
}
.contact-contents__confirm-submit .btn .icon-circle-chevron-left {
  margin: 0;
}
.contact-contents__confirm-submit .btn .icon-circle-chevron-left::before {
  border-color: #000000;
}
.contact-contents__confirm-submit .btn span {
  margin: auto;
}
.contact-contents__thanks-btn {
  text-align: center;
  margin-block: min(calc(80 / 1320 * 100vw), 80px) min(calc(140 / 1320 * 100vw), 140px);
}
@media (max-width: 767px) {
  .contact-contents__thanks-btn {
    margin-block: calc( 50/375 * 100vw) calc( 80/375 * 100vw);
  }
}
.contact-contents__thanks-btn .btn {
  width: min(calc(400 / 1320 * 100vw), 400px);
  margin: auto;
}
@media (max-width: 767px) {
  .contact-contents__thanks-btn .btn {
    width: calc( 275/375 * 100vw);
  }
}
.contact-contents__thanks-btn .btn button {
  width: 100%;
}
@media (min-width: 768px) {
  .contact-contents__thanks-btn .btn button {
    justify-content: space-between;
    padding-inline: min(calc(60 / 1320 * 100vw), 60px) min(calc(20 / 1320 * 100vw), 20px);
    text-align: center;
  }
}
.contact-contents__thanks-btn .btn .icon-circle-chevron-right {
  margin: 0;
}
.contact-contents__thanks-btn .btn span {
  margin: auto;
}