@media all and (min-width: 768px), print {
  .c-column{
    width: fit-content;
    margin-inline: auto;
  }
  .registration-flow + .registration-flow{
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .registration-flow__head{
    margin-bottom: calc(16 / var(--font-size) * 1rem);
  }
  .registration-flow-heading{
    padding: calc(16 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid var(--primary-color-500);
    border-radius: calc(16 / var(--font-size) * 1rem);
    display: inline-block;
    width: calc(320 / var(--font-size) * 1rem);
  }
  .registration-flow-heading .c-txt{
    padding-left: calc(1em + calc(4 / var(--font-size) * 1rem));
    text-indent: calc(-1em - calc(4 / var(--font-size) * 1rem));
  }
  .registration-flow-heading span{
    margin-right: calc(4 / var(--font-size) * 1rem);
  }
  .registration-flow__body{
    position: relative;
    margin-left: calc(24 / var(--font-size) * 1rem);
    padding-left: calc(24 / var(--font-size) * 1rem);
  }
  /*
  .registration-flow:not(:last-of-type) .registration-flow__body::before{
    content: "";
    top: 0;
    left: 0;
    position: absolute;
    width: calc(2 / var(--font-size) * 1rem);
    height: calc(100% + calc(16 / var(--font-size) * 1rem));
    background-color: var(--primary-color-500);
  }
    */
  .registration-flow:not(:last-of-type) .registration-flow__body::after{
    content: '';
    width: calc(10 / var(--font-size) * 1rem);
    height: calc(10 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid  var(--primary-color-500);
    border-top: 0;
    border-right: 0;
    transform: rotate(-45deg);
    transform-origin: bottom left;
    position: absolute;
    left: 0;
    bottom: 0;
    margin-left: calc(1 / var(--font-size) * 1rem);
    margin-bottom: calc(-1 / var(--font-size) * 1rem - calc(16 / var(--font-size) * 1rem));
  }
}

@media screen and (max-width: 767px) {
  .registration-flow + .registration-flow{
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .registration-flow__head{
    margin-bottom: calc(16 / var(--font-size) * 1rem);
  }
  .registration-flow-heading{
    padding: calc(16 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid var(--primary-color-500);
    border-radius: calc(12 / var(--font-size) * 1rem);
    display: inline-block;
    width: 100%;
    max-width: calc(310 / var(--font-size) * 1rem);
  }
  .registration-flow-heading .c-txt{
    padding-left: calc(1em + calc(4 / var(--font-size) * 1rem));
    text-indent: calc(-1em - calc(4 / var(--font-size) * 1rem));
  }
  .registration-flow-heading span{
    margin-right: calc(4 / var(--font-size) * 1rem);
  }
  .registration-flow__body{
    position: relative;
    margin-left: calc(8 / var(--font-size) * 1rem);
    padding-left: calc(16 / var(--font-size) * 1rem);
  }
  .registration-flow:not(:last-of-type) .registration-flow__body::before{
    content: "";
    top: 0;
    left: 0;
    position: absolute;
    width: calc(2 / var(--font-size) * 1rem);
    height: calc(100% + calc(16 / var(--font-size) * 1rem));
    background-color: var(--primary-color-500);
  }
  .registration-flow:not(:last-of-type) .registration-flow__body::after{
    content: '';
    width: calc(10 / var(--font-size) * 1rem);
    height: calc(10 / var(--font-size) * 1rem);
    border: calc(2 / var(--font-size) * 1rem) solid  var(--primary-color-500);
    border-top: 0;
    border-right: 0;
    transform: rotate(-45deg);
    transform-origin: bottom left;
    position: absolute;
    left: 0;
    bottom: 0;
    margin-left: calc(1 / var(--font-size) * 1rem);
    margin-bottom: calc(-1 / var(--font-size) * 1rem - calc(16 / var(--font-size) * 1rem));
  }
}


/*20260318 add*/

.registration_note__element .c-note-txt{
	margin-bottom: 1rem;
	margin-top: 1rem;
}

.registration_note__element .c-note-list{
	list-style: disc;
	margin-left: 1rem;
}
.registration_note__element .c-note-list li{
	margin-bottom: .5rem;
	font-size: calc(var(--txt-font-size) / var(--font-size) * 1rem);
	line-height: 1.4
}
@media screen and (max-width: 767px) {
	.registration_note__element .c-note-list li{
		font-size: calc(var(--note-txt-font-size) / var(--font-size) * 1rem);
	}
}

/*
.c-tab-btn{
  background-color: var(--tab-bg-color);
}
.c-tab-btn {
  background-color: var(--tab-bg-color);
}*/
.c-tab {
  --tab-bg-color: var(--tertiary-color-100);
}
.c-tab__list-item--active{
  --tab-bg-color: var(--tertiary-color-500);
}
.c-tab-btn_disabled {
    filter: grayscale(1) contrast(0.85);
}
.c-tab-btn[disabled] {
    pointer-events: none;
    filter: grayscale(1) contrast(0.85);
}

.u-mb-0{
  margin-bottom: 0!important;
}

.u-txt-blue{
  color: var(--primary-color-500);
}
.u-bg-green-500{
  background-color: var(--tertiary-color-500);
}
.u-bg-green-100,
.c-box--green{
    --box-bg-color: var(--tertiary-color-100);
  }
.c-box--green:has(.u-txt-blue){
    --box-border-color: var(--tertiary-color-500);
  }
.c-box--green .u-txt-blue{
    color: var(--primary-color-500);
  }

.u-bg-white-100{
	 --box-bg-color: var(--white-color);
	background: #fff;
}


  .registration-step .c-table-chart .c-btn{
    --btn-bg-color: var(--tertiary-color-500);
    --btn-border-color: var(--tertiary-color-500);
    --btn-txt-color: var(--white-color);
    --btn-arrow-color: var(--btn-bg-color);
    --btn-bg-arrow-color: var(--white-color);
    --btn-txt-font-size: 18;
  } 
  .registration-step + .registration-step{
    margin-top: calc(32 / var(--font-size) * 1rem);
  }
  .registration-step__head{
    margin-bottom: calc(16 / var(--font-size) * 1rem);
  }
  .registration-step-heading{
    color: var(--primary-color-500);
    border-radius: calc(16 / var(--font-size) * 1rem);
  }
  .registration-step-heading .c-txt{
    display: flex;
    align-items: center;
    gap: 0 1em;
  }
  .registration-step-heading span.u-txt-white{
    margin-right: calc(4 / var(--font-size) * 1rem);
    padding: 0.5em;
    background-color: var(--tertiary-color-500);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
    height: 100%;
  }
  .registration-step-heading span.u-txt-white span{
        line-height: 1em;
  }
  .registration-step-heading span.u-txt-white span.c-txt--l{
    font-size: 1.2em;
  }
 
  .registration-step__body{
  }

@media screen and (max-width: 767px) {
  .is-sp-block.c-table, 
  .is-sp-block.c-table thead, 
  .is-sp-block.c-table tbody, 
  .is-sp-block.c-table th, 
  .is-sp-block.c-table td, 
  .is-sp-block.c-table tr {
    display: block;
  }
}