@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Noto+Sans+JP:wght@400;500;700&display=swap");
body, form *, input, textarea, select, button, table *, th, td, fieldset, legend, option {
  font-family: Lato, "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", "游ゴシック", YuGothic, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, sans-serif;
}

/* z-index_list */
:where(.lp-side, .lp-modal, .lp-popup) *,
:where(.lp-side, .lp-modal, .lp-popup) *::before,
:where(.lp-side, .lp-modal, .lp-popup) *::after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

:where(.lp-side, .lp-modal, .lp-popup) :where(p, ul, li, section) {
  margin: 0;
  padding: 0;
}

:where(.lp-side, .lp-modal, .lp-popup) :where(ul) {
  list-style: none;
}

:where(.lp-side, .lp-modal, .lp-popup) :where(a) {
  color: inherit;
  text-decoration: none;
}

:where(.lp-side, .lp-modal, .lp-popup) :where(button) {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.lp-side {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 312px;
  height: 100vh;
  background: #fff;
  -webkit-box-shadow: 3px 0 10px rgba(80, 48, 48, 0.09);
     -moz-box-shadow: 3px 0 10px rgba(80, 48, 48, 0.09);
          box-shadow: 3px 0 10px rgba(80, 48, 48, 0.09);
  color: #0c0c0c;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0.7px;
  text-align: left;
}

.lp-side__logo {
  -webkit-box-flex: 0;
  -webkit-flex: none;
     -moz-box-flex: 0;
      -ms-flex: none;
          flex: none;
  height: 86px;
  padding: 28px 16px 0;
}

.lp-side__logo a,
.lp-side__logo img {
  display: block;
  width: 188px;
  height: 34px;
}

.lp-side__scroll {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
}

.lp-side__scroll::-webkit-scrollbar {
  display: none;
}

.lp-side__inner {
  padding: 24px 16px 70px;
}

.lp-side__scrollbar {
  position: absolute;
  top: 0;
  right: 4px;
  width: 3px;
  height: 0;
  -webkit-border-radius: 2px;
     -moz-border-radius: 2px;
          border-radius: 2px;
  background: #b2b2b2;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  -moz-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.lp-side__scrollbar.is-active {
  opacity: 1;
  -webkit-transition-duration: 0.1s;
     -moz-transition-duration: 0.1s;
       -o-transition-duration: 0.1s;
          transition-duration: 0.1s;
}

.lp-side__title {
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.64px;
}

.lp-side__error {
  margin: -4px 0 16px;
  color: #f44121;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.7px;
}

.lp-side__error > * + * {
  margin-top: 1px;
}

.lp-side__fields {
  margin-bottom: 16px;
}

.lp-side__field {
  position: relative;
}

.lp-side__field + .lp-side__field {
  margin-top: 16px;
}

.lp-side__field--hidden {
  display: none;
}

.lp-side .lp-side__input {
  display: block;
  width: 100%;
  height: 48px;
  margin: 0;
  padding: 0 15px;
  border: 1px solid #e5e5e5;
  -webkit-border-radius: 8px;
     -moz-border-radius: 8px;
          border-radius: 8px;
  background: #fff;
  color: #0c0c0c;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.64px;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.lp-side .lp-side__input:focus {
  padding: 0 14px;
  border: 2px solid #19bebe;
}

.lp-side .lp-side__input::-webkit-input-placeholder {
  color: #b2b2b2;
  font-weight: 500;
  opacity: 1;
}

.lp-side .lp-side__input::-moz-placeholder {
  color: #b2b2b2;
  font-weight: 500;
  opacity: 1;
}

.lp-side .lp-side__input:-ms-input-placeholder {
  color: #b2b2b2;
  font-weight: 500;
  opacity: 1;
}

.lp-side .lp-side__input::placeholder {
  color: #b2b2b2;
  font-weight: 500;
  opacity: 1;
}

.lp-side .lp-side__input--password {
  padding-right: 52px;
}

.lp-side .lp-side__input--password:focus {
  padding-right: 51px;
}

.lp-side .lp-side__password_show {
  position: absolute;
  top: 14px;
  right: 16px;
  width: 20px;
  height: 20px;
  margin: 0;
  border: 0;
  background: url("/ad/default/assets/img/icon_password_hide.svg") center/20px 20px no-repeat;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.lp-side .lp-side__password_show:checked {
  background-image: url("/ad/default/assets/img/icon_password_show.svg");
}

.lp-side__captcha {
  margin-bottom: 24px;
}

.lp-side__captcha .g-recaptcha {
  margin: 0;
  -webkit-transform-origin: 0 0;
     -moz-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
       -o-transform-origin: 0 0;
          transform-origin: 0 0;
}

.lp-side__captcha--turnstile {
  height: 60px;
}

.lp-side__captcha--turnstile .g-recaptcha {
  -webkit-transform: scale(0.9334);
     -moz-transform: scale(0.9334);
      -ms-transform: scale(0.9334);
       -o-transform: scale(0.9334);
          transform: scale(0.9334);
}

.lp-side__captcha--recaptcha {
  height: 72px;
}

.lp-side__captcha--recaptcha .g-recaptcha {
  -webkit-transform: scale(0.921);
     -moz-transform: scale(0.921);
      -ms-transform: scale(0.921);
       -o-transform: scale(0.921);
          transform: scale(0.921);
}

.lp-side .lp-side__login_button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 48px;
  -webkit-border-radius: 40px;
     -moz-border-radius: 40px;
          border-radius: 40px;
  background: #fa628a;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.8px;
  text-decoration: none;
  cursor: pointer;
}

.lp-side__passkey {
  margin-top: 24px;
}

.lp-side .lp-side__link {
  color: #707c88;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.7px;
  text-decoration: underline;
}

.lp-side .lp-side__link--strong {
  color: #0c0c0c;
}

.lp-side__passkey_note {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2px;
  margin-top: 2px;
  color: #707c88;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.6px;
}

.lp-side__passkey_mark {
  font-size: 14px;
  line-height: 12px;
  letter-spacing: 0.7px;
}

.lp-side__sublinks {
  margin-top: 20px;
}

.lp-side__sublinks li + li {
  margin-top: 8px;
}

.lp-side__register {
  margin-top: 32px;
}

.lp-side__divider {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 24px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0.7px;
  white-space: nowrap;
}

.lp-side__divider::before, .lp-side__divider::after {
  content: "";
  display: block;
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 28px;
     -moz-box-flex: 0;
      -ms-flex: 0 1 28px;
          flex: 0 1 28px;
  height: 1px;
  -webkit-border-radius: 1px;
     -moz-border-radius: 1px;
          border-radius: 1px;
  background: #b2b2b2;
}

.lp-side .lp-side__register_button {
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 48px;
  margin-top: 20px;
  border: 2px solid #fa628a;
  -webkit-border-radius: 40px;
     -moz-border-radius: 40px;
          border-radius: 40px;
  background: rgba(255, 255, 255, 0.8);
  color: #fa628a;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.8px;
}

.lp-side .side_section.menu {
  -webkit-column-gap: 4px;
     -moz-column-gap: 4px;
          column-gap: 4px;
  width: 100%;
  margin: -8px 0 0;
  padding: 0;
}

.lp-side .side_section.menu li {
  width: -webkit-calc((100% - 8px) / 3);
  width: -moz-calc((100% - 8px) / 3);
  width: calc((100% - 8px) / 3);
  margin-right: 0;
}

.lp-side .side_section.menu li.navi_13 {
  width: 100%;
}

.lp-side .side_section.menu a {
  font-size: 12px;
}

.lp-side__app {
  margin-top: 20px;
  padding: 20px 16px;
  -webkit-border-radius: 10px;
     -moz-border-radius: 10px;
          border-radius: 10px;
  background: #f7f7f7;
}

.lp-side__app_data {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 11px;
}

.lp-side__app_icon {
  display: block;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 88px;
  height: 88px;
  margin: -10px;
}

.lp-side__app_text {
  width: 169px;
}

.lp-side__app_title {
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.64px;
}

.lp-side__app_body {
  margin-top: 4px;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.7px;
}

.lp-side .lp-side__app_button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 48px;
  margin-top: 20px;
  border: 2px solid #e5e5e5;
  -webkit-border-radius: 40px;
     -moz-border-radius: 40px;
          border-radius: 40px;
  background: #fff;
  color: #0c0c0c;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 1.12px;
}

