@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css");
.form_container .input_box.icon_off .label_area::before {
  display: none;
}

.label_area .field_with_errors {
  display: inline-block;
}

.radio .field_with_errors {
  display: inline-block;
}

.error_message {
  margin: 0 0 30px 0;
}

.cat_tag.time_category {
  width: inherit;
}

.article_contents table th {
  width: 200px;
}

.alert {
  margin: 0 0 30px 0;
  padding: 16px 16px 16px 52px;
  border-radius: 8px;
  background: url(/assets/site_fronts/common/ico_alert_white-e757ebfca52732e9d6fc9a83204d8a6f07984607e734e1fa8098c3a96d31d8cd.svg) no-repeat 16px 16px #35BC7E;
  color: #FFFFFF;
  font-size: 14px;
  line-height: 1.4;
}

.hidden_div {
  display: none;
}

.form_container .input_area .error_txt {
  display: block;
}

.site_header .header_inner .logo_carerepo_img {
  display: block;
}

.form_container .input_box .input_area .static_area {
  padding: 8px 0 0 0;
}

.input_flex {
  display: flex;
  flex-wrap: wrap;
}
.input_flex label.check {
  flex-basis: 50%;
}
.input_flex label.check:last-child {
  margin: 11px 0 14px 0;
}

.form_container label.check .outside {
  top: 12px;
}

.modaal-container {
  width: initial;
}

.l-exception {
  padding-top: 56px;
}

.button.btn_brand.non-active {
  background-color: #DDDDDD;
  cursor: default;
  color: #999999 !important;
  pointer-events: none;
}

.c-modal__terms-area {
  display: block !important;
}
.c-modal__terms-link {
  text-align: center;
}

.c-message-notice {
  padding: 16px 16px 16px 52px;
  border-radius: 8px;
  background: url(/assets/site_fronts/common/ico_alert-6a4fa1410aececd0b4aaaf86c4dcb54fa67b7a11fc42df8b441d9ae6964d670a.svg) no-repeat 16px 16px #FFEAEA;
  color: #F0332B;
  font-size: 14px;
  line-height: 1.4;
}

#btn-processing {
  display: none;
  justify-content: center;
  align-items: center;
}

#circleG {
  width: 3rem;
  margin: 0;
}

.circleG {
  background-color: rgb(233, 71, 56);
  float: left;
  height: 0.5rem;
  margin-left: 0.5rem;
  width: 0.5rem;
  animation-name: bounce_circleG;
  -o-animation-name: bounce_circleG;
  -ms-animation-name: bounce_circleG;
  -webkit-animation-name: bounce_circleG;
  -moz-animation-name: bounce_circleG;
  animation-duration: 1.2675s;
  -o-animation-duration: 1.2675s;
  -ms-animation-duration: 1.2675s;
  -webkit-animation-duration: 1.2675s;
  -moz-animation-duration: 1.2675s;
  animation-iteration-count: infinite;
  -o-animation-iteration-count: infinite;
  -ms-animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
  -moz-animation-iteration-count: infinite;
  animation-direction: normal;
  -o-animation-direction: normal;
  -ms-animation-direction: normal;
  -webkit-animation-direction: normal;
  -moz-animation-direction: normal;
  border-radius: 0.5rem;
  -o-border-radius: 0.5rem;
  -ms-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
}

#circleG_1 {
  animation-delay: -0.7585s;
  -o-animation-delay: -0.7585s;
  -ms-animation-delay: -0.7585s;
  -webkit-animation-delay: -0.7585s;
  -moz-animation-delay: -0.7585s;
}

#circleG_2 {
  animation-delay: -0.5955s;
  -o-animation-delay: -0.5955s;
  -ms-animation-delay: -0.5955s;
  -webkit-animation-delay: -0.5955s;
  -moz-animation-delay: -0.5955s;
}

#circleG_3 {
  animation-delay: -0.2495s;
  -o-animation-delay: -0.2495s;
  -ms-animation-delay: -0.2495s;
  -webkit-animation-delay: -0.2495s;
  -moz-animation-delay: -0.2495s;
}

