.titleArea {
  padding: 72px 0 46px;
}

.titleArea p {
  line-height: 1.6;
  padding-top: 52px;
  color: #595757;
  font-size: 21px;
  text-align: center;
}

.telephoneArea .inner {
  max-width: 785px;
}

.telephoneBox {
  padding: 26px;
  background-color: #f8f3f9;
  color: #bc83bd;
  text-align: center;
}

.telephoneBox .btnTel {
  width: 60%;
  padding: 3px 0;
  box-shadow: 5px 7px 0 #fff;
}

.telephoneBox .btnTel span {
  font-size: 39px;
}

.telephoneBox .btnTel span::before {
  top: 55%;
  left: -5px;
  width: 28px;
  height: 28px;
}

.telephoneBox .time {
  padding-top: 4px;
  font-family: 'Kozuka Gothic Pr6N H';
  font-size: 15px;
  font-weight: 900;
}

.telephoneText {
  padding-bottom: 10px;
  font-family: 'Kozuka Gothic Pr6N H';
  font-size: 15px;
  font-weight: 900;
}

.telephoneBox .icon {
  width: 1.8rem;
  height: auto;
}

.telephoneBox span {
  line-height: 2.3rem;
  font-size: 1.7rem;
  font-weight: bold;
}

.formArea {
  padding: 67px 0 32px;
  font-family: YuGothic, "Yu Gothic", TsukuARdGothic-Regular, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  font-weight: 400;
}

.formArea .inner {
  max-width: 784px;
}

.inputRow {
  display: flex;
  align-items: flex-start;
  margin-bottom: 20px;
}

.inputRow p,
dt {
  width: 33%;
  padding: 13px 10px;
  background-color: #d7e0fb;
  font-size: 16px;
  border-radius: 3px;
}

.asterisk {
  color: #ff2c72;
}

.inputRow div,
dd {
  width: 66%;
  margin-left: 3%;
}

.inputRow input,
.inputRow select {
  display: inline-block;
  width: 100%;
  padding: 2%;
  border: 1px solid #b6b6b6;
  background-color: #fff;
  color: #000;
  font-size: 16px;
  border-radius: 3px;
}

.inputRow input::placeholder {
  color: #898989;
  font-size: 16px;
  vertical-align: super;
}

.inputRow .ymd {
  margin: 0 2%;
}

.inputRow .detail {
  width: 100%;
  padding: 2%;
  border: 1px solid #b6b6b6;
  font-family: YuGothic, 'Yu Gothic', 'TsukuARdGothic-Regular', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
  font-size: 16px;
  font-weight: 500;
  border-radius: 3px;
}

.buttonArea {
  padding: 56px 0;
}

.radioFlexBox {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

input[type='radio'],
input[type='checkbox'] {
  position: relative;
  width: 18px;
  height: 18px;
  margin: 0 5px 0 0;
  padding: 1%;
  font-family: 'Kozuka Gothic Pr6N B';
  font-weight: 700;
  cursor: pointer;
  transition: all .3s ease-out 0s;
  appearance: none;
  -webkit-appearance: none;
}

input[type='radio']:checked::before,
input[type='checkbox']:checked::before {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #0087ff;
  font-size: 23px;
  content: "\2713";
  transform: translate(-50%, -50%);
}

.radioLabel,
.checkboxLabel {
  margin-right: 7%;
  font-size: 16px;
}

.caution {
  text-align: center;
}

.cmnBtn.submitBtn {
  margin-bottom: 45px;
  border: 1px solid #fff;
  background-color: #bc83bd;
  color: #fff;
  cursor: pointer;
}

.cmnBtn.submitBtn::after {
  border-color: #fff;
}

.cmnBtn.returnBtn::after {
  right: unset;
  left: 19px;
  transform: translateY(-50%) rotate(-135deg);
}

.btnHiring {
  display: block;
  position: relative;
  width: 100%;
  margin: 0 auto 32.25px;
  border: 1px solid #bc83bd;
  font-family: 'Kozuka Gothic Pr6N B';
  font-weight: 700;
  text-align: center;
  max-width: 491px;
}

.btnHiring::after {
  position: absolute;
  bottom: -6px;
  left: 3px;
  z-index: -1;
  width: 100%;
  height: 100%;
  border: 1px solid #bc83bd;
  background-color: transparent;
  content: "";
}

.btnHiring span {
  display: block;
  position: relative;
  padding: 20px 0;
  background-color: #fff;
  color: #bc83bd;
  font-size: 21px;
  letter-spacing: -0.5px;
}

.btnHiring span::after {
  position: absolute;
  top: 50%;
  right: 18px;
  width: 6px;
  height: 6px;
  content: "";
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  border-color: #bc83bd;
  border-top: 2px solid;
  border-right: 2px solid;
}

#contactForm .flexBox {
  display: flex;
  align-items: center;
}

