/* ==========================================================================
  UPDATE
========================================================================== */
.ly_container__body {
  padding-top: 0;
  padding-bottom: 0;
}

/* ==========================================================================
  FORM BODY
========================================================================== */
/* Progress */

/* Agreement */
@media all and (min-width: 768px), print {
  .c-form__agreement {
    padding: calc(32 / var(--font-size) * 1rem) calc(40 / var(--font-size) * 1rem);
  }
  .c-form__agreement strong {
    display: block;
    color: var(--main-accent-color);
    margin-bottom: calc(24 / var(--font-size) * 1rem);
  }
  .c-form__agreement_items {
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .c-form__checkbox {
    display: flex;
  }
  .c-form__checkbox input {
    position: absolute;
    width: calc(1 / var(--font-size) * 1rem);
    height: calc(1 / var(--font-size) * 1rem);
    padding: 0;
    margin: calc(-1 / var(--font-size) * 1rem);
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }
  .c-form__checkbox label {
    padding-left: calc(24 / var(--font-size) * 1rem);
    position: relative;
    cursor: pointer;
  }
  .c-form__checkbox label::before {
    content: '';
    position: absolute;
    top: calc(3 / var(--font-size) * 1rem);
    left: 0;
    width: calc(16 / var(--font-size) * 1rem);
    height: calc(16 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_600);
    background-color: var(--color-white);
  }
  .c-form__checkbox input:disabled + label {
    color: var(--color-gray_400);
  }
  .c-form__checkbox input:disabled + label::before {
    background-color: var(--color-gray_300);
  }
  .c-form__checkbox label::after {
    content: '';
    position: absolute;
    top: calc(6 / var(--font-size) * 1rem);
    left: calc(6 / var(--font-size) * 1rem);
    width: calc(5 / var(--font-size) * 1rem);
    height: calc(9 / var(--font-size) * 1rem);
    border-right: calc(2 / var(--font-size) * 1rem) solid initial;
    border-bottom: calc(2 / var(--font-size) * 1rem) solid initial;
    transform: rotate(40deg);
    opacity: 0;
  }
  .c-form__checkbox input:checked + label::after {
    opacity: 1;
  }
  .c-form__checkbox--main-portal input:checked + label::before {
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_600);
  }
  .c-form__checkbox--main-portal label::after {
    border-right: calc(2 / var(--font-size) * 1rem) solid var(--main-color);
    border-bottom: calc(2 / var(--font-size) * 1rem) solid var(--main-color);
  }
  
  /* Select */
  select {
    -webkit-appearance: none;
    appearance: none;
  }
  
  /* Error */
  .form-items[data-status="error"] input[type="text"],
  .form-items[data-status="error"] input[type="email"],
  .form-items[data-status="error"] input[type="tel"],
  .form-items[data-status="error"] input[type="password"],
  .form-items[data-status="error"] .form-items__radio label:before,
  .doc-info[data-status="error"] input[type="text"],
  .remarks-form[data-status="error"] textarea {
    border-color: var(--alert);
    background-color: #FFF7F7;
  }
  .form-items_error {
    display: none;
    margin-top: 0.25rem;
  }
  .form-items[data-status="error"] .form-items_error,
  .doc-info[data-status="error"] .form-items_error,
  .remarks-form[data-status="error"] .form-items_error {
    display: block;
  }
  
  /* Confirm */
  .form-items[data-status="confirm"] input[type="text"],
  .form-items[data-status="confirm"] input[type="email"] {
    pointer-events: none;
    border-color: transparent;
    background-color: transparent;
  }
  .form-items[data-status="confirm"].form-items[data-column="1"] .form-items_box {
    align-items: center;
  }


  /* form-items */
  .form-items {
    border-bottom: 1px solid var(--main-border-color);
    padding: 1.5rem 0;
  }
  .form-items:first-child {
    border-top: 1px solid var(--main-border-color);
  }
  .form-items__box {
    display:flex;
    align-items:center;
  }
  .form-items__title {
    position: relative;
    max-width: calc(205 / var(--font-size) * 1rem);
    width:100%;
  }
  .form-items__content {
    max-width: calc(100% - calc(205 / var(--font-size) * 1rem));
    width:100%;
  }
  .form-items__content.form-items__content--wide {
    width: 100%;
  }
  .form-items__label {
    display: flex;
    align-items: center;
  }
  .form-items__label-required::after {
    content: "必須";
    background-color: var(--color-attention_1000);
    color: #fff;
    font-size: 0.875rem;
    font-weight: bold;
    padding: 0.25rem;
    margin-left: 1rem;
    line-height: 1;
  }
  .form-required-icon {
    background-color: var(--color-attention_1000);
    color: #fff;
    font-weight: bold;
    font-size: 0.85em;
    padding: 0.125rem 0.25rem;
    margin-left: 0.25rem;
    margin-right: 0.25rem;
    line-height: 1;
  }
  .form-items__inner-label {
    display: flex;
    align-items: center;
  }
  .form-items__inner-label span {
    flex-shrink: 0;
    margin-right: 0.875rem;
  }
  .form-items__inner-label input {
    width: 100%;
  }
  .form-items__value {
    display: flex;
    column-gap: 1.875rem;
  }
  .form-items--zipcode .form-items__value {
    column-gap: 0.75rem;
  }
  .form-items__value input[type="text"],
  .form-items__value input[type="password"],
  .form-items__value input[type="email"],
  .form-items__value input[type="tel"]{
  }
  .form-items__value input[type="text"],
  .form-items__value input[type="password"],
  .form-items__value input[type="email"],
  .form-items__value input[type="tel"],
  .form-items__value textarea {
    border: 1px solid var(--main-border-color);
    border-radius: calc(5 / var(--font-size) * 1rem);
    padding: calc(10 / var(--font-size) * 1rem) calc(14 / var(--font-size) * 1rem);
  }
  .form-items__value input[type="text"].--default,
  .form-items__value input[type="password"].--default,
  .form-items__value input[type="email"].--default,
  .form-items__value input[type="tel"].--default,
  .form-items__value textarea.--default{
    background-color: var(--color-gray_100);
    border-color:var(--color-gray_100);
    border-radius: calc(10 / var(--font-size) * 1rem);
    font-size:calc(var(--text-size-m) / var(--font-size) * 1rem);
  }
  .form-items__value input[type="text"].--default::placeholder,
  .form-items__value input[type="password"].--default::placeholder,
  .form-items__value input[type="email"].--default::placeholder,
  .form-items__value input[type="tel"].--default::placeholder,
  .form-items__value textarea.--default::placeholder{
    color:var(--color-gray_400);
  }
  .form-items__value input[type="text"].--line,
  .form-items__value input[type="password"].--line,
  .form-items__value input[type="email"].--line,
  .form-items__value input[type="tel"].--line,
  .form-items__value textarea.--line{
    border: 2px solid var(--main-accent-color);
    border-radius: calc(10 / var(--font-size) * 1rem);
    font-size:calc(var(--text-size-m) / var(--font-size) * 1rem);
  }
  .form-items__value input[type="text"].--line:focus,
  .form-items__value input[type="password"].--line:focus,
  .form-items__value input[type="email"].--line:focus,
  .form-items__value input[type="tel"].--line:focus,
  .form-items__value textarea.--line:focus,
  .form-items__value input[type="text"].--line:focus-visible,
  .form-items__value input[type="password"].--line:focus-visible,
  .form-items__value input[type="email"].--line:focus-visible,
  .form-items__value input[type="tel"].--line:focus-visible,
  .form-items__value textarea.--line:focus-visible{
    outline-color:var(--main-color);
    border-color:var(--main-color);
  }
  .form-items[data-column="1"] .form-items__value > *{
    width: 100%;
  }
  .form-items[data-column="2"] .form-items__value > *{
    width: 50%;
  }
  .form-items--zipcode .form-items__value .form-items__inner-label {
    width: 50%;
  }
  .form-items--zipcode .form-items__value .form_inner-btn {
    width: 10rem;
  }
  .form-items__supplement {
  }
  * + .form-items__supplement {
    margin-top: 0.5rem;
  }
  .form-items__supplement--mt1 {
    margin-top: 1rem;
  }
  .form-items__value input.--line[type="text"]:focus {
    outline: calc(2 / 16 * 1rem) solid var(--main-accent-color);
    outline-offset: calc(-2 / 16 * 1rem);
  }
}