@keyframes bounce_circleG {
  50% {
    background-color: rgb(255, 255, 255);
  }
}
@-o-keyframes bounce_circleG {
  50% {
    background-color: rgb(255, 255, 255);
  }
}
@-ms-keyframes bounce_circleG {
  50% {
    background-color: rgb(255, 255, 255);
  }
}
@-webkit-keyframes bounce_circleG {
  50% {
    background-color: rgb(255, 255, 255);
  }
}
@-moz-keyframes bounce_circleG {
  50% {
    background-color: rgb(255, 255, 255);
  }
}
.c-form-file {
  display: flex;
  align-items: center;
  transition: opacity 0.3s;
}
@media (max-width: 768px) {
  .c-form-file {
    display: block;
    width: 90%;
  }
}
.c-form-file__input_area {
  display: flex;
}
.c-form-file:hover {
  opacity: 0.7;
  cursor: pointer;
}
.c-form-file input[type=file] {
  display: none;
}
.c-form-file__btn {
  width: 170px;
  height: 50px;
  display: block;
  padding: 10px;
  background: rgb(225, 228, 232);
  border-radius: 4px;
  text-align: center;
}
@media (max-width: 768px) {
  .c-form-file__btn {
    width: 100%;
  }
}
.c-form-file__btn::before, .c-form-file__btn::after {
  display: none;
}
.c-form-file__select {
  width: 380px;
  display: block;
  padding: 0 0 0 10px;
  line-height: 1;
}
@media (max-width: 768px) {
  .c-form-file__select {
    padding: 10px 0 0 0;
    width: 100%;
  }
}
.c-form-file__delete {
  font-size: 1.5rem;
  padding: 0 0 0 10px;
}

.c-karuta-heading {
  text-align: center;
}

.c-karuta-explanation {
  text-align: center;
}

.c-karuta-provider {
  text-align: center;
}

.c-karuta-content {
  display: flex;
  justify-content: center;
  gap: 10px;
}

.c-karuta-card__image {
  height: 600px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .c-karuta-card__image {
    height: inherit;
  }
}
@media (max-width: 768px) {
  .c-karuta-card__wrapper {
    width: 45%;
  }
}

.member-only-block {
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
  padding: 48px 16px;
  border: 6px solid #cccccc;
  border-radius: 4px;
  background-color: #f7f7f7;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  container-type: inline-size;
  resize: horizontal;
}

.member-only-block .message {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  font-weight: bold;
  font-size: 20px;
  width: 100%;
}

.member-only-block .message p {
  margin-bottom: 0;
  line-height: 1em;
}

.member-only-block .buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  width: 400px;
}

.member-only-block .buttons a {
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  text-decoration: none;
  font-size: 16px;
  border-radius: 400px;
  padding: 8px 16px;
  cursor: pointer;
}

