@font-face {
  font-family: Playfair W;
  src: url('../fonts/playfair_w.woff') format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

.w-layout-hflex {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
}

p {
  margin-bottom: 22px;
  line-height: 24px;
}

a {
  color: #7e0019;
  text-decoration: underline;
}

.main_section {
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}

.grid_wrapper {
  flex-flow: wrap;
}

.grid_item {
  cursor: pointer;
  border: 1px #e2ddf04d;
  width: 25%;
}

.grid_item_body {
  border: 1px #e2ddf04d;
  margin-bottom: 40px;
  margin-left: 25px;
  margin-right: 25px;
  padding-left: 0;
  padding-right: 0;
}

.grid_item_body.l_item {
  position: relative;
}

.grid_item_title {
  color: #e2ddf0;
  text-transform: uppercase;
  min-height: 120px;
  padding-bottom: 0;
  padding-left: 45px;
  font-family: Playfair W, Georgia, sans-serif;
  font-size: 23px;
  font-weight: 700;
  line-height: 25px;
}

.grid_item_title.mm {
  font-size: 18px;
  line-height: 22px;
}

.modal_content {
  background-color: #e2ddf0;
  width: 80%;
  margin: 7% auto;
  padding: 30px 30px 50px;
}

.icon_wrapper {
  justify-content: flex-end;
  display: flex;
}

.close {
  border: 1px solid #89011a;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  margin-left: 8px;
}

.arr_r {
  border: 1px solid #89011a;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  margin-left: 8px;
  padding-left: 0;
}

.arr_l {
  border: 1px solid #89011a;
  border-radius: 50%;
  width: 50px;
  height: 50px;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.body {
  background-color: #36010b;
}

.section_header {
  color: #e2ddf0;
  text-align: left;
  text-transform: uppercase;
  max-width: 1300px;
  margin: 80px auto;
  padding-left: 20px;
  padding-right: 20px;
  font-family: Playfair W, Georgia, sans-serif;
  font-size: 92px;
  font-weight: 400;
  line-height: 98px;
}

.section_header.playfair_lining {
  text-align: left;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 20px;
  padding-right: 20px;
  font-family: Playfair W, Georgia, sans-serif;
  font-size: 68px;
  font-weight: 400;
  line-height: 70px;
  position: relative;
}

.grid_item_media {
  color: #333;
  -webkit-text-fill-color: inherit;
  background-color: #48010f00;
  background-clip: border-box;
  padding-top: 15px;
}

.grid_item_media.bg1 {
  background-image: url('../images/bg1.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg2 {
  background-image: url('../images/bg2.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg3 {
  background-image: url('../images/bg3.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg4 {
  background-image: url('../images/bg4.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg6 {
  background-image: url('../images/bg5.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg5 {
  background-image: url('../images/bg6.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg7 {
  background-image: url('../images/bg8.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg9 {
  background-image: url('../images/bg9.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_media.bg8 {
  background-image: url('../images/bg8.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.grid_item_content {
  padding: 30px 10px 10px;
  position: relative;
}

.grid_item_content.c_pl {
  padding-top: 40px;
}

.more {
  width: 35px;
  height: 35px;
  position: absolute;
  bottom: 100px;
}

.image {
  position: static;
  bottom: 16px;
  left: 20px;
}

.modal_header_wrapper {
  justify-content: flex-start;
  align-items: center;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.modal_header_image {
  width: 50%;
}

.modal_header_content {
  width: 50%;
  padding-left: 30px;
}

.heading {
  color: #7e0019;
  text-transform: uppercase;
  font-family: Playfair W, Georgia, sans-serif;
  font-size: 52px;
  line-height: 54px;
}

.modal_header_content_description {
  color: #7e0019;
  -webkit-text-stroke-color: #7e0019;
  font-family: Raleway, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
}

.modal_header_image_img {
  background-color: #0000;
  padding-top: 20px;
}

.modal_header_image_img.bg61 {
  background-image: url('../images/bg61.svg'), url('../images/bg61.svg');
  background-position: 50% 100%, 50% 100%;
  background-repeat: no-repeat, repeat;
  background-size: cover, contain;
  padding-top: 30px;
}

.modal_header_image_img.bg6i {
  background-image: url('../images/bg61.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg4i {
  background-image: url('../images/bg41.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg1i {
  background-image: url('../images/bg11.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg2i {
  background-image: url('../images/bg21.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg5i {
  background-image: url('../images/bg51.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg7i {
  background-image: url('../images/bg81.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg9i {
  background-image: url('../images/bg91.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg8i {
  background-image: url('../images/bg81.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.modal_header_image_img.bg3i {
  background-image: url('../images/bg31.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: contain;
}

.text_block {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 50px;
  padding-bottom: 1.5vh;
  padding-right: 0;
}

.rich-text-block {
  font-family: Raleway, sans-serif;
  font-size: 16px;
  font-weight: 500;
}

.paragraph {
  margin-bottom: 15px;
}

.text_block_content {
  font-family: Raleway, sans-serif;
  font-size: 19px;
  font-weight: 500;
  line-height: 22px;
}

.contents {
  text-align: center;
  column-count: 2;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 100px;
}

.contents_item {
  text-align: left;
  font-size: 18px;
  display: inline-block;
}

.text-block {
  color: #e2ddf0;
  text-transform: uppercase;
  font-family: Raleway, sans-serif;
  font-weight: 700;
  text-decoration: none;
}

.text-block:hover {
  opacity: 1;
}

.spacer {
  color: #e2ddf0;
  padding-left: 15px;
  padding-right: 15px;
  font-family: Raleway, sans-serif;
  display: inline-block;
}

.link-block, .contents_link {
  text-decoration: none;
}

.contents_link:hover {
  opacity: .8;
}

.sm {
  font-size: 14px;
}

.sm2 {
  font-size: 24px;
  line-height: 28px;
}

.img_i {
  max-width: 85%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.body-2 {
  background-color: #36010b;
}

.top_screen {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: 100vh;
  max-height: none;
  display: flex;
}

.top_section_wrapper {
  width: 100%;
  max-width: 1300px;
}

.top_section_logo {
  text-align: left;
  width: 100%;
  max-width: 1300px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.code-embed {
  width: 100%;
}

.bg2 {
  font-size: 128px;
  line-height: 126px;
  display: block;
}

.logo_img {
  max-width: 370px;
  margin-top: -80px;
  margin-bottom: 0;
  margin-left: 0;
  padding-left: 0;
}

.div-block {
  position: absolute;
  inset: 0% auto auto 0%;
}

.logo {
  position: absolute;
  inset: 0% 0% auto auto;
}

.image-2 {
  width: 200px;
  margin: 10px;
}

.project_description {
  color: #e2ddf0;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 40px;
  font-family: Raleway, sans-serif;
  font-size: 16px;
  line-height: 22px;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.text-block-2 {
  padding: 20px 20px 60px;
}

.text_section {
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 6px;
  display: flex;
}

.text_block_1 {
  font-size: 15px;
}

.project_description_item {
  width: 50%;
  padding: 20px;
  display: block;
}

.project_description_item.item1 {
  width: 50%;
  font-size: 22px;
  line-height: 28px;
}

.text-block-3 {
  font-size: 22px;
}

.text-block-4 {
  font-weight: 700;
}

.text_section_item {
  color: #e2ddf0;
  width: 25%;
  padding: 20px;
  font-family: Raleway, sans-serif;
  font-size: 16px;
  line-height: 22px;
}

.text_section_item_bg {
  color: #e2ddf0;
  text-transform: uppercase;
  width: 100%;
  padding: 30px 20px 40px;
  font-family: Playfair W, Georgia, sans-serif;
  font-size: 36px;
  font-weight: 400;
  line-height: 38px;
}

.contents_list {
  color: #e2ddf0;
  text-align: left;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: Raleway, sans-serif;
  font-size: 18px;
  font-weight: 700;
}

.list_item {
  padding-top: 10px;
  padding-bottom: 10px;
}

.c_link {
  color: #e2ddf0;
  text-decoration: none;
}

.pl1 {
  width: 200px;
  position: absolute;
  inset: 50% auto auto 0%;
}

.partners_section {
  background-color: #7e0019;
  width: 100%;
  max-width: none;
  margin-top: 100px;
  padding: 100px 20px;
}

.section_title_sm {
  color: #e2ddf0;
  text-transform: uppercase;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  font-family: Raleway, sans-serif;
  font-size: 22px;
  font-weight: 800;
  line-height: 32px;
}

.logo_wrapper {
  flex-flow: wrap;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.logo_item {
  aspect-ratio: 1.7;
  justify-content: center;
  align-items: center;
  width: 33.3%;
  padding: 20px;
  display: flex;
  position: relative;
}

.logo_txt {
  color: #e2ddf0;
  text-transform: uppercase;
  padding: 20px;
  font-family: Raleway, sans-serif;
  font-size: 10px;
  line-height: 12px;
  position: absolute;
  inset: 0% auto auto 0%;
}

.l01 {
  max-width: 70%;
}

.l02 {
  max-width: 65%;
}

.l03 {
  width: 100%;
  max-width: 200%;
}

.l04 {
  max-width: 50%;
}

.l05 {
  max-width: 75%;
}

.l06 {
  max-width: 65%;
}

.l07 {
  max-width: 60%;
}

.l08 {
  max-width: 65%;
}

.l09 {
  width: 100%;
}

.l010 {
  max-width: 50%;
}

.l011 {
  width: 100%;
}

.l012 {
  width: 70%;
}

.l013 {
  width: 100%;
  max-width: 50%;
}

.l_lnk {
  text-align: center;
}

.l_lnk.l_lnk_w {
  width: 32%;
}

.l_lnk.l_lnk_w2 {
  width: 60%;
}

.l_lnk.l_lnk_w3 {
  width: 80%;
}

.l_lnk.l_lnk_w4 {
  width: 60%;
}

.l_lnk.l_lnk_w5 {
  width: 90%;
}

.l_lmk {
  text-align: center;
}

.image-3, .image-4 {
  width: 100%;
}

.footer_section {
  background-image: url('../images/bbg1.svg');
  background-position: 100% 0;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: auto;
  padding-top: 140px;
  padding-bottom: 140px;
}

.footer_content {
  justify-content: center;
  align-items: center;
  max-width: 1300px;
  margin: 0 auto;
  padding: 20px;
  display: flex;
}

.footer_text {
  color: #e2ddf0;
  width: 50%;
  font-family: Raleway, sans-serif;
}

.footer_logo {
  text-align: center;
  width: 50%;
}

.image-5 {
  width: 180px;
}

.jury_section {
  background-image: url('../images/bbg2.svg');
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: auto;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.jory_item {
  padding-bottom: 20px;
  padding-left: 20px;
  padding-right: 20px;
}

.joury_item_title {
  color: #fff;
  text-transform: uppercase;
  padding: 10px 0 20px;
  font-family: Raleway, sans-serif;
  font-size: 16px;
  font-weight: 700;
}

.bold-text-2 {
  text-transform: uppercase;
  font-size: 16px;
}

.jury_list {
  color: #e2ddf0;
  font-family: Raleway, sans-serif;
  font-size: 16px;
}

.jory_list_li {
  padding-bottom: 10px;
}

.bold-text-3 {
  font-weight: 400;
}

.text-span {
  font-weight: 800;
}

.ppp {
  width: 200px;
}

.back_top {
  border: 1px solid #e3ddee;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  position: fixed;
  inset: auto 10px 10px auto;
}

.link-block-2, .back_top_lnk {
  display: block;
}

.link-block-3 {
  width: 10px;
  height: 10px;
}

@media screen and (max-width: 991px) {
  .grid_item {
    width: 33.33%;
  }

  .grid_item_title {
    font-size: 21px;
    line-height: 22px;
  }

  .section_header {
    font-size: 72px;
    line-height: 78px;
  }

  .section_header.playfair_lining {
    font-size: 48px;
    line-height: 48px;
  }

  .heading {
    font-size: 32px;
    line-height: 34px;
  }

  .bg2 {
    font-size: 72px;
    line-height: 72px;
  }

  .pl1 {
    width: 180px;
    top: 48%;
  }
}

@media screen and (max-width: 767px) {
  .grid_item {
    width: 50%;
  }

  .grid_item_title {
    min-height: 90px;
    font-size: 18px;
    line-height: 22px;
  }

  .grid_item_title.mm {
    font-size: 15px;
    line-height: 16px;
  }

  .icon_wrapper {
    padding-bottom: 20px;
  }

  .section_header {
    font-size: 58px;
    line-height: 64px;
  }

  .section_header.playfair_lining {
    font-size: 42px;
    line-height: 42px;
  }

  .grid_item_content {
    padding: 16px;
  }

  .grid_item_content.c_pl {
    padding-top: 30px;
  }

  .more {
    bottom: 70px;
  }

  .modal_header_wrapper {
    flex-flow: wrap;
  }

  .modal_header_image {
    width: 100%;
  }

  .modal_header_content {
    width: 100%;
    padding-left: 0;
  }

  .contents {
    padding-left: 10px;
    padding-right: 10px;
  }

  .contents_item {
    padding-bottom: 15px;
  }

  .bg2 {
    font-size: 58px;
    line-height: 58px;
  }

  .logo_img {
    max-width: 270px;
    margin-left: 0;
    padding-left: 8px;
  }

  .text_section_item {
    width: 50%;
  }

  .text_section_item.x {
    display: none;
  }

  .pl1 {
    width: 180px;
    top: 52%;
  }
}

@media screen and (max-width: 479px) {
  .grid_item {
    width: 50%;
  }

  .grid_item_body {
    margin-bottom: 10px;
    margin-left: 10px;
    margin-right: 10px;
  }

  .grid_item_title {
    min-height: 80px;
    padding-top: 10px;
    padding-left: 35px;
    font-size: 14px;
    line-height: 16px;
  }

  .grid_item_title.mm {
    font-size: 12px;
    line-height: 13px;
  }

  .modal_content {
    width: 90%;
    padding: 25px 20px 40px;
  }

  .close, .arr_r, .arr_l {
    width: 40px;
    height: 40px;
  }

  .section_header {
    padding-left: 10px;
    padding-right: 10px;
    font-size: 38px;
    line-height: 42px;
  }

  .section_header.playfair_lining {
    font-size: 26px;
    line-height: 28px;
  }

  .grid_item_media.bg4 {
    width: auto;
  }

  .grid_item_content {
    padding-top: 10px;
    padding-left: 0;
    padding-right: 10px;
  }

  .grid_item_content.c_pl {
    padding-top: 16px;
  }

  .more {
    width: 30px;
    height: 30px;
    bottom: 60px;
  }

  .more.more2 {
    inset: 11% auto auto 0%;
  }

  .text_block {
    padding-top: 30px;
    font-size: 13px;
    line-height: 18px;
  }

  .text_block_content {
    font-size: 17px;
    line-height: 20px;
  }

  .contents {
    column-count: 1;
  }

  .sm {
    font-size: 11px;
  }

  .img_i {
    max-width: 100%;
  }

  .bold-text {
    font-size: 28px;
    line-height: 30px;
  }

  .top_section_logo {
    top: 50%;
  }

  .bg2 {
    font-size: 38px;
    line-height: 40px;
  }

  .grid_item_media-img {
    width: auto;
  }

  .top_section_logo_img {
    padding-left: 10px;
  }

  .logo_img {
    max-width: 200px;
    margin-top: 0;
    margin-left: 0;
    padding-left: 6px;
  }

  .logo {
    inset: 0% auto auto 0%;
  }

  .image-2 {
    width: 170px;
    margin: 7px;
  }

  .project_description {
    flex-flow: wrap;
    padding-bottom: 20px;
    font-size: 15px;
    position: absolute;
  }

  .text_section {
    flex-flow: wrap;
  }

  .project_description_item {
    width: 100%;
    padding-top: 10px;
  }

  .project_description_item.item1 {
    width: 100%;
    padding-top: 10px;
    font-size: 18px;
  }

  .text-block-4 {
    font-size: 18px;
    line-height: 22px;
  }

  .text_section_item {
    width: 65%;
    font-size: 14px;
    line-height: 19px;
  }

  .text_section_item._2nd {
    margin-left: 36%;
    padding-left: 20px;
  }

  .text_section_item_bg {
    font-size: 28px;
    line-height: 30px;
  }

  .pl1 {
    width: 130px;
    top: 50%;
  }

  .section_title_sm {
    padding-left: 0;
    padding-right: 0;
  }

  .logo_item {
    aspect-ratio: 1;
    width: 50%;
    padding: 0;
  }

  .logo_txt {
    padding: 10px 0;
    font-size: 9px;
  }

  .footer_content {
    flex-flow: wrap;
  }

  .footer_text {
    width: 100%;
  }

  .footer_logo {
    text-align: left;
    width: 100%;
    padding-top: 20px;
  }
}


@font-face {
  font-family: 'Playfair W';
  src: url('../fonts/playfair_w.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}