@media all and (max-width: 767px), print {
  .c-form__agreement {
    padding: calc(32 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
  }
  .c-form__agreement strong {
    display: block;
    color: var(--main-accent-color);
    margin-bottom: calc(24 / var(--font-size) * 1rem);
  }
  .c-form__agreement_items {
    margin-top: calc(12 / var(--font-size) * 1rem);
  }
  .c-form__checkbox {
    display: flex;
  }
  .c-form__checkbox input {
    position: absolute;
    width: calc(1 / var(--font-size) * 1rem);
    height: calc(1 / var(--font-size) * 1rem);
    padding: 0;
    margin: calc(-1 / var(--font-size) * 1rem);
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }
  .c-form__checkbox label {
    padding-left: calc(24 / var(--font-size) * 1rem);
    position: relative;
    cursor: pointer;
  }
  .c-form__checkbox label::before {
    content: '';
    position: absolute;
    top: calc(3 / var(--font-size) * 1rem);
    left: 0;
    width: calc(16 / var(--font-size) * 1rem);
    height: calc(16 / var(--font-size) * 1rem);
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_600);
    background-color: var(--color-white);
  }
  .c-form__checkbox input:disabled + label {
    color: var(--color-gray_400);
  }
  .c-form__checkbox input:disabled + label::before {
    background-color: var(--color-gray_300);
  }
  .c-form__checkbox label::after {
    content: '';
    position: absolute;
    top: calc(6 / var(--font-size) * 1rem);
    left: calc(6 / var(--font-size) * 1rem);
    width: calc(5 / var(--font-size) * 1rem);
    height: calc(9 / var(--font-size) * 1rem);
    border-right: calc(2 / var(--font-size) * 1rem) solid initial;
    border-bottom: calc(2 / var(--font-size) * 1rem) solid initial;
    transform: rotate(40deg);
    opacity: 0;
  }
  .c-form__checkbox input:checked + label::after {
    opacity: 1;
  }
  .c-form__checkbox--main-portal input:checked + label::before {
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-gray_600);
  }
  .c-form__checkbox--main-portal label::after {
    border-right: calc(2 / var(--font-size) * 1rem) solid var(--main-color);
    border-bottom: calc(2 / var(--font-size) * 1rem) solid var(--main-color);
  }
  
  /* Select */
  select {
    -webkit-appearance: none;
    appearance: none;
  }
  
  /* Error */
  .form-items[data-status="error"] input[type="text"],
  .form-items[data-status="error"] input[type="email"],
  .form-items[data-status="error"] input[type="tel"],
  .form-items[data-status="error"] input[type="password"],
  .form-items[data-status="error"] .form-items__radio label:before,
  .doc-info[data-status="error"] input[type="text"],
  .remarks-form[data-status="error"] textarea {
    border-color: var(--alert);
    background-color: #FFF7F7;
  }
  .form-items_error {
    display: none;
    margin-top: 0.25rem;
  }
  .form-items[data-status="error"] .form-items_error,
  .doc-info[data-status="error"] .form-items_error,
  .remarks-form[data-status="error"] .form-items_error {
    display: block;
  }
  
  /* Confirm */
  .form-items[data-status="confirm"] input[type="text"],
  .form-items[data-status="confirm"] input[type="email"] {
    pointer-events: none;
    border-color: transparent;
    background-color: transparent;
  }
  .form-items[data-status="confirm"].form-items[data-column="1"] .form-items_box {
    align-items: center;
  }


  /* form-items */
  .form-items {
    border-bottom: 1px solid var(--main-border-color);
    padding: 1.5rem 0;
  }
  .form-items:first-child {
    border-top: 1px solid var(--main-border-color);
  }
  .form-items__box {
  }
  .form-items__title {
    position: relative;
  }
  .form-items__content {
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .form-items__content.form-items__content--wide {
    width: 100%;
  }
  .form-items__label {
    display: flex;
    align-items: center;
  }
  .form-items__label-required::after {
    content: "必須";
    background-color: var(--color-attention_1000);
    color: #fff;
    font-size: 0.875rem;
    font-weight: bold;
    padding: 0.25rem;
    margin-left: 1rem;
    line-height: 1;
  }
  .form-required-icon {
    background-color: var(--color-attention_1000);
    color: #fff;
    font-weight: bold;
    font-size: 0.85em;
    padding: 0.125rem 0.25rem;
    margin-left: 0.25rem;
    margin-right: 0.25rem;
    line-height: 1;
  }
  .form-items__inner-label {
    display: flex;
    align-items: center;
  }
  .form-items__inner-label span {
    flex-shrink: 0;
    margin-right: 0.875rem;
  }
  .form-items__inner-label input {
    width: 100%;
  }
  .form-items__value {
    display: flex;
    column-gap: 1.875rem;
  }
  .form-items--zipcode .form-items__value {
    column-gap: 0.75rem;
  }
  .form-items__value input[type="text"],
  .form-items__value input[type="password"],
  .form-items__value input[type="email"],
  .form-items__value input[type="tel"]{
  }
  .form-items__value input[type="text"],
  .form-items__value input[type="password"],
  .form-items__value input[type="email"],
  .form-items__value input[type="tel"],
  .form-items__value textarea {
    border: 1px solid var(--main-border-color);
    border-radius: calc(5 / var(--font-size) * 1rem);
    padding: calc(10 / var(--font-size) * 1rem) calc(14 / var(--font-size) * 1rem);
  }
  .form-items__value input[type="text"].--default,
  .form-items__value input[type="password"].--default,
  .form-items__value input[type="email"].--default,
  .form-items__value input[type="tel"].--default,
  .form-items__value textarea.--default{
    background-color: var(--color-gray_100);
    border-color:var(--color-gray_100);
    border-radius: calc(10 / var(--font-size) * 1rem);
    font-size:calc(var(--text-size-m) / var(--font-size) * 1rem);
  }
  .form-items__value input[type="text"].--default::placeholder,
  .form-items__value input[type="password"].--default::placeholder,
  .form-items__value input[type="email"].--default::placeholder,
  .form-items__value input[type="tel"].--default::placeholder,
  .form-items__value textarea.--default::placeholder{
    color:var(--color-gray_400);
  }
  .form-items__value input[type="text"].--line,
  .form-items__value input[type="password"].--line,
  .form-items__value input[type="email"].--line,
  .form-items__value input[type="tel"].--line,
  .form-items__value textarea.--line{
    border: 2px solid var(--main-accent-color);
    border-radius: calc(10 / var(--font-size) * 1rem);
    font-size:calc(var(--text-size-m) / var(--font-size) * 1rem);
  }
  .form-items__value input[type="text"].--line:focus,
  .form-items__value input[type="password"].--line:focus,
  .form-items__value input[type="email"].--line:focus,
  .form-items__value input[type="tel"].--line:focus,
  .form-items__value textarea.--line:focus,
  .form-items__value input[type="text"].--line:focus-visible,
  .form-items__value input[type="password"].--line:focus-visible,
  .form-items__value input[type="email"].--line:focus-visible,
  .form-items__value input[type="tel"].--line:focus-visible,
  .form-items__value textarea.--line:focus-visible{
    outline-color:var(--main-color);
    border-color:var(--main-color);
  }
  .form-items[data-column="1"] .form-items__value > *{
    width: 100%;
  }
  .form-items[data-column="2"] .form-items__value > *{
    width: 50%;
  }
  .form-items--zipcode .form-items__value .form-items__inner-label {
    width: 50%;
  }
  .form-items--zipcode .form-items__value .form_inner-btn {
    width: 10rem;
  }
  .form-items__supplement {
  }
  * + .form-items__supplement {
    margin-top: 0.5rem;
  }
  .form-items__supplement--mt1 {
    margin-top: 1rem;
  }
  .form-items__value input.--line[type="text"]:focus {
    outline: calc(2 / 16 * 1rem) solid var(--main-accent-color);
    outline-offset: calc(-2 / 16 * 1rem);
  }
}