.lp-side__notice {
  margin-top: 20px;
  color: #707c88;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.7px;
}

.lp-side__notice li + li {
  margin-top: 4px;
}

.lp-gender_icon {
  display: block;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 30px;
  height: 30px;
  background: center / contain no-repeat;
}

.lp-gender_icon--male {
  background-image: url("/ad/default/assets/img/icon_male.svg");
}

.lp-gender_icon--female {
  background-image: url("/ad/default/assets/img/icon_female.svg");
}

.lp-arrow_icon {
  display: block;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 10px;
  height: 15px;
  background: url("/ad/default/assets/img/icon_arrow_white.svg") center/contain no-repeat;
}

.lp-modal,
.lp-popup {
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 300;
  width: 100%;
  height: 100%;
  color: #0c0c0c;
  text-align: left;
  opacity: 0;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  -o-transition: opacity 0.3s, visibility 0.3s;
  -moz-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}

.lp-modal.is-open,
.lp-popup.is-open {
  visibility: visible;
  opacity: 1;
}

.lp-modal__overlay,
.lp-popup__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}

.lp-modal__content,
.lp-popup__content {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 510px;
  max-height: -webkit-calc(100% - 40px);
  max-height: -moz-calc(100% - 40px);
  max-height: calc(100% - 40px);
  overflow-y: auto;
  background: #fff;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.lp-modal__close,
.lp-popup__close {
  position: absolute;
  top: 24px;
  right: 24px;
}

.lp-modal__close img,
.lp-popup__close img {
  display: block;
  width: 32px;
  height: 32px;
}

.lp-modal__content {
  padding: 52px 32px;
  -webkit-border-radius: 10px;
     -moz-border-radius: 10px;
          border-radius: 10px;
}

.lp-modal__title,
.lp-popup__title {
  color: #000;
  font-size: 28px;
  font-weight: 700;
  line-height: 42px;
  letter-spacing: 1.12px;
  text-align: center;
}

.lp-modal__buttons {
  margin-top: 24px;
}

.lp-modal .lp-modal__button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 338px;
  height: 58px;
  margin: 0 auto;
  -webkit-border-radius: 30px;
     -moz-border-radius: 30px;
          border-radius: 30px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  letter-spacing: 0.468px;
  text-decoration: none;
  -webkit-transition: background 0.2s, color 0.2s;
  -o-transition: background 0.2s, color 0.2s;
  -moz-transition: background 0.2s, color 0.2s;
  transition: background 0.2s, color 0.2s;
}

