@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100;300;400;500;700;900&display=swap");
@font-face {
  font-family: "Formula-E-Title";
  src: url("../font/Formula-E-Title.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
.formula_font {
  font-family: "Formula-E-Title";
}

@font-face {
  font-family: "SCDream3";
  src: url("../font/SCDream3.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "SCDream4";
  src: url("../font/SCDream4.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "SCDream5";
  src: url("../font/SCDream5.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "SCDream6";
  src: url("../font/SCDream6.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "SCDream7";
  src: url("../font/SCDream7.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "esamanru-Light";
  src: url("../font/esamanru-Light.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "esamanru-Medium";
  src: url("../font/esamanru-Medium.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "esamanru-Bold";
  src: url("../font/esamanru-Bold.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
.font_cn {
  font-family: "Noto Sans SC", sans-serif;
}

* {
  font-family: "SCDream4", sans-serif;
  margin: 0;
  padding: 0;
  letter-spacing: -0.8px;
  word-wrap: break-word;
  word-break: keep-all;
  box-sizing: border-box;
  scroll-behavior: smooth;
}

li {
  list-style: none;
}

a {
  text-decoration: none;
  color: #000;
}

input {
  border: 1px solid #ddd;
  padding: 6px 16px 8px;
  outline: none;
  width: 100%;
  height: 48px;
  font-size: 16px;
}

input::-moz-placeholder {
  font-size: 15px;
  color: #999;
  font-family: "SCDream4", sans-serif;
}

input::placeholder {
  font-size: 15px;
  color: #999;
  font-family: "SCDream4", sans-serif;
}

button {
  background-color: transparent;
  border: 0;
  cursor: pointer;
  font-family: "SCDream4", sans-serif;
}

select {
  padding: 0 16px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background: url(../assets/icon_arrow_bottom.svg) no-repeat right 50% #fff;
  background-size: 12px;
  background-position-x: 96%;
}

select::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
}

h1, h2, h3, h4, h5, h6 {
  font-family: "SCDream7";
}

img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}

.font_scd3 {
  font-family: "SCDream3";
}

.font_scd4 {
  font-family: "SCDream4";
}

.font_scd5 {
  font-family: "SCDream5";
}

.font_scd6 {
  font-family: "SCDream6";
}

.font_scd7 {
  font-family: "SCDream7";
}

.font_esamanru_bold {
  font-family: "esamanru-Bold";
}

.font_esamanru_medium {
  font-family: "esamanru-Medium";
}

.font_esamanru_light {
  font-family: "esamanru-Light";
}

.font_light {
  font-weight: 300;
}

.font_medium {
  font-weight: 500;
}

.font_bold {
  font-weight: 700;
}

.font_black {
  font-weight: 900;
}

.font_purple {
  color: #6E4C9F;
}

.text_color_pink {
  color: #DE2F75;
}

.text_color_yellow {
  color: #FA9500;
}

#coming_soon {
  display: none;
  padding: 24px 20px 26px;
  z-index: 999999;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -40%);
  position: fixed;
}
#coming_soon .white_box h1 {
  margin: 0;
  line-height: 40px;
}
#coming_soon .popup_logo {
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
}

@media all and (min-width: 768px) {
  .mo_text {
    display: none;
  }
  #coming_soon {
    max-width: 380px;
    padding: 32px 24px 32px;
  }
  #coming_soon .popup_logo {
    bottom: 8px;
  }
}
.letter_no {
  letter-spacing: -0.2px;
}

.cursor_pointer {
  cursor: pointer;
}

.center_wrap {
  width: 100%;
  max-width: 1280px;
  padding: 0 20px;
  margin: 0 auto;
}

.info_con_text.info_2023 .place_text {
  border-radius: 50px;
  position: relative;
  padding: 4px 22px 4px 7px;
}
.info_con_text.info_2023 .place_text::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
  width: 12px;
  height: 16px;
  background-size: contain;
  display: block;
}
.info_con_text.info_2023 .place_text.place01 {
  background-color: rgba(50, 107, 179, 0.08);
  color: #326BB3;
}
.info_con_text.info_2023 .place_text.place02 {
  background-color: rgba(250, 149, 0, 0.08);
  color: #FA9500;
}
.info_con_text.info_2023 .place_text.place03 {
  background-color: rgba(222, 47, 117, 0.08);
  color: #DE2F75;
}
.info_con_text.info_2023 .place_text.place01::after {
  background: url(../assets/icon_place_blue.svg) no-repeat;
  background-size: contain;
}
.info_con_text.info_2023 .place_text.place02::after {
  background: url(../assets/icon_place_yellow.svg) no-repeat;
  background-size: contain;
}
.info_con_text.info_2023 .place_text.place03::after {
  background: url(../assets/icon_place_pink.svg) no-repeat;
  background-size: contain;
}
.info_con_text.info_2023 .place_text:hover {
  background-color: #fff;
  transition: 0.2s;
}

@media all and (min-width: 768px) {
  .info_con_text.info_2023 .place_text {
    padding: 4px 24px 4px 10px;
  }
  .info_con_text.info_2023 .place_text::after {
    width: 14px;
    height: 18px;
  }
}
@media all and (min-width: 1024px) {
  .info_con_text.info_2023 .place_text {
    padding: 4px 24px 4px 10px;
  }
}
.sub_contents_wrap .bg_wrap {
  padding: 80px 0 120px;
}
.sub_contents_wrap .center_wrap .title_box {
  text-align: center;
  margin-bottom: 40px;
}
.sub_contents_wrap .center_wrap .title_box .title_text {
  font-size: 26px;
}
.sub_contents_wrap .center_wrap .title_box .sub_text {
  font-size: 14px;
  margin-top: 8px;
  display: block;
}
.sub_contents_wrap .center_wrap .title_box .pc_text {
  display: none;
}

@media all and (min-width: 768px) {
  .sub_contents_wrap .bg_wrap {
    padding: 160px 0 200px;
  }
  .sub_contents_wrap .center_wrap .title_box {
    margin-bottom: 60px;
  }
  .sub_contents_wrap .center_wrap .title_box .title_text {
    font-size: 32px;
  }
  .sub_contents_wrap .center_wrap .title_box .sub_text {
    font-size: 16px;
    margin-top: 12px;
  }
  .sub_contents_wrap .center_wrap .title_box .pc_text {
    display: block;
  }
  .sub_contents_wrap .center_wrap .title_box .mo_text {
    display: none;
  }
}
@media all and (min-width: 1024px) {
  .sub_contents_wrap .center_wrap .title_box .title_text {
    font-size: 52px;
  }
  .sub_contents_wrap .center_wrap .title_box .sub_text {
    font-size: 19px;
    margin-top: 20px;
  }
}
.ready_modal_wrap {
  display: none;
  position: fixed;
  z-index: 9999;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.12);
  padding: 40px 40px 72px;
  width: 90%;
}
.ready_modal_wrap .icon_close {
  position: absolute;
  top: 20px;
  right: 20px;
}
.ready_modal_wrap ul {
  text-align: center;
}
.ready_modal_wrap ul li:nth-child(2) {
  font-size: 20px;
  margin: 12px 0 8px;
}
.ready_modal_wrap ul li:last-child {
  font-size: 16px;
  color: #666;
}
.ready_modal_wrap button {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: linear-gradient(left, #D01259, #6E4C9F);
  padding: 10px 0 12px;
  font-size: 18px;
  color: #fff;
}

@media all and (min-width: 768px) {
  input {
    height: 56px;
  }
  select {
    background-position-x: 98%;
  }
  .ready_modal_wrap {
    padding: 40px 60px 72px;
    width: auto;
  }
}
.sub_bg_wrap {
  position: relative;
  width: 100%;
  height: 240px;
  margin-top: 56px;
}
.sub_bg_wrap .sub_page_bg_box {
  background: url(../assets/sub_top_bg01.svg) left no-repeat;
  height: inherit;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.sub_bg_wrap .sub_page_bg_box::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  background: url(../assets/sub_top_bg02.svg) right no-repeat;
  width: 100%;
  height: 100%;
}
.sub_bg_wrap .sub_title_text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sub_page_menu_box {
  background-color: #2D2C2E;
  height: 40px;
  width: 100%;
}
.sub_page_menu_box .sub_menu {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  height: inherit;
}
.sub_page_menu_box .sub_menu li {
  width: 33.33%;
  max-width: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: inherit;
}
.sub_page_menu_box .sub_menu li a {
  color: #666;
  font-size: 14px;
  line-height: 14px;
}
.sub_page_menu_box .sub_menu li.on a {
  color: #fff;
}

@media all and (min-width: 768px) {
  .sub_bg_wrap {
    height: 320px;
    margin-top: 80px;
  }
  .sub_bg_wrap .sub_page_bg_box {
    background: url(../assets/sub_top_bg01_768.svg) left no-repeat;
  }
  .sub_bg_wrap .sub_page_bg_box::before {
    background: url(../assets/sub_top_bg02_768.svg) right no-repeat;
  }
  .sub_bg_wrap .sub_title_text {
    height: 55px;
  }
  .sub_page_menu_box {
    height: 48px;
  }
  .sub_page_menu_box .sub_menu li a {
    font-size: 16px;
    line-height: 16px;
  }
}
@media all and (min-width: 1024px) {
  .sub_bg_wrap .sub_title_text {
    height: 76px;
  }
  .sub_page_menu_box {
    height: 56px;
  }
  .sub_page_menu_box .sub_menu li a {
    font-size: 18px;
    line-height: 18px;
  }
}
@media all and (min-width: 1400px) {
  .sub_bg_wrap .sub_page_bg_box {
    background: url(../assets/sub_top_bg01_1024.svg) left no-repeat;
  }
  .sub_bg_wrap .sub_page_bg_box::before {
    background: url(../assets/sub_top_bg02_1024.svg) right no-repeat;
  }
}
.gray_bg_info_text_box {
  background-color: #F5F5F5;
  border-radius: 8px;
  padding: 20px;
  max-width: 300px;
  margin: 0 auto;
}
.gray_bg_info_text_box li {
  text-align: left;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
}
.gray_bg_info_text_box li span {
  font-size: 16px;
}
.gray_bg_info_text_box li .title_text {
  padding: 1px 9px 3px;
  background-color: #F77E0B;
  border-radius: 20px;
  color: #fff;
  margin-right: 12px;
}
.gray_bg_info_text_box li .img_text_box {
  display: flex;
  align-items: center;
}
.gray_bg_info_text_box li .img_text_box img {
  max-width: 80px;
  margin-right: 8px;
}
.gray_bg_info_text_box li:last-child {
  margin: 0;
}

@media all and (min-width: 768px) {
  .gray_bg_info_text_box {
    padding: 32px 40px;
    max-width: 430px;
  }
  .gray_bg_info_text_box li span {
    font-size: 20px;
  }
  .gray_bg_info_text_box li .title_text {
    padding: 1px 20px 3px;
    margin-right: 20px;
  }
  .gray_bg_info_text_box li .img_text_box img {
    max-width: 100px;
  }
}