@charset "UTF-8";
/* ヘッダー */
/*-------------------------------------------*/
header {
  position: fixed; /* ヘッダーを固定する */
  top: 0px; /* 画面の上部に固定 */
  background-color:var(--white);
  width: 100%;
  z-index: 1000; /* ヘッダーを他の要素の上に表示 */
}

.header {
  max-width: 343px;
  margin: 0 auto;
}

.header_title-1 {
  background-size: 160px;
  background-image: url(../img/logo-1.png);
  background-position: left;
  background-repeat: no-repeat;
  height: 28px;
}

.header_title-2 {
  background-size: 160px;
  background-image: url(../img/logo-2.png);
  background-position: left;
  background-repeat: no-repeat;
  height: 41px;
  max-width: 343px;
}

.header_title-3 {
  background-size: 160px;
  background-image: url(../img/logo-3.png);
  background-position: left;
  background-repeat: no-repeat;
  height: 41px;
  max-width: 343px;
}

.background-top {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 200px;
  background-color: var(--white);
  z-index: 0;
}

body {
  background-color:var(--background-color);
  margin: 0;
  max-width: 100%;
  padding: 80px 0 0 0;
  box-sizing: border-box;
  justify-content: center;
}

.progress_state {
  text-align: center;
  font-weight: bold;
  max-width: 343px;
  display: flex;
  margin-top: 10px;
}

.progress_state_num-1 {
  color: #3762fe;
}

.progress_state_num-2 {
  color: #fc244f;
}

.progress_bar {
  width: 100%;
  height: 20px;
}

.progress_frame {
  width: 100%;
  height: 20px;
}

.progress_container {
  width: 100%;
  height: 10px;
  padding: 5px;
  background-color: #eee;
  border-radius: 10px;
  overflow: hidden;
}

.progress_fill {
  height: 10px;
  background-color: #fc244f;
  transition: width 0.3s ease;
}

/* Chrome, Safari 用 */
.progress_bar::-webkit-progress-bar {
  background-color: #eee;
}

.progress_bar::-webkit-progress-value {
  background-color: #fc244f;
}

/* Firefox 用 */
.progress_bar::-moz-progress-bar {
  background-color: #fc244f;
}

.progress_state_title {
  font-family: var(--font-family);
  font-weight: var(--action-medium-font-weight);
  color: #3a3a3a;
  font-size: 12px;
  text-align: center;
  letter-spacing: 0;
  line-height: normal;
  white-space: nowrap;
}

.status_bar_1 {
  display: flex;
  height: 26px;
  padding: 0 20px;
  justify-content: center;
  align-items: center;
  gap: -23px;
  align-self: stretch;
  background: #FFFFFF url('../img/status_bar_1.png') no-repeat center/cover;
  margin-top: 10px;
  margin-bottom: 2px;
}

.status_bar_2 {
  display: flex;
  height: 26px;
  padding: 0 20px;
  justify-content: center;
  align-items: center;
  gap: -23px;
  align-self: stretch;
  background: #FFFFFF url('../img/status_bar_2.png') no-repeat center/cover;
  margin-top: 10px;
  margin-bottom: 2px;
}
/*-------------------------------------------*/

.select_pointer{
  cursor: pointer;
}

.default_select{
  font-family: var(--chat-base-font-family);
  cursor: pointer;
  color: black;
}

.default_font{
  font-family: var(--chat-base-font-family);
  color: black;
}

/* アイコン */
/*-------------------------------------------*/
/* アイコン（正面） */
.avatar_front {
  width: 44px;
  height: 44px;
  background: #FFFFFF url('../img/shima1.png') no-repeat center/cover;
  border-radius: 48px;
  flex: none;
}

/* 左側のアイコン */
.avatar {
  width: 44px;
  height: 44px;
  background: #FFFFFF url('../img/shima2.png') no-repeat center/cover;
  border-radius: 48px;
  flex: none;
}

/* 大アイコン */
.big_title_avatar {
  width: 90px;
  height: 90px;
  background: #FFFFFF url('../img/avatar_big.png') no-repeat center/cover;
  flex: none;
}
/*-------------------------------------------*/
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in-up {
  animation: fadeInUp 0.4s ease-out 0.15s forwards;
}

.area_hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.main {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 343px;
  align-items: flex-start;
  position: relative;
  background-color: transparent;
  margin: auto;
  padding: 15px 0;
}

.input_area {
  display: flex;
  flex-direction: column;
  gap: 28px;
  width: 100%;
}