.member-only-block .buttons .button-registration {
  background-image: linear-gradient(to right, #ff6d0e, #ff9401);
  box-shadow: 0 3px 0 1px #cd5d17;
  color: #ffffff;
  width: 100%;
  border-radius: 400px;
  padding: 8px 16px;
  position: relative;
}

.member-only-block .buttons .button-registration:hover {
  opacity: 0.9;
}

.member-only-block .buttons .button-registration .icon-arrow {
  position: absolute;
  right: 16px;
}

.member-only-block .buttons .button-login {
  background-color: #ffffff;
  width: 180px;
  color: #0379c4;
  border: 1px solid #0379c4;
}

.member-only-block .buttons .button-login:hover {
  background-color: #E5F3FC;
}

@container (max-width: 400px) {
  .member-only-block .message p {
    font-size: 14px;
  }
  .member-only-block .buttons {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .p-custom-form__confirm-btn {
    display: flex;
    gap: 1rem;
    justify-content: center;
  }
}

.article_contents .p-custom-form-input-area {
  margin-bottom: 2rem;
}
.article_contents .p-custom-form-input-area__title {
  font-size: 1.2rem;
  margin: 2rem 0 0.5rem;
}
.article_contents .p-custom-form-input-area__title:first-child {
  margin: 0.5rem 0 0.5rem;
}
@media screen and (min-width: 768px) {
  .p-password__notice-list {
    padding: 0 16rem;
  }
}
.p-password__notice-text {
  color: #f44336;
  font-size: 1.1rem;
}

.p-registration__invitation {
  display: block !important;
}
.p-registration__invitation-form {
  display: flex;
  justify-content: center;
  margin: 0.5rem 0 0.5rem 3.5rem;
}
.p-registration__invitation-form--first {
  margin-left: -10px;
}
.p-registration__invitation-input {
  width: 300px !important;
}
.p-registration__invitation-remove {
  width: 4rem;
  margin-left: 0.2rem;
}
.p-registration__search-input {
  display: flex;
}
.p-registration__search-input .wp-block-button__link {
  margin-top: 2.3rem;
  min-width: 100px;
  padding: 10px;
}
@media screen and (min-width: 768px) {
  .p-registration__search-input .wp-block-button__link {
    margin-top: inherit;
  }
}
.p-registration__search-btn {
  padding-left: 10px;
}
@media screen and (min-width: 768px) {
  .p-registration__confirm-btn {
    display: flex;
    gap: 1rem;
    justify-content: center;
  }
}

@media screen and (min-width: 768px) {
  .p-withdrawal__confirm-btn {
    display: flex;
    gap: 1rem;
    justify-content: center;
  }
}

.p-logout__desc {
  font-size: 14px;
  margin: 0 auto 70px auto;
  max-width: 400px;
}
@media screen and (min-width: 768px) {
  .p-logout__desc {
    font-size: inherit;
  }
}
.p-logout__desc-text {
  text-align: left;
}

.u-disclosure-hide {
  display: none !important;
}

.u-visually-hidden {
  display: none !important;
}

.regstrations .form_progress_bar ul .number .step_num {
  margin: 0 auto 10px auto;
}

.password_change_text {
  margin-top: 10px;
  margin-bottom: -16px;
}

.toggle_password {
  position: relative;
}
.toggle_password input[type=password] {
  padding: 0 50px 0 16px;
}
.toggle_password .toggle_eye {
  position: absolute;
  top: 1px;
  right: 1px;
}
.toggle_password .toggle_eye button {
  cursor: pointer;
  border-radius: 4px;
  background-color: #fff;
  width: 48px;
  height: 42px;
  border: none;
}
.toggle_password .eye-slash {
  background-image: url(/assets/site_fronts/common/eye-slash-regular-29b14fa1c9f56cd8403d5deeb1185db4cefbd33b05fac1dafbd89782774205ec.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: center center;
}
.toggle_password .eye {
  background-image: url(/assets/site_fronts/common/eye-regular-e36df1ad4261b3f260393e9b09ee5b8aa9213ba03c69000809718ea4f7570099.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: center center;
}

.questionnaire {
  overflow-wrap: break-word;
}

@media (max-width: 768px) {
  .pc_account_menu {
    display: none;
  }
  .sp_account_menu {
    margin-bottom: 50px;
  }
}
@media (min-width: 768px) {
  .sp_account_menu {
    display: none;
  }
}
.horizon_area {
  display: flex;
}
.horizon_area .error {
  width: 100%;
  height: 44px;
  padding: 0 16px;
  border: 1px solid #F0332B;
  background-color: #FFEAEA;
  border-radius: 5px;
}

.registration_city_input_area input[type=text] {
  max-width: 30%;
}

@media (max-width: 768px) {
  .registration_city_input_area input[type=text] {
    max-width: 50%;
  }
}
.premium_change_btn {
  margin-bottom: -24px;
}

.premium_change_area {
  margin-bottom: 20px;
}

@media (max-width: 768px) {
  .pc_text {
    display: none;
  }
}
@media (min-width: 768px) {
  .phone_text {
    display: none;
  }
}
.premium_banner_area {
  display: flex;
}

.premium_banner_left {
  margin-right: 15px;
}

@media (max-width: 768px) {
  .premium_banner_area {
    display: block;
  }
  .premium_banner_left {
    margin: initial;
  }
  .premium_banner_left {
    margin-bottom: 15px;
  }
}
@media (max-width: 960px) {
  .cat_tag.column_category {
    line-height: 12px;
  }
}
.reason-list .reason-item::before {
  content: "";
  position: absolute;
  top: 0;
  background: white;
  height: 100%;
  width: 100vw;
  z-index: 1;
}

.cta_button .login-btn::after {
  content: url(/assets/site_fronts/lp/v2/right-ff3a2281a1a7d45d034eac9d83d2ff141a1aee0a53984a237ce7bedbff1d1406.png);
  position: absolute;
  right: 40px;
  top: 50%;
  transform: translateY(-50%);
}

@media (max-width: 850px) {
  .cta_button .login-btn::after {
    content: url(/assets/site_fronts/lp/v2/right-ff3a2281a1a7d45d034eac9d83d2ff141a1aee0a53984a237ce7bedbff1d1406.png);
    position: absolute;
    right: 40px;
    top: 55%;
    transform: translateY(-50%);
  }
}
.line-cta .login-btn::after {
  content: url(/assets/site_fronts/lp/v2/right_white-d1ff481267a6a158e3e217c9889b754f55f22652cc3a52c6f21d31f3be2cb4af.png);
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}

.floating-cta .login-btn::after {
  content: "";
  display: inline-block;
  background-image: url(/assets/site_fronts/lp/v2/right_white-d1ff481267a6a158e3e217c9889b754f55f22652cc3a52c6f21d31f3be2cb4af.png);
  background-size: contain;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 25px;
  top: 48%;
  transform: translateY(-50%);
}

.account-premium {
  text-align: right;
  padding: 5px;
}

.horizon_radio_area {
  display: inline-block;
  width: 100px;
}

.font-weight-bold {
  font-weight: bold;
}

.column_btn_area {
  display: grid;
  gap: 16px;
  width: fit-content;
  margin: 0 auto;
}