.lp-modal .lp-modal__button + .lp-modal__button {
  margin-top: 16px;
}

.lp-modal__button_text {
  margin-left: 12px;
}

.lp-modal__notice,
.lp-popup__notice {
  color: #707c88;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.64px;
}

.lp-modal__notice li + li,
.lp-popup__notice li + li {
  margin-top: 4px;
}

.lp-modal__notice {
  margin-top: 24px;
}

.lp-popup__content {
  padding: 52px 24px;
  -webkit-border-radius: 20px;
     -moz-border-radius: 20px;
          border-radius: 20px;
}

.lp-popup__qr {
  width: 300px;
  height: 300px;
  margin: 32px auto 0;
  padding: 8px;
  -webkit-border-radius: 20px;
     -moz-border-radius: 20px;
          border-radius: 20px;
  background: #fff;
  -webkit-box-shadow: 0 0 40px rgba(159, 0, 48, 0.13);
     -moz-box-shadow: 0 0 40px rgba(159, 0, 48, 0.13);
          box-shadow: 0 0 40px rgba(159, 0, 48, 0.13);
}

.lp-popup__qr img {
  display: block;
  width: 284px;
  height: 284px;
}

.lp-popup__web {
  position: relative;
  margin-top: 40px;
  padding-top: 26px;
}

