@font-face {
  font-family: "ZenKaku";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("/media/files/fonts/pine/ZenKakuGothicNew-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "ZenKaku";
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url("/media/files/fonts/pine/ZenKakuGothicNew-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "ZenKaku";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("/media/files/fonts/pine/ZenKakuGothicNew-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Regular.otf") format("opentype");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Medium.otf") format("opentype");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: bold;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Bold.otf") format("opentype");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Black.otf") format("opentype");
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: bold;
  font-display: swap;
  src: url("/media/files/fonts/pine/Figtree-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "FigtreeItalic";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/files/fonts/pine/Figtree-MediumItalic.ttf") format("truetype");
}
@font-face {
  font-family: "FigtreeBoldItalic";
  font-style: normal;
  font-weight: bold;
  font-display: swap;
  src: url("/media/files/fonts/pine/Figtree-BoldItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Jost";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/files/fonts/pine/Jost-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Jost";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/media/files/fonts/pine/Jost-SemiBoldItalic.ttf") format("truetype");
  font-style: italic;
}
.c-lower__kv {
  background-image: url("/media/images/pine/contact/contact__bg.jpg.webp");
}

.p-contact {
  padding-bottom: 8.5714285714vw;
}
@media only screen and (max-width: 1023px) {
  .p-contact {
    padding-bottom: 7.8125vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact {
    padding-bottom: 15vw;
  }
}
.p-contact__content {
  background-color: #fff;
  border-radius: 0.7142857143vw;
  padding: 4.5714285714vw 0 4.2857142857vw;
}
@media only screen and (max-width: 1023px) {
  .p-contact__content {
    border-radius: 1.3020833333vw;
    padding: 3.90625vw 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__content {
    border-radius: 2.5vw;
    padding: 7.5vw 0;
  }
}
.p-contact__width {
  max-width: 68.5714285714vw;
  padding: 0 1.4285714286vw;
  margin: 0 auto;
}
@media only screen and (max-width: 1023px) {
  .p-contact__width {
    max-width: 125vw;
    padding: 0 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__width {
    max-width: 90vw;
    padding: 0 5vw;
  }
}
.p-contact__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0;
}
@media only screen and (max-width: 1023px) {
  .p-contact__top {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__top {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0;
  }
}
.p-contact__top::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: #999999;
  position: absolute;
  left: 54.23913%;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: none;
}
@media only screen and (max-width: 1023px) {
  .p-contact__top::before {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__top::before {
    display: none;
  }
}
.p-contact__text-wrap {
  width: 100%;
}
@media only screen and (max-width: 1023px) {
  .p-contact__text-wrap {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__text-wrap {
    width: 100%;
  }
}
.p-contact__tel-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 4.2857142857vw;
  padding-top: 2.8571428571vw;
}
@media only screen and (max-width: 1023px) {
  .p-contact__tel-wrap {
    width: 100%;
    margin-top: 7.8125vw;
    padding-top: 5.2083333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__tel-wrap {
    width: 100%;
    margin-top: 10vw;
    padding-top: 10vw;
  }
}
.p-contact__tel {
  margin: 0 auto;
  text-align: center;
  max-width: 23.3571428571vw;
}
@media only screen and (max-width: 1023px) {
  .p-contact__tel {
    margin: 0 auto;
    text-align: center;
    max-width: 41.6666666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__tel {
    max-width: none;
  }
}
.p-contact__tel-head {
  text-align: center;
}
.p-contact__tel-link {
  display: block;
  position: relative;
  font-weight: bold;
  color: #598017;
  padding-left: 3.2142857143vw;
  line-height: 1;
  font-size: 3.1428571429vw;
  letter-spacing: 0.05em;
  margin-top: 0.7142857143vw;
}
@media only screen and (min-width: 768px) {
  .p-contact__tel-link {
    pointer-events: none;
  }
}
@media only screen and (max-width: 1023px) {
  .p-contact__tel-link {
    padding-left: 5.46875vw;
    font-size: 5.2083333333vw;
    margin-top: 1.3020833333vw;
    display: inline-block;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__tel-link {
    padding-left: 10.5vw;
    font-size: 10vw;
    margin-top: 2.5vw;
  }
}
.p-contact__tel-link::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0.4285714286vw;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  background-color: #598017;
  width: 2.5714285714vw;
  aspect-ratio: 36/36;
  -webkit-mask-image: url("/media/images/pine/common/icon-tel.svg");
  mask-image: url("/media/images/pine/common/icon-tel.svg");
}
@media only screen and (max-width: 1023px) {
  .p-contact__tel-link::before {
    top: 0.78125vw;
    width: 4.1666666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__tel-link::before {
    top: 1.5vw;
    width: 8vw;
  }
}
.p-contact__tel-text {
  font-size: 0.7857142857vw;
  line-height: 2;
  letter-spacing: 0.025em;
  color: #444;
  margin-top: 1.2142857143vw;
}
@media only screen and (max-width: 1023px) {
  .p-contact__tel-text {
    font-size: 1.4322916667vw;
    margin-top: 2.2135416667vw;
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__tel-text {
    font-size: 2.75vw;
    margin-top: 4.25vw;
  }
}
.p-contact__tel-text + .p-contact__tel-text {
  margin-top: 0;
}
.p-contact__text {
  font-size: 1.1428571429vw;
  letter-spacing: 0.025em;
  line-height: 1.75;
  margin-top: 1.7142857143vw;
  color: #444;
  font-weight: 400;
}
@media only screen and (max-width: 1023px) {
  .p-contact__text {
    font-size: 1.8229166667vw;
    margin-top: 3.125vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__text {
    font-size: 3.5vw;
    margin-top: 6vw;
  }
}
.p-contact__text.--indent {
  text-indent: -1em;
  padding-left: 1em;
}
.p-contact__head, .p-contact__form-head, .p-contact__tel-head {
  font-size: 1.2857142857vw;
  letter-spacing: 0.05em;
  line-height: 1.778;
  color: #444;
}
@media only screen and (max-width: 1023px) {
  .p-contact__head, .p-contact__form-head, .p-contact__tel-head {
    font-size: 2.2135416667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__head, .p-contact__form-head, .p-contact__tel-head {
    font-size: 4.25vw;
  }
}
.p-contact__head span {
  display: inline-block;
}
@media only screen and (max-width: 1023px) {
  .p-contact__head span {
    display: inline;
  }
}
.p-contact__form-head {
  margin-bottom: 2vw;
}
@media only screen and (max-width: 1023px) {
  .p-contact__form-head {
    margin-bottom: 1.8229166667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__form-head {
    margin-bottom: 3.5vw;
  }
}
.p-contact__form {
  margin-top: 7.5vw;
}
@media only screen and (max-width: 767px) {
  .p-contact__form {
    margin-top: 12.5vw;
  }
}
.p-contact__link {
  margin: 3.5714285714vw auto 0;
  max-width: 11.0714285714vw;
  border-radius: 0.3571428571vw;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  width: 100%;
}
@media only screen and (max-width: 1023px) {
  .p-contact__link {
    border-radius: 0.6510416667vw;
    margin: 6.5104166667vw auto 0;
    max-width: 20.1822916667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__link {
    border-radius: 1.25vw;
    margin: 12.5vw auto 0;
    max-width: 38.75vw;
  }
}
.p-contact__link:hover {
  opacity: 0.8;
}
.p-contact__link-text {
  color: #fff;
  font-size: 1.0714285714vw;
  line-height: 1;
}
@media only screen and (max-width: 1023px) {
  .p-contact__link-text {
    font-size: 1.953125vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact__link-text {
    font-size: 3.75vw;
  }
}

.input-form {
  border-top: 0.1428571429vw #A3978C dotted;
}

.form-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.3571428571vw 0 1.4285714286vw;
  border-bottom: 0.1428571429vw #A3978C dotted;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media only screen and (max-width: 767px) {
  .form-group {
    padding: 4.75vw 0 5vw;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.form-group.privacy_policy {
  border: none;
  margin-top: 0.9285714286vw;
}
@media only screen and (max-width: 1023px) {
  .form-group.privacy_policy {
    margin-top: 1.6927083333vw;
  }
}
@media only screen and (max-width: 767px) {
  .form-group.privacy_policy {
    margin-top: 3.25vw;
  }
}
.form-group.privacy_policy a {
  text-decoration: underline;
}
.form-group.privacy_policy .controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.form-group.privacy_policy .controls .example.help {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  font-size: 1.1428571429vw;
  line-height: 1.406;
  font-weight: 400;
  margin-bottom: 0.7142857143vw;
}
@media only screen and (max-width: 1023px) {
  .form-group.privacy_policy .controls .example.help {
    font-size: 2.0833333333vw;
    margin-bottom: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .form-group.privacy_policy .controls .example.help {
    font-size: 4vw;
    margin-bottom: 2.5vw;
  }
}
.form-group.privacy_policy .controls .checkbox {
  width: 100%;
}
.form-group.privacy_policy .controls span {
  position: relative;
  padding-left: 1.6428571429vw;
  display: inline-block;
  cursor: pointer;
  font-size: 1.1428571429vw;
  line-height: 1.406;
  font-weight: 400;
}
@media only screen and (max-width: 1023px) {
  .form-group.privacy_policy .controls span {
    padding-left: 2.9947916667vw;
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .form-group.privacy_policy .controls span {
    padding-left: 5.75vw;
    font-size: 4vw;
  }
}
.form-group.privacy_policy .controls span::before {
  content: "";
  display: inline-block;
  width: 1.1428571429vw;
  height: 1.1428571429vw;
  background-color: #fff;
  border: 1px #333333 solid;
  position: absolute;
  left: 0;
  top: 0.2857142857vw;
  border-radius: 0.2857142857vw;
}
@media only screen and (max-width: 1023px) {
  .form-group.privacy_policy .controls span::before {
    width: 1.953125vw;
    height: 1.953125vw;
    top: 0.5208333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .form-group.privacy_policy .controls span::before {
    width: 4.5vw;
    height: 4.5vw;
    top: 1vw;
  }
}
.form-group.privacy_policy .controls span::after {
  content: "";
  display: block;
  position: absolute;
  top: 0.4285714286vw;
  left: 0.3571428571vw;
  width: 0.4285714286vw;
  height: 0.7142857143vw;
  border-right: 2px solid #598017;
  border-bottom: 2px solid #598017;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  opacity: 0;
}
@media only screen and (max-width: 1023px) {
  .form-group.privacy_policy .controls span::after {
    top: 0.6510416667vw;
    left: 0.78125vw;
    width: 0.6510416667vw;
    height: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .form-group.privacy_policy .controls span::after {
    top: 1.5vw;
    left: 1.75vw;
    width: 1.25vw;
    height: 2.5vw;
  }
}
.form-group.privacy_policy input[type=checkbox]:checked + span::after {
  opacity: 1;
}

.control-label {
  min-width: 15.7142857143vw;
  max-width: 15.7142857143vw;
  padding-right: 1.0714285714vw;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.7142857143vw;
  -webkit-transform: translateY(0.3571428571vw);
          transform: translateY(0.3571428571vw);
}
@media only screen and (max-width: 1023px) {
  .control-label {
    min-width: 28.6458333333vw;
    max-width: 28.6458333333vw;
    padding-right: 1.953125vw;
    gap: 1.3020833333vw;
    -webkit-transform: translateY(0.6510416667vw);
            transform: translateY(0.6510416667vw);
  }
}
@media only screen and (max-width: 767px) {
  .control-label {
    min-width: auto;
    max-width: none;
    width: 100%;
    padding-right: 3.75vw;
    gap: 2.5vw;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.control-label .title {
  line-height: 1.406;
  font-size: 1.1428571429vw;
  letter-spacing: 0.025em;
  font-weight: 400;
  display: block;
  position: relative;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
}
@media only screen and (max-width: 1023px) {
  .control-label .title {
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .control-label .title {
    font-size: 4vw;
  }
}
.control-label .required {
  display: inline-block;
  border-radius: 0.2857142857vw;
  background-color: #AA2300;
  width: 2.0714285714vw;
  height: 1.2142857143vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 0.7142857143vw;
  letter-spacing: 0.025em;
  font-weight: 400;
}
@media only screen and (max-width: 1023px) {
  .control-label .required {
    border-radius: 0.5208333333vw;
    width: 3.7760416667vw;
    height: 2.2135416667vw;
    font-size: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .control-label .required {
    border-radius: 1vw;
    width: 7.25vw;
    height: 4.25vw;
    font-size: 2.5vw;
  }
}

.controls {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .controls {
    margin-top: 2.5vw;
  }
}
.controls input[type=text], .controls input[type=email], .controls textarea, .controls select {
  padding: 0.4285714286vw 1.1428571429vw 0.3571428571vw;
  background-color: #F2F2F2;
  border-radius: 0.3571428571vw;
  font-size: 1.1428571429vw;
  letter-spacing: 0.025em;
  line-height: 1.406;
  width: 18.5714285714vw;
  font-weight: 400;
}
@media only screen and (max-width: 1023px) {
  .controls input[type=text], .controls input[type=email], .controls textarea, .controls select {
    padding: 0.78125vw 2.0833333333vw 0.6510416667vw;
    border-radius: 0.6510416667vw;
    font-size: 2.0833333333vw;
    width: 33.8541666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .controls input[type=text], .controls input[type=email], .controls textarea, .controls select {
    padding: 2.75vw 4vw 2.5vw;
    border-radius: 1.25vw;
    font-size: 4vw;
    width: 100%;
  }
}
.controls input[type=text].size-ll, .controls input[type=email].size-ll, .controls textarea.size-ll, .controls select.size-ll {
  width: 100%;
}
.controls textarea {
  width: 100%;
  height: 23vw;
}
@media only screen and (max-width: 767px) {
  .controls textarea {
    height: 40vw;
  }
}
.controls input[type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 1.1428571429vw;
  height: 1.1428571429vw;
  border: 1px solid #999999;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  cursor: pointer;
  top: 0.1428571429vw;
}
@media only screen and (max-width: 1023px) {
  .controls input[type=radio] {
    width: 2.0833333333vw;
    height: 2.0833333333vw;
    top: 0.2604166667vw;
  }
}
@media only screen and (max-width: 767px) {
  .controls input[type=radio] {
    width: 4vw;
    height: 4vw;
    top: 0.5vw;
  }
}
.controls input[type=radio]::before {
  content: "";
  width: 0.7857142857vw;
  height: 0.7857142857vw;
  background: #7DA33B;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
}
@media only screen and (max-width: 1023px) {
  .controls input[type=radio]::before {
    width: 1.4322916667vw;
    height: 1.4322916667vw;
  }
}
@media only screen and (max-width: 767px) {
  .controls input[type=radio]::before {
    width: 2.75vw;
    height: 2.75vw;
  }
}
.controls input[type=radio]:checked::before {
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
}
.controls label.radio {
  margin-right: 3vw;
  display: inline-block;
  line-height: 2;
  font-size: 1.1428571429vw;
  letter-spacing: 0.025em;
  font-weight: 400;
}
@media only screen and (max-width: 1023px) {
  .controls label.radio {
    margin-right: 5.46875vw;
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .controls label.radio {
    margin-right: 10.5vw;
    font-size: 4vw;
    min-width: -webkit-max-content;
    min-width: -moz-max-content;
    min-width: max-content;
  }
}
.controls .error-tooltip {
  display: block;
  margin-top: 0.7142857143vw;
  color: #AA2300;
}
@media only screen and (max-width: 1023px) {
  .controls .error-tooltip {
    margin-top: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .controls .error-tooltip {
    margin-top: 2.5vw;
  }
}
.controls > span {
  word-break: break-all;
  font-size: 1.1428571429vw;
}
@media only screen and (max-width: 1023px) {
  .controls > span {
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .controls > span {
    font-size: 4vw;
  }
}

.form-actions {
  margin-top: 1.7857142857vw;
}
@media only screen and (max-width: 1023px) {
  .form-actions {
    margin-top: 3.2552083333vw;
  }
}
@media only screen and (max-width: 767px) {
  .form-actions {
    margin-top: 6.25vw;
  }
}
.form-actions .btn {
  cursor: pointer;
  width: 10.3571428571vw;
  height: 3.5vw;
  background-color: #3B5808;
  color: #fff;
  border-radius: 0.3571428571vw;
  border: 1px #3B5808 solid;
  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;
  font-weight: 500;
  font-size: 1.1428571429vw;
  letter-spacing: 0.025em;
  margin: 0 auto;
  /*+.btn{
    margin-top: vw(15);
    @media only screen and (max-width: 1023px) {
      margin-top: vw-tb(15);
    }
    @media only screen and (max-width: 767px) {
      margin-top: vw-sp(15);
    }
  }*/
}
.form-actions .btn.modify {
  background-color: #fff;
  color: #3B5808;
}
.form-actions .btn.modify:hover {
  background-color: #3B5808;
  color: #fff;
}
@media only screen and (max-width: 1023px) {
  .form-actions .btn {
    width: 18.8802083333vw;
    height: 6.3802083333vw;
    border-radius: 0.6510416667vw;
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .form-actions .btn {
    width: 36.25vw;
    height: 12.25vw;
    border-radius: 1.25vw;
    font-size: 4vw;
  }
}
.form-actions .btn:hover {
  background-color: #fff;
  color: #3B5808;
}
.form-actions .btn:disabled {
  cursor: not-allowed;
  background-color: #999999;
  border: 1px #999999 solid;
}
.form-actions .btn:disabled:hover {
  color: #fff;
}

.confirm .form-actions .btn {
  margin: 0;
}
.confirm .form-actions.submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.4285714286vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 1023px) {
  .confirm .form-actions.submit {
    gap: 1.953125vw;
  }
}
@media only screen and (max-width: 767px) {
  .confirm .form-actions.submit {
    gap: 3.75vw;
  }
}

.prefectures select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.prefectures .controls {
  display: inline-block;
  position: relative;
  width: auto;
}
.prefectures .controls::after {
  content: "";
  display: block;
  position: absolute;
  right: 1vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  background-color: #707070;
  width: 0.6428571429vw;
  aspect-ratio: 18/9;
  -webkit-mask-image: url("/media/images/pine/common/link-arrow.svg");
  mask-image: url("/media/images/pine/common/link-arrow.svg");
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media only screen and (max-width: 1023px) {
  .prefectures .controls::after {
    width: 1.171875vw;
    right: 1.8229166667vw;
  }
}
@media only screen and (max-width: 767px) {
  .prefectures .controls::after {
    width: 2.25vw;
    right: 3.5vw;
  }
}
.prefectures .controls.selected::after {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}