.confirm_area {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.confirm_text_potition {
  left: 5px;
  position: relative;
}

.confirm-text-wrapper-4 {
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  font-size: var(--action-primary-m-font-size);
  letter-spacing: var(--action-primary-m-letter-spacing);
  line-height: var(--action-primary-m-line-height);
  white-space: nowrap;
  position: relative;
  font-family: var(--action-primary-m-font-family);
  font-style: var(--action-primary-m-font-style);
}

.common_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.confirmation_message_red {
  color: #E81829;
  font-feature-settings: 'palt' on;
  font-family: "Noto Sans JP", Helvetica;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
/* フォーム選択 */
/*-------------------------------------------*/
.select_fdcd {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}

.select_fdcd_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.select_fdcd_thumnail {
  position: relative;
  width: 44px;
  height: 44px;
}

.select_fdcd_frame {
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}

.select_fdcd_div-wrapper {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.select_fdcd_text-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.select_fdcd_container-wrapper {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.select_fdcd_container {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 10px 10px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.select_fdcd_select {
  min-width: 118px;
  height: 187px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.select_fdcd_div {
  align-items: center;
  gap: 2px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.select_fdcd_text-wrapper-2 {
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.select_fdcd_text-wrapper-3 {
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textsub);
  font-size: var(--action-caption-font-size);
  text-align: center;
  line-height: var(--action-caption-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--action-caption-letter-spacing);
  font-style: var(--action-caption-font-style);
}

.select_fdcd_select-2 {
  min-width: 118px;
  justify-content: center;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.select_fdcd_img {
  left: calc(50.00% - 52px);
  width: 102px;
  position: absolute;
  top: calc(50.00% - 30px);
  height: 59px;
}

.select_fdcd_select-3 {
  width: 135px;
  justify-content: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.main_title_div {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.text_main_title {
  color: var(--text_main, #181B35);
  font-feature-settings: 'palt' on;
  font-family: var(--font-family);
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 120%; /* 28.8px */
}

.text_main_title_sub {
  font-family: var(--action-caption-font-family);
  color: #181b35;
  font-style: var(--action-caption-font-style);
  font-weight: 400;
  line-height: 140%;
  font-size: 14px;
}
/*-------------------------------------------*/


/* 子供の生年月日（Babyのみ） */
/*-------------------------------------------*/
.birthday_baby_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.birthday_baby_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.birthday_baby_bc_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.birthday_baby_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.birthday_baby_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.birthday_baby_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.birthday_baby_chat {
  display: flex;
  flex-direction: column;
  width: 284px;
  align-items: flex-start;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.birthday_baby_frame {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.birthday_baby_select {
  display: flex;
  width: 98px;
  height: 56px;
  align-items: center;
  padding: 0px 10px 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
}


/* デフォルトのボタンを非表示に */
.birthday_baby_button_input {
  display: none;
}

.birthday_baby_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.next_button_label {
  display: flex;
  max-width: 310px;
  width: 210px;
  height: 50px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  background-color: var(--action);
  border-radius: var(--common-radius-button-1000);
  cursor: pointer;
}

.birthday_baby_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}
/*-------------------------------------------*/

/* 受講講座確認 */
/*-------------------------------------------*/
.course_select_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.course_select_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.course_select_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.course_select_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.course_select_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.course_select_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.course_select_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.course_select_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.course_select_input {
  display: none;
}

.course_select_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.course_select_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.course_select_input:checked + .course_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.course_select_input:checked + .course_select_label .course_select_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 開始号選択 */
/*-------------------------------------------*/
.start_issue_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.start_issue_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.start_issue_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.start_issue_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.start_issue_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.start_issue_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.start_issue_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.start_issue_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.start_issue_input {
  display: none;
}

.start_issue_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.start_issue_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.start_issue_input:checked + .start_issue_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.start_issue_input:checked + .start_issue_label .start_issue_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 特別号申し込み */
/*-------------------------------------------*/
.special_div {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.special_bc_chat {
  width: 335px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.special_bc_chat_frame {
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}

.special_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.special_bc_chat_div {
  font-weight: 400;
  color: transparent;
  line-height: 18.2px;
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-size: 14px;
  letter-spacing: 0;
}

.special_bc_chat_text {
  font-weight: 700;
  color: #181b35;
}

.special_bc_chat_span {
  font-weight: 700;
  color: #fc244f;
}

.special_bc_chat_text_2 {
  font-family: "Noto Sans JP-Regular", Helvetica;
  color: #181b35;
  font-size: 12px;
  line-height: 15.6px;
}

.special_chat {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.special_chat_box {
  display: flex;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.special_chat_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 224.69px;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.special_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 0.73;
}

.special_chat_image {
  position: absolute;
  width: 123px;
  height: 168px;
  top: 0;
  left: 0;
  aspect-ratio: 0.73;
  background: #FFFFFF url('../img/special_item_1.png') no-repeat center/cover;
}

.special_chat_text_frame {
  align-items: center;
  gap: 2px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.special_chat_text {
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.special_chat_image_2 {
  object-fit: cover;
  position: absolute;
  width: 123px;
  height: 168px;
  top: 0;
  left: 0;
  aspect-ratio: 0.73;
  background: #FFFFFF url('../img/special_item_2.png') no-repeat center/cover;
}

/* デフォルトのラジオボタンを非表示に */
.special_input {
  display: none;
}

.special_label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 224.69px;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.special_chat_text {
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.special_input:checked + .special_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.special_input:checked + .special_label .special_chat_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 学習スタイル選択 */
/*-------------------------------------------*/
.learning_style_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
}

.frame .text-wrapper {
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  font-size: var(--action-caption-font-size);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  text-align: center;
  white-space: nowrap;
  font-style: var(--action-caption-font-style);
}

.learning_style_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.learning_style_bc_chat {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.learning_style_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.learning_style_bc_chat_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.learning_style_bc_chat_text {
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.learning_style_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  width: 343px;
  gap: 8px;
  position: relative;
  align-self: stretch;
  flex: 0 0 auto;
}

.learning_style_chat_box {
  display: block;
  width: 300px;
  height: auto;
  align-items: center;
  gap: 10px;
  padding: 18px 10px;
  position: relative;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.learning_style_chat_box_sub {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  gap: 10px;
  position: relative;
}

.learning_style_chat_select {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  margin-top: -10.00px;
  margin-bottom: -10.00px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.learning_style_chat_item_touch {
  display: flex;
  position: relative;
  align-self: stretch;
  width: 107px;
  height: 119px;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
}

.learning_style_chat_item_challenge {
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100px;
  height: 80px;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
}

.ls_img_CTL_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_touch_CTL.png') no-repeat center/cover;
}

.ls_img_NEW1NEN_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_NEW1NEN_touch.png') no-repeat center/cover;
}

.ls_img_NEW1NEN_challenge {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_NEW1NEN_challenge.png') no-repeat center/cover;
}

.ls_img_1NEN_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_1NEN_touch.png') no-repeat center/cover;
}

.ls_img_1NEN_challenge {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_1NEN_challenge.png') no-repeat center/cover;
}

.ls_img_2NEN_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_2NEN_touch.png') no-repeat center/cover;
}

.ls_img_2NEN_challenge {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_2NEN_challenge.png') no-repeat center/cover;
}

.ls_img_3NEN_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_3NEN_touch.png') no-repeat center/cover;
}

.ls_img_3NEN_challenge {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_3NEN_challenge.png') no-repeat center/cover;
}

.ls_img_4NEN_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_4NEN_touch.png') no-repeat center/cover;
}

.ls_img_4NEN_challenge {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_4NEN_challenge.png') no-repeat center/cover;
}

.ls_img_5NEN_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_5NEN_touch.png') no-repeat center/cover;
}

.ls_img_5NEN_challenge {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_5NEN_challenge.png') no-repeat center/cover;
}

.ls_img_6NEN_touch {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_6NEN_touch.png') no-repeat center/cover;
}

.ls_img_6NEN_challenge {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_6NEN_challenge.png') no-repeat center/cover;
}

.learning_style_chat_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 67px;
  width: 146px;
  gap: 2px;
  position: relative;
  flex: 0 0 auto;
}

.learning_style_chat_text {
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.learning_style_chat_text_2 {
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textmain);
  font-size: 11px;
  line-height: var(--action-caption-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--action-caption-letter-spacing);
  font-style: var(--action-caption-font-style);
}

.learning_style_pic_div {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 4px;
  position: absolute;
  top: -10px;
  left: 130px;
  background-color: #e81829;
  border-radius: 16px;
}

.learning_style_pic_text {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--white);
  font-size: 10px;
  letter-spacing: 0.40px;
  line-height: 13px;
  position: relative;
  width: fit-content;
  margin-top: -1px;
  text-align: center;
  white-space: nowrap;
}

/* デフォルトのラジオボタンを非表示に */
.learning_style_input {
  display: none;
}

.learning_style_label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 277px;
  gap: 12px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.learning_style_input:checked + .learning_style_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.learning_style_input:checked + .learning_style_label .learning_style_chat_text {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.learning_style_input:checked + .learning_style_label .learning_style_chat_text_2 {
  color: #F5F5F5;
}
/*-------------------------------------------*/

/* タブレット申請 */
/*-------------------------------------------*/
.tablet_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.tablet_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.tablet_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.tablet_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.tablet_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.tablet_bc_chat_text_red {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.tablet_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.tablet_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.tablet_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.tablet_input {
  display: none;
}

.tablet_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.tablet_label_2 {
  display: flex;
  height: 79px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.tablet_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.tablet_input:checked + .tablet_label_2 {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.tablet_input:checked + .tablet_label_2 .tablet_text {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.tablet_input:checked + .tablet_label_2 .tablet_sub_text {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.tablet_input:checked + .tablet_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.tablet_input:checked + .tablet_label .tablet_text {
  color: #FFFFFF;
}

.tablet_sub_text_frame {
  flex-direction: column;
  position: relative;
  align-self: stretch;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: transparent;
  font-size: var(--action-caption-font-size);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-style: var(--action-caption-font-style);
}
.tablet_sub_text_frame_2 {
  display: flex;
  flex-direction: column; 
  position: relative;
  width: 100%;
  gap:5px
}

.tablet_sub_text_red {
  font-weight: var(--action-medium-font-weight);
  color: #fc244f;
  font-family: var(--action-caption-font-family);
  font-style: var(--action-caption-font-style);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
}

.tablet_sub_text_bold {
  font-family: var(--action-caption-font-family);
  color: #181b35;
  font-style: var(--action-caption-font-style);
  font-weight: 700;
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
}

.tablet_sub_text {
  font-family: var(--action-caption-font-family);
  color: #181b35;
  font-style: var(--action-caption-font-style);
  font-weight: var(--action-caption-font-weight);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
}

.tablet_sub_text_flex {
  font-family: var(--action-caption-font-family);
  color: #181b35;
  font-style: var(--action-caption-font-style);
  font-weight: var(--action-caption-font-weight);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
  display: flex;
  flex-direction: column;
}

.tablet_sub_text2 {
  color: var(--text_main, #181B35);
  font-feature-settings: 'palt' on;
  /* action_caption */
  font-family: var(--action-caption-font-family);
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
}

.tablet_sub_text_underline {
  color: var(--text_main, #181B35);
  font-feature-settings: 'palt' on;

  /* action_caption */
  font-family: "Noto Sans JP", Helvetica;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
/*-------------------------------------------*/

/* タブレットサポート申請 */
/*-------------------------------------------*/
.tablet_suport_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  width: 100%;
}

.tablet_suport_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.tablet_suport_bc_chat_frame {
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}

.tablet_suport_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.school_select .tablet_suport_bc_chat_box {
  font-weight: 600;
}

.tablet_suport_bc_chat_text_frame {
  align-self: stretch;
  margin-top: -1.00px;
  color: transparent;
  font-size: 14px;
  line-height: 18.2px;
  position: relative;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  letter-spacing: 0;
}

.tablet_suport_bc_chat_text {
  color: #f93a6b;
  font-size: 13px;
}

.tablet_suport_bc_chat_text_2 {
  color: #181b35;
  font-size: 13px;
}

.tablet_suport_bc_chat_link_text {
  font-family: "Noto Sans JP-Bold", Helvetica;
  color: #394ff5;
  text-decoration: underline;
  font-size: 13px;
}

.tablet_suport_chat {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.tablet_suport_chat_box {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.tablet_suport_chat_div {
  align-items: flex-start;
  gap: 7px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

/* デフォルトのラジオボタンを非表示に */
.tablet_suport_input {
  display: none;
}

.tablet_suport_label {
  display: flex;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.tablet_suport_text {
  flex: 1;
  margin-top: -2.00px;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.tablet_suport_input:checked + .tablet_suport_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.tablet_suport_input:checked + .tablet_suport_label .tablet_suport_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 時計選択 */
/*-------------------------------------------*/
.color_select_div {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.color_select_bc_chat {
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.color_select_bc_chat_frame {
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}

.color_select_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.color_select_bc_chat_text {
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.color_select_bc_chat_text_2 {
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  font-size: 11px;
  line-height: var(--caption-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}

.color_select_chat {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.color_select_chat_box {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 10px 10px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.color_select_msg_frame {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
}

.color_select_label {
  display: flex;
  flex-direction: column;
  width: 131px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.color_select_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 1.31;
}

.color_select_chat_item img {
    /* 画像をコンテナの幅と高さに合わせる */
    width: 100%;
    height: 100%;
    
    /* アスペクト比を維持しつつ、画像全体が表示されるように調整 */
    object-fit: contain;
}

.color_select_img_1 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/color_blue.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.color_select_img_2 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/color_pink.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.color_select_img_3 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/color_sky.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.color_select_text_frame {
  align-items: center;
  gap: 2px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.color_select_text {
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.color_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.color_select_input:checked + .color_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.color_select_input:checked + .color_select_label .color_select_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 思考力ぐんぐん申請 */
/*-------------------------------------------*/
.thinking_ability_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.thinking_ability_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.thinking_ability_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.thinking_ability_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.thinking_ability_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.thinking_ability_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.thinking_ability_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.thinking_ability_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.thinking_ability_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.thinking_ability_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.thinking_ability_input:checked + .thinking_ability_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.thinking_ability_input:checked + .thinking_ability_label .thinking_ability_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 子供性別選択 */
/*-------------------------------------------*/
.select_sex_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.select_sex_bc_chat {
  width: 318px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.select_sex_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.select_sex_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.select_sex_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.select_sex_bc_chat_text_big {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--font-family);
  font-weight: 700;
  color: var(--textmain);
  font-size: 18px;
  letter-spacing: 0;
  line-height: normal;
}

.select_sex_chat_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.select_sex_chat_box {
  width: 274px;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

/* デフォルトのラジオボタンを非表示に */
.select_sex_input {
  display: none;
}

.select_sex_label {
  display: flex;
  width: 78px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.select_sex_text_1 {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.select_sex_text_2 {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  margin-left: -1.00px;
  margin-right: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.select_sex_input:checked + .select_sex_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.select_sex_input:checked + .select_sex_label .select_sex_text_1 {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.select_sex_input:checked + .select_sex_label .select_sex_text_2 {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 子供名前 */
/*-------------------------------------------*/
.child_name_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.child_name_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.child_name_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.child_name_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.child_name_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.child_name_right_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.child_name_accordion_accordion {
  position: relative;
  width: 300px;
}

.child_name_accordion_text {
  width: 300px;
  height: 17px;
  top: -1px;
  left: 0;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  font-style: var(--action-medium-font-style);
}

.child_name_chat {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 15px 10px;
  position: relative;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.child_name_chat_frame {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.child_name_chat_title_frame {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0px 8px 0px 15px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.child_name_chat_title_text {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.child_name_chat_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.child_name_field_frame {
  display: flex;
  gap: 5px;
}

.half_input_field {
  display: flex;
  width: 137.5px;
  height: 56px;
  gap: 10px;
  padding: 0px 20px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.half_input_field.err {
  border: 4px solid;
  border-color: var(--error);
}

.half_input_field.integrity_err {
  border: 4px solid;
  border-color: var(--error);
}

/* デフォルトのボタンを非表示に */
.child_name_button_input {
  display: none;
}

.child_name_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.child_name_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}

/*-------------------------------------------*/

/* 子供の生年月日（Baby以外） */
/*-------------------------------------------*/
.birthday_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.birthday_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.birthday_bc_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.birthday_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.birthday_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.birthday_chat_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.birthday_chat {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.birthday_frame {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.birthday_select {
  display: flex;
  width: 98px;
  height: 56px;
  align-items: center;
  padding: 0px 10px 0px 10px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  font-size: var(--textfield-font-size);
}

.birthday_input_text {
  justify-content: center;
  display: flex;
  width: 66px;
  height: 56px;
  align-items: center;
  padding: 0px 10px 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
}

.birthday_input_text.err {
  border: 4px solid;
  border-color: var(--error);
}

.birthday_warning_field {
    display: flex;
    align-items: flex-start;
    position: relative;
    align-self: stretch;
    width: 100%;
}

/* デフォルトのボタンを非表示に */
.birthday_button_input {
  display: none;
}

.birthday_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.birthday_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}
/*-------------------------------------------*/

/* 親の名前 */
/*-------------------------------------------*/
.parent_name_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.parent_name_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.parent_name_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.parent_name_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.parent_name_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.parent_name_right_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.parent_name_chat {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 15px 10px;
  position: relative;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.parent_name_chat_frame {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.parent_name_chat_title_frame {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0px 8px 0px 15px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.parent_name_chat_title_text {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.parent_name_chat_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.parent_name_field_frame {
  display: flex;
  gap: 5px;
}

/* デフォルトのボタンを非表示に */
.parent_name_button_input {
  display: none;
}

.parent_name_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.parent_name_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}
/*-------------------------------------------*/

/* 住所入力 */
/*-------------------------------------------*/
.address_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.address_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.address_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.address_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.address_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.address_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.address_chat_box {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.address_chat_toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.address_chat_uncheck_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
  cursor: pointer;
}

.address_chat_check_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #FFFFFF;
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  cursor: pointer;
}

/* デフォルトのラジオボタンを非表示に */
.address_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.address_select_input:checked + .address_chat_toggle_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  color: #FFFFFF;
}

.address_chat_field_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.address_chat_field_frame_sub_1 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.address_chat_field_frame_title_text {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.address_chat_field_1 {
  display: flex;
  width: 127px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.address_chat_field_1.err {
  border: 4px solid;
  border-color: var(--error);
}

.address_chat_field_frame_sub_2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  /*padding: 5px 0px 0px 0px;*/
}

.input_field {
  display: flex;
  width: 280px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  align-self: stretch;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.address_input_field{
  display: flex;
  width: 280px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  align-self: stretch;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
  font-family: var(--action-base-font-family);
  cursor: pointer;
}

.input_field_font{
  font-family: var(--action-medium-font-family);
  font-size: 16px;
}

.input_field.err {
  border: 4px solid;
  border-color: var(--error);
}

/* デフォルトのボタンを非表示に */
.address_button_input {
  display: none;
}

.address_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.address_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}

.address_second_frame {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.address_second_frame-2 {
  display: inline-flex;
  gap: 8px;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.address_second_selector {
  display: flex;
  width: 129px;
  height: 56px;
  align-items: center;
  gap: 4px;
  padding: 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.address_second_text-wrapper-4 {
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  width: fit-content;
  letter-spacing: var(--chat-base-letter-spacing);
  white-space: nowrap;
  font-style: var(--chat-base-font-style);
}

.address_second_text-wrapper-5 {
  color: var(--color-font-black-3-a-3-a-3-a, #3A3A3A);
  font-feature-settings: 'palt' on;

  /* action_base */
  font-family: var(--chat-base-font-family);
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 120%; /* 19.2px */
}

.address_second_frame-3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 0px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.address_second_label {
  font-family: var(--chat-base-font-family);
  display: flex;
  width: 50px;
  height: 41px;
  gap: 26px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
}

.address_second_frame-4 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 0px;
  padding: 16px 0px 0px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.address_second_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.address_second_select_input:checked + .address_second_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  color: #FFFFFF;
}

.address_second_frame-5 {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
  gap: 5px;
  /*padding: 5px 0px 0px 0px;*/
}
/*-------------------------------------------*/

/* 教材配達場所指定 */
/*-------------------------------------------*/
.delivery_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.delivery_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.delivery_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.delivery_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.delivery_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}

.delivery_bc_chat_sub_text_frame {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Regular", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 12px;
  letter-spacing: 0;
  line-height: 15.6px;
}

.delivery_bc_chat_sub_text {
  color: #181b35;
}

.delivery_bc_chat_sub_text_red {
  color: #fc244f;
}

.delivery_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.delivery_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.delivery_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.delivery_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.delivery_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.delivery_input:checked + .delivery_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.delivery_input:checked + .delivery_label .delivery_text {
  color: #FFFFFF;
}

/*-------------------------------------------*/
/* 学校選択選択 */
/*-------------------------------------------*/
.school_select {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
  position: relative;
}

.school_select_view {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.school_select_chat {
  display: flex;
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  flex: 0 0 auto;
}

.school_select_thumnail {
  position: relative;
  width: 44px;
  height: 44px;
}

.school_select_chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.school_select_div-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.school_select_div {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.school_select_address-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 343px;
  flex: 0 0 auto;
}

.school_select_address {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.school_select_toggle {
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.search__school_pick_frame {
  flex-direction: column;
  align-items: flex-start;
  flex: 0 0 auto;
  border-radius: 20px;
  overflow: hidden;
  border: 2px solid;
  border-color: #6985ff;
  display: none;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.search__school_pick_field_frame {
  gap: 10px;
  padding: 0px 20px;
  align-self: stretch;
  width: 100%;
  margin-top: -2px;
  border: 1px solid;
  border-color: var(--color-function-primary-inverted);
  display: flex;
  height: 56px;
  align-items: center;
  position: relative;
  background-color: var(--white);
  font-family: var(--action-base-font-family);
}

.search__school_pick_field_frame.active {
  gap: 10px;
  padding: 0px 20px;
  align-self: stretch;
  width: 100%;
  margin-top: -2px;
  border: 1px solid;
  color: var(--white);
  border-color: var(--color-function-primary-inverted);
  display: flex;
  height: 56px;
  align-items: center;
  position: relative;
  background-color: #6985ff;
}

.search__school_pick_field_frame.inactive {
  display: none;
}

.school_select_select {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin-top: -2px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: rgb(255, 255, 255);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  font-style: var(--action-medium-font-style);
  /* background-color: var(--button-primary); */
  cursor: pointer;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  border-radius: 28px;
  white-space: nowrap;
  border-color: var(--b-primary);
}

.school_select_text {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.school_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.school_select_input:checked + .school_select_select {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.school_select_input:checked + .school_select_select .school_select_text {
  color: #FFFFFF;
}

.school_select_div-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.school_select_div-3 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.school_select_selector {
  display: flex;
  width: 129px;
  height: 56px;
  align-items: center;
  gap: 4px;
  padding: 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.school_select_text-wrapper-4 {
  position: relative;
  flex: 1;
  font-family: var(--textfield-font-family);
  font-weight: var(--textfield-font-weight);
  color: var(--textmain);
  font-size: var(--textfield-font-size);
  letter-spacing: var(--textfield-letter-spacing);
  line-height: var(--textfield-line-height);
  font-style: var(--textfield-font-style);
}

.school_select_text-wrapper-5 {
  position: relative;
  width: fit-content;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--buttton-primary);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  white-space: nowrap;
  font-style: var(--title-04-16-r-font-style);
}

.school_select_selector-2 {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 4px;
  padding: 0px 20px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.school_select_text-wrapper-6 {
  position: relative;
  flex: 1;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--textmain);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

.school_select_view-2 {
  display: flex;
  flex-direction: column;
  width: 280px;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.school_select_text-wrapper-7 {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  font-weight: 400;
  letter-spacing: 0;
}

.school_select_text-wrapper-7_red {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  color: #f93a6b;
  font-size: 14px;
  line-height: normal;
  position: relative;
  font-weight: 400;
  letter-spacing: 0;
}

.school_select_div-4 {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.school_select_select-3 {
  display: flex;
  width: 194px;
  height: 56px;
  align-items: center;
  gap: 10px;
  padding: 0px 20px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
}

.school_select_input_field {
  display: flex;
  width: 170px;
  height: 56px;
  align-items: center;
  gap: 10px;
  padding: 0px 20px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
}

.school_select_text-wrapper-8 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--textmain);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.school_select_text-wrapper-2 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #ffffff;
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
}

.school_select_select-4 {
  display: inline-flex;
  justify-content: center;
  width: 75px;
  height: 56px;
  gap: 26px;
  padding: 12px 16px;
  flex: 0 0 auto;
  background-color: var(--button-primary);
  border-radius: 28px;
  border: 1px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

/* クリアボタン専用 */
.clear-button-wrapper {
    width: 100%;              
    display: flex;
    justify-content: center;   
    margin-top: 8px;
}

.clear-button {
    width: 60%;                
    max-width: 200px; 
    height: 40px;
    padding: 8px 16px;
    background-color: #e0e0e0;
    border-radius: 20px;
    border: 1px solid #bbb;
    color: #333;
    font-size: 13px;
    text-align: center;
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.clear-button .school_select_text-wrapper-2 {
  color: #333;
  font-size: 13px;
}

.search-button {
  cursor: pointer;
}

.school_select_div-5 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  border-radius: 20px;
  overflow: hidden;
  border: 2px solid;
  border-color: #6985ff;
}

.school_select_select-wrapper {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.school_select_select-5 {
  display: flex;
  height: 56px;
  gap: 10px;
  padding: 0px 20px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.school_select_select-6 {
  display: flex;
  height: 56px;
  gap: 10px;
  padding: 0px 20px;
  align-self: stretch;
  width: 100%;
  margin-top: -2px;
  background-color: var(--white);
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.school_select_select-wrapper-2 {
  display: flex;
  width: 170px;
  align-items: center;
  gap: 8px;
  position: relative;
}

.school_select_text-wrapper-9 {
  width: fit-content;
  font-family: var(--title-04-16-r-font-family);
  color: var(--textmain);
  font-size: var(--title-04-16-r-font-size);
  line-height: var(--title-04-16-r-line-height);
  white-space: nowrap;
  position: relative;
  font-weight: var(--title-04-16-r-font-weight);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  font-style: var(--title-04-16-r-font-style);
}

.school_select_p {
  align-self: stretch;
  font-family: var(--caption-font-family);
  color: transparent;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  position: relative;
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}

.school_select_span {
  color: #181b35;
  font-family: var(--caption-font-family);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-size: var(--caption-font-size);
}

.school_select_text-wrapper-10 {
  color: #f93a6b;
  font-family: var(--caption-font-family);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-size: var(--caption-font-size);
}

.school_select_link-button-submit-wrapper {
  align-items: center;
  gap: 8px;
  display: flex;
  flex-direction: column;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.school_select_link-button-submit {
  display: flex;
  max-width: 310px;
  width: 210px;
  height: 50px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  background-color: #e81829;
  border-radius: var(--common-radius-button-1000);
}

.school_button_text {
  position: relative;
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  font-size: var(--action-primary-m-font-size);
  letter-spacing: var(--action-primary-m-letter-spacing);
  line-height: var(--action-primary-m-line-height);
  white-space: nowrap;
  font-style: var(--action-primary-m-font-style);
}

/* デフォルトのボタンを非表示に */
.school_select_button_input {
  display: none;
}

.school_search_text_frame {
  align-items: flex-start;
}

.school_select_chat_box {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

/*-------------------------------------------*/

/* 電話番号入力 */
/*-------------------------------------------*/
.phone_number_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.phone_number_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.phone_number_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.phone_number_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.phone_number_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.phone_number_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.phone_number_chat_box {
  display: flex;
  flex-direction: column;
  width: 301px;
  align-items: center;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.phone_number_chat_field_frame {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

/* デフォルトのボタンを非表示に */
.phone_number_button_input {
  display: none;
}

.phone_number_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}

.phone_number_warning_field {
    display: flex;
    align-items: flex-start;
    position: relative;
    align-self: stretch;
    width: 100%;
}
/*-------------------------------------------*/

/* メールアドレス入力 */
/*-------------------------------------------*/
.mail_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.mail_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.mail_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.mail_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.mail_bc_chat_text_frame {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 14px;
}

.mail_bc_chat_text {
  font-weight: 700;
  line-height:normal;
  color: #181b35;
}

.mail_bc_chat_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.mail_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.mail_chat_box {
  display: flex;
  flex-direction: column;
  width: 301px;
  align-items: center;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.mail_chat_field_frame {
  height: 56px;
  align-items: center;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.mail_chat_pick_text_field {
    display: flex;
    align-items: flex-start;
    position: relative;
    align-self: stretch;
    width: 100%;
}

.mail_chat_pick_text {
  color: var(--textmain);
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.mail_chat_pick_frame {
  flex-direction: column;
  align-items: flex-start;
  flex: 0 0 auto;
  border-radius: 20px;
  overflow: hidden;
  border: 2px solid;
  border-color: #6985ff;
  display: none;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.mail_chat_pick_field_frame {
  gap: 10px;
  padding: 0px 20px;
  align-self: stretch;
  width: 100%;
  margin-top: -2px;
  border: 1px solid;
  border-color: var(--color-function-primary-inverted);
  display: flex;
  height: 56px;
  align-items: center;
  position: relative;
  background-color: var(--white);
}

/* デフォルトのボタンを非表示に */
.mail_button_input {
  display: none;
}

.mail_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.mail_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}

.mail_address_warning_field {
    display: flex;
    align-items: flex-start;
    position: relative;
    align-self: stretch;
    width: 100%;
}
/*-------------------------------------------*/

/* パスワード入力 */
/*-------------------------------------------*/
.password_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.password_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.password_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.password_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.password_bc_chat_text_frame {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.password_bc_chat_text {
  color: #181b35;
}

.password_bc_chat_sub_text {
  color: #e81829;
}

.password-wrapper {
  width: 100%;
  height: 100%;
  padding: 0px 10px 0px 20px;
  border-radius: 28px;
  padding-right: 40px; /* アイコン分の余白 */
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  outline: none;
}

.password__toggle {
  width: 40px;
  border: none;
  background: url('../img/toggle.png') no-repeat center center;
  background-size: 50% auto;
  cursor: pointer;
  position: absolute;
  right: 10px;
  height: 50%;
}

.password__toggle__visible {
  width: 40px;
  border: none;
  background: url('../img/toggle_visible.png') no-repeat center center;
  background-size: 50% auto;
  cursor: pointer;
  position: absolute;
  right: 10px;
  height: 50%;
}

.password_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.password_chat_box {
  display: flex;
  flex-direction: column;
  width: 301px;
  align-items: center;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.password_chat_field_frame {
  height: 56px;
  align-items: center;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.password_chat_pick_text_field {
    display: flex;
    align-items: flex-start;
    position: relative;
    align-self: stretch;
    width: 100%;
}

.password_chat_pick_text {
  color: var(--textmain);
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

/* デフォルトのボタンを非表示に */
.password_button_input {
  display: none;
}

.password_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.password_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}

.password_warning_field {
    display: flex;
    align-items: flex-start;
    position: relative;
    align-self: stretch;
    width: 100%;
}
/*-------------------------------------------*/

/* お支払い方法選択 */
/*-------------------------------------------*/
.payment_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payment_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payment_bc_chat_box {
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payment_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.payment_bc_chat_sub_text_frame {
  flex-direction: column;
}

.payment_bc_chat_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.payment_bc_chat_sub_text_underline_blue{
  color: var(--Buttton-Primary, #3A50F5);
  font-feature-settings: 'palt' on;
  font-family: var(--font-family);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.payment_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.payment_chat_label_frame {
  display: flex;
  flex-direction: column;
  width: 280px;
  align-items: flex-start;
  gap: 10px;
  padding: 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 32px;
}

.payment_chat_price_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_chat_discount_frame {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 3px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-stlike-red-10);
  border-radius: 8px;
}

.payment_chat_discount_text_frame_1 {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 10px;
  text-align: right;
  line-height: 13px;
  position: relative;
  letter-spacing: 0;
}

.payment_chat_discount_text_1 {
  color: #7e7e7e;
}

.payment_chat_discount_text_2 {
  color: #fc244f;
}

.payment_chat_discount_text_frame_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 16px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_chat_discount_text_3 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 16px;
  letter-spacing: 0;
}

.payment_chat_discount_text_4 {
  font-size: 10px;
}

.payment_chat_price_text_frame_1 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_chat_price_text_frame_2 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.payment_chat_price_text_1 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textsub);
  font-size: 10px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_chat_price_text_frame_3 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payment_chat_price_text_frame_4 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  flex: 0 0 auto;
}

.payment_chat_price_text_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  white-space: nowrap;
  position: relative;
  margin-top: -1.00px;
  letter-spacing: 0;
}

.payment_chat_price_text_3 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  text-decoration: line-through;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_chat_price_text_frame_5 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 23px;
  text-align: right;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.payment_chat_price_text_4 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 23px;
  letter-spacing: 0;
}

.payment_chat_price_text_5 {
  font-size: 14px;
}

.payment_label {
  display: flex;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.payment_label_text {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.payment_chat_price_text_frame_6 {
  position: relative;
  width: 89px;
  height: 12px;
}

.payment_chat_price_text_frame_7 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 23px;
  text-align: right;
  letter-spacing: 0;
  line-height: normal;
}

.payment_chat_price_text_6 {
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: #181b35;
  font-size: 23px;
  letter-spacing: 0;
}

/* デフォルトのラジオボタンを非表示に */
.payment_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.payment_input:checked + .payment_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.payment_input:checked + .payment_label .payment_label_text {
  color: #FFFFFF;
}

/* デフォルトのボタンを非表示に */
.payment_button_input {
  display: none;
}

.payment_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}
/*-------------------------------------------*/

/* お支払い方法選択（baby） */
/*-------------------------------------------*/
.payment_baby_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_baby_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payment_baby_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payment_baby_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payment_baby_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.payment_baby_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_baby_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.payment_baby_chat_label_frame {
  display: flex;
  flex-direction: column;
  width: 280px;
  align-items: flex-start;
  gap: 10px;
  padding: 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 32px;
}

.payment_baby_chat_price_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_baby_chat_discount_frame {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 3px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-stlike-red-10);
  border-radius: 8px;
}

.payment_baby_chat_discount_text_frame_1 {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 10px;
  text-align: right;
  line-height: 13px;
  position: relative;
  letter-spacing: 0;
}

.payment_baby_chat_discount_text_1 {
  color: #7e7e7e;
}

.payment_baby_chat_discount_text_2 {
  color: #fc244f;
}

.payment_baby_chat_discount_text_frame_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 16px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_baby_chat_discount_text_3 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 16px;
  letter-spacing: 0;
}

.payment_baby_chat_discount_text_4 {
  font-size: 10px;
}

.payment_baby_chat_price_text_frame_1 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_baby_chat_price_text_frame_2 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.payment_baby_chat_price_text_1 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textsub);
  font-size: 10px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_baby_chat_price_text_frame_3 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payment_baby_chat_price_text_frame_4 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  flex: 0 0 auto;
}

.payment_baby_chat_price_text_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  white-space: nowrap;
  position: relative;
  margin-top: -1.00px;
  letter-spacing: 0;
}

.payment_baby_chat_price_text_3 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  text-decoration: line-through;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_baby_chat_price_text_frame_5 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 23px;
  text-align: right;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.payment_baby_chat_price_text_4 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 23px;
  letter-spacing: 0;
}

.payment_baby_chat_price_text_5 {
  font-size: 14px;
}

.payment_baby_label {
  display: flex;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.payment_baby_label_text {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.payment_baby_chat_price_text_frame_6 {
  position: relative;
  width: 89px;
  height: 12px;
}

.payment_baby_chat_price_text_frame_7 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 23px;
  text-align: right;
  letter-spacing: 0;
  line-height: normal;
}

.payment_baby_chat_price_text_6 {
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: #181b35;
  font-size: 23px;
  letter-spacing: 0;
}

/* デフォルトのラジオボタンを非表示に */
.payment_baby_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.payment_baby_input:checked + .payment_baby_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.payment_baby_input:checked + .payment_baby_label .payment_baby_label_text {
  color: #FFFFFF;
}

/* デフォルトのボタンを非表示に */
.payment_baby_button_input {
  display: none;
}

.payment_baby_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_baby_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}
/*-------------------------------------------*/
/* 有料オプション申請 */
/*-------------------------------------------*/
.option_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.option_bc_chat {
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  align-self: stretch;
  width: 100%;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.option_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.option_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.option_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.option_bc_chat_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.option_accordion {
  align-items: flex-end;
  position: relative;
  width: 300px;
}

.option_accordion_text {
  width: 300px;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  line-height: var(--action-medium-line-height);
  position: relative;
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
  list-style: none;
  cursor: pointer;
}

.option_accordion_text_sub {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
}

.option_accordion_text_sub_red {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--action);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
}

.option_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.option_chat_box {
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 10px 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.option_label {
  display: flex;
  flex-direction: column;
  width: 132px;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.option_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 1.31;
}

.option_chat_item img{
  /* 親divの幅に合わせて画像の最大幅を100%に設定 */
  max-width: 100%;
  /* 縦横比を保つために高さを自動調整 */
  height: auto;
  display: block;
  margin: 0 auto;
}

.option_text_frame {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.option_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  font-style: var(--action-medium-font-style);
}

.option_sub_text {
  position: relative;
  align-self: stretch;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textsub);
  font-size: var(--action-caption-font-size);
  text-align: center;
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-style: var(--action-caption-font-style);
}

.option_img_1 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_1.png') no-repeat center/cover;
}

.option_img_2 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_2.png') no-repeat center/cover;
}

.option_img_3 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_3.png') no-repeat center/cover;
}

.option_img_4 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_4.png') no-repeat center/cover;
}

.option_img_5 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_5.png') no-repeat center/cover;
}

.option_img_6 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_6.png') no-repeat center/cover;
}

/* デフォルトのラジオボタンを非表示に */
.option_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.option_input:checked + .option_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.option_input:checked + .option_label .option_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* コチャレイングリッシュのお支払い方法選択 */
/*-------------------------------------------*/
.payment_english_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_english_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payment_english_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payment_english_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payment_english_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.payment_english_bc_chat_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.payment_english_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_english_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.payment_english_chat_select_box {
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payment_english_chat_label_frame {
  display: flex;
  flex-direction: column;
  width: 280px;
  align-items: flex-start;
  gap: 10px;
  padding: 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 32px;
}

.payment_english_chat_price_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_english_chat_discount_frame {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 3px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-stlike-red-10);
  border-radius: 8px;
}

.payment_english_chat_discount_text_frame_1 {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 10px;
  text-align: right;
  line-height: 13px;
  position: relative;
  letter-spacing: 0;
}

.payment_english_chat_discount_text_1 {
  color: #7e7e7e;
}

.payment_english_chat_discount_text_2 {
  color: #fc244f;
}

.payment_english_chat_discount_text_frame_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 16px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_english_chat_discount_text_3 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 16px;
  letter-spacing: 0;
}

.payment_english_chat_discount_text_4 {
  font-size: 10px;
}

.payment_english_chat_price_text_frame_1 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_english_chat_price_text_frame_2 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.payment_english_chat_price_text_1 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textsub);
  font-size: 10px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_english_chat_price_text_frame_3 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payment_english_chat_price_text_frame_4 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  flex: 0 0 auto;
}

.payment_english_chat_price_text_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  white-space: nowrap;
  position: relative;
  margin-top: -1.00px;
  letter-spacing: 0;
}

.payment_english_chat_price_text_3 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  text-decoration: line-through;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.payment_english_chat_price_text_frame_5 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 23px;
  text-align: right;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.payment_english_chat_price_text_4 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 23px;
  letter-spacing: 0;
}

.payment_english_chat_price_text_5 {
  font-size: 14px;
}

.payment_english_label {
  display: flex;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.payment_english_label_text {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.payment_english_label_text_small {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.payment_english_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.payment_english_input:checked + .payment_english_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.payment_english_input:checked + .payment_english_label .payment_english_label_text {
  color: #FFFFFF;
}

.payment_english_input:checked + .payment_english_label .payment_english_label_text_small {
  color: #FFFFFF;
}

/* デフォルトのボタンを非表示に */
.payment_english_button_input {
  display: none;
}

.payment_english_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payment_english_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}
/*-------------------------------------------*/

/* お支払者の指定 */
/*-------------------------------------------*/
.payer_select_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_select_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payer_select_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payer_select_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payer_select_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.payer_select_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_select_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payer_select_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.payer_select_input {
  display: none;
}

.payer_select_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.payer_select_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.payer_select_input:checked + .payer_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.payer_select_input:checked + .payer_select_label .payer_select_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 英語のラジオ選択 */
/*-------------------------------------------*/
.radio_select_div {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.radio_select_bc_chat {
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.radio_select_bc_chat_frame {
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}

.radio_select_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.radio_select_bc_chat_text {
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.radio_select_bc_chat_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.radio_select_chat {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.radio_select_chat_box {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 10px 10px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.radio_select_label {
  display: flex;
  flex-direction: column;
  width: 131px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.radio_select_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 1.31;
}

.radio_select_img_1 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/radio_green.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.radio_select_img_2 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/radio_yellow.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.radio_select_img_3 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/radio_orang.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.radio_select_text_frame {
  align-items: center;
  gap: 2px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.radio_select_text {
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.radio_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.radio_select_input:checked + .radio_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.radio_select_input:checked + .radio_select_label .radio_select_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 支払者情報入力 */
/*-------------------------------------------*/
.payer_info {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.payer_info_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_thumnail {
  position: relative;
  width: 44px;
  height: 44px;
}

.payer_info_chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.payer_info_div-wrapper {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_div {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.payer_info_view-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_view {
  width: 302px;
  align-items: center;
  border-radius: 32px;
  display: flex;
  flex-direction: column;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
}

.payer_info_view-2 {
  align-items: flex-start;
  gap: 16px;
  padding: 15px 10px;
  align-self: stretch;
  width: 100%;
  border-radius: 32px 0px 32px 32px;
  display: flex;
  flex-direction: column;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
}

.payer_info_frame-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_frame-3 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0px 8px 0px 15px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_text-wrapper-2 {
  position: relative;
  flex: 1;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.payer_info_frame-4 {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_select {
  flex: 1;
  flex-grow: 1;
  display: flex;
  height: 56px;
  align-items: center;
  padding: 0px 10px 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.payer_info_text-wrapper-3 {
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--title-04-16-r-font-size);
  line-height: var(--title-04-16-r-line-height);
  position: relative;
  letter-spacing: var(--title-04-16-r-letter-spacing);
  font-style: var(--title-04-16-r-font-style);
}

.payer_info_frame-5 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0px 8px 0px 15px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_address {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 0px 10px 15px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.payer_info_frame-6 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_frame-7 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_text-wrapper-4 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.payer_info_select-2 {
  width: 127px;
  display: flex;
  height: 56px;
  align-items: center;
  padding: 0px 10px 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.payer_info_select-3 {
  align-self: stretch;
  width: 100%;
  display: flex;
  height: 56px;
  align-items: center;
  padding: 0px 10px 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.payer_info_tel {
  display: flex;
  flex-direction: column;
  width: 301px;
  align-items: flex-start;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.payer_info_select-wrapper {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.payer_info_text-wrapper-5 {
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--textmain);
  font-size: var(--title-04-16-r-font-size);
  line-height: var(--title-04-16-r-line-height);
  position: relative;
  letter-spacing: var(--title-04-16-r-letter-spacing);
  font-style: var(--title-04-16-r-font-style);
}

.payer_info_button_frame {
  display: flex;
  flex-direction: column;
  width: 274px;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px;
}

.payer_info_button_text {
  position: relative;
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  font-size: var(--action-primary-m-font-size);
  letter-spacing: var(--action-primary-m-letter-spacing);
  line-height: var(--action-primary-m-line-height);
  white-space: nowrap;
  font-style: var(--action-primary-m-font-style);
}

.payer_info_delivery_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_delivery_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 7px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_delivery_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.payer_info_delivery_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.payer_info_delivery_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.payer_info_delivery_input:checked + .payer_info_delivery_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.payer_info_delivery_input:checked + .payer_info_delivery_label .payer_info_delivery_text {
  color: #FFFFFF;
}

.payer_info_name_chat_frame {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_name_chat_title_frame {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0px 8px 0px 15px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_name_chat_title_text {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.payer_info_name_chat_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_name_field_frame {
  display: flex;
  gap: 5px;
}

.payer_info_phone_number_frame {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.payer_info_address_chat_frame {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 280px;
}

.payer_info_address_chat_toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.payer_info_address_chat_uncheck_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
}

.payer_info_address_chat_check_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #FFFFFF;
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* デフォルトのラジオボタンを非表示に */
.payer_info_address_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.payer_info_address_select_input:checked + .payer_info_address_chat_toggle_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  color: #FFFFFF;
}

.payer_info_address_chat_field_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.payer_info_address_chat_field_frame_sub_1 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_address_chat_field_frame_sub_2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのボタンを非表示に */
.payer_info_address_button_input {
  display: none;
}

.payer_info_address_second_frame {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_address_second_frame-2 {
  display: inline-flex;
  gap: 8px;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_address_second_selector {
  display: flex;
  width: 129px;
  height: 56px;
  align-items: center;
  gap: 4px;
  padding: 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.payer_info_address_second_frame-3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 0px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.payer_info_address_second_label {
  font-family: var(--chat-base-font-family);
  display: flex;
  width: 50px;
  height: 41px;
  gap: 26px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  justify-content: center;
  position: relative;
}



.payer_info_address_second_frame-4 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 0px;
  padding: 16px 0px 0px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.payer_info_address_second_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.payer_info_address_second_select_input:checked + .payer_info_address_second_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  color: #FFFFFF;
}

.payer_info_address_second_frame-5 {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}
/*-------------------------------------------*/

/* 入金方法の選択 */
/*-------------------------------------------*/
.credit_card {
  display: flex;
  width: 343px;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  background-color: var(--background-color);
}

.credit_card_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.credit_card_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.credit_card_div-wrapper {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.credit_card_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  line-height: var(--chat-base-line-height);
  position: relative;
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.credit_card_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.credit_card_accordion {
  position: relative;
  width: 300px;
}

/* デフォルトのラジオボタンを非表示に */
.payment_select_input {
  display: none;
}

.credit_card_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.credit_card_view_sub {
  display: flex;
  flex-direction: column;
  /* width: 300px; */
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 0px 10px;
  position: relative;
  flex: 0 0 auto;
}

.credit_card_toggle_frame {
  display: inline-flex;
  align-items: center;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.credit_card_check_label {
  display: inline-flex;
  justify-content: center;
  padding: 12px 10px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  margin-left: -3.00px;
  background-color: var(--button-primary);
  border-radius: 28px;
  border: 1px solid;
  border-color: var(--b-primary);
  align-items: center;
  gap: 10px;
  position: relative;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #ffffff;
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
  cursor: pointer;
}

.credit_card_uncheck_label {
  display: inline-flex;
  justify-content: center;
  padding: 12px 10px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  gap: 10px;
  position: relative;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
  cursor: pointer;
}

.credit_card_frame-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.credit_card_text-wrapper-5 {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  position: relative;
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}

.credit_card_select-3 {
  display: inline-flex;
  height: 41px;
  justify-content: center;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  gap: 10px;
  position: relative;
}

.credit_card_text-wrapper-6 {
  width: fit-content;
  margin-top: -10.00px;
  margin-bottom: -6.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.credit_card_frame-3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.credit_card_frame-4 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.credit_card_text-wrapper-7 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--color-font-black3a3a3a);
  font-size: 12px;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.credit_card_group {
  position: relative;
  width: 137.24px;
  height: 16px;
}

.credit_card_container {
  align-items: flex-start;
  gap: 10px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  border-radius: 32px;
}

.credit_card_text-wrapper-9 {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--color-font-black3a3a3a);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.credit_card_text {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--color-font-black3a3a3a);
  font-size: 10px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.credit_card_frame-5 {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.credit_card_frame-6 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.credit_card_select-wrapper {
  align-items: center;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  border-radius: 32px;
}

.credit_card_select-5 {
  display: inline-flex;
  height: 44px;
  padding: 0px 20px;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  gap: 5px;
  position: relative;
}

.credit_card_select-5.err {
  border: 4px solid;
  border-color: var(--error);
}
/* フォーカス時に全体を強調 */
.credit_card_select-5:focus-within {
  border-radius: 28px;
  border: 4px solid var(--Buttton-Primary, #3A50F5);
  background: var(--white, #FFF);
  outline: none;         /* アウトラインを消す */
}

.credit_card_select-6 {
  display: inline-flex;
  height: 44px;
  width: 80px;
  padding: 0px 20px;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  gap: 10px;
  position: relative;
}

.credit_card_select-6.err {
  border: 4px solid;
  border-color: var(--error);
}

.credit_card_frame-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.other_chat_div {
  align-items: flex-start;
  gap: 7px;
  align-self: stretch;
  width: 280px;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

/* デフォルトのラジオボタンを非表示に */
.other_input {
  display: none;
}

.other_label {
  display: flex;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.other_text {
  flex: 1;
  margin-top: -2.00px;
  color: var(--color-ink-text-100);
  font-size: 15px;
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.other_input:checked + .other_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  color: #FFFFFF;
}

.other_sub_element {
  position: relative;
  align-self: stretch;
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--caption-font-size);
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
}

.other_sub_span {
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: #3a3a3a;
  font-size: 11px;
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
}

.other_sub_text-wrapper-2 {
  font-family: var(--caption-font-family);
  font-weight: var(--action-base-font-weight);
  font-style: var(--caption-font-style);
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-size: 11px;
}

.other_sub_text-wrapper-2_red {
  color: rgb(232, 24, 41);
  font-feature-settings: "palt";
  font-family: var(--action-caption-font-family);
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
}

.credit_card_select-7 {
  width: 40px;
  border: none;
  outline: none;
}

.credit_card_select-8 {
  display: inline-flex;
  height: 44px;
  width: 78px;
  padding: 0px 20px;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  gap: 10px;
  position: relative;
}

/*-------------------------------------------*/

/* 入金方法の選択 */
/*-------------------------------------------*/
.direct_debit {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  background-color: var(--background-color);
  padding: 28px 0px 0px 0px;
}

.direct_debit_element {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  flex: 0 0 auto;
}

.direct_debit_chat {
  display: flex;
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  flex: 0 0 auto;
}

.direct_debit_thumnail {
  position: relative;
  width: 44px;
  height: 44px;
}

.direct_debit_chat-wrapper {
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}

.direct_debit_div-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.direct_debit_div {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: transparent;
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}

.direct_debit_text-wrapper {
  color: #181b35;
  font-family: var(--chat-base-font-family);
  font-style: var(--chat-base-font-style);
  font-weight: var(--chat-base-font-weight);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-size: var(--chat-base-font-size);
}

.direct_debit_span {
  color: #fc244f;
  font-family: var(--chat-base-font-family);
  font-style: var(--chat-base-font-style);
  font-weight: var(--chat-base-font-weight);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-size: var(--chat-base-font-size);
}

.direct_debit_container-wrapper {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.direct_debit_container {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

/* デフォルトのラジオボタンを非表示に */
.direct_debit_select_input {
  display: none;
}

.direct_debit_select-wrapper {
  align-items: flex-start;
  gap: 7px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.direct_debit_select {
  display: flex;
  width: 280px;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.direct_debit_text-wrapper-2 {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}
/*-------------------------------------------*/

/* 割引コード入力 */
/*-------------------------------------------*/
.discount_code_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.discount_code_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.discount_code_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.discount_code_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.discount_code_bc_chat_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.discount_code_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.discount_code_chat_box {
  display: flex;
  width: 296px;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  position: relative;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.discount_code_chat_field_frame {
  display: flex;
  width: 230px;
  height: 59px;
  align-items: center;
  gap: 10px;
  padding: 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
}
/*-------------------------------------------*/

/* 紹介者の選択 */
/*-------------------------------------------*/
.referrer_radio_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.referrer_radio_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.referrer_radio_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.referrer_radio_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.referrer_radio_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.referrer_radio_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.referrer_radio_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.referrer_radio_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.referrer_radio_input {
  display: none;
}

.referrer_radio_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.referrer_radio_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.referrer_radio_input:checked + .referrer_radio_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.referrer_radio_input:checked + .referrer_radio_label .referrer_radio_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 紹介者の情報入力 */
/*-------------------------------------------*/
.referrer_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}
.referrer_text-wrapper-2 {
  align-self: stretch;
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: var(--textmain);
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  position: relative;
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}
.referrer_div-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}
.referrer_div-4 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}
.referrer_text-wrapper-7 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}
.referrer_selector {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 4px;
  padding: 0px 20px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
}
.referrer_text-wrapper-8 {
  flex: 1;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--textmain);
  font-size: var(--action-base-font-size);
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}
/*-------------------------------------------*/

/* ご兄弟情報登録の選択 */
/*-------------------------------------------*/
.family_info_select_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_select_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.family_info_select_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.family_info_select_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.family_info_select_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.family_info_select_text-wrapper-2 {
  align-self: stretch;
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: var(--textmain);
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  position: relative;
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}

.family_info_select_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_select_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.family_info_select_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.family_info_select_input {
  display: none;
}

.family_info_select_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.family_info_select_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.family_info_select_input:checked + .family_info_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.family_info_select_input:checked + .family_info_select_label .family_info_select_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* 兄弟情報の登録 */
/*-------------------------------------------*/
.family_info_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 343px;
  flex: 0 0 auto;
}

.family_info_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_box {
  display: flex;
  flex-direction: column;
  width: 302px;
  align-items: center;
  position: relative;
  background-color: var(--chat-bg);
  border-radius: 32px;
}

.family_info_frame {
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_view {
  gap: 10px;
  padding: 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.family_info_div-wrapper {
  width: 78px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.family_info_div {
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.family_info_text-wrapper-2 {
  width: fit-content;
  margin-top: -2.00px;
  margin-left: -1.00px;
  margin-right: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.family_info_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.family_info_input:checked + .family_info_div-wrapper {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.family_info_input:checked + .family_info_div-wrapper .family_info_div {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.family_info_input:checked + .family_info_div-wrapper .family_info_text-wrapper-2 {
  color: #FFFFFF;
}

.family_info_view-2 {
  flex-direction: column;
  gap: 16px;
  padding: 15px 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.family_info_frame-2 {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_frame-3 {
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0px 8px 0px 15px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_text-wrapper-3 {
  position: relative;
  flex: 1;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.family_info_frame-4 {
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_frame-5 {
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0px 8px 0px 15px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_frame-wrapper {
  flex-direction: column;
  gap: 10px;
  padding: 15px 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.family_info_frame-6 {
  align-items: center;
  gap: 8px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_select-3 {
  width: 95px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
  display: flex;
  align-items: center;
  position: relative;
}

.family_info_text-wrapper-5 {
  width: fit-content;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  line-height: var(--title-04-16-r-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  font-style: var(--title-04-16-r-font-style);
}

.family_info_container {
  display: flex;
  flex-direction: column;
  width: 274px;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px;
}

.family_info_polygon {
  position: absolute;
  width: 10px;
  height: 10px;
  top: 28px;
  left: 274px;
}

/* デフォルトのラジオボタンを非表示に */
.family_info_link-button_input {
  display: none;
}

.family_info_text-wrapper-7 {
  position: relative;
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  font-size: var(--action-primary-m-font-size);
  letter-spacing: var(--action-primary-m-letter-spacing);
  line-height: var(--action-primary-m-line-height);
  white-space: nowrap;
  font-style: var(--action-primary-m-font-style);
}
/*-------------------------------------------*/

/* お支払者の指定 */
/*-------------------------------------------*/
.family_info_add_radio_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_add_radio_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.family_info_add_radio_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.family_info_add_radio_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.family_info_add_radio_bc_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.family_info_add_radio_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.family_info_add_radio_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.family_info_add_radio_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.family_info_add_radio_input {
  display: none;
}

.family_info_add_radio_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.family_info_add_radio_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.family_info_add_radio_input:checked + .family_info_add_radio_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.family_info_add_radio_input:checked + .family_info_add_radio_label .family_info_add_radio_text {
  color: #FFFFFF;
}
/*-------------------------------------------*/

/* タブレットサポート申請 */
/*-------------------------------------------*/

/*-------------------------------------------*/


.main .frame {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.main .chat {
  width: 100%;
  /* align-items: flex-start; */
  align-items: center;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  flex-direction: row;
}

.main .thumnail {
  width: 44px;
  height: 44px;
  background: #FFFFFF url('/img/shima1.png') no-repeat center/cover;
  border-radius: 48px;
  flex: none;
}

.main .chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.main .div_err {
  flex-direction: column;
  align-items: left;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.main .div {
  flex-direction: column;
  align-items: left;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.home-div {
  flex-direction: column;
  width: 280px;
  gap: 8px;
  display: flex;
  align-items: center;
  position: relative;
}

.main .p {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.main .new-p {
  margin-top: -1.00px;
  font-size: 26px;
  line-height: 33.8px;
  position: relative;
  /* display: flex; */
  align-items: center;
  justify-content: center;
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  text-align: center;
  letter-spacing: 0;
}

.main .text-wrapper {
  font-weight: 700;
}

/* .main .span {
  font-family: "Noto Sans JP-Regular", Helvetica;
  font-size: 12px;
  line-height: 15.6px;
} */

.main .span {
  display: block;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #323442;
  font-size: 26px;
  letter-spacing: 0;
  line-height: 20px;
}

.main .div-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .chat-2 {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.main .text-wrapper-3 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

/* .main .frame-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
} */

.main .frame-2 {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .container-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* .main .container {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
} */

.main .container {
  flex-wrap: wrap;
  width: 300px;
  gap: 10px 10px;
  padding: 18px 10px;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  align-items: center;
  position: relative;
  /* margin: 0 auto; */
}

.main .new {
  display: flex;
  height: 100px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0px 16px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--bg-main);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 0px 20px #00000033;

  border: none;
}

.main .element-wrapper {
  display: inline-flex;
  align-items: center;
  position: relative;
  flex: 0 0 auto;
  margin-left: -10.00px;
}

/* .main .frame-3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
} */

.main .course_chat_emphasis {
  color: #7E7E7E;
  font-size: 14px;
  font-family: var(--action-base-font-family);
  font-weight: 700;
  line-height: 18.20px;
  word-wrap: break-word;
}

.main .course_chat {
  color: #7E7E7E;
  font-size: 14px;
  font-family: var(--action-base-font-family);
  font-weight: 400;
  line-height: 18.20px;
  word-wrap: break-word;
}

.main .course_chat_link {
  color: #7E7E7E;
  font-size: 14px;
  font-family: var(--action-base-font-family);
  font-weight: 700;
  line-height: 18.20px;
  word-wrap: break-word;
  text-decoration: underline;
}

.main .frame-3 {
  display: flex;
  width: 114px;
  height: 29px;
  align-items: center;
  justify-content: center;
  padding: 5px 0px 8px 0px;
  position: relative;
  text-align: center;
  flex-direction: column;
}

.main .select {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-4 {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

.main .element {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .chat-3 {
  width: 318px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.main .view {
  width: 274px;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.main .div-wrapper {
  display: flex;
  width: 78px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--button-primary);
  border-radius: 30px;
  border: 1px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-5 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.main .select-2 {
  display: flex;
  width: 78px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-6 {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.main .text-wrapper-7 {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  margin-left: -1.00px;
  margin-right: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.main .text-wrapper-8 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.main .frame-4 {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .accordion {
  position: relative;
  width: 300px;
  height: 17px;
}

.main .frame-wrapper {
  flex-direction: column;
  width: 300px;
  align-items: flex-start;
  gap: 16px;
  padding: 15px 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.main .frame-5 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .frame-6 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0px 8px 0px 15px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .text-wrapper-10 {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.main .frame-7 {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .select-3 {
  display: flex;
  height: 56px;
  padding: 0px 10px 0px 20px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 4px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-11 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.main .select-4 {
  display: flex;
  height: 56px;
  gap: 10px;
  padding: 0px 20px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.main .div-3 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--placeholder);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.main .chat-selector {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0px 0px 0px 16px;
  position: relative;
  flex: 0 0 auto;
}

.main .image {
  position: relative;
  width: 14.44px;
  height: 14.44px;
}

.main .text-wrapper-12 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--error);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.main .view-2 {
  flex-direction: column;
  width: 300px;
  align-items: flex-start;
  gap: 10px;
  padding: 15px 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.main .frame-8 {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .select-5 {
  display: inline-flex;
  height: 56px;
  padding: 0px 10px 0px 20px;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 28px;
  border: 4px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-13 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--textmain);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  white-space: nowrap;
  font-style: var(--title-04-16-r-font-style);
}

.main .select-6 {
  display: flex;
  width: 66px;
  height: 56px;
  justify-content: center;
  padding: 0px 10px 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 4px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-14 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--title-04-16-r-font-size);
  text-align: center;
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.main .select-7 {
  display: flex;
  width: 66px;
  height: 56px;
  justify-content: center;
  gap: 10px;
  padding: 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.main .text-wrapper-15 {
  position: relative;
  width: fit-content;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--placeholder);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  white-space: nowrap;
  font-style: var(--title-04-16-r-font-style);
}

.main .text-wrapper-16 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--textmain);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.main .address {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.main .thumnail-toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.main .select-8 {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  margin-left: -3.00px;
  background-color: var(--button-primary);
  border-radius: 28px;
  border: 1px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-17 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #ffffff;
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
}

.main .select-9 {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
}

.main .text-wrapper-18 {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
}

.main .frame-9 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .frame-10 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.main .text-wrapper-19 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.main .select-10 {
  display: flex;
  width: 127px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 4px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .select-11 {
  display: flex;
  height: 56px;
  padding: 0px 10px 0px 20px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 28px;
  border: 4px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .link-button-submit-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .link-button-submit {
  display: flex;
  max-width: 310px;
  width: 210px;
  height: 50px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  background-color: var(--action);
  border-radius: var(--common-radius-button-1000);
}

.main .text-wrapper-20 {
  position: relative;
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  font-size: var(--action-primary-m-font-size);
  letter-spacing: var(--action-primary-m-letter-spacing);
  line-height: var(--action-primary-m-line-height);
  white-space: nowrap;
  font-style: var(--action-primary-m-font-style);
}

.main .text-wrapper-21 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}

.main .div-4 {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Regular", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 12px;
  letter-spacing: 0;
  line-height: 15.6px;
}

.main .text-wrapper-22 {
  color: #181b35;
}

.main .text-wrapper-23 {
  color: #fc244f;
}

.main .frame-wrapper-2 {
  display: flex;
  flex-direction: column;
  width: 301px;
  align-items: flex-start;
  gap: 10px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.main .select-wrapper {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.main .text-wrapper-24 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--color-mono-800);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.main .div-5 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 14px;
}

.main .text-wrapper-25 {
  font-weight: 700;
  color: #181b35;
}

.main .text-wrapper-26 {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.main .text-wrapper-27 {
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: #9d9d9d;
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.main .text-wrapper-28 {
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  font-style: var(--title-04-16-r-font-style);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-size: var(--title-04-16-r-font-size);
}

.main .div-6 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.main .text-wrapper-29 {
  color: #e81829;
}

.main .view-3 {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.main .polygon {
  position: absolute;
  width: 10px;
  height: 10px;
  top: 28px;
  left: 274px;
}

.main .card-shirai {
  display: flex;
  flex-direction: column;
  width: 280px;
  align-items: flex-start;
  gap: 10px;
  padding: 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 32px;
}

.main .select-12 {
  display: flex;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--button-primary);
  border-radius: 30px;
  border: 1px solid;
  border-color: var(--b-primary);
  align-items: center;
  position: relative;
}

.main .frame-11 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .frame-12 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 3px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-stlike-red-10);
  border-radius: 8px;
}

/* .main .element-2 {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 10px;
  text-align: right;
  line-height: 13px;
  position: relative;
  letter-spacing: 0;
} */

.main .element-2 {
  box-shadow: 0px 0px 20px #00000033;
  display: flex;
  flex-direction: column;
  height: 135px;
  align-items: center;
  gap: 8px;
  padding: 12px 0px 0px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--bg-main);
  border-radius: 16px;
  overflow: hidden;
  border: none;
}

.main .text-wrapper-30 {
  color: #7e7e7e;
}

.main .element-3 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 16px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.main .text-wrapper-31 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 16px;
  letter-spacing: 0;
}

.main .text-wrapper-32 {
  font-size: 10px;
}

.main .rectangle {
  position: absolute;
  width: 14px;
  height: 7px;
  top: 32px;
  left: 208px;
}

.main .frame-13 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .frame-14 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.main .text-wrapper-33 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textsub);
  font-size: 10px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.main .frame-15 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.main .frame-16 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  flex: 0 0 auto;
}

.main .text-wrapper-34 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  white-space: nowrap;
  position: relative;
  margin-top: -1.00px;
  letter-spacing: 0;
}

.main .text-wrapper-35 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  text-decoration: line-through;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.main .element-4 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 23px;
  text-align: right;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.main .text-wrapper-36 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 23px;
  letter-spacing: 0;
}

.main .text-wrapper-37 {
  font-size: 14px;
}

.main .select-13 {
  display: flex;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.main .frame-17 {
  position: relative;
  width: 89px;
  height: 12px;
}

.main .element-5 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 23px;
  text-align: right;
  letter-spacing: 0;
  line-height: normal;
}

.main .text-wrapper-38 {
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: #181b35;
  font-size: 23px;
  letter-spacing: 0;
}

.main .button-submit {
  width: 210px;
  display: flex;
  max-width: 310px;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  background-color: var(--action);
  border-radius: var(--common-radius-button-1000);
}

.main .chat-4 {
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  align-self: stretch;
  width: 100%;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.main .container-2 {
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 10px 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.main .select-14 {
  display: flex;
  flex-direction: column;
  width: 132px;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.main .item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 1.31;
}

.main .overlap-group {
  position: relative;
  width: 120px;
  height: 91px;
}

/* .main .img {
  position: absolute;
  width: 119px;
  height: 83px;
  top: 0;
  left: 1px;
} */

.main .img {
  position: relative;
  width: 144px;
  height: 100px;
  margin-right: -10.00px;
}

.main .image-2 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  aspect-ratio: 1.5;
  object-fit: cover;
}

.main .frame-18 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .text-wrapper-39 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  font-style: var(--action-medium-font-style);
}

.main .text-wrapper-40 {
  position: relative;
  align-self: stretch;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textsub);
  font-size: var(--action-caption-font-size);
  text-align: center;
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-style: var(--action-caption-font-style);
}

.main .image-3 {
  position: absolute;
  width: 119px;
  height: 91px;
  top: 0;
  left: 1px;
}

.main .image-4 {
  position: absolute;
  width: 120px;
  height: 81px;
  top: 0;
  left: 0;
  object-fit: cover;
}

.main .image-wrapper {
  position: relative;
  width: 120px;
  height: 91px;
  background-image: url(./img/item.png);
  background-size: 100% 100%;
}

.main .item-2 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
}

.main .element-6 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--bg-main);
}

.main .text-wrapper-41 {
  width: 300px;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  line-height: var(--action-medium-line-height);
  position: relative;
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.main .view-4 {
  flex-direction: column;
  width: 300px;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 18px 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.main .text-wrapper-42 {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W3", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.main .select-15 {
  display: inline-flex;
  height: 41px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.main .text-wrapper-43 {
  position: relative;
  width: fit-content;
  margin-top: -10.00px;
  margin-bottom: -6.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
}

.main .frame-19 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .text-wrapper-44 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.main .group {
  position: relative;
  width: 137.24px;
  height: 16px;
}

.main .container-3 {
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
  width: 100%;
  border-radius: 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.main .select-16 {
  display: flex;
  height: 44px;
  gap: 10px;
  padding: 0px 20px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.main .text-wrapper-45 {
  position: relative;
  flex: 1;
  font-family: var(--title-06-14-r-font-family);
  font-weight: var(--title-06-14-r-font-weight);
  color: var(--color-mono-800);
  font-size: var(--title-06-14-r-font-size);
  letter-spacing: var(--title-06-14-r-letter-spacing);
  line-height: var(--title-06-14-r-line-height);
  font-style: var(--title-06-14-r-font-style);
}

.main .text-wrapper-46 {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.main .frame-20 {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .frame-21 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.main .container-4 {
  align-items: center;
  gap: 5px;
  align-self: stretch;
  width: 100%;
  border-radius: 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.main .select-17 {
  display: inline-flex;
  height: 44px;
  gap: 10px;
  padding: 0px 20px;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.main .text-wrapper-47 {
  position: relative;
  width: fit-content;
  font-family: var(--title-06-14-r-font-family);
  font-weight: var(--title-06-14-r-font-weight);
  color: var(--color-mono-800);
  font-size: var(--title-06-14-r-font-size);
  letter-spacing: var(--title-06-14-r-letter-spacing);
  line-height: var(--title-06-14-r-line-height);
  white-space: nowrap;
  font-style: var(--title-06-14-r-font-style);
}

.main .frame-22 {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.main .element-7 {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  flex: 0 0 auto;
}

.main .select-18 {
  display: flex;
  width: 280px;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.main .div-7 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 14px;
}

.main .text-wrapper-48 {
  font-family: var(--caption-font-family);
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.main .chat-button-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.main .chat-button_input {
  display: none;
}

.main .chat-button {
  display: flex;
  width: 296px;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.signup_button_label {
  flex: 1;
  flex-grow: 1;
  display: flex;
  max-width: 310px;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  background-color: var(--action);
  border-radius: var(--common-radius-button-1000);
}

.signup_button_label_new {
  flex: 1;
  flex-grow: 1;
  display: flex;
  max-width: 310px;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  background-color: var(--white);
  color: var(--b-primary);
  border: 2px solid;
  border-radius: 30px;
}

.main .text-wrapper-49 {
  margin-top: -7.50px;
  margin-bottom: -5.50px;
  font-size: var(--label-bold-m-font-size);
  line-height: var(--label-bold-m-line-height);
  white-space: nowrap;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  font-family: var(--label-bold-m-font-family);
  font-weight: var(--label-bold-m-font-weight);
  color: var(--textmain);
  text-align: center;
  letter-spacing: var(--label-bold-m-letter-spacing);
  font-style: var(--label-bold-m-font-style);
}

.main .text-wrapper-50 {
  display: block;
  font-size: 17px;
  line-height: 25px;
}

/*-------------------------------------------*/

/* お子さまの情報修正 */
/*-------------------------------------------*/
.fix_child {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.fix_child_bc_chat {
  display: flex;
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  flex: 0 0 auto;
}

.fix_child_bc_chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_child_bc_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.fix_child_bc_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_child_view-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_child_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_child_frame-15 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_child_text-wrapper-10 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_child_input {
  display: none;
}

.fix_child_frame-25 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.update_button_label {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--action);
  border-radius: 30px;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_child_text-wrapper-11 {
  flex: 1;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_chat_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 20px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_area_div {
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.fix_area_frame {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 15px;
  padding: 0px 10px 0 10px;
}

.fix_title_frame {
  align-items: flex-start;
  justify-content: space-between;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  position: relative;
}

.fix_title_main_text {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--textmain);
  font-size: var(--action-base-font-size);
  line-height: var(--action-base-line-height);
  white-space: normal;
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* お子さまの情報修正 性別 */
.fix_selectsex_frame {
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_selectsex_view {
  gap: 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.fix_selectsex_div-wrapper {
  width: 78px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_selectsex_div {
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_selectsex_text-wrapper-2 {
  width: fit-content;
  margin-top: -2.00px;
  margin-left: -1.00px;
  margin-right: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_selectsex_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_selectsex_input:checked + .fix_selectsex_div-wrapper {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_selectsex_input:checked + .fix_selectsex_div-wrapper .fix_selectsex_div {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_selectsex_input:checked + .fix_selectsex_div-wrapper .fix_selectsex_text-wrapper-2 {
  color: #FFFFFF;
}

/* お子さまの情報修正 お子さまのお名前（漢字）・お子さまのフリガナ */
.fix_child_frame-2 {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_child_frame-4 {
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* お子さまの情報修正 生年月日 */
.fix_family_info_frame-wrapper {
  flex-direction: column;
  gap: 5px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_birthday_frame {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/*-------------------------------------------*/

/* 保護者の情報修正 */
/*-------------------------------------------*/
.fix_parent {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.fix_parent_bc_chat {
  display: flex;
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  flex: 0 0 auto;
}

.fix_parent_bc_chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_parent_bc_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.fix_parent_bc_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_parent_view-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_parent_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_parent_frame-15 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_parent_text-wrapper-10 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_parent_input {
  display: none;
}

.fix_parent_frame-25 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_parent_text-wrapper-11 {
  flex: 1;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* 保護者の情報修正 保護者様のお名前（漢字）・保護者様のフリガナ */
.fix_payer_info_name_chat_frame {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payer_info_name_chat_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payer_info_name_field_frame {
  display: flex;
  gap: 5px;
}

/* 保護者の情報修正 住所 */
.fix_address_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_address_chat_box {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 19px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_address_chat_toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.fix_address_chat_uncheck_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
  cursor: pointer;
}

.fix_address_chat_check_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #FFFFFF;
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  cursor: pointer;
}

.fix_address_select_input {
  display: none;
}

.fix_address_chat_field_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_address_chat_field_frame_sub_1 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.fix_address_chat_field_1 {
  display: flex;
  width: 127px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.fix_address_chat_field_frame_sub_2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_address_chat_field_2 {
  display: flex;
  width: 280px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  align-self: stretch;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.fix_address_second_frame {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.fix_address_second_frame-2 {
  display: inline-flex;
  gap: 8px;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.fix_address_second_selector {
  display: flex;
  width: 129px;
  height: 56px;
  align-items: center;
  gap: 4px;
  padding: 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.fix_address_second_text-wrapper-4 {
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  width: fit-content;
  letter-spacing: var(--chat-base-letter-spacing);
  white-space: nowrap;
  font-style: var(--chat-base-font-style);
}

.fix_address_second_frame-3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 0px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.fix_address_second_label {
  font-family: var(--chat-base-font-family);
  display: flex;
  width: 50px;
  height: 41px;
  gap: 26px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
}

.fix_address_second_frame-4 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 0px;
  padding: 16px 0px 0px;
  align-self: stretch;
  width: 100%;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

/* デフォルトのラジオボタンを非表示に */
.fix_address_second_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_address_second_select_input:checked + .fix_address_second_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* 保護者の情報修正 配達場所 */
.fix_delivery_chat_box {
  flex-direction: column;
  width: 100%;
  align-items: center;
  align-self: stretch;
  gap: 7px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.fix_delivery_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_delivery_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

.fix_delivery_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_delivery_input:checked + .fix_delivery_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_delivery_input:checked + .fix_delivery_label .fix_delivery_text {
  color: #FFFFFF;
}

/* 保護者の情報修正 電話番号 */
.fix_payer_info_tel {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  align-items: center;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_payer_info_phone_number_frame {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

/* 保護者の情報修正 メールアドレス */
.fix_mail {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_mail_frame {
  height: 56px;
  align-items: center;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.fix_mail_text-wrapper {
  color: var(--textmain);
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
  font-style: var(--title-04-16-r-font-style);
}

.fix_mail_div {
  position: relative;
  align-self: stretch;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.fix_mail_frame-2 {
  flex-direction: column;
  align-items: flex-start;
  flex: 0 0 auto;
  border-radius: 20px;
  overflow: hidden;
  border: 2px solid;
  border-color: #6985ff;
  display: none;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.fix_mail_select-2 {
  gap: 10px;
  padding: 0px 20px;
  align-self: stretch;
  width: 100%;
  margin-top: -2px;
  border: 1px solid;
  border-color: var(--color-function-primary-inverted);
  display: flex;
  height: 56px;
  align-items: center;
  position: relative;
  background-color: var(--white);
}

/* 保護者の情報修正 パスワード */
.fix_pass {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_pass_frame {
  height: 56px;
  align-items: center;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.fix_password-wrapper input {
  width: 100%;
  padding-right: 40px;
  box-sizing: border-box;
}

.fix_pass_div {
  position: relative;
  align-self: stretch;
  font-family: "Hiragino Kaku Gothic Pro-W6", Helvetica;
  font-weight: 400;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.fix_pass_select-3 {
  gap: 10px;
  padding: 0px 10px 0px 20px;
  flex: 1;
  flex-grow: 1;
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  display: flex;
  width: 281px;
  height: 56px;
  align-items: center;
  position: relative;
  background-color: var(--white);
}

.fix_password-wrapper {
  width: 100%;
  height: 50%;
  padding-right: 40px; /* アイコン分の余白 */
  border: none;
  outline: none;
  font-size: 12px;
}

.fix_password__toggle {
  width: 40px;
  border: none;
  background: url('../img/toggle.png') no-repeat center center;
  background-size: 50% auto;
  cursor: pointer;
  position: absolute;
  right: 10px;
  height: 50%;
}

.fix_password__toggle__visible {
  width: 40px;
  border: none;
  background: url('../img/toggle_visible.png') no-repeat center center;
  background-size: 50% auto;
  cursor: pointer;
  position: absolute;
  right: 10px;
  height: 50%;
}

/*-------------------------------------------*/

/* 学校情報の情報修正 */
/*-------------------------------------------*/

.fix_school_input {
  display: none;
}

.fix_school_frame-25 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_school_text-wrapper-11 {
  flex: 1;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/*-------------------------------------------*/

/* 支払方法の情報修正 */
/*-------------------------------------------*/
.fix_pay_method {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.fix_pay_method_bc_chat {
  display: flex;
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  flex: 0 0 auto;
}

.fix_pay_method_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: flex-end;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_pay_method_bc_chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_pay_method_bc_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.fix_pay_method_bc_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_pay_method_view-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_pay_method_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_pay_method_frame-15 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_pay_method_text-wrapper-10 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_pay_method_input {
  display: none;
}

.fix_pay_method_frame-25 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_pay_method_text-wrapper-11 {
  flex: 1;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* 支払方法の修正 入金方法 */
.fix_credit_card_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payment_select_input {
  display: none;
}

.fix_credit_card_view {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 16px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_credit_card_view_sub {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 16px;
  position: relative;
  flex: 0 0 auto;
}

.fix_credit_card_toggle_frame {
  display: inline-flex;
  align-items: center;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.fix_credit_card_check_label {
  display: inline-flex;
  justify-content: center;
  padding: 12px 10px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  margin-left: -3.00px;
  background-color: var(--button-primary);
  border-radius: 28px;
  border: 1px solid;
  border-color: var(--b-primary);
  align-items: center;
  gap: 10px;
  position: relative;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #ffffff;
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
  cursor: pointer;
}

.fix_credit_card_uncheck_label {
  display: inline-flex;
  justify-content: center;
  padding: 12px 10px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  gap: 10px;
  position: relative;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
  cursor: pointer;
}

.fix_credit_card_frame-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_credit_card_text-wrapper-5 {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  position: relative;
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}

.fix_credit_card_select-3 {
  display: inline-flex;
  height: 41px;
  justify-content: center;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  gap: 10px;
  position: relative;
}

.fix_credit_card_text-wrapper-6 {
  width: fit-content;
  margin-top: -10.00px;
  margin-bottom: -6.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.fix_credit_card_frame-3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_credit_card_frame-4 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_credit_card_text-wrapper-7 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--color-font-black3a3a3a);
  font-size: 12px;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.fix_credit_card_group {
  position: relative;
  width: 137.24px;
  height: 16px;
}

.fix_credit_card_container {
  align-items: flex-start;
  gap: 10px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  border-radius: 32px;
}

.fix_credit_card_text-wrapper-9 {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--color-font-black3a3a3a);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.fix_credit_card_frame-5 {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_credit_card_frame-6 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.fix_credit_card_select-wrapper {
  align-items: center;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  border-radius: 32px;
}

.fix_credit_card_select-5 {
  display: inline-flex;
  height: 44px;
  width: 118px;
  padding: 0px 20px;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  gap: 10px;
  position: relative;
}

.fix_credit_card_frame-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_other_chat_div {
  align-items: flex-start;
  gap: 7px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.fix_other_input {
  display: none;
}

.fix_other_label {
  display: flex;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.fix_other_text {
  flex: 1;
  margin-top: -2.00px;
  color: var(--color-ink-text-100);
  font-size: 15px;
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_other_input:checked + .fix_other_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
  color: #FFFFFF;
}

.fix_other_sub_element {
  position: relative;
  align-self: stretch;
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--caption-font-size);
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
}

.fix_other_sub_span {
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: #3a3a3a;
  font-size: 11px;
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
}

.fix_other_sub_text-wrapper-2 {
  font-family: var(--caption-font-family);
  font-weight: var(--action-base-font-weight);
  font-style: var(--caption-font-style);
  letter-spacing: var(--caption-letter-spacing);
  line-height: var(--caption-line-height);
  font-size: 11px;
}

.fix_credit_card_select-7 {
  width: 40px;
  border: none;
  outline: none;
}

/* 支払方法の修正 口座引落 */
.fix_direct_debit_chat-wrapper {
  align-items: flex-start;
  gap: 8px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
}

.fix_direct_debit_div-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_direct_debit_div {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: transparent;
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}

.fix_direct_debit_text-wrapper {
  color: #181b35;
  font-family: var(--chat-base-font-family);
  font-style: var(--chat-base-font-style);
  font-weight: var(--chat-base-font-weight);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-size: var(--chat-base-font-size);
}

.fix_direct_debit_span {
  color: #fc244f;
  font-family: var(--chat-base-font-family);
  font-style: var(--chat-base-font-style);
  font-weight: var(--chat-base-font-weight);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-size: var(--chat-base-font-size);
}

.fix_direct_debit-3 {
  display: inline-flex;
  height: 41px;
  justify-content: center;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  gap: 10px;
  position: relative;
  width: 100%;
}

.fix_direct_debit_text-wrapper-6 {
  width: fit-content;
  margin-top: -10.00px;
  margin-bottom: -6.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

/* 支払方法の修正 お支払い者 */
.fix_payer_view {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-end;
  gap: 19px;
  position: relative;
  flex: 0 0 auto;
}

.fix_payer_select_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payer_select_input {
  display: none;
}

.fix_payer_select_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_payer_select_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_payer_select_input:checked + .fix_payer_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_payer_select_input:checked + .fix_payer_select_label .fix_payer_select_text {
  color: #FFFFFF;
}

/* 支払方法の修正 支払者情報 */
.fix_payer_info_view {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 19px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* 支払方法の修正 支払者情報 住所 */
.fix_payer_info_frame {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payer_info_address_chat_frame {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 280px;
}

.fix_payer_info_address_chat_toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.fix_payer_info_address_chat_uncheck_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
}

.fix_payer_info_address_chat_check_label {
  display: inline-flex;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  border-radius: 28px;
  align-items: center;
  position: relative;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #FFFFFF;
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

.fix_payer_info_address_select_input {
  display: none;
}

.fix_payer_info_address_chat_field_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payer_info_address_chat_field_frame_sub_1 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.fix_payer_info_address_chat_field_frame_sub_2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* 支払方法の修正 支払者情報 電話番号 */
.fix_payer_info_tel {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.fix_payer_info_phone_number_frame {
  display: flex;
  height: 56px;
  align-items: center;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

/*-------------------------------------------*/

/* 申し込み内容の情報修正 */
/*-------------------------------------------*/
.fix_application {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.fix_application_bc_chat {
  display: flex;
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  flex: 0 0 auto;
}

.fix_application_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: flex-end;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_application_bc_chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_application_bc_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.fix_application_bc_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_application_view-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_application_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_application_frame-15 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_application_text-wrapper-10 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  /* white-space: nowrap; */
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_application_input {
  display: none;
}

.fix_application_frame-25 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_application_text-wrapper-11 {
  flex: 1;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.confirm_element_div {
  overflow-wrap: break-word;
}

/* 申し込み内容の情報修正 学習スタイル */
.fix_learning_style_chat_box {
  display: flex;
  flex-direction: column;
  width: 280px;  /* 生本設定変更 */
  height: 100%;
  align-items: center;
  gap: 10px;
  position: relative;
  background-color: var(--color-action-secondary);
}

.fix_learning_style_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  height: 80px;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
}

.fix_learning_style_chat_img {
  position: absolute;
  width: 123px;
  height: 80px;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_img_1.png') no-repeat center/cover;
}

.fix_learning_style_chat_img_2 {
  position: absolute;
  width: 123px;
  height: 80px;
  top: 0;
  left: 0;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/learning_style_img_2.png') no-repeat center/cover;
}

.fix_learning_style_chat_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_learning_style_chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  font-style: var(--action-medium-font-style);
}

.fix_learning_style_chat_text_2 {
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textmain);
  font-size: 11px;
  line-height: var(--action-caption-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--action-caption-letter-spacing);
  font-style: var(--action-caption-font-style);
}

.fix_learning_style_pic_div {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 4px;
  position: absolute;
  top: 10px;
  left: 47px;
  background-color: #e81829;
  border-radius: 16px;
}

.fix_learning_style_pic_text {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--white);
  font-size: 10px;
  letter-spacing: 0.40px;
  line-height: 13px;
  position: relative;
  width: fit-content;
  margin-top: -1px;
  text-align: center;
  white-space: nowrap;
}

.fix_learning_style_input {
  display: none;
}

.fix_learning_style_label {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 277px;
	gap: 12px;
	padding: 8px 6px;
	position: relative;
	background-color: var(--white);
	border-radius: 30px;
	border: 2px solid;
	border-color: var(--button-secondary);
	cursor: pointer;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_learning_style_input:checked + .fix_learning_style_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_learning_style_input:checked + .fix_learning_style_label .fix_learning_style_chat_text {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_learning_style_input:checked + .fix_learning_style_label .fix_learning_style_chat_text_2 {
  color: #F5F5F5;
}

.fix_learning_style_view {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 19px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* 申し込み内容の情報修正 受講用タブレット */
.fix_tablet_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_tablet_input {
  display: none;
}

.fix_tablet_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_tablet_label_2 {
  display: flex;
  height: 79px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_tablet_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_tablet_input:checked + .fix_tablet_label_2 {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_tablet_input:checked + .fix_tablet_label_2 .fix_tablet_text {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_tablet_input:checked + .fix_tablet_label_2 .tablet_sub_text {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_tablet_input:checked + .fix_tablet_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_tablet_input:checked + .fix_tablet_label .fix_tablet_text {
  color: #FFFFFF;
}

.fix_tablet_sub_text_frame {
  flex-direction: column;
  position: relative;
  align-self: stretch;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: transparent;
  font-size: var(--action-caption-font-size);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-style: var(--action-caption-font-style);
}

.fix_tablet_sub_text_red {
  font-weight: var(--action-caption-font-weight);
  color: #fc244f;
  font-family: var(--action-caption-font-family);
  font-style: var(--action-caption-font-style);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
}

.fix_tablet_sub_text {
  font-family: var(--action-caption-font-family);
  color: #181b35;
  font-style: var(--action-caption-font-style);
  font-weight: var(--action-caption-font-weight);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
}

.fix_tablet_view {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 19px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* 申し込み内容の情報修正 チャレンジパッドサポートサービス */
.fix_tablet_suport_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  position: relative;
}

.fix_tablet_suport_chat {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.fix_tablet_suport_chat_box {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.fix_tablet_suport_chat_div {
  align-items: flex-start;
  gap: 7px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.fix_tablet_suport_input {
  display: none;
}

.fix_tablet_suport_label {
  display: flex;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.fix_tablet_suport_text {
  flex: 1;
  margin-top: -2.00px;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_tablet_suport_input:checked + .fix_tablet_suport_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_tablet_suport_input:checked + .fix_tablet_suport_label .fix_tablet_suport_text {
  color: #FFFFFF;
}

.fix_tablet_suport_view {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 19px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* 申し込み内容の情報修正 お支払い方法 */
.fix_payment_chat_box {
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_payment_chat_label_frame {
  display: flex;
  flex-direction: column;
  width: 280px;
  align-items: flex-start;
  gap: 10px;
  padding: 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 32px;
}

.fix_payment_chat_price_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payment_chat_discount_frame {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 3px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-stlike-red-10);
  border-radius: 8px;
}

.fix_payment_chat_discount_text_frame_1 {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 10px;
  text-align: right;
  line-height: 13px;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_chat_discount_text_1 {
  color: #7e7e7e;
}

.fix_payment_chat_discount_text_2 {
  color: #fc244f;
}

.fix_payment_chat_discount_text_frame_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 16px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_chat_discount_text_3 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 16px;
  letter-spacing: 0;
}

.fix_payment_chat_discount_text_4 {
  font-size: 10px;
}

.fix_payment_chat_price_text_frame_1 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payment_chat_price_text_frame_2 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.fix_payment_chat_price_text_1 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textsub);
  font-size: 10px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_chat_price_text_frame_3 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_payment_chat_price_text_frame_4 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  flex: 0 0 auto;
}

.fix_payment_chat_price_text_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  white-space: nowrap;
  position: relative;
  margin-top: -1.00px;
  letter-spacing: 0;
}

.fix_payment_chat_price_text_3 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  text-decoration: line-through;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_chat_price_text_frame_5 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 23px;
  text-align: right;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_chat_price_text_4 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 23px;
  letter-spacing: 0;
}

.fix_payment_chat_price_text_5 {
  font-size: 14px;
}

.fix_payment_label {
  display: flex;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.fix_payment_label_text {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.fix_payment_chat_price_text_frame_6 {
  position: relative;
  width: 89px;
  height: 12px;
}

.fix_payment_chat_price_text_frame_7 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 23px;
  text-align: right;
  letter-spacing: 0;
  line-height: normal;
}

.fix_payment_chat_price_text_6 {
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-weight: 400;
  color: #181b35;
  font-size: 23px;
  letter-spacing: 0;
}

.fix_payment_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_payment_input:checked + .fix_payment_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_payment_input:checked + .fix_payment_label .fix_payment_label_text {
  color: #FFFFFF;
}

/* 申し込み内容の情報修正 有料オプション */
.fix_option_chat_box {
  flex-wrap: wrap;
  width: 100%;
  align-items: center;
  gap: 10px 16px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.fix_option_input {
  display: none;
}

.fix_option_label {
  display: flex;
  flex-direction: column;
  width: 132px;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_option_input:checked + .fix_option_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_option_input:checked + .fix_option_label .fix_option_text {
  color: #FFFFFF;
}

.fix_option_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 1.31;
}

.fix_option_text_frame {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_option_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  font-style: var(--action-medium-font-style);
}

.fix_option_sub_text {
  position: relative;
  align-self: stretch;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textsub);
  font-size: var(--action-caption-font-size);
  text-align: center;
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-style: var(--action-caption-font-style);
}

.fix_option_img_1 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_1.png') no-repeat center/cover;
}

.fix_option_img_2 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_2.png') no-repeat center/cover;
}

.fix_option_img_3 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_3.png') no-repeat center/cover;
}

.fix_option_img_4 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_4.png') no-repeat center/cover;
}

.fix_option_img_5 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_5.png') no-repeat center/cover;
}

.fix_option_img_6 {
  position: absolute;
  width: 120px;
  height: 91px;
  top: 0;
  left: 0;
  background: #FFFFFF url('../img/option_6.png') no-repeat center/cover;
}

/* 申し込み内容の情報修正 こどもちゃれんじほっぷENGLISHのお支払い方法 */
.fix_payment_english_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  gap: 19px;
}

.fix_payment_english_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 0px 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_payment_english_chat_select_box {
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 10px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.fix_payment_english_chat_label_frame {
  display: flex;
  flex-direction: column;
  width: 280px;
  align-items: flex-start;
  gap: 10px;
  padding: 8px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 32px;
}

.fix_payment_english_chat_price_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payment_english_chat_discount_frame {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 3px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-stlike-red-10);
  border-radius: 8px;
}

.fix_payment_english_chat_discount_text_frame_1 {
  flex: 1;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 10px;
  text-align: right;
  line-height: 13px;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_english_chat_discount_text_1 {
  color: #7e7e7e;
}

.fix_payment_english_chat_discount_text_2 {
  color: #fc244f;
}

.fix_payment_english_chat_discount_text_frame_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 16px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_english_chat_discount_text_3 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 16px;
  letter-spacing: 0;
}

.fix_payment_english_chat_discount_text_4 {
  font-size: 10px;
}

.fix_payment_english_chat_price_text_frame_1 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_payment_english_chat_price_text_frame_2 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.fix_payment_english_chat_price_text_1 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textsub);
  font-size: 10px;
  text-align: right;
  line-height: normal;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_english_chat_price_text_frame_3 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_payment_english_chat_price_text_frame_4 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  flex: 0 0 auto;
}

.fix_payment_english_chat_price_text_2 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  white-space: nowrap;
  position: relative;
  margin-top: -1.00px;
  letter-spacing: 0;
}

.fix_payment_english_chat_price_text_3 {
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 10px;
  text-align: right;
  line-height: 13.0px;
  text-decoration: line-through;
  white-space: nowrap;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_english_chat_price_text_frame_5 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 23px;
  text-align: right;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
}

.fix_payment_english_chat_price_text_4 {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #fc244f;
  font-size: 23px;
  letter-spacing: 0;
}

.fix_payment_english_chat_price_text_5 {
  font-size: 14px;
}

.fix_payment_english_label {
  display: flex;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
}

.fix_payment_english_label_text {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.fix_payment_english_label_text_small {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.fix_payment_english_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_payment_english_input:checked + .fix_payment_english_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_payment_english_input:checked + .fix_payment_english_label .fix_payment_english_label_text {
  color: #FFFFFF;
}

.fix_payment_english_input:checked + .fix_payment_english_label .fix_payment_english_label_text_small {
  color: #FFFFFF;
}

/* 申し込み内容の情報修正 My First English Radioのカバー色 */
.fix_radio_select_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  gap: 19px;
}

.fix_radio_select_chat_box {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 10px 10px;
  padding: 0px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.fix_radio_select_label {
  display: flex;
  flex-direction: column;
  width: 131px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.fix_radio_select_label.err{
  border: 4px solid;
  border-color: var(--error);
}

.fix_radio_select_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 1.31;
}

.fix_radio_select_img_1 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/radio_green.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.fix_radio_select_img_2 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/radio_yellow.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.fix_radio_select_img_3 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/radio_orang.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.fix_radio_select_text_frame {
  align-items: center;
  gap: 2px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.fix_radio_select_text {
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.fix_radio_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_radio_select_input:checked + .fix_radio_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_radio_select_input:checked + .fix_radio_select_label .fix_radio_select_text {
  color: #FFFFFF;
}

/* 申し込み内容の情報修正 思考力ぐんぐん */
.fix_thinking_ability_chat_box {
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 7px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.fix_thinking_ability_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_thinking_ability_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

.fix_thinking_ability_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_thinking_ability_input:checked + .fix_thinking_ability_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_thinking_ability_input:checked + .fix_thinking_ability_label .fix_thinking_ability_text {
  color: #FFFFFF;
}

.fix_thinking_ability_view {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 19px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* 申し込み内容の情報修正 教材の色 */
.fix_clock_select_chat_box {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: center;
  gap: 10px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.fix_clock_select_label {
  display: flex;
  flex-direction: column;
  width: 131px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.fix_clock_select_chat_item {
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 1.31;
}

.fix_clock_select_img_1 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/clock_blue.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.fix_clock_select_img_2 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/clock_pink.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.fix_clock_select_img_3 {
  width: 119px;
  height: 89px;
  background: #FFFFFF url('../img/clock_sky.png') no-repeat center/cover;
  background-size: 100% 100%;
}

.fix_clock_select_text_frame {
  align-items: center;
  gap: 2px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.fix_clock_select_text {
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.fix_clock_select_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_clock_select_input:checked + .fix_clock_select_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_clock_select_input:checked + .fix_clock_select_label .fix_clock_select_text {
  color: #FFFFFF;
}
.fix_clock_select_view {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 19px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}
/*-------------------------------------------*/

/* 紹介者の情報修正 */
/*-------------------------------------------*/
.fix_referrer {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-start;
  position: relative;
}

.fix_referrer_chat {
  display: flex;
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  flex: 0 0 auto;
}

.fix_referrer_chat-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.fix_referrer_div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

.fix_referrer_text-wrapper {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_referrer_view-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_referrer_view {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 19px;
  padding: 15px 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_referrer_view_frame {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  gap: 19px;
  position: relative;
  flex: 0 0 auto;
}

.fix_referrer_thumnail-toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.fix_referrer_thumnail-toggle_frame {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  position: relative;
  flex: 0 0 auto;
  margin-top: -6.00px;
  background-color: var(--bg-main);
  border-radius: 24px;
  border: 3px solid;
  border-color: var(--bg-main);
}

.fix_referrer_select {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 16px;
  position: relative;
  flex: 0 0 auto;
  margin-top: -3.00px;
  margin-left: -3.00px;
  background-color: var(--button-primary);
  border-radius: 28px;
  border: 1px solid;
  border-color: var(--b-primary);
}

.fix_referrer_text-wrapper-3 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: #ffffff;
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.fix_referrer_div-wrapper {
  display: inline-flex;
  justify-content: center;
  padding: 12px 16px;
  flex: 0 0 auto;
  margin-top: -3.00px;
  align-items: center;
  gap: 10px;
  position: relative;
  border-radius: 28px;
}

.fix_referrer_text-wrapper-4 {
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.fix_referrer_div-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_referrer_div-3 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  flex: 0 0 auto;
}

.fix_referrer_select-2 {
  display: flex;
  width: 193px;
  height: 56px;
  padding: 0px 20px;
  background-color: var(--white);
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  gap: 10px;
  position: relative;
  border-radius: 28px;
}

.fix_referrer_select-2.err {
  border: 4px solid;
  border-color: var(--error);
}

.fix_referrer_text-wrapper-6 {
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  font-size: var(--title-04-16-r-font-size);
  line-height: var(--title-04-16-r-line-height);
  position: relative;
  letter-spacing: var(--title-04-16-r-letter-spacing);
  font-style: var(--title-04-16-r-font-style);
}

.fix_referrer_div-4 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_referrer_text-wrapper-7 {
  position: relative;
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--color-font-black3a3a3a);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.fix_referrer_text-wrapper-8 {
  flex: 1;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--textmain);
  font-size: var(--action-base-font-size);
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_referrer_div-5 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_referrer_input {
  display: none;
}

.fix_referrer_select-3 {
  display: flex;
  justify-content: center;
  padding: 4px 8px;
  flex: 1;
  flex-grow: 1;
  align-items: center;
  gap: 10px;
  position: relative;
  border-radius: 28px;
}

.fix_referrer_frame-25 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_referrer_text-wrapper-11 {
  flex: 1;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_referrer_frame-15 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_referrer_text-wrapper-10 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.fix_referrer_text-wrapper-12 {
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

/* 紹介者の情報修正 ごきょうだい情報 */
.fix_family_info_radio_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_radio_input {
  display: none;
}

.fix_family_info_radio_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_family_info_radio_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_family_info_radio_input:checked + .fix_family_info_radio_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_family_info_radio_input:checked + .fix_family_info_radio_label .fix_family_info_radio_text {
  color: #FFFFFF;
}

.fix_family_info_box {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 19px;
  align-items: center;
  position: relative;
}

/* 紹介者の情報修正 ごきょうだい情報 性別 */
.fix_family_info_frame {
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_view {
  gap: 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.fix_family_info_div-wrapper {
  width: 78px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_family_info_div-wrapper.err{
  border: 4px solid;
  border-color: var(--error);
}

.fix_family_info_div {
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_family_info_text-wrapper-2 {
  width: fit-content;
  margin-top: -2.00px;
  margin-left: -1.00px;
  margin-right: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_family_info_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_family_info_input:checked + .fix_family_info_div-wrapper {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_family_info_input:checked + .fix_family_info_div-wrapper .fix_family_info_div {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_family_info_input:checked + .fix_family_info_div-wrapper .fix_family_info_text-wrapper-2 {
  color: #FFFFFF;
}

/* 紹介者の情報修正 ごきょうだい情報 お名前（漢字）・フリガナ */
.fix_family_info_frame-2 {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_frame-4 {
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

/* 紹介者の情報修正 ごきょうだい情報 生年月日 */
.fix_family_info_frame-wrapper {
  flex-direction: column;
  gap: 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_frame-6 {
  align-items: center;
  gap: 8px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_select-3 {
  width: 95px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
  display: flex;
  align-items: center;
  position: relative;
}

/* 紹介者の情報修正 ごきょうだい情報（追加） */
.fix_family_info_add_radio_chat_frame{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_add_radio_input {
  display: none;
}

.fix_family_info_add_radio_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}

.fix_family_info_add_radio_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_family_info_add_radio_input:checked + .fix_family_info_add_radio_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_family_info_add_radio_input:checked + .fix_family_info_add_radio_label .fix_family_info_add_radio_text {
  color: #FFFFFF;
}

.fix_family_info_add_box {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 19px;
  align-items: center;
  position: relative;
}

/* 紹介者の情報修正 ごきょうだい情報（追加） 性別 */
.fix_family_info_add_frame {
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_add_view {
  gap: 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.fix_family_info_add_div {
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_family_info_add_text-wrapper-2 {
  width: fit-content;
  margin-top: -2.00px;
  margin-left: -1.00px;
  margin-right: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  position: relative;
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.fix_family_info_add_input {
  display: none;
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.fix_family_info_add_input:checked + .fix_family_info_div-wrapper {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_family_info_add_input:checked + .fix_family_info_div-wrapper .fix_family_info_add_div {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.fix_family_info_add_input:checked + .fix_family_info_div-wrapper .fix_family_info_add_text-wrapper-2 {
  color: #FFFFFF;
}

/* 紹介者の情報修正 ごきょうだい情報（追加） お名前（漢字）・フリガナ */
.fix_family_info_add_frame-2 {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_add_frame-4 {
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_add_select-2 {
  width: 137.5px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
  display: flex;
  align-items: center;
  position: relative;
}

/* 紹介者の情報修正 ごきょうだい情報（追加） 生年月日 */
.fix_family_info_add_frame-wrapper {
  flex-direction: column;
  gap: 10px;
  display: flex;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_add_frame-6 {
  align-items: center;
  gap: 8px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.fix_family_info_add_select-3 {
  width: 95px;
  height: 56px;
  padding: 0px 10px 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
  display: flex;
  align-items: center;
  position: relative;
}
/*-------------------------------------------*/

.address_second_selector_2 {
  display: flex;
  width: 266px;
  height: 56px;
  align-items: center;
  gap: 4px;
  padding: 0px 20px;
  position: relative;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.address_second_selector_2.err {
  border: 4px solid;
  border-color: var(--error);
}

.confirm-element {
  display: flex;
  flex-direction: column;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.confirm-element .chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  flex: 0 0 auto;
  display: flex;
  position: relative;
}

.confirm-element .thumnail {
  position: relative;
  width: 44px;
  height: 44px;
}

.confirm-frame {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  position: relative;
}

.confirm-div-wrapper {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
}

.confirm-element .text-wrapper {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}

.confirm-element .div {
  flex-direction: column;
  width: 262px;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 7px 8px 12px;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
}

.confirm-element .div-2 {
  gap: 4px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.confirm-frame-2 {
  align-items: flex-start;
  justify-content: space-between;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  position: relative;
}

.confirm-frame-3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}

.confirm-frame-4 {
  margin-left: auto;
}

.confirm-element .text-wrapper-2 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--textmain);
  font-size: var(--action-base-font-size);
  line-height: var(--action-base-line-height);
  /*white-space: nowrap;*/
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.confirm-element .text-wrapper-3 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--button-primary);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  white-space: nowrap;
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.confirm-div-3 {
  align-self: stretch;
  font-family: var(--chat-base-font-family);
  font-weight: var( --textfield-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.confirm-view {
  gap: 10px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.confirm-element .span {
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: #181b35;
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}

.main .span {
  display: block;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: #323442;
  font-size: 26px;
  letter-spacing: 0;
  line-height: 20px;
}
.confirm-element .text-wrapper-4 {
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  font-style: var(--chat-base-font-style);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-size: var(--chat-base-font-size);
}

.confirm-element .p {
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 14px;
  line-height: 18.2px;
  position: relative;
  letter-spacing: 0;
}

.confirm-element .fix_discount_text {
  font-weight: var(--chat-base-font-weight);
  color: #fc244f;
  font-family: var(--chat-base-font-family);
  font-style: var(--chat-base-font-style);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-size: var(--chat-base-font-size);
}

.confirm-text-wrapper-6 {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.confirm-element-2 {
  align-self: stretch;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: transparent;
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.confirm-text-wrapper-7 {
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  color: var(--textsub);
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}

.confirm-text-element-3 {
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: transparent;
  font-size: 16px;
  line-height: 16px;
  position: relative;
  letter-spacing: 0;
}

.confirm-text-wrapper-8 {
  color: #181b35;
  line-height: var(--action-base-line-height);
  font-family: var(--action-base-font-family);
  font-style: var(--action-base-font-style);
  font-weight: var(--action-base-font-weight);
  letter-spacing: var(--action-base-letter-spacing);
  font-size: var(--action-base-font-size);
}

.confirm-text-wrapper-9 {
  color: #e81829;
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  font-family: var(--chat-base-font-family);
  font-style: var(--chat-base-font-style);
  font-weight: var(--chat-base-font-weight);
  letter-spacing: var(--chat-base-letter-spacing);
}

.confirm_kingaku_main_text {
  color: #181B35;
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  font-family: var(--chat-base-font-family);
  font-style: var(--chat-base-font-style);
  font-weight: var(--chat-base-font-weight);
  letter-spacing: var(--chat-base-letter-spacing);
}

.confirm-text-wrapper-10 {
  color: var(--text_main, #181B35);
  font-feature-settings: 'palt' on;

  /* action_base */
  font-family: var(--chat-base-font-family);
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 120%; /* 19.2px */
}

.confirm-text-wrapper-11 {
  color: var(--text_sub, #7E7E7E);
  font-feature-settings: 'palt' on;

  /* caption */
  font-family: var(--chat-base-font-family);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%; /* 15.6px */
}

.confirm_area .frame-3 {
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  position: relative;
}

.confirm_area .chat-button {
  width: 300px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.confirm_area .select {
  width: 230px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.text-wrapper-10 {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.confirm-element .element-4 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.confirm-element .text-wrapper-11 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.confirm-element .accordion {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0px 0px 0px 40px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.confirm-element .text-wrapper-12 {
  position: relative;
  flex: 1;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  font-style: var(--action-medium-font-style);
}

.confirm-element .container {
  display: flex;
  flex-direction: column;
  width: 300px;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--color-gradient-bg-blue-start);
  border-radius: 32px;
}

.confirm-element .polygon {
  position: absolute;
  width: 10px;
  height: 10px;
  top: 28px;
  left: 274px;
}

.confirm-element .select-2 {
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
}

.confirm-element .div-4 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.confirm-element .text-wrapper-13 {
  font-weight: 700;
}

.confirm-element .text-wrapper-14 {
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  font-size: 12px;
}

.confirm-element .div-5 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 14px;
  letter-spacing: 0;
  line-height: normal;
}

.confirm-element .text-wrapper-15 {
  font-weight: 700;
  color: #181b35;
}

.confirm-element .text-wrapper-16 {
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  color: #181b35;
  font-size: 12px;
}

.confirm-element .text-wrapper-17 {
  font-family: "Hiragino Kaku Gothic Pro-Regular", Helvetica;
  color: #2351ff;
  font-size: 12px;
}

.confirm-element .text-wrapper-18 {
  font-weight: 700;
  color: #181b35;
  font-size: 12px;
}

.confirm-element .cv {
  display: flex;
  flex-direction: column;
  width: 343px;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.confirm-element .chat-wrapper {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  position: relative;
}

.confirm-element .text-wrapper-19 {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}

.confirm-element .button-submit-wrapper {
  width: 296px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.confirm-element .button-submit {
  display: flex;
  max-width: 310px;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--action);
  border-radius: var(--common-radius-button-1000);
}

.confirm-element .text-wrapper-20 {
  position: relative;
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  font-size: var(--action-primary-m-font-size);
  letter-spacing: var(--action-primary-m-letter-spacing);
  line-height: var(--action-primary-m-line-height);
  white-space: nowrap;
  font-style: var(--action-primary-m-font-style);
}

.confirm_input {
  display: none;
}

.confirm_area .text-wrapper-10 {
  position: relative;
  width: fit-content;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-style: var(--action-base-font-style);
}

.confirm_sub_text_red {
  color: var(--action_kocha, #E81829);
  font-feature-settings: 'palt' on;

  /* chat_base */
  font-family: var(--font-family);
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%; /* 18.2px */
}

.chat_frame {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  display: flex;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.warning {
  padding: 0px 8px 0px 15px;
}
.credit_alert_frame {
  display: none;
  position: relative;
  width: 300px;
}

.warning_text-wrapper {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  color: var(--error);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
  /* 擬似要素が基準となるように設定 */
  position: relative; 
  /* アイコン分の左側の余白を確保 */
  padding-left: 20px; 
}
.credit_alert_text-wrapper {
  width: fit-content;
  margin-top: -1.00px;
  font-family: "Noto Sans JP", Helvetica;
  font-weight: 700;
  color: var(--error);
  font-size: 13px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
  /* 擬似要素が基準となるように設定 */
  position: relative; 
  /* アイコン分の左側の余白を確保 */
  padding-left: 20px; 
}

.alart_text-wrapper {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--font-family);
  font-weight: 700;
  color: var(--error);
  font-size: 12px;
  line-height: normal;
  position: relative;
  letter-spacing: 0;
  /* 擬似要素が基準となるように設定 */
  position: relative; 
  /* アイコン分の左側の余白を確保 */
  padding-left: 20px; 
}

.warning_text-wrapper::before {
  /* 擬似要素としてアイコンを表示するために必須 */
  content: ""; 
  
  /* アイコンの表示設定 */
  display: inline-block;
  width: 14px; /* アイコンの幅 */
  height: 14px; /* アイコンの高さ */
  
  /* アイコン画像の指定 */
  background-image: url('../img/ng.png');
  background-size: contain; /* サイズに合わせて画像を調整 */
  background-repeat: no-repeat;
  
  /* アイコンをテキストの左側に配置 */
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%); /* 縦方向の中央寄せ */
}

.alart_text-wrapper::before {
  /* 擬似要素としてアイコンを表示するために必須 */
  content: ""; 
  display: block;

  /* アイコンの表示設定 */
  display: inline-block;
  width: 14px; /* アイコンの幅 */
  height: 14px; /* アイコンの高さ */
  
  /* アイコン画像の指定 */
  background-image: url('../img/ng.png');
  background-size: contain; /* サイズに合わせて画像を調整 */
  background-repeat: no-repeat;
  
  /* アイコンをテキストの左側に配置 */
  position: absolute;
  top: 1px;
  left: 1px;
}

/* アイコンを常に非表示にするクラス */
.hide-icon::before {
  /* アイコンが描画されないようにする */
  display: none !important; 
}

.next_button_label.disabled_button  {
  background-color: var(--placeholder);
}

.signup_button_label.disabled_button  {
  background-color: var(--placeholder);
}

.update_button_label.disabled_button  {
  background-color: var(--placeholder);
}

.referrer_button_label.disabled_button  {
  background-color: var(--placeholder);
}

.survey_button_label.disabled_button  {
  background-color: var(--placeholder);
}

.pass_input_field {
  display: flex;
  width: 280px;
  height: 56px;
  align-self: stretch;
  background-color: var(--white);
  border-radius: 28px;
  border: none;
  border-color: var(--color-function-primary-inverted);
  align-items: center;
  position: relative;
}

.password-wrapper.err {
  border: 4px solid;
  border-color: var(--error);
}

.accordion_text {
  width: 100%;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  color: var(--button-primary);
  font-size: var(--action-medium-font-size);
  line-height: var(--action-medium-line-height);
  position: relative;
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
  list-style: none;
  cursor: pointer;
}

.accordion_text_sub {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
}
.accordion_text_sub_underline {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--textmain);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
  text-decoration-line: underline;
}
.accordion_bold_text_sub {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
}
.accordion_red_text_sub {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--action);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
}
.accordion_red_bold_text_sub {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--action);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
}
.accordion_red_text_sub_underline {
  position: relative;
  align-self: stretch;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--action);
  font-size: 12px;
  letter-spacing: 0;
  line-height: normal;
  text-decoration-line: underline;
}

ul.custom-dot {
  list-style: none; /* デフォルトのマーカーを消す */
}

ul.custom-dot li::before {
  content: "・";
  margin-right: 0.5em;
}

.confirm_moushikomi_item_div {
  display: flex;
}

input[type="text"] {
  font-size: 16px;
}

/*--------------------------------------------*/
.apply_div {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
}

.apply_frame {
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}

.apply_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.apply_chat_frame {
  gap: 5px;
  padding: 0px 0px 12px;
  flex: 1;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}

.apply_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.apply_text {
  align-items: center;
  justify-content: center;
  align-self: stretch;
  margin-top: -1.00px;
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  position: relative;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  font-style: var(--chat-base-font-style);
}

.tokusho_text {
  align-items: center;
  justify-content: center;
  align-self: stretch;
  margin-top: -1.00px;
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  position: relative;
  font-family: var(--chat-base-font-family);
  font-weight: 400;
  font-style: var(--chat-base-font-style);
}

.apply_chat_frame .text-wrapper-2 {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--textmain);
  font-size: var(--action-base-font-size);
  line-height: var(--action-base-line-height);
  position: relative;
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}
.apply_button_box {
  display: flex;
  width: 296px;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.apply_button_submit {
  display: flex;
  max-width: 310px;
  height: 59px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0px var(--responsive-left-right-20-20-block-m) 0px
    var(--responsive-left-right-20-20-block-m);
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--action);
  border-radius: var(--common-radius-button-1000);
  border: none;
}

.apply_button_text {
  width: fit-content;
  color: #ffffff;
  font-size: var(--action-primary-m-font-size);
  letter-spacing: var(--action-primary-m-letter-spacing);
  line-height: var(--action-primary-m-line-height);
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  font-style: var(--action-primary-m-font-style);
}

/*-----------------------------------------------------------------*/

.confirm_button_uncheck {
  display: flex;
  width: 230px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;

  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-family: var(--action-base-font-family);
  font-style: var(--action-base-font-style);
}

.confirm_button_check {
  display: flex;
  width: 230px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  position: relative;
  background-color: var(--button-primary);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-primary);
  cursor: pointer;

  font-weight: var(--action-base-font-weight);
  color: var(--white);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-family: var(--action-base-font-family);
  font-style: var(--action-base-font-style);
}

.confirm-chat-button-wrapper {
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  position: relative;
}

.confirm-chat-button {
  border: none;
  flex: 0 0 auto;
  display: flex;
  width: 300px;
  align-items: flex-start;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  position: relative;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

/* 利用規約のテキストフレーム */
/*-------------------------------------------*/
.important_accordion {
  flex-direction: column;
  position: relative;
  width: 100%;
}

.important_accordion_text {
  width: 100%;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--button-primary);
  font-size: var(--action-caption-font-size);
  line-height: var(--action-caption-line-height);
  position: relative;
  letter-spacing: var(--action-caption-letter-spacing);
  font-style: var(--action-caption-font-style);
  list-style: none;
  cursor: pointer;
}
.important_accordion_text_underline {
  width: 100%;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--button-primary);
  font-size: var(--action-caption-font-size);
  line-height: var(--action-caption-line-height);
  position: relative;
  letter-spacing: var(--action-caption-letter-spacing);
  font-style: var(--action-caption-font-style);
  list-style: none;
  cursor: pointer;
  text-decoration-line: underline;
}

.important_frame {
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  gap:15px;
}

.important_text_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.important_text_6 {
  /*color: var(--action, #FC244F);*/
  font-feature-settings: 'palt' on;

  /* chat_base */
  font-family: var(--font-family);
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.important_text_7 {
  font-family: var(--action-medium-font-family);
  font-weight: 700;
  color: #181b35;
  font-size: 13px;
}

.important_text_title {
  font-family: var(--font-family);
  font-weight: 700;
  color: #181b35;
  font-size: 12px;
  font-style: normal;
  line-height: normal;
}
.important_sub_text {
  font-family: var(--font-family);
  font-weight: 400;
  color: #181b35;
  font-size: 12px;
  font-style: normal;
}

.important_text_7_accordion {
  font-family: var(--font-family);
  font-style: var(--action-caption-font-style);
  font-weight: 700;
  color: var(--b-primary, #3A50F5);
  font-size: 13px;
  list-style: none;
  text-decoration-line: underline;
  cursor: pointer;
}

.important_text_underline {
  font-family: var(--font-family);
  font-weight: 700;
  color: var(--b-primary);
  font-size: 12px;
  text-decoration-line: underline;
}

.important_text_underline_num {
  font-family: var(--font-family);
  font-weight: 700;
  color: var(--textmain);
  font-size: 12px;
  text-decoration-line: underline;
  text-decoration-color: var(--b-primary);
}

.important_text_7_underline {
  font-family: var(--action-medium-font-family);
  font-weight: 700;
  color: #181b35;
  font-size: 13px;
  text-decoration-line: underline;
}

.important_text_7_underline_blue{
  color: var(--Buttton-Primary, #3A50F5);
  font-feature-settings: 'palt' on;
  font-family: var(--font-family);
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.important_text_8 {
  font-family: var(--action-medium-font-family);
  color: #181b35;
  font-size: 12px;
}

.important_text_8_red {
  font-family: var(--action-medium-font-family);
  color: var(--action, #FC244F);
  font-size: 12px;
}

.important_text_9 {
  font-family: var(--action-medium-font-family);
  color: #2351ff;
  font-size: 12px;
}

.important_text_10 {
  font-family: var(--action-medium-font-family);
  font-weight: 700;
  color: #181b35;
  font-size: 13px;
}

.important_text_11 {
  font-family: var(--action-medium-font-family);
  color: #181b35;
  font-size: 13px;
}
/*-------------------------------------------*/

/* 利用規約のテキストフレーム */
/*-------------------------------------------*/
.link_text {
  color: #394ff5;
  font-family: var(--chat-base-font-family);
  font-size: var(--caption-font-size);
  text-decoration: underline;
}
.option_confirm_title_text {
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: 13px;
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}
.option_confirm_text {
  font-family: var(--chat-base-font-family);
  font-size: var(--caption-font-size);
  color: #181b35;
}
.option_confirm_text_red {
  font-family: var(--chat-base-font-family);
  font-size: var(--caption-font-size);
  color: var(--action);
}
/*-------------------------------------------*/

/*教材の色選択
/*-------------------------------------------*/
.select_color_material_img_1 {
  position: absolute;
  width: 123px;
  height: 80px;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/select_color_material_img_1.png') no-repeat center/cover;
}

.select_color_material_img_2 {
  position: absolute;
  width: 123px;
  height: 80px;
  aspect-ratio: 1.31;
  background: #FFFFFF url('../img/select_color_material_img_2.png') no-repeat center/cover;
}

.select_color_material_input {
  display: none;
}

.radio_label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  cursor: pointer;
}

.label_text_main {
  font-weight: var(--action-medium-font-weight);
  color: var(--textmain);
  text-align: center;
  line-height: var(--action-medium-line-height);
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--action-medium-font-family);
  font-size: var(--action-medium-font-size);
  letter-spacing: var(--action-medium-letter-spacing);
  font-style: var(--action-medium-font-style);
}

.label_text_sub {
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textsub);
  font-size: var(--action-caption-font-size);
  text-align: center;
  line-height: var(--action-caption-line-height);
  position: relative;
  align-self: stretch;
  letter-spacing: var(--action-caption-letter-spacing);
  font-style: var(--action-caption-font-style);
}

/* チェックされたラジオボタンに対応するラベルを強調 */
.select_color_material_input:checked + .radio_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.select_color_material_input:checked + .radio_label .label_text_main {
  color: #FFFFFF;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.select_color_material_input:checked + .radio_label .label_text_sub {
  color: #F5F5F5;
}
/*-------------------------------------------*/

/* 割引コード入力 */
/*-------------------------------------------*/
.discount_code_bc_chat_text_frame {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 14px;
}

.discount_code_bc_chat_text {
  font-weight: 700;
  color: #181b35;
}

.discount_code_bc_chat_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}

.discount_code_chat-button-wrapper {
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}

.discount_code_chat-button {
  display: flex;
  flex-direction: column;
  width: 296px;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.fix_discount_code_chat-button {
  flex-direction: column;
  width: 296px;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  position: relative;
  flex: 0 0 auto;
  background-color: var(--chat-bg);
  border-radius: 32px 0px 32px 32px;
}

.discount_code_text-btn {
  display: flex;
  height: 59px;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.discount_code_select {
  display: flex;
  height: 56px;
  width: 190px;
  align-items: center;
  gap: 10px;
  padding: 0px 20px;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
}

.discount_code_text_2 {
  position: relative;
  flex: 1;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  font-size: var(--title-04-16-r-font-size);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  line-height: var(--title-04-16-r-line-height);
}

.discount_code_select-2 {
  width: 78px;
  align-items: center;
  gap: 26px;
  padding: 20px 16px;
  align-self: stretch;
  background-color: var(--button-primary);
  border-radius: 30px;
  border: 1px solid;
  border-color: var(--b-primary);
  display: flex;
  justify-content: center;
  position: relative;
}

.discount_code_text_3 {
  margin-top: -1.00px;
  color: #ffffff;
  font-size: var(--action-base-font-size);
  text-align: center;
  line-height: var(--action-base-line-height);
  white-space: nowrap;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  letter-spacing: var(--action-base-letter-spacing);
  font-style: var(--action-base-font-style);
}

.discount_code_select-3 {
  flex-direction: column;
  height: 56px;
  align-items: flex-start;
  padding: 0px 20px;
  flex: 1;
  flex-grow: 1;
  background-color: var(--white);
  border-radius: 28px;
  border: 2px solid;
  border-color: var(--color-function-primary-inverted);
  display: flex;
  justify-content: center;
  position: relative;
}

.discount_code_text_4 {
  font-size: var(--action-caption-font-size);
  line-height: var(--action-caption-line-height);
  position: relative;
  align-self: stretch;
  font-family: var(--action-caption-font-family);
  font-weight: var(--action-caption-font-weight);
  color: var(--textmain);
  letter-spacing: var(--action-caption-letter-spacing);
  font-style: var(--action-caption-font-style);
}

.discount_code_text_5 {
  font-size: var(--title-04-16-r-font-size);
  line-height: var(--title-04-16-r-line-height);
  position: relative;
  align-self: stretch;
  font-family: var(--title-04-16-r-font-family);
  font-weight: var(--title-04-16-r-font-weight);
  color: var(--textmain);
  letter-spacing: var(--title-04-16-r-letter-spacing);
  font-style: var(--title-04-16-r-font-style);
}

.discount_code_button_frame {
  width: 77px;
  align-items: center;
  gap: 26px;
  padding: 12px 16px;
  align-self: stretch;
  border-radius: 28px;
  display: flex;
  justify-content: center;
  position: relative;
}
/*-------------------------------------------*/

/*汎用用スタイル
/*-------------------------------------------*/
.main_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
}

.main_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.bc_chat_frame {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.bc_chat_boxframe {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.bc_chat_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
}

/*テキスト用メイン設定*/
.chat_text_setting {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  align-self: stretch;
  font-family: var(--font-family);
}

/*テキスト用メイン設定*/
.chat_sub_text_setting {
  display: flex;
  align-items: center;
  position: relative;
  align-self: stretch;
  font-family: var(--font-family);
}

/*チャットテキスト（メイン）*/
.chat_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}
/*チャットテキスト（サブ）*/
.chat_text_sub {
  font-family: var(--action-caption-font-family);
  color: #181b35;
  font-style: var(--action-caption-font-style);
  font-weight: var(--action-caption-font-weight);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
}

.chat_text_sub2 {
  color: var(--text_main, #181B35);
  font-feature-settings: 'palt' on;
  /* action_caption */
  font-family: var(--action-caption-font-family);
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
}

.chat_text_sub_underline {
  /* caption */
  font-family: var(--action-caption-font-family);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.chat_text_gray {
  color: #7e7e7e;
  font-family: var(--action-caption-font-family);
  font-style: var(--action-caption-font-style);
  font-weight: var(--action-caption-font-weight);
  letter-spacing: var(--action-caption-letter-spacing);
  line-height: var(--action-caption-line-height);
  font-size: var(--action-caption-font-size);
}

/*チャットテキスト（青色）*/
.chat_text_blue {
  color: var(--button-primary);
  font-weight: var(--chat-base-font-weight);
  font-size: var(--chat-base-font-size);
  font-style: var(--chat-base-font-style);
}

/*buttonタグの背景色、枠色を削除*/
.button_frame_none {
  background: none;
  border: none;
}


/*青チャットフレーム*/
.bulue_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  gap: 8px;
  position: relative;
  align-self: stretch;
  flex: 0 0 auto;
}

/*青チャット吹き出し*/
.bulue_chat_box {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 10px;
  padding: 18px 10px;
  position: relative;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
}

.direct_debit_text {
  align-self: stretch;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--textmain);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}

.button_frame {
  display: flex;
  height: 41px;
  width: 120px;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  border: 2px solid;
  position: relative;
  font-family: var(--action-medium-font-family);
  font-weight: var(--action-medium-font-weight);
  font-size: var(--action-medium-font-size);
  text-align: center;
  letter-spacing: var(--action-medium-letter-spacing);
  line-height: var(--action-medium-line-height);
  white-space: nowrap;
  font-style: var(--action-medium-font-style);
  cursor: pointer;
}

.button_color_uncheck{
  background-color: var(--white);
  border-color: var(--button-secondary);
  color: var(--textmain);
}

.button_color_check{
  background-color: var(--button-primary);
  border-color: var(--button-secondary);
  color: var(--white);
}

[data-keyword][data-active-hide].is-active {
  display: none;
}

.address-loading, .school-search-loading {
  font-family: "Noto Sans JP", Helvetica;
  position: absolute;
  /*top: calc(100% + 10px);*/
  left: -10px;
  right: -10px;
  display: flex;
  align-items: center;
  height: 100px;
  padding: 10px 10px 10px 10px;
  background-color: rgba(255, 231, 171, 0.8);
  border-radius: 4px;
  font-weight: bold;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}
.address-loading .loading,
.school-search-loading .loading
 {
  position: relative;
  font-size: 4px;
}
.address-loading.is-active,
.school-search-loading.is-active
 {
  opacity: 1;
  transition-duration: 0.2s;
}




.loading:before {
  content: "";
  padding-left: 12em;
}
.loading:after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - 1em);
  left: 5em;
  text-indent: -9999em;
  animation: load5 1.1s infinite ease;
  transform: translateZ(0);
}

@keyframes load5 {
  0%, 100% {
    box-shadow: 0em -2.6em 0em 0em #ff0000, 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.5), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.7);
  }
  12.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.7), 1.8em -1.8em 0 0em #ff0000, 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.5);
  }
  25% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.5), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.7), 2.5em 0em 0 0em #ff0000, 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  37.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.5), 2.5em 0em 0 0em rgba(255, 0, 0, 0.7), 1.75em 1.75em 0 0em #ff0000, 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  50% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.5), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.7), 0em 2.5em 0 0em #ff0000, -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  62.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.5), 0em 2.5em 0 0em rgba(255, 0, 0, 0.7), -1.8em 1.8em 0 0em #ff0000, -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  75% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.5), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.7), -2.6em 0em 0 0em #ff0000, -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  87.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.5), -2.6em 0em 0 0em rgba(255, 0, 0, 0.7), -1.8em -1.8em 0 0em #ff0000;
  }
}

.accordion_frame {
  position: relative;
  width: 100%;
}

.chat_box {
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}

.tablet_label .button_div {
  position: relative;
  flex: 1;
  margin-top: -18.50px;
  margin-bottom: -14.50px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 400;
  color: var(--color-ink-text-100);
  font-size: 16px;
  text-align: center;
  letter-spacing: 0;
  line-height: 16px;
}

/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.tablet_input:checked + .tablet_label .button_div .chat_text {
  color: #FFFFFF;
}

.tablet_input:checked + .tablet_label .button_div .chat_text_sub {
  color: #FFFFFF;
}

.chat_link_text {
  color: #394ff5;
  text-decoration: underline;
}

.learning_style_select {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: auto;
  gap: 10px;
  align-items: center;
  position: relative;
  background-color: var(--color-action-secondary);
}

.color_select_text_red {
  color: var(--action, #FC244F);
  font-feature-settings: 'palt' on;

  /* caption */
  font-family: var(--action-base-font-family);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%; /* 15.6px */
}

/* 現在はユーザーに表示しない（後々表示できるように残す） */
.hide-for-now {
    display: none !important;
}

a.inlinelnk {
  padding: 2px 0 2px 0;
  background: none;
  text-decoration: underline;
}

.confirm_accordion_button {
  color: black;
  text-decoration-line: underline;
}

.normal_chat_div {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  padding: 0 0 40px;
}

.thanks_program_display_flex {
  display: none;
}

.kyoudai_title {
  color: var(--action);
  font-size: 16px;
  font-family: Noto Sans JP;
  font-weight: 700;
  line-height: 19.20px;
  word-wrap: break-word;
}

.kyoudai_text_black {
  font-weight: 700;
  color: #181b35;
  font-family: var(--font-family);
  font-size: 14px;
}

.kyoudai_text_blue_link {
  font-weight: 700;
  color: rgba(58, 80, 245, 1);
  font-family: var(--font-family);
  font-size: 14px;
  cursor: pointer;
}

.kyoudai_text_red {
  font-weight: 700;
  color: rgba(240, 19, 43, 1);
  font-family: var(--font-family);
  font-size: 14px;
}

.kyoudai_display_flex_div{
  display: none;
}

.kyoudai_frame{
  flex-direction: column;
}

.tablet_pick_frame {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  align-self: stretch;
}
.tablet_pick_div {
  display: flex;
  width: 142px;
  padding: 4px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 16px;
  background: #E81829;
}
.tablet_pick_text {
  color: var(--white, #FFF);
  text-align: center;
  font-family: var(--font-family);
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%; /* 13px */
  letter-spacing: 0.4px;
}

.normal_container {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
  width: 100%;
}
.select_nchat_box {
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
  gap: 8px 8px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}
.normal_select_text {
  position: relative;
  align-self: stretch;
  margin-top: -1.00px;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 18.2px;
}
.normal_select_sub_text {
  font-family: var(--caption-font-family);
  color: #7e7e7e;
  font-size: var(--caption-font-size);
  line-height: var(--caption-line-height);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  letter-spacing: var(--caption-letter-spacing);
}
.normal_select_button_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}
.normal_select_button_sub_text {
  position: relative;
  flex: 1;
  margin-top: -2.00px;
  font-family: var(--action-base-font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--color-ink-text-100);
  font-size: 10px;
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}

/* デフォルトのラジオボタンを非表示に */
.normal_ability_input {
  display: none;
}
.normal_label {
  display: flex;
  height: 59px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}
.normal_label_2 {
  display: flex;
  height: 120px;
  justify-content: center;
  gap: 10px;
  padding: 20px 16px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 30px;
  border: 2px solid;
  border-color: var(--button-secondary);
  align-items: center;
  position: relative;
  cursor: pointer;
}
/* チェックされたラジオボタンに対応するラベルを強調 */
.normal_ability_input:checked + .normal_label {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}
/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.normal_ability_input:checked + .normal_label .normal_select_button_text {
  color: #FFFFFF;
}
/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.normal_ability_input:checked + .normal_label .normal_select_button_sub_text {
  color: #FFFFFF;
}
/* チェックされたラジオボタンに対応するラベルを強調 */
.normal_ability_input:checked + .normal_label_2 {
  background-color: var(--button-primary);
  border-color: var(--b-primary);
}
/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.normal_ability_input:checked + .normal_label_2 .normal_select_button_text {
  color: #FFFFFF;
}
/* チェックされたラジオボタンに対応するラベル内の文字を強調 */
.normal_ability_input:checked + .normal_label_2 .normal_select_button_sub_text {
  color: #FFFFFF;
}

/* 学年選択画面 */
/*-------------------------------------------*/
.course_select_type1 {
  box-shadow: 0px 0px 20px #00000033;
  display: flex;
  flex-direction: column;
  height: 135px;
  min-width: 136px;
  max-width: 136px;
  align-items: center;
  gap: 8px;
  padding: 12px 0px 0px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--bg-main);
  border-radius: 16px;
  cursor: pointer;
  border: none;
}
.course_text_frame_type1 {
  display: flex;
  width: 114px;
  height: 29px;
  align-items: center;
  justify-content: center;
  padding: 5px 0px 8px 0px;
  position: relative;
  text-align: center;
  flex-direction: column;
}
.course_text1_type1 {
  color: #333442;
  font-size: 14px;
  font-family: var(--font-family);
  font-weight: 700;
  line-height: 18.20px;
  word-wrap: break-word;
}
.course_text2_type1 {
  color: #333442;
  font-size: 16px;
  font-family: var(--font-family);
  font-weight: 700;
  line-height: 19.20px;
  word-wrap: break-word;
}
.course_text3_type1 {
  color: #333442;
  font-size: 20px;
  font-family: var(--font-family);
  font-weight: 700;
  line-height: 19.20px;
  word-wrap: break-word;
}
.course_img_frame1_type1 {
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  position: relative;
}
.course_img_frame2_type1 {
  position: relative;
  align-self: stretch;
  width: 100%;
  height: 80px;
  border-radius: 24px;
  overflow: hidden;
}
.course_img_type1 {
  align-items: center;
  width: 136px;
  aspect-ratio: 1.72;
  position: relative;
  height: 133.65px;
  object-fit: contain;
  object-position: 0% top;
}

.course_select_type2 {
  box-shadow: 0px 0px 24px #00000033;
  display: flex;
  height: 100px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0px 16px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: var(--bg-main);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 0px 20px #00000033;
  cursor: pointer;
  border: none;
}
.course_text_frame_type2 {
  display: inline-flex;
  align-items: center;
  position: relative;
  flex: 0 0 auto;
  margin-left: -10.00px;
}
.course_text_p_frame_type2 {
  margin-top: -1.00px;
  font-size: 26px;
  line-height: 33.8px;
  position: relative;
  align-items: center;
  justify-content: center;
  width: fit-content;
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-weight: 700;
  color: var(--textmain);
  text-align: center;
  letter-spacing: 0;
}
.course_text1_type2 {
  display: block;
  font-family: var(--font-family);
  font-weight: 700;
  color: #323442;
  font-size: 26px;
  letter-spacing: 0;
  line-height: 20px;
}
.course_text2_type2 {
  font-family: var(--font-family);
  display: block;
  font-size: 17px;
  line-height: 25px;
}
.course_img_type2 {
  position: relative;
  width: 144px;
  height: 100px;
  margin-right: -10.00px;
}

.course_select_text_frame {
  display: flex;
  width: 114px;
  height: 29px;
  align-items: center;
  justify-content: center;
  padding: 5px 0px 8px 0px;
  position: relative;
  text-align: center;
  flex-direction: column;
}
.course_main_frame {
  display: flex;
  flex-direction: column;
  width: 272px;
  height: 100%;
  align-items: center;
  gap: 8px;
  position: relative;
}
.course_select_type3 {
  box-shadow: 0px 0px 24px #00000033;
  display: flex;
  width: 270px;
  height: 100px;
  padding: 0 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  background-color: var(--bg-main);
  border-radius: 16px;
  cursor: pointer;
  border: none;
}
.course_text_frame_type3 {
  display: flex;
  align-items: center;
}
.course_text1_type3 {
  font-family: var(--font-family);
  color: var(--textmain);
  text-align: center;
  font-feature-settings: 'palt' on;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 120%; /* 19.2px */
}
.course_img_type3 {
  position: relative;
  height: 100px;
  margin-right: -16px;
  border-radius: 16px;
}
.course_sub_frame {
  display: flex;
  width: 270px;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}
.course_select_type4 {
  box-shadow: 0px 0px 24px #00000033;
  display: flex;
  flex-direction: column;
  height: 100%;
  align-items: center;
  gap: 8px;
  padding: 12px 0px 0px;
  position: relative;
  flex: 1;
  flex-grow: 1;
  background-color: var(--bg-main);
  border-radius: 16px;
  cursor: pointer;
  border: none;
}
.course_text_frame_type4 {
  position: relative;
  width: 85px;
  height: 29px;
  margin-left: -0.17px;
  margin-right: -0.17px;
}
.course_text1_type4 {
  top: 5px;
  left: calc(50.00% - 21px);
  height: 19px;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  position: absolute;
  font-family: var(--font-family);
  font-weight: var(--action-base-font-weight);
  color: var(--textmain);
  font-size: var(--action-base-font-size);
  text-align: center;
  letter-spacing: var(--action-base-letter-spacing);
  line-height: var(--action-base-line-height);
  font-style: var(--action-base-font-style);
}
.course_img_type4 {
  position: relative;
  align-self: stretch;
  width: 100%;
  aspect-ratio: 1.02;
}
.course_img_type5 {
  position: relative;
  align-self: stretch;
  width: 100%;
}
/*-------------------------------------------*/

/* タブレット */
/*-------------------------------------------*/
.challenge_pad_img {
  position: static;
  width: 280px;
  height: 165px;
  top: 0;
  left: 0;
  background: url('../img/color/challengepad_img.png') no-repeat center/cover;
}
/*-------------------------------------------*/
.normal_div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  position: relative;
}
.normal_bc_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  padding: 0px 16px 0px 0px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}
.normal_bc_err_chat {
  width: 330px;
  align-items: flex-start;
  gap: 8px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}
.normal_bc_chat_frame {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 0px 0px 12px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}
.normal_bc_chat_box {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 8px;
  align-self: stretch;
  width: 100%;
  background-color: var(--white);
  border-radius: 0px 16px 16px 16px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}
.normal_chat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}
.normal_chat_box {
  flex-direction: column;
  width: 300px;
  align-items: center;
  gap: 16px;
  padding: 18px 10px;
  background-color: var(--color-action-secondary);
  border-radius: 32px 0px 32px 32px;
  display: flex;
  position: relative;
  flex: 0 0 auto;
}
.normal_chatoutside_text_frame {
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  align-items: center;
}
.normal_chatoutside_text_frame_1 {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: center;
}
.normal_chatoutside_text {
  font-family: var(--caption-font-family);
  font-weight: var(--caption-font-weight);
  font-size: 11px;
  line-height: var(--caption-line-height);
  position: relative;
  align-self: stretch;
  color: var(--textmain);
  letter-spacing: var(--caption-letter-spacing);
  font-style: var(--caption-font-style);
}
/* デフォルトのボタンを非表示に */
.normal_next_button_input {
  display: none;
}
.normal_next_button_frame {
  flex-direction: column;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}
.normal_next_button_text {
  width: fit-content;
  font-family: var(--action-primary-m-font-family);
  font-weight: var(--action-primary-m-font-weight);
  color: #ffffff;
  letter-spacing: var(--action-primary-m-letter-spacing);
  white-space: nowrap;
  position: relative;
  font-size: var(--action-primary-m-font-size);
  line-height: var(--action-primary-m-line-height);
  font-style: var(--action-primary-m-font-style);
}

.normal_fix_div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}
.normal_fix_title_text_frame {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 10px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}
.normal_fix_title_text {
  width: fit-content;
  margin-top: -1.00px;
  font-family: var(--chat-base-font-family);
  font-weight: var(--chat-base-font-weight);
  color: var(--color-font-black3a3a3a);
  font-size: var(--chat-base-font-size);
  line-height: var(--chat-base-line-height);
  /* white-space: nowrap; */
  position: relative;
  letter-spacing: var(--chat-base-letter-spacing);
  font-style: var(--chat-base-font-style);
}
.normal_fix_text_frame {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: center;
}

.block_style1{
  margin-top: 10px;
  padding-left: 40px;
}
.block_style2{
  margin-top: 10px;
}
.block_style3{
  margin-bottom: 10px;
}
.block_style4{
  margin-top: 10px;
  width: 100%;
}
.block_inner_accordion_title1 {
  font-family: var(--font-family);
  font-style: var(--action-caption-font-style);
  font-weight: 700;
  color: var(--b-primary, #3A50F5);
  font-size: 12px;
  list-style: none;
  text-decoration-line: underline;
  cursor: pointer;
}
.block_inner_accordion_text1 {
  font-family: var(--action-medium-font-family);
  color: #181b35;
  font-size: 12px;
}

.comming_soon_text_underline {
  color: var(--text_main, #181B35);
  font-feature-settings: 'palt' on;
  font-family: "Noto Sans JP", Helvetica;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.comming_soon_text_bule_underline {
  color: var(--button-primary);
  font-feature-settings: 'palt' on;
  font-family: "Noto Sans JP", Helvetica;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.confirm_element_span_text {
  font-family: var(--font-family);
  font-weight: var(--amedium-font-weight);
  color: #181b35;
  font-size: var(--chat-base-font-size);
  letter-spacing: var(--chat-base-letter-spacing);
  line-height: var(--chat-base-line-height);
  font-style: var(--chat-base-font-style);
}


/* 共通部品 */
/*-------------------------------------------*/
/* 初期状態：非表示 */
.initial_display_none {
  display: none;
  /* display: flex; */
}
.tablet_display_flex {
  display: none;
}
.initial_display_flex_referrer {
  display: none;
}
.initial_display_none_webbank {
  display: none;
}
/*-------------------------------------------*/