.lp-popup__web::before {
  content: '';
  position: absolute;
  top: 0;
  right: 8px;
  left: 8px;
  height: 2px;
  background: #e5e5e5;
}

.lp-popup__web_title {
  color: #000;
  font-size: 20px;
  font-weight: 700;
  line-height: 40px;
  letter-spacing: 0.8px;
  text-align: center;
}

.lp-popup__buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 12px;
}

.lp-popup .lp-popup__button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 222px;
  height: 54px;
  padding: 0 16px;
  -webkit-border-radius: 50px;
     -moz-border-radius: 50px;
          border-radius: 50px;
  color: #fff;
  text-decoration: none;
  -webkit-transition: background 0.2s, color 0.2s;
  -o-transition: background 0.2s, color 0.2s;
  -moz-transition: background 0.2s, color 0.2s;
  transition: background 0.2s, color 0.2s;
}

.lp-popup .lp-popup__button + .lp-popup__button {
  margin-left: 18px;
}

.lp-popup .lp-popup__button .lp-arrow_icon {
  width: 16px;
  height: 16px;
  margin-left: 2px;
  -moz-background-size: 9.285px 14.857px;
    -o-background-size: 9.285px 14.857px;
       background-size: 9.285px 14.857px;
}

.lp-popup__button_sex {
  margin-left: 4px;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
}

.lp-popup__button_free {
  margin-left: auto;
  font-size: 16px;
  line-height: 20px;
}

.lp-popup__links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 17px;
}

.lp-popup .lp-popup__link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #4c4c4c;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0.64px;
  text-decoration: none;
}

.lp-popup .lp-popup__link::after {
  content: '';
  width: 16px;
  height: 16px;
  margin-left: 4px;
  background: url("/ad/default/assets/img/icon_arrow_gray.svg") center/9.285px 14.857px no-repeat;
}

.lp-popup .lp-popup__link + .lp-popup__link {
  margin-left: 24px;
}

.lp-popup__notice {
  margin-top: 24px;
}

.lp-popup__button--male,
.lp-modal__button--male {
  background: #19bebe;
}

.lp-popup__button--male:hover,
.lp-modal__button--male:hover {
  background: #00938e;
  color: #a4d7d5;
}

.lp-popup__button--male:hover .lp-gender_icon--male,
.lp-modal__button--male:hover .lp-gender_icon--male {
  background-image: url("/ad/default/assets/img/icon_male_hover.svg");
}

.lp-popup__button--male:hover .lp-arrow_icon,
.lp-modal__button--male:hover .lp-arrow_icon {
  background-image: url("/ad/default/assets/img/icon_arrow_male_hover.svg");
}

.lp-popup__button--female,
.lp-modal__button--female {
  background: #fa628a;
}

.lp-popup__button--female:hover,
.lp-modal__button--female:hover {
  background: #e21a57;
  color: #ffcbd9;
}

.lp-popup__button--female:hover .lp-gender_icon--female,
.lp-modal__button--female:hover .lp-gender_icon--female {
  background-image: url("/ad/default/assets/img/icon_female_hover.svg");
}

.lp-popup__button--female:hover .lp-arrow_icon,
.lp-modal__button--female:hover .lp-arrow_icon {
  background-image: url("/ad/default/assets/img/icon_arrow_female_hover.svg");
}

/*# sourceMappingURL=side.css.map */
