header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
}

header.fix {
  position: fixed;
  background-color: white;
  box-shadow: 0px -3px 11px 0px;
}

.logo_wrapper {
  width: 283px;
}

.header_logo {
  width: 238px;
  content: url('/images/landing/aligner_logo_white.svg');
}

.fix .header_logo {
  content: url('/images/landing/aligner_logo.svg');
}

.header_contents {
  /* display: none; */
  position: relative;
  height: 72px;
  padding: 0 45px 0 110px;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;

  margin: 0 auto;
}

.header_container {
  margin: auto 5px;
  height: 50px;
}

.header_logo_wrapper {
  display: block;
}

.app_header_btn {
  display: none;
}

.header_menu_wrapper {
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;

  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  position: absolute;
  right: 0;
  top: 0;

  background-color: #f22525;
  /* padding: 8px 27px 8px 43px; */
  border-bottom-left-radius: 30px;
  width: 426px;
  height: 72px;
  box-sizing: border-box;
}

.header_menu_wrapper.fix {
  background-color: transparent;
}

.middle_menu {
  display: flex;
}

.middle_menu_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  /* max-width: 137px;
  min-width: 92px; */
  height: 72px;
  text-align: center;
  color: #CACBCC;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  padding: 0 8px;
  transition: color 0.3s, background-color 0.4s;
}

.fix .middle_menu_btn.selected {
  color: black;
  font-weight: bold;
}

/* .middle_menu_btn:hover {
  background-color: #f22525;
  color: white;
} */

.middle_menu_btn.selected {
  color: white;
  font-weight: bold;
}

.menu_btn {
  max-width: 178px;
  min-width: 80px;
  width: 178px;
  /* padding: 0 25px; */
  height: 56px;
  line-height: 56px;
  text-align: center;
  color: white;
  cursor: pointer;
}

.header_menu_wrapper.fix > .menu_btn {
  color: #CACBCC;
  font-weight: bold;
}

/* .menu_btn:hover{
    background-color: darkgreen;
} */

.login_link {
  width: 100px;
  height: 50px;
  background-color: darkgray;
  text-align: center;
  line-height: 50px;
  -webkit-transition: background-color 0.35s;
  transition: background-color 0.35s;
}

.login_link:hover {
  background-color: rgb(253, 253, 253);
}

.mobile_header {
  display: none;
}

.menu_icon {
  width: 24px;
  height: 24px;
  margin-left: auto;
  margin-right: 24px;
  background-image: url("/images/landing/hamburger_btn_white.svg");
  cursor: pointer;
}

.fix .menu_icon {
  background-image: url("/images/landing/hamburger_btn.svg");
}

.menu_icon.close {
  background-image: url("/images/landing/close_icon.svg");
  margin: 0;
  margin-right: 16px;
}

/* 모달 창 css */
.header_modal_background {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 30;
  background-color: rgba(0, 0, 0, 0.8);

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.header_modal {
  padding: 10px;
  min-height: 100px;
  min-width: 100px;
  width: fit-content;
  height: fit-content;
}

.side_menu {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: white;
  box-shadow: -5px 0 6px 0 rgba(0, 0, 0, 0.7);
  transition: all ease 0.4s;
  max-width: 450px;
  min-width: 250px;
  background-color: rgba(241, 238, 238, 1);
}

.side_menu.closed {
  right: -100%;
}

.side_menu_block.selected {
  color: #f22525;
}

.side_menu_background {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000000b3;
}

.side_menu_background.closed {
  display: none;
}

.mobile_middle_menu_btn {
  text-align: end;
  font-size: 16px;
  width: 100%;
  height: inherit;
  line-height: 56px;
  padding-right: 16px;
}
.mobile_middle_menu_btn.selected {
  color: #f22525;
}

.side_menu_block {
  height: 56px;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;

  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;

  border-bottom: 1px solid #e8e5e5;
  box-sizing: border-box;

  padding-left: 20px;
  background-color: white;
  cursor: pointer;
}

.side_menu_block:not(:first-child):hover {
  background-color: #e2e2e2;
}

/* 언어선택 모달창 */
.language_modal_container {
  background-color: white;
  width: 422px;
  height: 144px;
  padding: 48px;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-orient: vertical;
  -ms-flex-direction: column;
  flex-direction: column;

  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.language_modal_title {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #242424;
}

.language_item_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;

  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;

  margin-top: 29px;
}

.language_item {
  padding: 16px;
  cursor: pointer;
}

.language_item:hover {
  background-color: #e2e2e2;
}

.language_img {
  width: 80px;
  height: 42px;
  background-size: cover;
}

.language_img.en {
  background-image: url("/images/landing/country_flag_usa.svg");
}
.language_img.ja {
  background-image: url("/images/landing/country_flag_japan.svg");
}
.language_img.es {
  background-image: url("/images/landing/country_flag_spain.svg");
}
.language_img.zh {
  background-image: url("/images/landing/country_flag_china.svg");
}

.language_title {
  text-align: center;
  font-size: 14px;
  margin-top: 11px;
}

@media screen and (max-width: 1366px) {
  .header_contents {
    padding: 0 32px;
  }
}

@media screen and (max-width: 1280px) {
}

@media screen and (max-width: 1024px) {
  .side_menu {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: white;
    box-shadow: -5px 0 6px 0 rgba(0, 0, 0, 0.7);
    transition: all ease 0.4s;
    max-width: none;
    min-width: auto;
  }
}

@media screen and (max-width: 630px) {
  .logo_wrapper {
    width: 266px;
    text-align: center;
  }

  .language_modal_container {
    max-width: 422px;
    min-height: 144px;

    width: auto;
    height:auto;
  }

  .language_item_container {
    display: block;
  }
}