@charset "UTF-8";
:root {
  --color_red:#FF0000;
  --color_application:#366BBA;
  --color_completed:#348C47;
  --color_link:#467CA3;
  --bg_gray:#F6F6F6;
  --bg_application:#E3F0FB;
  --bg_completed:#D5F6D7;
  --bg_notice:#FFE7E7;
  --font_jp:"Noto Sans JP", sans-serif;
  --pc_w:1200;
  --designwidth:1920;
}
@media screen and (max-width:767px) {
  :root {
    --designwidth:768;
  }
}

.u-color-red {
  color: var(--color_red) !important;
}

.u-color-gray {
  color: #727272 !important;
}

.l-main {
  font-family: var(--font_jp);
}

.l-support {
  font-family: var(--font_jp);
}

.l-support-block {
  margin: 0 auto;
  max-width: 1200px;
  width: calc(100% - 60px);
}
@media screen and (max-width:767px) {
  .l-support-block {
    padding: 0 calc(40 / var(--designwidth) * 100vw);
    width: auto;
  }
}

.c-support-headline-v1 {
  position: relative;
  margin: 0 0 20px;
  padding-left: 15px;
  color: var(--black, #202020);
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
@media screen and (max-width:767px) {
  .c-support-headline-v1 {
    margin: 0 0 calc(20 / var(--designwidth) * 100vw);
    padding-left: calc(24 / var(--designwidth) * 100vw);
    font-size: calc(34 / var(--designwidth) * 100vw);
    line-height: 1.1;
  }
}
.c-support-headline-v1:before {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 15px;
  z-index: 2;
  content: "";
  display: block;
  width: 3px;
  height: 100%;
  background: var(--color_red);
}

.c-support-headline-v2 {
  position: relative;
  margin: 25px 0 6px;
  padding-left: 1em;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 30.6px */
  letter-spacing: 0.9px;
}
@media screen and (max-width:767px) {
  .c-support-headline-v2 {
    margin: calc(50 / var(--designwidth) * 100vw) 0 calc(20 / var(--designwidth) * 100vw);
    font-size: calc(30 / var(--designwidth) * 100vw);
    line-height: 150%; /* 45px */
    letter-spacing: 1.5px;
    font-feature-settings: "palt";
  }
}
.c-support-headline-v2:before {
  position: absolute;
  z-index: 5;
  top: 0.6em;
  left: 0;
  content: "";
  width: 7px;
  height: 7px;
  display: block;
  border-radius: 50%;
  background-color: var(--color_red);
}

.support-paragraph {
  margin-top: 1em;
}

a.c-inlinelink {
  text-decoration: underline;
}
a.c-inlinelink:hover {
  text-decoration: none;
}

.c-support-numberlist-v1 {
  counter-reset: ollist;
}
.c-support-numberlist-v1 li {
  position: relative;
  padding-left: 2.5em;
  line-height: 1.8;
  counter-increment: ollist;
}
.c-support-numberlist-v1 li + li {
  margin-top: 0.2em;
}
.c-support-numberlist-v1 li:before {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  content: "（" counter(ollist) "）";
  display: block;
}

.c-support-notelist {
  margin-top: 0.2em;
}
.c-support-notelist li {
  position: relative;
  padding-left: 1em;
  font-size: 1.2rem;
}
.c-support-notelist li:before {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  content: "※";
}

.c-support-asidetext {
  margin-top: 1em;
  border-radius: 6px;
  font-size: 1.2rem;
  padding: 10px;
  background-color: #F6F6F6;
}

.support-dashboard {
  padding: 0 0 60px;
  background: var(--bg_gray);
}
@media screen and (max-width:767px) {
  .support-dashboard {
    padding: 0 0 calc(80 / var(--designwidth) * 100vw);
  }
}

.support-dashboard__lead {
  margin-bottom: 30px;
  font-size: 1.6rem;
}
@media screen and (max-width:767px) {
  .support-dashboard__lead {
    margin-bottom: calc(80 / var(--designwidth) * 100vw);
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}

.support-dashboard-multilayout {
  display: grid;
  max-width: var(--pc_w);
  margin: 0 auto;
  gap: 20px;
  grid-template-columns: calc(310 / var(--pc_w) * 100%) calc(850 / var(--pc_w) * 100%);
}
@media screen and (max-width:767px) {
  .support-dashboard-multilayout {
    gap: calc(80 / var(--designwidth) * 100vw) 0;
    grid-template-columns: 100%;
  }
}

.support-dashboard__user__state {
  margin: 0 0 20px;
  padding: 4px;
  background: #FFE5E5;
  color: var(--color_red);
  text-align: center;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: normal;
}

.support-dashboard__user__box {
  border-radius: 10px;
  padding: 25px;
  background-color: #fff;
}
@media screen and (max-width:767px) {
  .support-dashboard__user__box {
    border-radius: 5px;
    padding: calc(40 / var(--designwidth) * 100vw);
  }
}

.support-dashboard__user__name {
  font-size: 2rem;
  font-weight: 500;
  line-height: normal;
}

.support-dashboard__user__label {
  margin: 20px 0 4px;
  color: #7585A3;
  font-weight: 500;
  font-size: 13px;
  line-height: normal;
}

.support-dashboard__user__value {
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
}

a.support-dashboard__user__edit {
  position: relative;
  display: block;
  border-radius: 30px;
  border: 1px solid #C2C2C2;
  margin: 20px auto 0;
  width: 160px;
  padding: 12px 13px;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  text-decoration: none !important;
}
a.support-dashboard__user__edit:after {
  position: absolute;
  z-index: 2;
  top: calc(50% - 4px);
  right: 13px;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border-top: 2px solid var(--color_red);
  border-right: 2px solid var(--color_red);
  content: "";
  display: inline-block;
  transition: ease all 0.3s;
}
@media print, screen and (min-width: 768px) {
  a.support-dashboard__user__edit {
    transition: ease opacity 0.3s;
  }
  a.support-dashboard__user__edit:hover {
    opacity: 0.7;
  }
}

a.support-dashboard__user__remove {
  display: block;
  margin: 12px auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  text-decoration: underline;
  font-size: 14px;
  font-weight: 500;
  color: var(--color_link);
}
a.support-dashboard__user__remove:hover {
  text-decoration: none;
}

.support-dashboard-menu {
  display: flex;
  gap: 0 40px;
  align-items: center;
  margin: 20px 0 0;
}
@media screen and (max-width:767px) {
  .support-dashboard-menu {
    margin: calc(50 / var(--designwidth) * 100vw) 0 0;
    display: block;
  }
}

.support-dashboard-menu__form a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 390px;
  height: 60px;
  border-radius: 50px;
  color: #fff;
  font-weight: bold;
  background-color: var(--color_red);
  text-decoration: none !important;
}
@media print, screen and (min-width: 768px) {
  .support-dashboard-menu__form a {
    transition: ease opacity 0.3s;
  }
  .support-dashboard-menu__form a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width:767px) {
  .support-dashboard-menu__form a {
    width: 100%;
    height: calc(98 / var(--designwidth) * 100vw);
    text-decoration: none !important;
  }
}
.support-dashboard-menu__form a:after {
  position: absolute;
  z-index: 2;
  top: calc(50% - 4px);
  right: 20px;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: inline-block;
  transition: ease all 0.3s;
}
@media screen and (max-width:767px) {
  .support-dashboard-menu__form a:after {
    right: 15px;
  }
}

@media screen and (max-width:767px) {
  .support-dashboard-menu__fcalender {
    margin-top: calc(30 / var(--designwidth) * 100vw);
    display: flex;
    justify-content: center;
  }
}
.support-dashboard-menu__fcalender a:before {
  position: relative;
  z-index: 2;
  top: -1px;
  margin-right: 12px;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border-top: 2px solid var(--color_red);
  border-right: 2px solid var(--color_red);
  content: "";
  display: inline-block;
}
.support-dashboard-menu__fcalender a:after {
  position: relative;
  top: -1px;
  content: "";
  display: inline-block;
  margin-left: 12px;
  vertical-align: middle;
  height: 14px;
  width: 14px;
  background: url(../img/common/icon_blank.svg) 50% 50% no-repeat;
  background-size: contain;
}

.support-dashboard-plan {
  display: grid;
  gap: 5px;
  grid-template-columns: 100%;
  margin: 20px 0 0;
}

.support-dashboard-plan__section {
  position: relative;
  overflow: hidden;
  padding: 25px;
  border-radius: 6px;
  background-color: #fff;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__section {
    padding: calc(40 / var(--designwidth) * 100vw);
    border-radius: 0;
  }
}

.support-dashboard-plan__disabled {
  position: absolute;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(207, 217, 223, 0.6);
  color: rgba(39, 67, 108, 0.35);
  font-weight: 700;
  font-size: 90px;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__disabled {
    font-size: 70px;
  }
}

.support-dashboard-plan__date {
  margin: 0 0 6px;
  color: #7C7C7C;
  font-size: 14px;
  line-height: normal;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__date {
    margin: 0 0 calc(8 / var(--designwidth) * 100vw);
    font-size: calc(24 / var(--designwidth) * 100vw);
  }
}

.support-dashboard-plan__title {
  margin: 0 0 28px;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__title {
    margin: 0 0 calc(30 / var(--designwidth) * 100vw);
    font-size: calc(32 / var(--designwidth) * 100vw);
  }
}

.support-dashboard-plan__detail {
  display: grid;
  gap: 5px;
  line-height: 1.4;
  grid-template-columns: 210px auto;
  margin-top: 14px;
  font-weight: 700;
  font-size: 1.4rem;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__detail {
    margin-top: calc(20 / var(--designwidth) * 100vw);
    grid-template-columns: 100%;
    gap: calc(8 / var(--designwidth) * 100vw) 0;
  }
}
.support-dashboard-plan__detail dt {
  border-right: 1px solid #C2C2C2;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__detail dt {
    border: none;
    font-size: calc(24 / var(--designwidth) * 100vw);
  }
}
.support-dashboard-plan__detail dd {
  padding-left: 20px;
  font-weight: 400;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__detail dd {
    padding: 0;
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}

.support-dashboard-plan__flow {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  margin: 28px 0 0;
}
@media screen and (max-width:767px) {
  .support-dashboard-plan__flow {
    margin: calc(30 / var(--designwidth) * 100vw) 0 0;
    gap: calc(12 / var(--designwidth) * 100vw);
    grid-template-columns: 100%;
  }
}

.support-dashboard-button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  border: 1px solid #C2C2C2;
  padding: 14px 20px;
  font-size: 1.4rem;
  line-height: normal;
  text-decoration: none !important;
}
@media screen and (max-width:767px) {
  .support-dashboard-button {
    padding: calc(30 / var(--designwidth) * 100vw);
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}
.support-dashboard-button.is-completed {
  border-color: var(--bg_completed);
  background: var(--bg_completed);
  color: var(--color_completed);
  pointer-events: none;
}
.support-dashboard-button.is-completed:after {
  display: none;
}
.support-dashboard-button.is-application {
  border-color: var(--bg_application);
  background: var(--bg_application);
  color: var(--color_application);
  pointer-events: none;
}
.support-dashboard-button.is-application:after {
  display: none;
}
.support-dashboard-button.is-error {
  border-color: var(--bg_notice);
  background: var(--bg_notice);
  color: var(--color_red);
  pointer-events: none;
}
.support-dashboard-button.is-error:after {
  display: none;
}
.support-dashboard-button.is-disabled {
  border-color: #C2C2C2;
  background-color: #C2C2C2;
  color: rgba(255, 255, 255, 0.6);
  pointer-events: none;
}
.support-dashboard-button.is-disabled:after {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .support-dashboard-button {
    transition: ease opacity 0.3s;
  }
  .support-dashboard-button:hover {
    opacity: 0.7;
  }
}
.support-dashboard-button:after {
  position: absolute;
  z-index: 2;
  top: calc(50% - 4px);
  right: 20px;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border-top: 2px solid var(--color_red);
  border-right: 2px solid var(--color_red);
  content: "";
  display: inline-block;
}
@media screen and (max-width:767px) {
  .support-dashboard-button:after {
    right: 12px;
  }
}

.support-dashboard-notice {
  margin: 10px 0 0;
  padding: 10px 15px;
  background: var(--bg_notice);
  color: var(--color_red);
  font-size: 1.4rem;
  line-height: normal;
}
@media screen and (max-width:767px) {
  .support-dashboard-notice {
    margin: calc(20 / var(--designwidth) * 100vw) 0 0;
    padding: calc(12 / var(--designwidth) * 100vw);
    font-size: calc(24 / var(--designwidth) * 100vw);
  }
}

.support-notice {
  padding: 50px 0;
  font-size: 1.4rem;
}
@media screen and (max-width:767px) {
  .support-notice {
    padding: calc(80 / var(--designwidth) * 100vw) 0;
    font-size: calc(26 / var(--designwidth) * 100vw);
    line-height: 1.8;
  }
}

.p-form-headline-v1 {
  position: relative;
  margin: 0 0 50px;
  padding-left: 45px;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.5;
  font-weight: 700;
  color: #202020;
}
@media screen and (max-width:767px) {
  .p-form-headline-v1 {
    margin: 0 0 calc(80 / var(--designwidth) * 100vw);
    padding-left: calc(76 / var(--designwidth) * 100vw);
    font-size: calc(40 / var(--designwidth) * 100vw);
    font-feature-settings: "palt";
  }
}
.p-form-headline-v1:before {
  position: absolute;
  z-index: 2;
  top: 0.4em;
  left: 0;
  content: "";
  display: block;
  vertical-align: middle;
  width: 32px;
  height: 28px;
  background: url(../img/common/icon_logo.svg) 50% 50% no-repeat;
  background-size: contain;
}
@media screen and (max-width:767px) {
  .p-form-headline-v1:before {
    width: calc(50 / var(--designwidth) * 100vw);
    height: calc(43 / var(--designwidth) * 100vw);
  }
}

.p-form-headline-v2 {
  border-bottom: 2px solid var(--color_red);
  margin: 50px 0 30px;
  padding: 0 0 5px;
  font-weight: 700;
  font-size: 2.4rem;
}
@media screen and (max-width:767px) {
  .p-form-headline-v2 {
    margin: calc(80 / var(--designwidth) * 100vw) 0 calc(50 / var(--designwidth) * 100vw);
    padding: 0 0 calc(24 / var(--designwidth) * 100vw);
    font-size: calc(34 / var(--designwidth) * 100vw);
    line-height: normal;
  }
}

.p-form--short {
  margin: 0 auto;
  max-width: 760px;
}

.p-form-layout {
  display: grid;
  justify-content: space-between;
  gap: 50px 0;
  grid-template-columns: 370px 760px;
}
.p-form-layout--single {
  grid-template-columns: 100%;
}
@media screen and (max-width:767px) {
  .p-form-layout {
    gap: calc(50 / var(--designwidth) * 100vw) 0;
    grid-template-columns: 100%;
  }
}

.p-form-parent-data {
  padding: 25px;
  border-radius: 6px;
  background: #F6F6F6;
  line-height: normal;
  position: -webkit-sticky;
  position: sticky;
  top: 15px;
  left: 0;
}
@media screen and (max-width:767px) {
  .p-form-parent-data {
    position: static;
    border-radius: 0;
    padding: calc(40 / var(--designwidth) * 100vw);
  }
}

.p-form-parent-data__event {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 500;
  color: #7C7C7C;
}
@media screen and (max-width:767px) {
  .p-form-parent-data__event {
    margin: 0 0 calc(8 / var(--designwidth) * 100vw);
    font-size: calc(24 / var(--designwidth) * 100vw);
  }
}

.p-form-parent-data__title {
  margin: 0 0 28px;
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width:767px) {
  .p-form-parent-data__title {
    margin: 0 0 calc(30 / var(--designwidth) * 100vw);
    font-size: calc(32 / var(--designwidth) * 100vw);
  }
}

.p-form-parent-data__desc {
  margin-top: 20px;
  font-size: 1.4rem;
}
@media screen and (max-width:767px) {
  .p-form-parent-data__desc {
    margin-top: calc(20 / var(--designwidth) * 100vw);
  }
}
.p-form-parent-data__desc dt {
  margin-bottom: 8px;
  font-weight: 700;
}
@media screen and (max-width:767px) {
  .p-form-parent-data__desc dt {
    margin-bottom: calc(8 / var(--designwidth) * 100vw);
    font-size: calc(24 / var(--designwidth) * 100vw);
  }
}
.p-form-parent-data__desc dd {
  font-weight: 400;
}
@media screen and (max-width:767px) {
  .p-form-parent-data__desc dd {
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}

.p-form-step {
  position: relative;
  display: grid;
  justify-content: space-between;
  grid-template-columns: repeat(3, 50px);
  margin: 50px auto;
  width: 310px;
}
@media screen and (max-width:767px) {
  .p-form-step {
    grid-template-columns: repeat(3, 35px);
    margin: 40px auto;
    width: 205px;
  }
}
.p-form-step:after {
  position: absolute;
  z-index: 2;
  top: 24px;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #C2C2C2;
}
@media screen and (max-width:767px) {
  .p-form-step:after {
    height: 1px;
    top: 17px;
  }
}

.p-form-step__item {
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.p-form-step__item.is-current {
  font-weight: bold;
  color: var(--color_red);
}

.p-form-step__num {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  border-radius: 50%;
  width: 100%;
  border: 2px solid #C2C2C2;
  font-weight: 400;
  font-size: 2.4rem;
  font-family: Arial, Helvetica, sans-serif;
  background-color: #fff;
  color: #C2C2C2;
}
@media screen and (max-width:767px) {
  .p-form-step__num {
    border-width: 1px;
    font-size: 1.5rem;
  }
}
.is-current .p-form-step__num {
  border-color: var(--color_red);
  background-color: var(--color_red);
  color: #fff;
}

.p-form-step__label {
  margin-top: 2px;
  font-size: 1.4rem;
}
@media screen and (max-width:767px) {
  .p-form-step__label {
    font-size: 1.2rem;
  }
}
.is-current .p-form-step__label {
  font-weight: bold;
}

[v-cloak] {
  display: none;
}

.p-form-control {
  padding: 24px 0;
  border-top: 1px dotted #C2C2C2;
}
@media screen and (max-width:767px) {
  .p-form-control {
    padding: calc(30 / var(--designwidth) * 100vw) 0;
  }
}
.p-form-control:first-child {
  padding-top: 0 !important;
  border-top: none;
}
.p-form-control .captcha {
  display: flex;
  justify-content: center;
}

.p-form-control__header, .wp-members-form .p-form-control label {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 12px;
}
@media screen and (max-width:767px) {
  .p-form-control__header, .wp-members-form .p-form-control label {
    margin: 0 0 calc(20 / var(--designwidth) * 100vw);
    font-size: calc(30 / var(--designwidth) * 100vw);
  }
}

.p-form-control__label, .wp-members-form .p-form-control label {
  position: relative;
  padding-left: 1em;
  line-height: 1.7;
  color: #202020;
}
@media screen and (max-width:767px) {
  .p-form-control__label, .wp-members-form .p-form-control label {
    line-height: 1.5;
  }
}
.p-form-control__label:before, .wp-members-form .p-form-control label:before {
  position: absolute;
  z-index: 5;
  top: 0.75em;
  left: 0;
  content: "";
  width: 7px;
  height: 7px;
  display: block;
  border-radius: 50%;
  background-color: var(--color_red);
}
@media screen and (max-width:767px) {
  .p-form-control__label:before, .wp-members-form .p-form-control label:before {
    top: 0.6em;
  }
}

.p-form-reqicon,
.p-form-control__label.is-required:after,
.wp-members-form .p-form-control label.is-required:after {
  position: relative;
  top: -2px;
  content: "必須";
  margin-left: 1em;
  display: inline-block;
  padding: 3px;
  width: 3em;
  font-weight: 500;
  line-height: 1;
  font-size: 1.2rem;
  text-align: center;
  background-color: red;
  color: #fff;
}
@media screen and (max-width:767px) {
  .p-form-reqicon,
  .p-form-control__label.is-required:after,
  .wp-members-form .p-form-control label.is-required:after {
    top: -1px;
    margin-left: 0.5em;
    padding: 3px 2px 4px;
    font-size: 1.1rem;
  }
}
.is-confirm .p-form-reqicon,
.is-confirm .p-form-control__label.is-required:after,
.is-confirm .wp-members-form .p-form-control label.is-required:after,
.wp-members-form .p-form-control .is-confirm label.is-required:after {
  display: none !important;
}

.p-form-control__subgroup {
  display: grid;
}

.p-form-control__subgroup--name {
  gap: 0 15px;
  grid-template-columns: repeat(2, 1fr);
}

.p-form-control__subgroup__label {
  margin-bottom: 0.4em;
}

.p-form-control__notelist {
  margin-top: 12px;
}
.p-form-control__notelist li {
  position: relative;
  padding-left: 1em;
  font-size: 1.2rem;
}
.p-form-control__notelist li:before {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  content: "※";
}

.c-form-input::-moz-placeholder, .wp-members-form input[type=text]::-moz-placeholder, .wp-members-form input[type=email]::-moz-placeholder, .wp-members-form input[type=password]::-moz-placeholder {
  color: #7C7C7C;
}

.c-form-input::placeholder, .wp-members-form input[type=text]::placeholder,
.wp-members-form input[type=email]::placeholder,
.wp-members-form input[type=password]::placeholder {
  color: #7C7C7C;
}
.c-form-input[readonly], .wp-members-form input[readonly][type=text],
.wp-members-form input[readonly][type=email],
.wp-members-form input[readonly][type=password] {
  color: #7C7C7C;
  background-color: #eeeeee;
}

.c-form-input--full {
  width: 100%;
}

.c-form-error {
  margin-top: 0.4em;
  font-size: 1.3rem;
  color: var(--color_red);
}
@media screen and (max-width:767px) {
  .c-form-error {
    font-size: 1.1rem;
  }
}

.p-form-next-layout {
  margin-top: 50px;
  display: grid;
  justify-content: center;
  gap: 20px;
  grid-template-columns: 230px;
}
@media screen and (max-width:767px) {
  .p-form-next-layout {
    margin-top: calc(50 / var(--designwidth) * 100vw);
    grid-template-columns: calc(420 / var(--designwidth) * 100vw);
  }
}
.p-form-next-layout--submit {
  grid-template-columns: 130px 230px;
}
@media screen and (max-width:767px) {
  .p-form-next-layout--submit {
    grid-template-columns: auto;
  }
}

.buttons[type=submit],
button.p-form-return,
button.p-form-submit {
  position: relative;
  display: block;
  padding: 12px;
  border: none;
  border-radius: 50px;
  font-size: 1.6rem;
  box-shadow: none;
  cursor: pointer;
}
.buttons[type=submit][disabled],
button.p-form-return[disabled],
button.p-form-submit[disabled] {
  pointer-events: none;
  background-color: #7C7C7C;
}
@media print, screen and (min-width: 768px) {
  .buttons[type=submit],
  button.p-form-return,
  button.p-form-submit {
    transition: ease opacity 0.3s;
  }
  .buttons[type=submit]:hover,
  button.p-form-return:hover,
  button.p-form-submit:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width:767px) {
  .buttons[type=submit],
  button.p-form-return,
  button.p-form-submit {
    margin: 0 auto;
    padding: calc(30 / var(--designwidth) * 100vw);
    font-weight: 700;
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}

button.p-form-return {
  background-color: #F6F6F6;
}
@media screen and (max-width:767px) {
  button.p-form-return {
    order: 2;
    padding: calc(20 / var(--designwidth) * 100vw);
    width: calc(220 / var(--designwidth) * 100vw);
  }
}
button.p-form-return:before {
  position: absolute;
  z-index: 2;
  top: calc(50% - 4px);
  left: 20px;
  width: 8px;
  height: 8px;
  transform: rotate(-135deg);
  border-top: 2px solid #F00;
  border-right: 2px solid #F00;
  content: "";
  display: inline-block;
  transition: ease all 0.3s;
}
@media screen and (max-width:767px) {
  button.p-form-return:before {
    left: calc(30 / var(--designwidth) * 100vw);
  }
}

.buttons[type=submit],
button.p-form-submit {
  border: none;
  background-color: #F00;
  color: #fff;
}
@media screen and (max-width:767px) {
  .buttons[type=submit],
  button.p-form-submit {
    width: calc(420 / var(--designwidth) * 100vw);
    order: 1;
  }
}
.buttons[type=submit]:before,
button.p-form-submit:before {
  position: absolute;
  z-index: 2;
  top: calc(50% - 4px);
  right: 20px;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: inline-block;
  transition: ease all 0.3s;
}
@media screen and (max-width:767px) {
  .buttons[type=submit]:before,
  button.p-form-submit:before {
    right: calc(30 / var(--designwidth) * 100vw);
  }
}

.buttons[type=submit] {
  display: block;
  width: 230px;
  max-width: 100%;
  margin: 0 auto !important;
  padding: 12px 20px;
}

#wpmem_login,
#wpmem_reg {
  margin-top: 30px;
  font-family: var(--font_jp) !important;
}

.wp-members-form .p-form-control:first-of-type {
  border-top: none !important;
  padding-top: 0 !important;
}

.wp-members-form .div_text input {
  width: 100%;
}

.wp-members-form .link-text {
  margin-top: 1.5em;
}

.wpmem_msg {
  margin: 0 0 30px;
  padding: 20px 30px;
  background-color: #F6F6F6;
  color: #202020;
}
@media screen and (max-width:767px) {
  .wpmem_msg {
    padding: 15px;
    line-height: 1.6;
  }
}

.wp-members-submit {
  margin-top: 50px;
}
@media screen and (max-width:767px) {
  .wp-members-submit {
    margin-top: calc(50 / var(--designwidth) * 100vw);
  }
}

.c-form-input, .wp-members-form input[type=text],
.wp-members-form input[type=email],
.wp-members-form input[type=password] {
  display: block;
  padding: 13px 15px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  border-radius: 6px !important;
  border: 1px solid #C2C2C2;
  background-color: #fff;
  box-shadow: none;
  font-size: 1.6rem;
  font-family: var(--font_jp);
  line-height: 1;
  max-width: 100%;
}
@media screen and (max-width:767px) {
  .c-form-input, .wp-members-form input[type=text],
  .wp-members-form input[type=email],
  .wp-members-form input[type=password] {
    padding: calc(30 / var(--designwidth) * 100vw);
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}
.c-form-input.is-error, .wp-members-form input.is-error[type=text],
.wp-members-form input.is-error[type=email],
.wp-members-form input.is-error[type=password] {
  border-color: #EC6453;
  background-color: #fbf0ec;
}
.c-form-input:active:not([disabled]), .wp-members-form input[type=text]:active:not([disabled]),
.wp-members-form input[type=email]:active:not([disabled]),
.wp-members-form input[type=password]:active:not([disabled]) {
  border-color: #333333;
  background-color: #fff;
}
.c-form-input[disabled], .wp-members-form input[disabled][type=text],
.wp-members-form input[disabled][type=email],
.wp-members-form input[disabled][type=password] {
  border-color: #C2C2C2;
  background-color: #C2C2C2;
}
.c-form-input:focus, .wp-members-form input[type=text]:focus,
.wp-members-form input[type=email]:focus,
.wp-members-form input[type=password]:focus {
  border-color: #333333;
  caret-color: #333333;
  background-color: #fff;
}
.c-form-input--full {
  width: 100%;
}

textarea.c-form-input {
  min-height: 8em;
  line-height: 1.4;
}

.c-form-selectbox {
  position: relative;
}
.c-form-selectbox select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  cursor: pointer;
  padding: 13px 45px 13px 25px;
  width: 100%;
  display: block;
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: var(--font_jp);
  font-weight: bold;
  border-radius: 6px !important;
  border: 1px solid #C2C2C2;
  background-color: #fff;
  color: #333333;
  box-shadow: none;
}
@media screen and (max-width:767px) {
  .c-form-selectbox select {
    padding: calc(30 / var(--designwidth) * 100vw) calc(70 / var(--designwidth) * 100vw) calc(30 / var(--designwidth) * 100vw) calc(30 / var(--designwidth) * 100vw);
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}
.c-form-selectbox select:active:not([disabled]) {
  border-color: #000;
  color: #000;
  background-color: #fff;
}
.c-form-selectbox select:focus {
  border-color: #000 !important;
  color: #000;
  background-color: #fff !important;
}
.c-form-selectbox select::-ms-expand {
  display: none;
}
.c-form-selectbox select option {
  color: #333;
}
.c-form-selectbox select option:hover,
.c-form-selectbox select option:active,
.c-form-selectbox select option:checked {
  background-color: #000 !important;
  color: #fff;
}
.c-form-selectbox.is-error select {
  border-color: #EC6453;
  background-color: #fbf0ec;
}
.c-form-selectbox:before {
  position: absolute;
  z-index: 2;
  top: calc(50% - 3px);
  right: 20px;
  border: 4px solid transparent;
  border-top-color: #000;
  content: "";
  pointer-events: none;
}
@media screen and (max-width:767px) {
  .c-form-selectbox:before {
    top: calc(50% - 3px);
    border-width: 6px;
  }
}

.form-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 11px 40px;
}
@media screen and (max-width:767px) {
  .form-radio {
    gap: 11px 25px;
  }
}
.form-control-notelist + .form-radio {
  margin-top: 20px;
}

.form-radio--row {
  flex-direction: column;
}

.form-radio__item {
  position: relative;
  display: inline-block;
}
.form-radio__item input[type=radio] {
  position: absolute;
  opacity: 0;
}
.form-radio__item input[type=radio] + label {
  cursor: pointer;
  padding-left: 30px;
}
@media screen and (max-width:767px) {
  .form-radio__item input[type=radio] + label {
    padding-left: 20px;
  }
}
.form-radio__item input[type=radio] + label:before, .form-radio__item input[type=radio] + label:after {
  content: "";
  position: absolute;
  z-index: 2;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  text-align: center;
}
.form-radio__item input[type=radio] + label:before {
  top: 7px;
  left: 0;
  border: 1px solid #C2C2C2;
  width: 20px;
  height: 20px;
}
@media screen and (max-width:767px) {
  .form-radio__item input[type=radio] + label:before {
    top: 4px;
    width: 13px;
    height: 13px;
  }
}
.form-radio__item input[type=radio] + label:after {
  z-index: 3;
  top: 13px;
  left: 6px;
  width: 8px;
  height: 8px;
}
@media screen and (max-width:767px) {
  .form-radio__item input[type=radio] + label:after {
    top: 8px;
    left: 4px;
    width: 5px;
    height: 5px;
  }
}
.form-radio__item input[type=radio]:checked + label:after, .form-radio__item input[type=radio]:focus + label:after {
  background-color: var(--color_red);
}
.is-error .form-radio__item input[type=radio] + label:before {
  border: 1px solid var(--color_red);
  background-color: #fbf0ec;
}

.form-send__title {
  text-align: center;
  color: #F00;
  font-size: 2.9rem;
}
@media screen and (max-width:767px) {
  .form-send__title {
    font-weight: 700;
    font-size: calc(40 / var(--designwidth) * 100vw);
  }
}

.form-send__text {
  margin-top: 30px;
  text-align: center;
  line-height: 1.7;
}
@media screen and (max-width:767px) {
  .form-send__text {
    margin-top: calc(30 / var(--designwidth) * 100vw);
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}

.form-send__retrun {
  display: flex;
  justify-content: center;
  margin-top: 50px;
}
@media screen and (max-width:767px) {
  .form-send__retrun {
    margin-top: calc(50 / var(--designwidth) * 100vw);
  }
}

.form-send__button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 46px;
  border-radius: 50px;
  border: 2px solid #202020;
  font-weight: 700;
  font-size: 1.5rem;
  text-decoration: none !important;
}
@media print, screen and (min-width: 768px) {
  .form-send__button {
    transition: ease opacity 0.3s;
  }
  .form-send__button:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width:767px) {
  .form-send__button {
    width: calc(390 / var(--designwidth) * 100vw);
    padding: calc(30 / var(--designwidth) * 100vw);
    font-size: calc(26 / var(--designwidth) * 100vw);
  }
}
.form-send__button:after {
  position: absolute;
  z-index: 2;
  top: calc(50% - 4px);
  right: 13px;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  border-top: 2px solid var(--color_red);
  border-right: 2px solid var(--color_red);
  content: "";
  display: inline-block;
  transition: ease all 0.3s;
}