.colFlexBox {
  flex-direction: column;
  align-items: flex-start;
  margin-top: 10px;
}

.inputRow .radioRowFlex,
.inputRow .checkboxRowFlex {
  width: 100%;
  margin-bottom: 3%;
  margin-left: 0;
}

.inputRow .radioRowFlex:last-child {
  margin-bottom: 0;
}

.checkboxColFlex .checkboxRowFlex {
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 30px;
  margin-bottom: 0;
}

.inputCol {
  flex-direction: column;
}

.inputCol p {
  width: 100%;
}

.inputRow .checkboxFlexGp {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-left: 0;
}

.inputRow .checkboxColFlex {
  width: 28.5%;
  margin-left: 0;
}

.timeGp .checkboxLabel {
  margin-right: 0;
}

.policyLinkBtn {
  position: relative;
  margin-top: 40px;
  text-align: center;
}

.policyLinkBtn:hover {
  opacity: 0.8;
}

.policyLinkBtn a {
  display: inline-block;
  position: relative;
  padding-bottom: 10px;
  color: #bc83bd;
  font-family: 'Kozuka Gothic Pr6N B';
  font-size: 20px;
  font-weight: 700;
}

.policyLinkBtn::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 179px;
  margin: 0 auto;
  content: "";
  border-bottom: 1px solid#bc83bd;
}

.advisorFormButton .btnHiring {
  margin: 45px auto 0;
}

.confirmContainer {
  width: 100%;
  margin: 10px auto;
  max-width: 640px;
}

.confirmContainer .flexBox {
  margin-bottom: 15px;
}

.confirmContainer dd {
  width: 64%;
  word-break: break-word;
}

p.thanks {
  padding-top: 50px;
  text-align: left;
}

.multipleBox {
  display: flex;
  flex-wrap: wrap;
  width: 64%;
  line-height: 1.6;
}

.multipleBox {
  margin-left: 3%;
}

.multipleBox dd {
  width: auto;
  margin-right: 3%;
  margin-left: 0;
}

.multipleBox dd:last-child {
  margin-right: 0;
}

.lineContactBox {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 40px;
}

.lineContactText {
  padding-bottom: 7px;
  color: #bc83bd;
  font-family: 'Kozuka Gothic Pr6N H';
  font-size: 15px;
  font-weight: 900;
}

.lineContactBtn {
  position: relative;
  width: 365px;
  font-family: 'Kozuka Gothic Pr6N B';
  font-weight: 700;
  text-align: center;
}

.lineContactBtn::after {
  position: absolute;
  bottom: -6px;
  left: 7px;
  z-index: -1;
  width: 99%;
  height: 93%;
  border: 1px solid #bc83bd;
  background-color: transparent;
  content: "";
  border-radius: 12px;
}

.lineContactBtn span {
  display: block;
  position: relative;
  padding: 14px 5px 14px 40px;
  border: 1px solid #bc83bd;
  background-color: #fff;
  color: #bc83bd;
  font-size: 20px;
  border-radius: 12px;
}

.lineContactBtn span::before {
  position: absolute;
  top: 50%;
  left: 20%;
  width: 35px;
  height: 35px;
  background: url("../img/ico_line.png") no-repeat center/contain;
  content: "";
  transform: translateY(-50%);
}

.lineContactBtn span::after {
  position: absolute;
  top: 50%;
  right: 5%;
  width: 7px;
  height: 7px;
  content: "";
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  border-color: #bc83bd;
  border-top: 2px solid;
  border-right: 2px solid;
}








.hidden {
  display: none;
}

.form-section {
  margin-top: 12px;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 6px;
}

.entry-flex {
  display: flex;

}


@media only screen and (min-width: 768px) and (max-width: 1280px) {
  .titleArea {
    padding: 5.625vw 0 3.594vw;
  }

  .titleArea p {
    padding-top: 4.063vw;
    font-size: 1.641vw;
  }

  .telephoneArea .inner {
    max-width: 61.328vw;
  }

  .telephoneBox {
    padding: 2.031vw;
  }

  .telephoneBox .btnTel {
    padding: 0.234vw 0;
    box-shadow: 0.391vw 0.547vw 0 #fff;
  }

  .telephoneBox .btnTel span {
    padding-left: 2.344vw;
    font-size: 3.047vw;
  }

  .telephoneBox .btnTel span::before {
    left: -0.391vw;
    width: 2.188vw;
    height: 2.188vw;
  }

  .telephoneBox .time {
    padding-top: 0.313vw;
    font-size: 1.172vw;
  }

  .telephoneText {
    padding-bottom: 0.781vw;
    font-size: 1.172vw;
  }

  .formArea {
    padding: 5.234vw 0 2.5vw;
  }

  .formArea .inner {
    max-width: 61.25vw;
  }

  .inputRow {
    margin-bottom: 1.563vw;
  }

  .inputRow p,
  dt {
    padding: 1.016vw 0.781vw;
    font-size: 1.25vw;
    border-radius: 0.234vw;
  }

  .inputRow input,
  .inputRow select {
    border: 0.078vw solid #b6b6b6;
    font-size: 1.25vw;
    border-radius: 0.234vw;
  }

  .inputRow input::placeholder {
    font-size: 1.25vw;
  }

  .inputRow .detail {
    border: 0.078vw solid #b6b6b6;
    font-size: 1.25vw;
    border-radius: 0.234vw;
  }

  .buttonArea {
    padding: 4.375vw 0;
  }

  .radioLabel,
  .checkboxLabel {
    font-size: 1.25vw;
  }

  input[type='radio'],
  input[type='checkbox'] {
    width: 1.406vw;
    height: 1.406vw;
    margin: 0 0.391vw 0 0;
  }

  input[type='radio']:checked::before,
  input[type='checkbox']:checked::before {
    font-size: 1.797vw;
  }

  .cmnBtn.submitBtn {
    margin-bottom: 3.516vw;
    border: 0.078vw solid #fff;
  }

  .cmnBtn.returnBtn::after {
    left: 1.484vw;
  }

  .btnHiring {
    margin: 0 auto 2.52vw;
    border: 0.078vw solid #bc83bd;
    max-width: 38.359vw;
  }

  .btnHiring::after {
    bottom: -0.469vw;
    left: 0.4vw;
    border: 0.078vw solid #bc83bd;
  }

  .btnHiring span {
    padding: 1.563vw 0;
    font-size: 1.641vw;
    letter-spacing: -0.039vw;
  }

  .btnHiring span::after {
    right: 1.406vw;
    width: 0.469vw;
    height: 0.469vw;
    border-top: 0.156vw solid;
    border-right: 0.156vw solid;
  }

  .colFlexBox {
    margin-top: 0.781vw;
  }

  .checkboxColFlex .checkboxRowFlex {
    margin-top: 2.344vw;
  }

  .policyLinkBtn {
    margin-top: 3.125vw;
  }

  .policyLinkBtn a {
    padding-bottom: 0.781vw;
    font-size: 1.563vw;
  }

  .policyLinkBtn::after {
    width: 13.984vw;
    border-bottom-width: 0.078vw;
  }

  .advisorFormButton .btnHiring {
    margin: 3.516vw auto 0;
  }

  .confirmContainer {
    margin: 0.781vw auto;
    max-width: 50vw;
  }

  .confirmContainer .flexBox {
    margin-bottom: 1.172vw;
  }

  p.thanks {
    padding-top: 3.906vw;
  }

  .lineContactBox {
    margin-bottom: 3.125vw;
  }

  .lineContactText {
    padding-bottom: 0.547vw;
    font-size: 1.172vw;
  }

  .lineContactBtn {
    width: 28.516vw;
  }

  .lineContactBtn::after {
    bottom: -0.469vw;
    left: 0.547vw;
    border: 0.078vw solid #bc83bd;
    border-radius: 0.938vw;
  }

  .lineContactBtn span {
    padding: 1.094vw 0.391vw 1.094vw 3.125vw;
    border: 0.078vw solid #bc83bd;
    font-size: 1.563vw;
    border-radius: 0.938vw;
  }

  .lineContactBtn span::before {
    width: 2.734vw;
    height: 2.734vw;
  }

  .lineContactBtn span::after {
    width: 0.547vw;
    height: 0.547vw;
    border-top: 0.156vw solid;
    border-right: 0.156vw solid;
  }

  .formErrMsg {
    padding-bottom: 3.906vw;
  }
}

@media only screen and (max-width: 767.9px) {
  .titleArea {
    padding: 4.533vw 0 0;
  }

  .titleArea p {
    padding-top: 3.067vw;
    font-size: 3.467vw;
  }

  .telephoneArea .inner {
    max-width: 100%;
  }

  .telephoneBox {
    padding: 4.8vw;
    background-color: transparent;
  }

  .telephoneBox .btnTel {
    position: relative;
    width: 90%;
    padding: 0;
    border: unset;
    box-shadow: none;
    background: none;
  }

  .telephoneBox .btnTel::after {
    position: absolute;
    bottom: -0.867vw;
    left: 1.233vw;
    z-index: -1;
    width: 99%;
    height: 91%;
    border: 0.267vw solid #bc83bd;
    background-color: transparent;
    content: "";
  }

  .telephoneBox .btnTel span {
    display: block;
    padding: 0.7vw 0 0.7vw 8vw;
    background-color: #bc83bd;
    font-size: 6.933vw;
  }

  .telephoneBox .btnTel span::before {
    top: 50%;
    left: 12.5vw;
    width: 4.8vw;
    height: 4.8vw;
  }

  .telephoneBox .time {
    padding-top: 0.167vw;
    font-size: 2.933vw;
  }

  .telephoneText {
    padding-bottom: 0;
    font-size: 2.933vw;
  }

  .telephoneBox .contactBtnList {
    padding: 1.2vw 0 0 0;
  }

  .formArea {
    padding: 3.467vw 0 4.633vw;
  }

  .formArea .inner {
    max-width: 100%;
  }

  .inputRow {
    flex-direction: column;
    margin-bottom: 2.333vw;
  }

  .inputRow:last-child {
    margin-bottom: 1.033vw;
  }

  .inputRow div,
  dd {
    width: 100%;
    margin-top: 3%;
    margin-left: 0;
  }

  .inputRow .radioRowFlex,
  .inputRow .checkboxRowFlex {
    margin-bottom: 0;
  }

  .inputRow p,
  dt {
    width: 100%;
    padding: 1.6vw;
    font-size: 3.467vw;
    border-radius: 0.8vw;
  }

  input[type='radio'],
  input[type='checkbox'] {
    width: 2.933vw;
    height: 2.933vw;
    margin: 0 1.5vw 0 0;
  }

  input[type='radio']:checked::before,
  input[type='checkbox']:checked::before {
    font-size: 4.267vw;
  }

  .inputRow input,
  .inputRow select {
    padding: 1.6%;
    border: 0.267vw solid #b6b6b6;
    font-size: 3.467vw;
    border-radius: 0.8vw;
  }

  .inputRow input::placeholder {
    font-size: 3.467vw;
  }

  .inputRow .checkboxFlexGp {
    margin-bottom: 2%;
  }

  .radioLabel,
  .checkboxLabel {
    margin-right: 8%;
    font-size: 3.467vw;
  }

  .buttonArea {
    padding: 6.133vw 0;
  }

  .inputRow .detail {
    border: 0.267vw solid #b6b6b6;
    font-size: 3.467vw;
    border-radius: 0.8vw;
    max-height: 31.467vw;
  }

  .caution {
    font-size: 3.467vw;
    text-align: left;
  }

  .cmnBtn.submitBtn {
    margin-bottom: 8.6vw;
    padding: 2.233vw 0;
    border: none;
    box-shadow: none;
    font-size: 3.733vw;
    max-width: 73.867vw;
  }

  .cmnBtn.submitBtn::after {
    right: 2.567vw;
  }

  .cmnBtn.returnBtn::after {
    left: 1.867vw;
  }

  .btnHiring {
    margin-bottom: 8.6vw;
    border: 0.267vw solid #bc83bd;
    max-width: 100%;
  }

  .btnHiring::after {
    bottom: -1.333vw;
    left: 0.8vw;
    border: 0.267vw solid #bc83bd;
  }

  .btnHiring span {
    padding: 4vw 0;
    font-size: 3.733vw;
    letter-spacing: -0.133vw;
  }

  .btnHiring span::after {
    right: 4.867vw;
    width: 1.6vw;
    height: 1.6vw;
    border-top: 0.533vw solid;
    border-right: 0.533vw solid;
  }

  .cmnBtn.btnSeeAll {
    display: flex;
    align-items: center;
    margin: 0 auto 8.6vw;
    padding: 0;
    box-shadow: 1.067vw 1.067vw 0 #bc83bd;
    text-align: left;
    max-width: 72.667vw;
  }

  .btnSeeAll .iconSearch {
    display: inline-block;
    width: 8.733vw;
    padding-top: 1.767vw;
    background-color: #bc83bd;
    text-align: center;
  }

  .btnSeeAll .iconSearch img {
    max-width: 5.067vw;
  }

  .btnSeeAll .seeAllText {
    padding-left: 10.667vw;
    font-size: 3.733vw;
  }

  .cmnBtn.btnSeeAll::after {
    right: 3.067vw;
  }

  .inputRow .checkboxColFlex {
    width: 33%;
  }

  .inputRow .colFlexBox {
    margin-top: 0;
  }

  .checkboxColFlex .checkboxRowFlex {
    margin-top: 0;
    margin-bottom: 3.2vw;
  }

  .qualifiGp .checkboxRowFlex .checkboxLabel {
    margin-right: 0;
    font-size: 2.667vw;
  }

  .policyLinkBtn {
    margin-top: 10.667vw;
  }

  .policyLinkBtn:hover {
    opacity: 1;
  }

  .policyLinkBtn a {
    padding-bottom: 2.667vw;
    font-size: 3.2vw;
  }

  .policyLinkBtn::after {
    width: 12.533vw;
    border-bottom-width: 0.267vw;
  }

  .advisorFormButton .btnHiring {
    margin: 0 auto 8vw;
  }

  .formFlexBtn {
    display: flex;
    flex-direction: column-reverse;
  }

  .confirmContainer {
    margin: 2% auto;
    max-width: 100%;
  }

  .confirmContainer .flexBox {
    margin-bottom: 4vw;
  }

  p.thanks {
    padding-top: 6.667vw;
  }

  .confirmContainer .flexBox {
    flex-direction: column;
  }

  .confirmContainer dd {
    width: 100%;
    padding: 0 1.6vw;
    font-size: 3.467vw;
  }

  .multipleBox {
    width: 100%;
    margin-left: 0;
  }

  .lineContactBox {
    margin-top: 4vw;
    margin-bottom: 3.367vw;
  }

  .lineContactText {
    padding-bottom: 1.367vw;
    font-size: 2.933vw;
  }

  .lineContactBtn {
    width: 72vw;
  }

  .lineContactBtn::after {
    bottom: -1.1vw;
    left: 1.267vw;
    border: 0.267vw solid #bc83bd;
    border-radius: 2.4vw;
  }

  .lineContactBtn span {
    padding: 3.033vw 1.333vw 3.033vw 10.667vw;
    border: 0.267vw solid #bc83bd;
    font-size: 4vw;
    border-radius: 2.4vw;
  }

  .lineContactBtn span::before {
    width: 6.933vw;
    height: 6.933vw;
  }

  .lineContactBtn span::after {
    width: 1.867vw;
    height: 1.867vw;
    border-top: 0.533vw solid;
    border-right: 0.533vw solid;
  }
}