@charset "utf-8";

@import url(https://fonts.cdnfonts.com/css/creato-display);

/* .th-layout-header (헤더 래퍼: position/top/left/z-index + 루트 width, 미지정 시 100%) */
.th-layout-header {
  position: fixed !important;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
}


/* krail-N1 */
body {
  top: 0 !important
}

a.skip_area {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 100000;
  display: block;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  background: #d23333;
  color: #fff;
  font-size: 13px;
  text-align: center;
  line-height: 40px;
  text-decoration: none
}

a.skip_area:focus,
a.skip_area:active {
  width: 100%;
  height: 40px;
  margin: 0;
  clip: auto;
  clip-path: none;
  white-space: normal
}

#google_translate_element,
.skiptranslate,
.goog-te-gadget {
  display: none !important
}

.krail-N1 {
  width: 100%;
  min-height: 9rem;
  background: var(--white);
  will-change: transform, background, height;
  transition: background 0.3s, min-height 0.3s;
  position: fixed !important;
  top: 0;
  left: 0;
  z-index: 99
}

.krail-N1::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  visibility: hidden;
  width: 100%;
  height: 100%;
  background: var(--white);
  transition: opacity 0.3s, visibility 0.3s
}

.krail-N1.top-menu-active {
  padding-top: 6.7rem
}

.krail-N1.gnb-active {
  min-height: 28rem
}

.krail-N1.top-menu-active.gnb-active {
  min-height: calc(28rem + 6.6rem)
}

.krail-N1.header-top-active:not(:hover):not(:focus-within) {
  background: transparent
}

.krail-N1 .header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 9rem;
  max-width: 1920px
}

.krail-N1.top-menu-active .header-container {
  padding-top: 6.7rem
}

.krail-N1 .header-top {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--white)
}

.krail-N1 .user-menu {
  width: 100%;
  max-width: 1440px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 8rem;
  margin: 0 auto
}

.krail-N1 .user-menu li {
  position: relative
}

.krail-N1 .user-menu li:not(:first-child)::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1px;
  height: 1.2rem;
  background: #767676
}

.krail-N1 .user-menu li a {
  padding: 2rem 1.2rem;
  text-align: center;
  white-space: nowrap
}

.krail-N1 .user-menu li:last-child a {
  padding: 2rem 0 2rem 1.2rem
}

.krail-N1 .header-left {
  display: flex;
  align-items: center;
  gap: 3rem
}

.krail-N1 .header-title {
  margin-bottom: 0
}

.krail-N1 .header-title a {
  height: 4.5rem
}

.krail-N1 .header-title img {
  height: 100%;
  object-fit: contain;
  vertical-align: top;
  transition: filter 0.3s
}

.krail-N1.header-top-active:not(:hover):not(:focus-within) .header-title img {
  filter: brightness(0) invert(1)
}

.krail-N1 .header-gnb {
  position: relative
}

.krail-N1 .header-gnblist {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%
}

.krail-N1 .header-gnbitem {
  position: relative
}

.krail-N1 .header-gnblink {
  height: 100%;
  padding: 2.8rem 3rem;
  text-align: center;
  white-space: nowrap;
  font-weight: var(--fw-medium);
  transition: color 0.3s
}

.krail-N1.header-top-active:not(:hover):not(:focus-within) .header-gnblink {
  color: var(--white)
}

.krail-N1 .header-gnblink span {
  position: relative
}

.krail-N1 .header-gnblink span::after {
  content: "";
  height: 0.2rem;
  width: 100%;
  transition: 0.3s;
  transform: scaleX(0);
  position: absolute;
  bottom: -100%;
  left: 0
}

.krail-N1 .header-sublist {
  width: 100%;
  position: absolute;
  top: 100%;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  pointer-events: none;
  z-index: 1
}

.krail-N1 .header-gnb:hover .header-sublist,
.krail-N1 .header-gnb:focus-within .header-sublist,
.krail-N1 .header-gnbitem:focus-within .header-sublist {
  opacity: 1;
  visibility: visible;
  overflow: visible;
  pointer-events: auto;
  transition: opacity 0.3s 0.3s
}

.krail-N1 .header-gnbitem:hover .header-gnblink span::after,
.krail-N1 .header-gnbitem:focus-within .header-gnblink span::after {
  background: var(--black);
  transform: scaleX(1)
}

.krail-N1 .header-subitem {
  width: 100%;
  text-align: center;
  overflow: visible
}

.krail-N1 .header-sublink {
  display: block;
  padding: 1rem;
  width: 100%;
  border-radius: 0.2rem;
  transition: font-weight 0.3s
}

.krail-N1 .header-sublink:focus-visible {
  outline: 0.2rem solid var(--primary);
  outline-offset: 0.2rem
}

.krail-N1 .header-subitem:hover .header-sublink,
.krail-N1 .header-subitem .header-sublink:focus-visible {
  font-weight: var(--fw-bold)
}

.krail-N1 .header-right {
  display: flex;
  align-items: center
}

.krail-N1 .header-right .header-gnb {
  margin-right: 2.4rem
}

.krail-N1 .header-utils>ul {
  display: flex;
  align-items: center
}

.krail-N1 .header-utils .button a {
  font-weight: 700
}

.krail-N1 .header-utils .button a .btnset-ico-wrap {
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  position: relative
}

.krail-N1 .header-utils .button a .btnset-ico-wrap i {
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../icons/ico_arrow.svg) no-repeat center / contain;
  transition: transform 0.3s ease
}

.krail-N1 .header-utils .button a .btnset-ico-wrap i:last-child {
  transform: translate(-100%, 100%)
}

.krail-N1 .header-utils .button a:is(:hover, :focus-visible) .btnset-ico-wrap i:first-child {
  transform: translate(100%, -100%)
}

.krail-N1 .header-utils .button a:is(:hover, :focus-visible) .btnset-ico-wrap i:last-child {
  transform: translate(0, 0)
}

.krail-N1 .header-utils>ul>li+li {
  margin-left: 2.4rem
}

.krail-N1 .header-utils>ul>li>img {
  width: auto;
  height: 100%;
  object-fit: cover;
  vertical-align: top
}

.krail-N1 .header-utils img {
  filter: invert(1)
}

.krail-N1 .header-right button {
  background: none;
  border: none
}

.krail-N1 .header-right button img {
  width: auto;
  max-height: 100%;
  object-fit: cover;
  vertical-align: top
}

.krail-N1 .header-utils .member a {
  width: 3.2rem;
  height: 3.2rem;
  font-size: 0;
  display: block
}

.krail-N1 .header-utils .member img {
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  vertical-align: top
}

.krail-N1 .header-utils .btn-allmenu {
  display: flex;
  flex-direction: column;
  gap: 0.6rem
}

.krail-N1 .header-utils .btn-allmenu:hover .ico-hamburger:nth-child(2) {
  width: 2.4rem
}

.krail-N1 .header-utils .btn-allmenu .ico-hamburger,
.krail-N1 .btn-momenu .ico-hamburger {
  width: 2.4rem;
  height: 0.2rem;
  background: var(--black);
  border-radius: 1rem;
  transition: width 0.3s, transform 0.3s, opacity 0.3s;
  will-change: width, transform, opacity
}

.krail-N1.header-top-active:not(:hover):not(:focus-within) .btn-momenu .ico-hamburger {
  background: var(--white)
}

.krail-N1 .header-utils .btn-allmenu .ico-hamburger:nth-child(even),
.krail-N1 .btn-momenu .ico-hamburger:nth-child(2) {
  width: 1.4rem
}

.krail-N1 .btn-momenu {
  display: none
}

.krail-N1 .btn-moclose {
  display: none
}

.krail-N1 .header-lang {
  position: relative
}

.krail-N1 .header-langbtn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  position: relative;
  width: 3.2rem;
  height: 3.2rem;
  font-size: 2.2rem;
  color: var(--text-color1);
  transition: color 0.3s
}

.krail-N1.header-top-active:not(:hover):not(:focus-within) .header-langbtn {
  color: var(--white)
}

.krail-N1 .header-langlist {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 200;
  width: 10.2rem;
  background: #111111
}

.krail-N1 .header-langitem {
  width: 100%;
  max-height: 0;
  visibility: hidden;
  transition: all 0.5s;
  overflow: hidden
}

.krail-N1 .header-langitem a {
  display: block;
  width: 100%;
  padding: 0.6rem 1.6rem;
  color: var(--white);
  opacity: .7;
  text-align: center
}

.krail-N1 .header-langitem a:hover,
.krail-N1 .header-langitem a:focus-visible {
  opacity: 1
}

.krail-N1 .header-lang:hover .header-langbtn::after,
.krail-N1 .header-lang:focus-within .header-langbtn::after {
  transform: rotate(-180deg)
}

.krail-N1 .header-lang:hover .header-langitem,
.krail-N1 .header-lang:focus-within .header-langitem {
  max-height: 6.8rem;
  visibility: visible
}

.krail-N1 .header-fullmenu {
  position: fixed;
  z-index: 99999;
  padding: 0 2.4rem;
  background: #000;
  transition: 0.3s;
  opacity: 0;
  visibility: hidden;
  overflow: hidden
}

.krail-N1 .header-fullmenu.fullmenu-right {
  width: 0;
  height: 100%;
  top: 0;
  right: 0
}

.krail-N1 .header-fullmenu.fullmenu-left {
  width: 0;
  height: 100%;
  top: 0;
  left: 0
}

.krail-N1 .header-fullmenu.fullmenu-top {
  top: 0;
  left: 0;
  width: 100%;
  height: 0
}

.krail-N1 .header-fullmenu.fullmenu-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0
}

.krail-N1 .header-fullmenu.fullmenu-active {
  width: 100%;
  height: 100vh;
  opacity: 1;
  visibility: visible
}

.krail-N1 .fullmenu-wrapper {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  max-width: 128rem;
  margin: 0 auto
}

.krail-N1 .fullmenu-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10rem
}

.krail-N1 .fullmenu-title {
  margin-bottom: 0
}

.krail-N1 .fullmenu-title a {
  height: 4.3rem
}

.krail-N1 .fullmenu-title img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.krail-N1 .fullmenu-gnblist {
  display: flex;
  justify-content: center
}

.krail-N1 .fullmenu-gnbitem {
  width: 20%
}

.krail-N1 .fullmenu-gnbitem+.fullmenu-gnbitem {
  margin-left: 4rem
}

.krail-N1 .fullmenu-gnblink {
  position: relative;
  width: 100%;
  padding-bottom: 4rem;
  color: var(--white);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2)
}

.krail-N1 .fullmenu-gnblink::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 0;
  height: 0.1rem;
  background: var(--white);
  transition: 0.2s
}

.krail-N1 .fullmenu-gnblink.on::after {
  width: 18rem
}

.krail-N1 .fullmenu-sublist {
  padding-top: 4rem
}

.krail-N1 .fullmenu-subitem+.fullmenu-subitem {
  padding-top: 0.8rem
}

.krail-N1 .fullmenu-sublink {
  color: #a2a2a2;
  position: relative;
  padding-bottom: 5px;
  transition: 0.3s
}

.krail-N1 .fullmenu-sublink::before {
  content: "";
  width: 0;
  height: 1px;
  background-color: var(--white);
  position: absolute;
  top: 100%;
  right: 0;
  transition: width 0.7s cubic-bezier(0.22, 0.61, 0.36, 1)
}

.krail-N1 .fullmenu-sublink:hover {
  color: var(--white)
}

.krail-N1 .fullmenu-sublink:hover::before {
  width: 100%;
  right: auto;
  left: 0
}

.krail-N1 .fullmenu-close {
  position: fixed;
  right: 8rem;
  top: 2.4rem;
  width: 3.2rem;
  height: 3.2rem;
  padding: 0.5rem;
  background: transparent;
  border: none
}

.krail-N1 .fullmenu-close img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

html[lang="en"] .krail-N1 .header-gnblink,
html[lang="th"] .krail-N1 .header-gnblink {
  padding: 1.6rem;
  font-size: var(--fs-p2);
  line-height: var(--lh-p2);
  white-space: wrap
}

html[lang="en"] .krail-N1 .header-utils .button a,
html[lang="th"] .krail-N1 .header-utils .button a {
  font-size: var(--fs-p2);
  line-height: var(--lh-p2)
}

.krail-N1 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--primary);
  outline-offset: 0.2rem
}

.krail-N1.header-top-active:not(:hover):not(:focus-within) :is(a, button):focus-visible,
.krail-N1.header-top-active:not(:hover):not(:focus-within) .header-sublink:focus-visible {
  outline-color: var(--white)
}

.krail-N1 .header-gnbitem:focus-within .header-gnblink span::after {
  background: var(--black);
  transform: scaleX(1)
}

@media (max-width:1360px) {
  .krail-N1 .header-title a {
    height: 4.8rem
  }

  .krail-N1 .header-gnblink {
    padding: 2.8rem 1.6rem
  }

  .krail-N1 .header-utils>ul>li+li {
    margin-left: 1.2rem
  }

  .krail-N1 .header-utils .button a {
    padding: 0 1.6rem
  }
}

@media (max-width: 1280px) {
  .krail-N1 .header-title a {
    height: 3.6rem
  }

  .krail-N1 .header-utils .button a {
    padding: 0 1.2rem
  }
}

@media (max-width: 992px) {
  .krail-N1 {
    padding-top: 0;
    padding-bottom: 0;
    min-height: 6.4rem
  }

  .krail-N1.top-menu-active .header-container {
    padding-top: 0
  }

  .krail-N1.gnb-active,
  .krail-N1.top-menu-active.gnb-active {
    min-height: auto
  }

  .krail-N1 .header-container {
    min-height: 6.4rem
  }

  .krail-N1 .header-gnb {
    width: 100%;
    height: 0;
    position: absolute;
    top: 100%;
    left: 0;
    background: var(--white);
    overflow: hidden;
    padding: 0 2.4rem;
    transition: height 0.3s;
    z-index: 9
  }

  .krail-N1.block-active .header-gnb {
    height: calc(100vh - 6.4rem);
    padding-bottom: 19rem;
    overflow-y: auto
  }

  .krail-N1 .header-top {
    border: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s 0.1s, visibilty 0.3s 0.1s;
    will-change: opacity, visibility;
    z-index: 10
  }

  .krail-N1.block-active .header-top {
    top: 100%;
    opacity: 1;
    visibility: visible
  }

  .krail-N1 .user-menu {
    padding: 0 2.2rem;
    justify-content: flex-start
  }

  .krail-N1 .user-menu li a,
  .krail-N1 .user-menu li:last-child a {
    padding: 2.4rem 1.2rem
  }

  .krail-N1 .user-menu li:first-child a {
    padding-left: 0
  }

  .krail-N1 .header-title a {
    width: 10.9rem;
    height: 3.2rem
  }

  .krail-N1 .header-center {
    width: 100%;
    height: 0;
    top: 100%;
    left: 0;
    transform: none
  }

  .krail-N1 .header-gnblist {
    display: block;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s 0.1s
  }

  .krail-N1 .header-gnblink {
    display: flex;
    align-items: flex-end;
    width: 100%;
    padding: 1.8rem 0;
    text-align: left;
    transition: border 0.3s;
    will-change: border;
    border-bottom: 1px solid #707070
  }

  .krail-N1.top-menu-active .header-gnbitem:first-child .header-gnblink {
    padding-top: 6.8rem
  }

  .krail-N1 .header-gnbitem:hover .header-gnblink span {
    border: none
  }

  .krail-N1 .header-gnbitem:hover .header-gnblink span::after {
    content: none
  }

  .krail-N1 .header-sublist {
    display: none;
    height: auto;
    position: relative;
    opacity: 1;
    padding: 1.8rem 0 2rem 0
  }

  .krail-N1 .header-gnbitem.item-active .header-gnblink {
    border-bottom: 1px solid var(--black)
  }

  .krail-N1 .header-subitem {
    width: 100%;
    text-align: left
  }

  .krail-N1 .header-subitem+.header-subitem {
    padding-top: 0.8rem
  }

  .krail-N1 .header-sublink {
    padding: 0;
    color: var(--text-color3)
  }

  .krail-N1 .header-sublink:focus-visible {
    outline: 0.2rem solid var(--primary);
    outline-offset: 0.2rem
  }

  .krail-N1 .header-sublink:active {
    color: #111111
  }

  .krail-N1 .header-right button,
  .krail-N1 .header-utils .member a {
    width: 2.8rem;
    height: 2.8rem
  }

  .krail-N1 .header-utils>ul>li {
    margin-left: 0.6rem
  }

  .krail-N1 .header-utils .allmenu {
    display: none
  }

  .krail-N1 .header-right .header-langbtn {
    padding: 0;
    justify-content: center;
    font-size: 0;
    gap: 0;
    min-width: 0
  }

  .krail-N1 .header-right .header-langbtn::before {
    font-size: 2.2rem
  }

  .krail-N1 .header-utils .button {
    margin-left: 0
  }

  .krail-N1 .header-utils .button+.button {
    margin-left: .4rem
  }

  .krail-N1 .btnset.btnset-sm.btnset-icon::before {
    font-size: 1.6rem
  }

  .krail-N1 .header-langlist {
    width: auto
  }

  .krail-N1 .header-langbtn::after {
    content: none
  }

  .krail-N1 .header-langbtn::before {
    font-size: 1.8rem
  }

  .krail-N1 .btn-momenu {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.6rem;
    margin-left: 0.6rem
  }

  .krail-N1 .btn-momenu .ico-hamburger {
    width: 2rem
  }

  .krail-N1 .btn-momenu .ico-hamburger:nth-child(2) {
    width: 1.2rem
  }

  .krail-N1.block-active .header-center {
    pointer-events: auto
  }

  .krail-N1.block-active .header-gnblist {
    opacity: 1;
    visibility: visible
  }

  .krail-N1 .header-gnbitem:has(.header-subitem) .header-gnblink::after {
    content: "";
    display: flex;
    width: 1.6rem;
    height: 1.6rem;
    background-image: url(../icons/ico_downarrow_black.svg);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: cover;
    transition: transform 0.3s;
    will-change: transform
  }

  .krail-N1.block-active .header-gnblink {
    align-items: center;
    justify-content: space-between
  }

  .krail-N1.block-active .header-gnbitem.item-active .header-gnblink::after {
    content: "";
    transform: rotate(180deg)
  }

  .krail-N1.block-active .btn-momenu .ico-hamburger:nth-child(1) {
    transform: translateY(0.8rem) rotate(45deg)
  }

  .krail-N1.block-active .btn-momenu .ico-hamburger:nth-child(3) {
    transform: translateY(-0.8rem) rotate(-45deg)
  }

  .krail-N1.block-active .btn-momenu .ico-hamburger:nth-child(2) {
    opacity: 0;
    visibility: hidden
  }

  .krail-N1 .header-fullmenu {
    display: none
  }

  .krail-N1 .header-utils .button a {
    display: none
  }
}

@media (prefers-reduced-motion: reduce) {

  .krail-N1,
  .krail-N1::after,
  .krail-N1 .header-gnb,
  .krail-N1 .header-sublist,
  .krail-N1 .header-langitem,
  .krail-N1 .header-fullmenu {
    transition: none !important
  }
}
/* krail-N3 */
.krail-N3 {
  overflow: hidden;
  position: relative;
  min-height: 100dvh
}

.krail-N3 .contents-container:not(.fullscreen) {
  display: flex;
  align-items: flex-end;
  height: 100dvh;
  max-width: 1920px
}

.krail-N3 .videoset {
  position: absolute;
  inset: 0;
  height: 100%;
  will-change: transform
}

.krail-N3 .videoset-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.18);
  transform-origin: center center;
  will-change: transform
}

.krail-N3.is-intro-done .videoset-video {
  transform: none
}

.krail-N3 .videoset::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.1) 70%, rgba(0, 0, 0, 1) 100%);
  pointer-events: none
}

.krail-N3 .title-area {
  position: relative;
  z-index: 1;
  padding-bottom: 16rem;
  width: 100%
}

.krail-N3 .title-area h2 {
  color: var(--white);
  font-size: 7rem;
  line-height: 8.5rem;
  font-weight: 700
}

.krail-N3 .title-area p {
  margin: 2.4rem 0 4rem;
  color: var(--white);
  font-weight: 400
}

.krail-N3 .title-area a {
  gap: 2.4rem;
  border: 1px solid var(--white);
  font-weight: 700;
  height: 6.8rem
}

.krail-N3 .btnset-ico-wrap {
  overflow: hidden;
  display: flex;
  width: 2.4rem;
  height: 2.4rem
}

.krail-N3 .btnset-ico-wrap i {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  background: url(../icons/ico_arrow_right.svg) no-repeat center/contain;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.krail-N3 .btnset-ico-wrap i:nth-child(1) {
  transform: translateX(-100%)
}

.krail-N3 .btnset-ico-wrap i:nth-child(2) {
  transform: translateX(-100%)
}

.krail-N3 .title-area a:hover .btnset-ico-wrap i:nth-child(1) {
  transform: translateX(0)
}

.krail-N3 .title-area a:hover .btnset-ico-wrap i:nth-child(2) {
  transform: translateX(0)
}

.krail-N3 .btn-down {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 11.5rem;
  right: 9.6rem;
  z-index: 1;
  width: 4rem;
  height: 4rem;
  background: var(--primary);
  color: var(--white);
  border-radius: 50%
}

.krail-N3 .btn-down::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0.3;
  width: 7.2rem;
  height: 7.2rem;
  background: var(--primary);
  border-radius: 50%;
  animation: btnDownWave 1.8s ease-out infinite
}

.krail-N3 .loading {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  inset: 0;
  z-index: 99;
  pointer-events: none
}

.krail-N3 .loading>* {
  pointer-events: none
}

.krail-N3 .loading-bg {
  position: absolute;
  background: var(--white)
}

.krail-N3 .loading-bg.top,
.krail-N3 .loading-bg.bottom {
  left: 0;
  height: calc(50% - 4.6rem);
  width: 100%
}

.krail-N3 .loading-bg.top {
  top: 0
}

.krail-N3 .loading-bg.bottom {
  bottom: 0
}

.krail-N3 .loading-bg.left,
.krail-N3 .loading-bg.right {
  top: 0;
  width: calc(50% - 11.2rem);
  height: 100%
}

.krail-N3 .loading-bg.left {
  left: 0
}

.krail-N3 .loading-bg.right {
  right: 0
}

.krail-N3 .loading-wrap {
  position: relative;
  width: 25.6rem;
  height: 9.2rem;
  background: var(--primary);
  text-align: center
}

.krail-N3 .loading-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20rem;
  height: 5.9rem
}

.krail-N3 .loading-title .loading-logo {
  overflow: hidden;
  display: block;
  width: 20rem;
  height: 5.9rem
}

.krail-N3 .loading-title .loading-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain
}

.krail-N3 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--white);
  outline-offset: 0.2rem
}

@keyframes icoScale {
  0% {
    transform: translate(-50%, -50%) scale(0.2)
  }

  70% {
    opacity: 1
  }

  100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0
  }
}

@keyframes btnDownWave {
  0% {
    transform: translate(-50%, -50%) scale(0.7);
    opacity: 0.45
  }

  70% {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 0
  }

  100% {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 0
  }
}

@media (min-width: 993px) {

  .krail-N3 .loading-bg.top,
  .krail-N3 .loading-bg.bottom {
    height: calc(50% - 5.95rem)
  }

  .krail-N3 .loading-bg.left,
  .krail-N3 .loading-bg.right {
    width: calc(50% - 16.8rem)
  }

  .krail-N3 .loading-wrap {
    width: 33.6rem;
    height: 11.9rem
  }

  .krail-N3 .loading-title {
    width: auto
  }
}

@media (max-width: 992px) {

  .krail-N3,
  .krail-N3 .contents-container:not(.fullscreen) {
    height: 100svh;
    min-height: 100svh
  }

  .krail-N3 .videoset,
  .krail-N3 .videoset-video {
    will-change: auto
  }

  .krail-N3 .title-area {
    padding-bottom: 7rem
  }

  .krail-N3 .title-area h2 {
    font-size: 4rem;
    line-height: 5rem
  }

  .krail-N3 .title-area p {
    margin: 1.2rem 0 2rem
  }

  .krail-N3 .title-area a {
    gap: 3rem;
    height: 4.8rem
  }

  .krail-N3 .btn-down {
    right: 1.6rem;
    bottom: 7.6rem;
    width: 3.6rem;
    height: 3.6rem
  }
}

@media (prefers-reduced-motion: reduce) {
  .krail-N3 .videoset-video {
    transform: none
  }

  .krail-N3 .videoset-video,
  .krail-N3 .title-area,
  .krail-N3 .btn-down {
    transition: none !important
  }
}
/* krail-N4 */
.krail-N4 {
  overflow: hidden;
  position: relative;
  margin-top: -4.8rem;
  z-index: 1;
  background: var(--primary);
  will-change: transform
}

.krail-N4 .contents-container {
  padding: 0
}

.krail-N4 .loop-area {
  overflow: hidden;
  display: flex;
  align-items: center;
  width: 100vw;
  height: 4.8rem
}

.krail-N4 .loop-area-en,
.krail-N4 .loop-area-th,
.krail-N4 .loop-blind-en,
.krail-N4 .loop-blind-th {
  display: none
}

html[lang="en"] .krail-N4 .loop-area-ko,
html[lang="en"] .krail-N4 .loop-area-th,
html[lang="en"] .krail-N4 .loop-blind-ko,
html[lang="en"] .krail-N4 .loop-blind-th {
  display: none
}

html[lang="en"] .krail-N4 .loop-area-en,
html[lang="en"] .krail-N4 .loop-blind-en {
  display: flex
}

html[lang="en"] .krail-N4 .loop-blind-en {
  display: block
}

html[lang="th"] .krail-N4 .loop-area-ko,
html[lang="th"] .krail-N4 .loop-area-en,
html[lang="th"] .krail-N4 .loop-blind-ko,
html[lang="th"] .krail-N4 .loop-blind-en {
  display: none
}

html[lang="th"] .krail-N4 .loop-area-th,
html[lang="th"] .krail-N4 .loop-blind-th {
  display: flex
}

html[lang="th"] .krail-N4 .loop-blind-th {
  display: block
}

.krail-N4 .text-wrap {
  display: flex;
  white-space: nowrap
}

.krail-N4 .text-wrap span {
  padding-right: 10rem;
  font-weight: 500;
  color: var(--white)
}

.krail-N4 .text-wrap strong {
  font-weight: 700
}

@media (max-width: 992px) {
  .krail-N4 {
    margin-top: -4rem
  }

  .krail-N4 .loop-area {
    height: 4rem
  }

  .krail-N4 .text-wrap span {
    padding-right: 4rem
  }
}
/* krail-N5 */
.krail-N5 {
  position: relative;
  padding-top: 0;
  padding-bottom: 0
}

.krail-N5 .mouse-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0;
  width: 62.4rem;
  height: 62.4rem;
  border-radius: 50%;
  background: rgba(255, 160, 159, 0.15);
  filter: blur(50px);
  opacity: 0;
  pointer-events: none;
  will-change: transform, opacity
}

.krail-N5 .contents-container {
  position: relative;
  z-index: 1;
  max-width: 1920px
}

.krail-N5 .contents-inner {
  display: flex;
  justify-content: center;
  position: relative;
  width: 100%
}

.krail-N5 .contents-wrap {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%
}

.krail-N5 .group-sticky {
  flex: 0 1 40.5rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: sticky;
  top: 0;
  z-index: 1;
  max-width: 50.9rem;
  height: 100vh
}

.krail-N5 .group-sticky-text {
  justify-content: flex-start
}

.krail-N5 .title-area {
  width: 100%
}

.krail-N5 .title-area .title-eyebrow {
  font-weight: 700
}

.krail-N5 .title-area .title-main {
  display: block;
  margin: 1.2rem 0;
  white-space: nowrap
}

html[lang="en"] .krail-N5 .title-area .title-main,
html[lang="th"] .krail-N5 .title-area .title-main {
  white-space: wrap
}

.krail-N5 .title-area>p:not(.title-eyebrow) {
  font-weight: 500
}

.krail-N5 .list-area {
  display: flex;
  flex-direction: column;
  margin-top: 24rem;
  padding-bottom: 18rem;
  width: 43vw;
  max-width: 80rem
}

.krail-N5 .list-item {
  width: 100%
}

.krail-N5 .list-item+.list-item {
  padding-top: 6rem
}

.krail-N5 .imageset {
  display: block;
  transform: scale(0.78);
  opacity: 0.3;
  height: auto;
  max-height: 60rem;
  aspect-ratio: 910/600;
  transition: transform 0.9s cubic-bezier(0.23, 1, 0.32, 1) 0.1s, opacity 0.9s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
  will-change: transform, opacity
}

.krail-N5 .list-item.active .imageset {
  transform: scale(1);
  opacity: 1
}

.krail-N5 .imageset-img {
  border-radius: .8rem
}

.krail-N5 .textset {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.9s cubic-bezier(0.23, 1, 0.32, 1)
}

.krail-N5 .textset.active {
  opacity: 1;
  z-index: 1;
  pointer-events: auto
}

.krail-N5 .textset .textset-subtit {
  display: block;
  margin: 0;
  font-weight: var(--fw-bold)
}

.krail-N5 .textset-tit {
  margin-bottom: 0.8rem
}

.krail-N5 .textset .textset-tit+.textset-desc {
  margin: 0;
  font-weight: 400
}

.krail-N5 .empty {
  flex: 1 1 80rem;
  min-width: 46rem
}

.krail-N5 .contents-inner.mo {
  display: none
}

.krail-N5 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--primary);
  outline-offset: 0.2rem
}

@media (max-width: 1480px) {
  .krail-N5 .title-area .title-main {
    white-space: wrap
  }
}

@media (max-width: 992px) {
  .krail-N5 .mouse-overlay {
    display: none
  }

  .krail-N5 {
    padding-top: 8rem;
    padding-bottom: 4rem
  }

  .krail-N5 .contents-inner.pc {
    display: none
  }

  .krail-N5 .contents-inner.mo {
    display: flex;
    flex-direction: column;
    gap: 0
  }

  .krail-N5 .contents-inner.mo .title-area {
    width: 100%
  }

  .krail-N5 .title-area .title-main {
    margin: .8rem 0
  }

  .krail-N5 .contents-inner.mo .list-area {
    margin-top: 4rem;
    padding-bottom: 0;
    width: 100%;
    max-width: 100%
  }

  .krail-N5 .contents-inner.mo .list-item {
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0
  }

  .krail-N5 .contents-inner.mo .list-item+.list-item {
    padding-top: 0;
    margin-top: 4rem
  }

  .krail-N5 .contents-inner.mo .imageset {
    transform: none;
    opacity: 1;
    width: 100%;
    height: 24.6rem;
    max-height: none;
    aspect-ratio: none;
    transition: none
  }

  .krail-N5 .contents-inner.mo .textset {
    position: static;
    opacity: 1;
    margin-top: .8rem;
    margin-bottom: 0;
    pointer-events: auto;
    transition: none
  }

  .krail-N5 .textset .textset-subtit+.textset-tit {
    margin: 0.4rem 0
  }
}

@media (prefers-reduced-motion: reduce) {
  .krail-N5 .mouse-overlay {
    display: none
  }

  .krail-N5 .imageset {
    transition: none !important
  }
}
/* krail-N6 */
.krail-N6 {
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N6 .contents-container {
  height: 100%;
  max-width: 1920px
}

.krail-N6 .contents-inner {
  position: sticky;
  top: 8rem;
  width: 100%
}

.krail-N6 .textset {
  text-align: center
}

.krail-N6 .textset .textset-tit {
  margin: 0;
  font-weight: 700
}

.krail-N6 .textset .textset-desc {
  margin: 1.2rem 0 0
}

.krail-N6 .list-area {
  position: relative;
  margin-top: 8rem
}

.krail-N6 .cardset-wrap {
  display: flex;
  align-items: stretch;
  position: relative;
  z-index: 1;
  min-height: 59rem
}

.krail-N6 .cardset {
  flex: 1;
  display: flex;
  align-items: flex-end
}

.krail-N6 .cardset:not(:first-child) {
  border-left: 1px solid rgba(var(--white-rgb), 0.36)
}

.krail-N6 .cardset .cardset-body {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2rem;
  padding: 4rem;
  width: 100%
}

.krail-N6 .cardset .cardset-body h3 {
  display: block;
  margin: 0;
  font-weight: var(--fw-bold);
  color: rgba(var(--white-rgb), 0.6);
  transition: color 0.8s cubic-bezier(0.4, 0, 0.2, 1)
}

.krail-N6 .cardset.active .cardset-body h3 {
  color: var(--white)
}

.krail-N6 .cardset .cardset-body p {
  margin: 0.8rem 0 0;
  opacity: 0;
  visibility: hidden;
  translate: 0 10px;
  color: var(--white);
  transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.1s, visibility 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.1s, translate 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.1s
}

.krail-N6 .cardset.active .cardset-body p {
  opacity: 1;
  visibility: visible;
  translate: 0 0
}

.krail-N6 .cardset .more-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  border: 1px solid var(--white);
  background: transparent;
  transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.1s, visibility 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.1s, translate 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.1s
}

.krail-N6 .cardset.active .more-arrow {
  opacity: 1;
  visibility: visible
}

.krail-N6 .cardset .more-arrow::before {
  content: "";
  width: 2.4rem;
  height: 2.4rem;
  background: url(../icons/ico_arrow_right.svg) no-repeat center / contain
}

.krail-N6 .bg-wrap {
  overflow: hidden;
  position: absolute;
  inset: 0;
  border-radius: .8rem
}

.krail-N6 .bg-wrap .imageset {
  overflow: hidden;
  position: absolute;
  inset: 0;
  height: 100%;
  transform-origin: center center
}

.krail-N6 .bg-wrap .imageset .imageset-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  scale: 1.08;
  filter: blur(8px);
  transform-origin: center center;
  transition: scale 1.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 1s cubic-bezier(0.4, 0, 0.2, 1) 0.05s, filter 1.2s cubic-bezier(0.16, 1, 0.3, 1)
}

.krail-N6 .bg-wrap .imageset.active .imageset-img {
  opacity: 1;
  scale: 1;
  filter: blur(0)
}

.krail-N6:not(.is-entered) .bg-wrap .imageset.active .imageset-img {
  filter: blur(12px)
}

.krail-N6 .bg-wrap .imageset::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  background: rgba(var(--black-rgb), 0.3);
  pointer-events: none;
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1)
}

.krail-N6 .bg-wrap .imageset.active::before {
  opacity: 1
}

.krail-N6 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--white);
  outline-offset: -0.2rem
}

@media (max-width: 992px) {
  .krail-N6 {
    padding-top: 4rem;
    padding-bottom: 8rem
  }

  .krail-N6 .textset {
    text-align: left
  }

  .krail-N6 .textset .textset-desc {
    margin-top: 0.4rem
  }

  .krail-N6 .list-area {
    margin-top: 4rem
  }

  .krail-N6 .cardset-wrap {
    flex-direction: column;
    min-height: 0
  }

  .krail-N6 .cardset {
    flex: none;
    width: 100%;
    min-height: 22rem
  }

  .krail-N6 .cardset:not(:first-child) {
    border-left: none;
    border-top: 1px solid rgba(var(--white-rgb), 0.36)
  }

  .krail-N6 .cardset .cardset-body {
    padding: 1.6rem
  }

  .krail-N6 .cardset .more-arrow {
    width: 2.4rem;
    height: 2.4rem
  }

  .krail-N6 .cardset .more-arrow::before {
    width: 1.4rem;
    height: 1.4rem
  }

  .krail-N6 .cardset .cardset-body h3 {
    color: var(--white)
  }

  .krail-N6 .cardset .cardset-body p,
  .krail-N6 .cardset .more-arrow {
    opacity: 1;
    visibility: visible;
    translate: 0 0
  }
}

@media (prefers-reduced-motion: reduce) {

  .krail-N6 .cardset,
  .krail-N6 .imageset-img {
    transition: none !important
  }
}
/* krail-N7 */
.krail-N7 {
  position: relative;
  z-index: 1;
  height: 200dvh;
  --clip-side: 25%;
  clip-path: inset(0 var(--clip-side) 0 var(--clip-side))
}

.krail-N7 .contents-container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: sticky;
  top: 0;
  height: 100dvh;
  background: url(../images/krail_N7_01.png) no-repeat center/cover
}

.krail-N7 .contents-container::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.4;
  background: var(--black)
}

.krail-N7 .contents-inner {
  position: relative;
  width: 100%;
  container-type: inline-size;
  max-width: 1920px
}

.krail-N7 .textset {
  opacity: 0;
  text-align: center
}

.krail-N7 .textset>* {
  opacity: 0;
  transform: translateY(30px)
}

.krail-N7 .textset .imageset {
  margin: 0 auto;
  width: 6rem;
  height: 6rem
}

.krail-N7 .textset .textset-tit {
  margin: 0;
  color: var(--white);
  font-weight: 700
}

.krail-N7 .textset .textset-subtit {
  display: block;
  margin: 1.2rem 0 0;
  color: var(--white)
}

.krail-N7 .textset .textset-desc {
  margin: 0;
  color: var(--white);
  font-weight: 500
}

.krail-N7 .list-area {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  opacity: 0;
  margin: 8rem 0 0;
  padding: 0;
  list-style: none
}

.krail-N7 .list-area .list-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 0 3rem;
  min-height: 16rem;
  opacity: 0;
  transform: translateY(24px)
}

.krail-N7 .list-area .list-item:not(:last-child) {
  border-right: 1px solid rgba(var(--white-rgb), 0.28)
}

.krail-N7 .list-area .count-wrap {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 8.6rem;
  line-height: 8.6rem;
  font-weight: var(--fw-medium);
  color: var(--white)
}

.krail-N7 .list-area .count-num {
  flex-shrink: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  word-break: break-all
}

.krail-N7 .list-area .count-wrap .count-unit {
  color: var(--white);
  font-weight: 500
}

html[lang="en"] .krail-N7 .list-area .count-wrap .count-unit,
html[lang="th"] .krail-N7 .list-area .count-wrap .count-unit {
  font-size: var(--fs-h5)
}

.krail-N7 .list-item p {
  color: var(--white)
}

@container (max-width: 1400px) {
  .krail-N7 .list-area {
    grid-template-columns: repeat(2, 1fr)
  }

  .krail-N7 .list-area .list-item:nth-child(even) {
    border-right: none
  }
}

@media (max-width: 992px) {
  .krail-N7 {
    height: auto;
    clip-path: none
  }

  .krail-N7 .contents-container {
    position: static;
    height: auto;
    min-height: 0;
    padding: 8rem 1.6rem;
    align-items: stretch;
    background: url(../images/krail_N7_02.png) no-repeat center/cover
  }

  .krail-N7 .textset {
    text-align: left
  }

  .krail-N7 .textset .textset-subtit {
    margin: 0.4rem 0
  }

  .krail-N7 .textset .imageset {
    width: 4.8rem;
    height: 4.8rem
  }

  .krail-N7 .list-area {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0
  }

  .krail-N7 .list-area .list-item {
    align-items: flex-start;
    gap: 0.4rem;
    padding: 4rem 0 .8rem;
    width: 100%;
    min-height: 0;
    border-right: none !important;
    border-bottom: 1px solid rgba(var(--white-rgb), 0.28)
  }

  .krail-N7 .list-area .count-wrap {
    font-size: 6rem;
    line-height: 6rem
  }

  .krail-N7 .list-area .count-num {
    display: block
  }
}

@media (prefers-reduced-motion: reduce) {
  .krail-N7 .list-area .list-item {
    transition: none !important
  }
}
/* krail-N8 */
.krail-N8 {
  position: relative;
  height: 400dvh;
  margin-top: -200dvh;
  --clip-side: 25%;
  clip-path: inset(0 var(--clip-side) 0 var(--clip-side))
}

.krail-N8 .contents-container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: sticky;
  top: 0;
  height: 100dvh;
  background: url(../images/krail_N8_01.png) no-repeat center/cover
}

.krail-N8 .contents-container::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.4;
  background: var(--black)
}

.krail-N8 .contents-inner {
  width: 100%;
  max-width: 1920px
}

.krail-N8 .textset {
  opacity: 0;
  text-align: center
}

.krail-N8 .textset>* {
  opacity: 0;
  transform: translateY(30px);
  color: var(--white)
}

.krail-N8 .textset .textset-tit {
  margin: 0;
  font-weight: 700
}

.krail-N8 .textset .textset-desc {
  display: block;
  margin: 1.2rem 0 0
}

.krail-N8 .cardset-wrap {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(30rem), 1fr));
  gap: 4rem;
  margin-top: 8rem;
  opacity: 0
}

.krail-N8 .cardset {
  display: block;
  position: relative;
  transform: translateY(24px);
  opacity: 0;
  min-height: 30rem;
  border-radius: .8rem .8rem 3.4rem .8rem;
  background: rgba(var(--white-rgb), .1);
  border: 1px solid rgba(var(--white-rgb), .5);
  backdrop-filter: blur(1rem);
  transition: background .3s
}

.krail-N8 .cardset:hover {
  background: var(--white)
}

.krail-N8 .cardset-body {
  position: relative;
  z-index: 1;
  padding: 4rem
}

.krail-N8 .cardset-body img {
  width: 4.2rem;
  height: 4.2rem;
  object-fit: contain;
  transition: filter .3s
}

.krail-N8 .cardset:hover img {
  filter: brightness(0)
}

.krail-N8 .cardset-body .cardset-tit {
  display: block;
  margin: 2rem 0 0.8rem;
  font-weight: 700;
  color: var(--white);
  transition: color .3s
}

.krail-N8 .cardset-body .cardset-desc {
  margin: 0;
  color: var(--white);
  font-weight: 500;
  -webkit-line-clamp: unset;
  transition: color .3s
}

.krail-N8 .cardset:hover .cardset-tit,
.krail-N8 .cardset:hover .cardset-desc {
  color: var(--black)
}

.krail-N8 .cardset-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  border: 1px solid rgba(var(--white-rgb), .5);
  transition: border-color .3s, background .3s
}

.krail-N8 .cardset:hover .cardset-arrow {
  border-color: var(--black);
  background: var(--black)
}

.krail-N8 .cardset-arrow-inner {
  overflow: hidden;
  display: flex;
  width: 2.4rem;
  height: 2.4rem
}

.krail-N8 .cardset-arrow i {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  background: url(../icons/ico_arrow_right.svg) no-repeat center/contain;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.krail-N8 .cardset-arrow-inner i:nth-child(1) {
  transform: translateX(-100%)
}

.krail-N8 .cardset-arrow-inner i:nth-child(2) {
  transform: translateX(-100%)
}

.krail-N8 .cardset:hover .cardset-arrow-inner i:nth-child(1) {
  transform: translateX(0)
}

.krail-N8 .cardset:hover .cardset-arrow-inner i:nth-child(2) {
  transform: translateX(0)
}

.krail-N8 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--primary);
  outline-offset: 0.2rem
}

@media (max-width: 992px) {
  .krail-N8 {
    height: auto;
    margin-top: 0;
    clip-path: none
  }

  .krail-N8 .contents-container {
    position: static;
    height: auto;
    min-height: 0;
    padding: 8rem 1.6rem;
    align-items: stretch
  }

  .krail-N8 .textset .textset-desc {
    margin-top: 0.4rem
  }

  .krail-N8 .textset {
    text-align: left
  }

  .krail-N8 .cardset-wrap {
    grid-template-columns: 1fr;
    gap: 1.6rem;
    margin-top: 4rem
  }

  .krail-N8 .cardset {
    min-height: 18rem
  }

  .krail-N8 .cardset-body {
    padding: 2rem
  }

  .krail-N8 .cardset-body .cardset-tit {
    margin-bottom: 0.4rem
  }
}

@media (prefers-reduced-motion: reduce) {
  .krail-N8 .cardset {
    transition: none !important
  }
}
/* krail-N9 */
.krail-N9 {
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N9 .contents-inner {
  display: flex;
  align-items: flex-start;
  gap: 6rem;
  max-width: 1920px;
  margin: auto
}

.krail-N9 .title-area {
  flex: 1 1 75.5rem;
  padding-top: 2.4rem
}

.krail-N9 .title-area .textset-tit {
  margin: 0;
  font-weight: 700
}

.krail-N9 .title-area .textset-subtit {
  display: block;
  margin: 1.2rem 0 0
}

.krail-N9 .title-area .textset-desc {
  margin: 0
}

.krail-N9 .title-area .btnset {
  gap: 1.3rem;
  margin-top: 4rem
}

.krail-N9 .btnset-ico-wrap {
  overflow: hidden;
  display: flex;
  width: 2.4rem;
  height: 2.4rem
}

.krail-N9 .btnset-ico-wrap i {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  background: url(../icons/ico_arrow_right.svg) no-repeat center/contain;
  filter: brightness(0);
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), filter 0.3s
}

.krail-N9 .btnset-ico-wrap i:nth-child(1) {
  transform: translateX(-100%)
}

.krail-N9 .btnset-ico-wrap i:nth-child(2) {
  transform: translateX(-100%)
}

.krail-N9 .title-area .btnset:hover .btnset-ico-wrap i:nth-child(1) {
  transform: translateX(0);
  filter: brightness(1)
}

.krail-N9 .title-area .btnset:hover .btnset-ico-wrap i:nth-child(2) {
  transform: translateX(0);
  filter: brightness(1)
}

.krail-N9 .list-wrap {
  position: relative;
  flex: 1 1 102.5rem
}

.krail-N9 .list-preview {
  position: absolute;
  top: 0;
  right: 100%;
  z-index: 2;
  width: 40rem;
  height: 28rem;
  margin-right: 1.6rem;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  will-change: transform, opacity
}

.krail-N9 .list-preview.is-active {
  visibility: visible
}

.krail-N9 .list-preview-frame {
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: .8rem
}

.krail-N9 .list-preview-track {
  will-change: transform;
  backface-visibility: hidden
}

.krail-N9 .list-preview-slide {
  width: 100%;
  height: 28rem
}

.krail-N9 .list-preview-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.krail-N9 .list-area {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color)
}

.krail-N9 .list-area .list-item {
  display: block;
  position: relative;
  padding: 3.2rem 2.4rem
}

.krail-N9 .list-area li {
  list-style: none
}

.krail-N9 .list-area .list-item:not(:last-child) {
  border-bottom: none
}

.krail-N9 .list-area li:not(:last-child) {
  border-bottom: 1px solid var(--border-color)
}

.krail-N9 .list-area .list-item h3 {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  font-weight: 600;
  transition: color .3s
}

.krail-N9 .list-area .list-item:hover h3 {
  text-decoration: underline;
  color: var(--primary)
}

.krail-N9 .list-area .list-item p {
  margin-top: 2.4rem;
  color: var(--text-color2)
}

.krail-N9 .list-area .list-item .imageset {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none
}

.krail-N9 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--primary);
  outline-offset: 0.2rem
}

@media (max-width: 992px) {
  .krail-N9 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N9 .contents-inner {
    display: block
  }

  .krail-N9 .title-area {
    padding: 0
  }

  .krail-N9 .title-area .textset-subtit {
    margin: 0.4rem 0
  }

  .krail-N9 .title-area .btnset {
    margin-top: 2.4rem;
    height: 4rem
  }

  .krail-N9 .btnset-ico-wrap {
    width: 2rem;
    height: 2rem
  }

  .krail-N9 .list-wrap {
    flex: none;
    width: 100%
  }

  .krail-N9 .list-preview {
    display: none
  }

  .krail-N9 .list-area {
    margin-top: 3rem
  }

  .krail-N9 .list-area .list-item {
    padding: 2rem 1.6rem
  }

  .krail-N9 .list-area .list-item p {
    margin-top: 1.6rem
  }
}

@media (prefers-reduced-motion: reduce) {

  .krail-N9 .list-area .list-item,
  .krail-N9 .btnset-ico-wrap i,
  .krail-N9 .list-preview,
  .krail-N9 .list-preview-track {
    transition: none !important
  }
}
/* krail-N10 */
.krail-N10 {
  overflow: hidden;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 8rem;
  background: url(../images/krail_N10_01.png) no-repeat center/cover
}

.krail-N10 .block_overlay {
  position: absolute;
  inset: 0;
  opacity: 0.2;
  background-color: var(--black)
}

.krail-N10 .contents-container:not(.fullscreen) {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 52rem
}

.krail-N10 .contents-inner {
  width: 100%
}

.krail-N10 .textset {
  text-align: center
}

.krail-N10 .textset-tit {
  color: var(--white)
}

.krail-N10 .textset-tit+.textset-desc {
  margin: 1.2rem 0 4rem;
  color: var(--white);
  font-weight: 500
}

.krail-N10 .textset .btnset {
  gap: 5.2rem;
  margin: 0
}

.krail-N10 .btnset-ico-wrap {
  overflow: hidden;
  display: flex;
  width: 2.4rem;
  height: 2.4rem
}

.krail-N10 .btnset-ico-wrap i {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  background: url(../icons/ico_arrow_right.svg) no-repeat center/contain;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), filter 0.3s
}

.krail-N10 .btnset-ico-wrap i:nth-child(1) {
  transform: translateX(-100%)
}

.krail-N10 .btnset-ico-wrap i:nth-child(2) {
  transform: translateX(-100%)
}

.krail-N10 .textset .btnset:hover .btnset-ico-wrap i:nth-child(1) {
  transform: translateX(0);
  filter: brightness(0)
}

.krail-N10 .textset .btnset:hover .btnset-ico-wrap i:nth-child(2) {
  transform: translateX(0);
  filter: brightness(0)
}

.krail-N10 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--white);
  outline-offset: 0.2rem
}

@media (max-width: 992px) {
  .krail-N10 {
    padding-top: 4rem;
    padding-bottom: 4rem;
    background: url(../images/krail_N10_02.png) no-repeat center/cover !important
  }

  .krail-N10 .contents-container:not(.fullscreen) {
    height: 38rem
  }

  .krail-N10 .textset-tit+.textset-desc {
    margin-bottom: 2.4rem
  }

  .krail-N10 .textset .btnset {
    gap: 1.2rem;
    height: 4.2rem
  }

  .krail-N10 .btnset-ico-wrap {
    width: 2rem;
    height: 2rem
  }
}

@media (prefers-reduced-motion: reduce) {

  .krail-N10 .textset-tit,
  .krail-N10 .textset-desc,
  .krail-N10 .btnset {
    transition: none !important
  }
}
/* krail-N11 */
.krail-N11 {
  position: fixed;
  right: 4rem;
  bottom: 4rem;
  z-index: 100;
  --icon-fs-mqlwrgdv: 2rem;
  --icon-fs-mqm0tjml: 2rem
}

.krail-N11 .contents-container {
  max-width: 100%
}

.krail-N11 .top-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6rem;
  height: 6rem;
  font-size: 2rem;
  color: var(--black);
  background: var(--white);
  border: none;
  border-radius: 50%;
  box-shadow: 0 0 1.8rem 0 rgba(var(--black-rgb), 0.1);
  transition: background 0.3s, color 0.3s
}

.krail-N11 .top-btn:hover {
  color: var(--white);
  background: var(--black)
}

.krail-N11 .top-btn-ico {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  width: 2rem;
  height: 2rem
}

.krail-N11 .top-btn-ico i {
  display: flex;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.krail-N11 .top-btn-ico i:nth-child(2) {
  transform: translateY(100%)
}

.krail-N11 .top-btn:hover .top-btn-ico i:nth-child(1) {
  transform: translateY(-100%)
}

.krail-N11 .top-btn:hover .top-btn-ico i:nth-child(2) {
  transform: translateY(-100%)
}

.krail-N11 .top-btn:focus-visible {
  outline: 0.2rem solid var(--primary);
  outline-offset: 0.2rem
}

@media (max-width: 992px) {
  .krail-N11 {
    right: 1.6rem;
    bottom: calc(2rem + env(safe-area-inset-bottom, 0px));
    --icon-fs-mqlwrgdv: 1rem;
    --icon-fs-mqm0tjml: 1rem
  }

  .krail-N11 .top-btn {
    width: 3rem;
    height: 3rem;
    font-size: 1rem
  }

  .krail-N11 .top-btn-ico {
    width: 1rem;
    height: 1rem
  }
}

@media (prefers-reduced-motion: reduce) {
  .krail-N11 .top-btn-ico i {
    transition: none !important
  }
}
/* krail-N2 */
.krail-N2 {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background: var(--black);
  overflow: hidden
}

.krail-N2 .footer-inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 4rem;
  max-width: 1920px;
  margin: auto
}

.krail-N2 .footer-left {}

.krail-N2 .footer-addr-list {
  display: flex;
  align-items: flex-start;
  gap: 4rem
}

.krail-N2 .footer-addr-item {}

.krail-N2 .footer-addr-item strong {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: .8rem;
  color: var(--white);
  font-weight: 600
}

.krail-N2 .footer-addr-item p {
  margin-top: 0.8rem;
  color: var(--white)
}

.krail-N2 .footer-left small {
  display: block;
  margin-top: 3rem;
  color: var(--white);
  opacity: 0.7
}

.krail-N2 .footer-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 3rem
}

.krail-N2 .footer-logo {
  margin-bottom: 0
}

.krail-N2 .footer-logo img {
  height: 4.8rem;
  object-fit: contain
}

.krail-N2 .footer-menulist {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none
}

.krail-N2 .footer-logo a {
  display: block
}

.krail-N2 .footer-menulink a {
  color: var(--white);
  padding-right: 1.2rem;
  font-size: var(--fs-p2)
}

.krail-N2 .footer-menulink+.footer-menulink a {
  padding-left: 1.2rem
}

.krail-N2 .footer-menulink {
  position: relative;
  display: flex;
  align-items: center
}

.krail-N2 .footer-menulink+.footer-menulink::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1px;
  height: 1.4rem;
  background: rgba(255, 255, 255, 0.3)
}

.krail-N2 .footer-snslist {
  display: flex;
  align-items: center
}

.krail-N2 .footer-snsitem+.footer-snsitem {
  margin-left: 0.8rem
}

.krail-N2 .footer-snslink {
  width: 3.6rem;
  height: 3.6rem;
  padding: 0.6rem;
  display: flex;
  align-items: center
}

.krail-N2 .footer-snslink img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.krail-N2 .selectset {
  max-width: 18rem;
  height: 4rem
}

.krail-N2 .footer-txtgroup {
  margin-top: 2rem
}

.krail-N2 .footer-txtgroup address.footer-txt p {
  color: rgba(var(--white-rgb), 0.6)
}

.krail-N2 .footer-txt {
  display: flex
}

.krail-N2 .footer-txt+.footer-txt {
  margin-top: 0.3rem
}

.krail-N2 .footer-txt p {
  margin-bottom: 0;
  color: var(--white)
}

.krail-N2 .footer-txt p+p {
  margin-left: 0.8rem
}

.krail-N2 .footer-txt p span+span {
  margin-left: 0.8rem
}

.krail-N2 .selectset .selectset-list {
  background: rgba(255, 255, 255, 0.1)
}

.krail-N2 .selectset .btn {
  display: flex;
  align-items: center;
  color: var(--white)
}

.krail-N2 .selectset .selectset-toggle::after {
  font-size: var(--fs-p3);
  color: var(--white)
}

.krail-N2 .selectset.active .btn {
  color: var(--white)
}

.krail-N2 .selectset-link {
  color: var(--white) !important
}

.krail-N2 .selectset .selectset-link::after {
  color: var(--white)
}

.krail-N2 .selectset .selectset-area.active .selectset-toggle {
  color: var(--white);
  border-color: var(--white)
}

.krail-N2 .footer-modal {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  transition: opacity 0.3s, visibility 0.3s;
  will-change: opacity;
  overflow-y: auto;
  background: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.4rem;
  opacity: 0;
  visibility: hidden
}

.krail-N2 .footer-modal.block-active {
  opacity: 1;
  visibility: visible
}

.krail-N2 .modal-area {
  width: 100%;
  max-width: 92rem;
  background: var(--white);
  border-radius: 0.6rem
}

.krail-N2 .info-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.4rem;
  border-bottom: 1px solid #e5e5e5
}

.krail-N2 .modal-close {
  cursor: pointer
}

.krail-N2 .info-area {
  overflow-y: auto
}

.krail-N2 .modal-email .info-area {
  max-height: 17rem
}

.krail-N2 .modal-privacy .info-area {
  max-height: 70.3rem
}

.krail-N2 .info-group+.info-group {
  margin-top: 2.4rem
}

.krail-N2 .info-group strong {
  padding-bottom: 1.2rem;
  display: block
}

.krail-N2 .info-desc {
  max-height: 20.7rem;
  padding: 1.6rem;
  background: #f8f8fa;
  border-radius: 1.6rem;
  overflow-y: auto;
  scrollbar-width: none
}

.krail-N2 .info-desc p.fw-medium {
  font-weight: var(--fw-medium)
}

.krail-N2 .info-desc .mtb {
  margin: 2.4rem 0
}

.krail-N2 .info-desc em {
  font-style: normal;
  font-weight: 600;
  margin: 2.4rem 0 1rem;
  position: relative;
  display: flex;
  align-items: center
}

.krail-N2 .info-list em::before {
  content: "";
  width: 0.4rem;
  height: 0.4rem;
  background: var(--black);
  border-radius: 50%;
  margin-right: 0.8rem
}

.krail-N2 .info-list p {
  padding-left: 1.2rem
}

.krail-N2 .footer-right small {
  display: none
}

.krail-N2 :is(a, button):focus-visible {
  outline: 0.2rem solid var(--white);
  outline-offset: 0.2rem
}

@media (max-width: 992px) {
  .krail-N2 {
    padding-top: 4rem;
    padding-bottom: 4rem
  }

  .krail-N2 .footer-inner {
    flex-direction: column;
    gap: 2.4rem
  }

  .krail-N2 .footer-addr-list {
    flex-direction: column;
    gap: 2.4rem
  }

  .krail-N2 .footer-left small {
    display: none
  }

  .krail-N2 .footer-right {
    align-items: flex-start;
    flex-direction: column-reverse;
    gap: 2.4rem
  }

  .krail-N2 .footer-right small {
    display: block;
    margin-top: -1rem;
    color: var(--white);
    opacity: 0.7
  }
}

@media (prefers-reduced-motion: reduce) {

  .krail-N2 .footer-menulink a,
  .krail-N2 .modalset {
    transition: none !important
  }
}
/* krail-N13 */
.krail-N13 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #FAFAFD
}

.krail-N13 .contents-inner {
  display: flex;
  align-items: flex-start;
  gap: 6.4rem
}

.krail-N13 .textset {
  flex: 1 1 70.4rem
}

.krail-N13 .textset .textset-desc {
  margin: 4rem 0;
  font-weight: 400
}

.krail-N13 .textset .textset-wrap {
  display: flex;
  align-items: center;
  gap: .8rem
}

.krail-N13 .textset .textset-wrap>* {
  font-weight: 700
}

.krail-N13 .imageset {
  overflow: hidden;
  flex: 1 1 67.2rem;
  height: auto;
  border-radius: .8rem;
  aspect-ratio: 672/672
}

@media (max-width: 992px) {
  .krail-N13 {
    padding-top: 0;
    padding-bottom: 8rem
  }

  .krail-N13 .contents-inner {
    flex-direction: column-reverse;
    gap: 2.4rem
  }

  .krail-N13 .imageset {
    flex: none;
    transform: translateX(-1.6rem);
    width: calc(100% + 3.2rem);
    border-radius: 0;
    aspect-ratio: 1
  }

  .krail-N13 .textset {
    flex: none
  }

  .krail-N13 .textset .textset-desc {
    margin: 2.4rem 0
  }
}
/* krail-N14 */

.krail-N14 {
  overflow: hidden;
  position: relative
}

.krail-N14 .contents-container {
  padding: 0
}

.krail-N14 .loop-area {
  overflow: hidden;
  display: flex;
  align-items: center;
  width: 100vw
}

.krail-N14 .text-wrap {
  display: flex;
  white-space: nowrap
}

.krail-N14 .text-wrap span {
  padding-right: 2rem;
  color: #F6F8FC;
  font-family: var(--ff-ko3);
  font-size: 14rem;
  line-height: 20rem;
  font-weight: 700
}

@media (max-width: 992px) {
  .krail-N14 .text-wrap span {
    padding-right: 1.2rem;
    font-size: 6rem;
    line-height: 12rem
  }
}
/* krail-N15 */
.krail-N15 {
  overflow: hidden;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 16rem
}

.krail-N15 .contents-inner {
  display: flex;
  align-items: flex-start;
  gap: 6.4rem
}

.krail-N15 .textset {
  flex: 1 1 70.4rem
}

.krail-N15 .textset .textset-desc {
  margin: 4rem 0;
  font-weight: 400
}

.krail-N15 .textset .textset-desc strong {
  font-weight: 700
}

.krail-N15 .textset .textset-wrap {
  display: flex;
  align-items: center;
  gap: .8rem
}

.krail-N15 .textset .textset-wrap>* {
  font-weight: 700
}

.krail-N15 .imageset {
  overflow: hidden;
  flex: 1 1 67.2rem;
  height: auto;
  border-radius: .8rem;
  aspect-ratio: 672/672
}

@media (max-width: 992px) {
  .krail-N15 {
    padding-top: 0;
    padding-bottom: 8rem
  }

  .krail-N15 .contents-inner {
    flex-direction: column;
    gap: 2.4rem
  }

  .krail-N15 .imageset {
    flex: none;
    transform: translateX(-1.6rem);
    width: calc(100% + 3.2rem);
    border-radius: 0;
    aspect-ratio: 1
  }

  .krail-N15 .textset {
    flex: none
  }

  .krail-N15 .textset .textset-desc {
    margin: 2.4rem 0
  }
}
/* krail-N18 */
.krail-N18 {
  overflow: hidden;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 16rem
}

.krail-N18 .textset .textset-tit {
  color: var(--primary)
}

.krail-N18 .textset .textset-subtit {
  display: block;
  margin: .8rem 0 2.4rem
}

.krail-N18 .textset p {
  font-weight: 700
}

.krail-N18 .textset span {
  display: block;
  margin-top: .4rem;
  color: var(--text-color3)
}

.krail-N18 .list-area {
  position: relative;
  margin-top: 8rem
}

.krail-N18 .list-area .line-wrap {
  display: flex;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0.8rem;
  height: 100%
}

.krail-N18 .list-area .line-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  width: 0.1rem;
  height: 100%;
  background: var(--border-color)
}

.krail-N18 .list-area .line-wrap .bar {
  position: absolute;
  top: 0;
  width: 0.1rem;
  height: 0;
  background: var(--primary)
}

.krail-N18 .list-area .list-item {
  display: flex;
  align-items: center;
  gap: 10.4rem
}

.krail-N18 .list-area .list-item+.list-item {
  margin-top: 20rem
}

.krail-N18 .list-area .list-item:nth-child(odd) {
  flex-direction: row-reverse
}

.krail-N18 .list-area .list-item .imageset {
  overflow: hidden;
  flex: 1 1 66.8rem;
  height: auto;
  border-radius: .8rem;
  aspect-ratio: 668/428
}

.krail-N18 .list-area .list-item .dot {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: .8rem;
  height: .8rem;
  border-radius: 50%;
  background: var(--border-color);
  transition: background 0.3s cubic-bezier(0.4, 0, 0.2, 1)
}

.krail-N18 .list-area .list-item .dot.active {
  background: var(--primary)
}

.krail-N18 .list-area .list-item .desc {
  flex: 1 1 66.8rem
}

.krail-N18 .list-area .list-item .desc strong {
  display: block
}

.krail-N18 .list-area .list-item .desc ul {
  margin-top: 1.6rem
}

.krail-N18 .list-area .list-item .desc li {
  display: flex;
  gap: .8rem;
  color: var(--text-color3)
}

.krail-N18 .list-area .list-item .desc li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.6rem;
  height: 0.1rem;
  background: var(--text-color3)
}

.krail-N18 .list-area .list-item .desc li+li {
  margin-top: 0.4rem
}

@media (max-width: 992px) {
  .krail-N18 {
    padding-top: 4rem;
    padding-bottom: 8rem
  }

  .krail-N18 .textset .textset-subtit {
    margin: 0.4rem 0 1.6rem
  }

  .krail-N18 .list-area {
    margin-top: 4rem
  }

  .krail-N18 .list-area .line-wrap,
  .krail-N18 .list-area .list-item .dot {
    display: none
  }

  .krail-N18 .list-area .list-item {
    flex-direction: column !important;
    gap: 2.4rem
  }

  .krail-N18 .list-area .list-item+.list-item {
    margin-top: 4rem
  }

  .krail-N18 .list-area .list-item .imageset {
    flex: none;
    width: 100%;
    height: 24.8rem;
    aspect-ratio: unset
  }

  .krail-N18 .list-area .list-item .desc {
    flex: none;
    width: 100%
  }

  .krail-N18 .list-area .list-item .desc ul {
    margin-top: 1.2rem
  }

  .krail-N18 .list-area .list-item .desc li {
    gap: 0.4rem
  }
}
/* krail-N19 */
.krail-N19 {
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #f8f8f8
}

.krail-N19 .contents-inner {
  width: 100%
}

.krail-N19 .title-area {
  margin-bottom: 10rem;
  text-align: center
}

.krail-N19 .list-area {
  display: flex;
  gap: 28rem
}

.krail-N19 .col-left {
  flex: 1 1 43.2rem
}

.krail-N19 .list-wrap {
  position: sticky;
  top: 10rem
}

.krail-N19 .info-list {
  margin-top: 8rem
}

.krail-N19 .info-list li {
  display: flex;
  gap: 1.2rem;
  color: #bdbdbd;
  font-weight: var(--fw-bold);
  transition: color 0.3s
}

.krail-N19 .info-list li::before {
  content: attr(data-index)
}

.krail-N19 .info-list li+li {
  margin-top: 1.2rem
}

.krail-N19 .info-list li.active {
  color: var(--text-color1)
}

.krail-N19 .col-right {
  flex: 1 1 72.8rem
}

.krail-N19 .item+.item {
  margin-top: 16rem
}

.krail-N19 .thumb {
  height: 36.8rem
}

.krail-N19 .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.krail-N19 .desc strong {
  display: block;
  margin: 2.4rem 0 1.6rem;
  color: var(--text-color3);
  transition: color 0.3s
}

.krail-N19 .desc p {
  color: #181818
}

.krail-N19 .item.active .desc strong {
  color: #181818
}

@media (max-width: 992px) {
  .krail-N19 {
    padding-top: 0;
    padding-bottom: 8rem
  }

  .krail-N19 .title-area {
    margin-bottom: 1rem
  }

  .krail-N19 .list-area {
    flex-direction: column;
    gap: 5rem
  }

  .krail-N19 .col-left {
    flex: none;
    position: sticky;
    top: 0 !important;
    transform: translateZ(0);
    backface-visibility: hidden;
    width: 100%;
    max-width: 100%;
    will-change: top
  }

  .krail-N19 .col-left::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% + 0.2rem);
    height: 100%;
    background: #f8f8f8
  }

  .krail-N19 .list-wrap {
    position: relative;
    top: unset;
    padding: 3.2rem 0 2.4rem;
    background: #f8f8f8
  }

  .krail-N19 .info-list {
    margin-top: 4rem
  }

  .krail-N19 .info-list li {
    gap: 0.4rem
  }

  .krail-N19 .info-list li+li {
    margin-top: 0
  }

  .krail-N19 .info-list li:not(.active) {
    display: none
  }

  .krail-N19 .item+.item {
    margin-top: 8rem
  }

  .krail-N19 .thumb {
    overflow: hidden;
    height: auto;
    aspect-ratio: 328/368;
    border-radius: .8rem
  }

  .krail-N19 .desc strong {
    margin: 1.6rem 0 1.2rem
  }
}
/* krail-N20 */
.krail-N20 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #FAFAFD
}

.krail-N20 .info-item {
  display: flex;
  align-items: flex-start;
  gap: 10rem
}

.krail-N20 .info-item+.info-item {
  align-items: flex-end
}

.krail-N20 .info-item .imageset {
  overflow: hidden;
  flex: 1 1 73.2rem;
  height: auto;
  aspect-ratio: 732/622;
  border-radius: .8rem
}

.krail-N20 .info-item+.info-item .imageset {
  flex: 1 1 60.8rem;
  aspect-ratio: 608/480
}

.krail-N20 .info-item .desc {
  flex: 1 1 60.8rem
}

.krail-N20 .info-item+.info-item .desc {
  flex: 1 1 73.2rem
}

.krail-N20 .info-item .textset+.textset {
  margin-top: 4rem
}

.krail-N20 .textset .textset-subtit {
  display: block;
  margin: 2.4rem 0 0;
  font-weight: 600;
  color: #2F2F2F
}

.krail-N20 .textset .textset-subtit+.textset-desc {
  margin-top: 1.2rem
}

.krail-N20 .textset .textset-desc+.textset-subtit {
  margin-top: 1.2rem
}

.krail-N20 .textset .textset-desc {
  margin-top: 2.4rem;
  color: var(--text-color3)
}

@media (max-width: 992px) {
  .krail-N20 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N20 .contents-inner {
    display: flex;
    flex-direction: column;
    gap: 2.4rem
  }

  .krail-N20 .info-item,
  .krail-N20 .info-item .desc {
    display: contents
  }

  .krail-N20 .textset .textset-desc,
  .krail-N20 .textset .textset-subtit {
    margin-top: 1.6rem
  }

  .krail-N20 .info-item .imageset,
  .krail-N20 .info-item+.info-item .imageset {
    flex: none;
    width: 100%;
    max-width: 100%;
    aspect-ratio: 328/300
  }

  .krail-N20 .info-item+.info-item .imageset {
    aspect-ratio: 328/300
  }

  .krail-N20 .info-item .textset+.textset {
    margin-top: 0
  }

  .krail-N20 .info-item:first-of-type .textset:nth-of-type(1) {
    order: 1
  }

  .krail-N20 .info-item:first-of-type .textset:nth-of-type(2) {
    order: 2
  }

  .krail-N20 .info-item:first-of-type .textset:nth-of-type(3) {
    order: 3
  }

  .krail-N20 .info-item:first-of-type .textset:nth-of-type(4) {
    order: 4
  }

  .krail-N20 .info-item:last-of-type .textset:nth-of-type(1) {
    order: 5
  }

  .krail-N20 .info-item:last-of-type .textset:nth-of-type(2) {
    order: 6
  }

  .krail-N20 .info-item:first-of-type .imageset {
    order: 7
  }

  .krail-N20 .info-item:last-of-type .imageset {
    order: 8
  }
}
/* krail-N21 */
.krail-N21 {
  position: relative;
  z-index: 1;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #FAFAFD
}

.krail-N21 .contents-inner {
  display: flex;
  align-items: flex-start;
  gap: 12rem
}

.krail-N21 .sidebar-col {
  flex: 0 0 25.1rem;
  width: 25.1rem;
  align-self: flex-start
}

.krail-N21 .sidebar {
  width: 100%
}

.krail-N21 .list-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 9.4rem;
  cursor: pointer
}

.krail-N21 .list-item::after {
  content: '';
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  height: 1px;
  margin-top: -1px;
  background: #767676;
  transition: background-color .3s;
  pointer-events: none
}

.krail-N21 .list-item p,
.krail-N21 .list-item span {
  font-weight: 700;
  color: var(--text-color3);
  transition: color 0.3s ease
}

.krail-N21 .list-item.active::after {
  background: var(--primary)
}

.krail-N21 .list-item.active p,
.krail-N21 .list-item.active span {
  color: var(--primary)
}

.krail-N21 .content-area {
  flex: 1 1 auto;
  min-width: 0
}

.krail-N21 .content-item+.content-item {
  margin-top: 16rem
}

.krail-N21 .textset-subtit {
  font-weight: 500;
  color: var(--text-color3);
  transition: color .3s
}

.krail-N21 .textset-subtit.active {
  color: var(--primary)
}

.krail-N21 .textset-tit {
  display: block;
  margin: .8rem 0 1.2rem
}

.krail-N21 .info-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem;
  margin-top: 4rem
}

.krail-N21 .info-item {
  display: flex;
  align-items: flex-start;
  padding: 2.4rem;
  border-radius: .8rem;
  background: var(--white)
}

.krail-N21 .info-item>p {
  flex-shrink: 0;
  font-weight: 700
}

.krail-N21 .info-item .info-desc {
  flex: 1
}

.krail-N21 .info-item .info-desc span {
  font-weight: 700;
  color: var(--primary)
}

.krail-N21 .info-item .info-desc strong {
  display: block;
  margin: 0.8rem 0;
  font-weight: 700
}

.krail-N21 .info-item .info-desc li {
  display: flex;
  gap: 0.8rem
}

.krail-N21 .info-item .info-desc li::before {
  content: '';
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: var(--black)
}

.krail-N21 .achievement {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
  margin-top: 4rem
}

.krail-N21 .achievement-item {
  padding: 2.4rem;
  border-radius: .8rem;
  background: var(--white)
}

.krail-N21 .achievement-item .achievement-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem
}

.krail-N21 .achievement-item .achievement-head strong {
  font-weight: 700
}

.krail-N21 .achievement-item .achievement-head span {
  font-weight: 700;
  color: #E5E5E5
}

.krail-N21 .achievement-item .achievement-body {
  margin-top: 2.4rem
}

.krail-N21 .achievement-item .achievement-desc {
  display: flex;
  align-items: center;
  gap: 1.2rem
}

.krail-N21 .achievement-item .achievement-desc+.achievement-desc {
  margin-top: 1.2rem
}

.krail-N21 .achievement-item .imageset {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: .8rem;
  width: 5.2rem;
  height: 5.2rem;
  background: #F8F8F8
}

.krail-N21 .achievement-item .imageset-img {
  width: 3.2rem;
  height: 3.2rem
}

.krail-N21 .achievement-item .achievement-desc strong {
  font-weight: 700
}

@media (max-width: 1440px) {
  .krail-N21 .achievement {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width: 1200px) {

  .krail-N21 .info-wrap,
  .krail-N21 .achievement {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media (max-width: 992px) {
  .krail-N21 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N21 .contents-inner {
    flex-direction: column;
    gap: 0
  }

  .krail-N21 .sidebar-col {
    display: none
  }

  .krail-N21 .content-area {
    width: 100%
  }

  .krail-N21 .textset-subtit {
    color: var(--primary)
  }

  .krail-N21 .textset-tit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N21 .info-wrap {
    gap: 1.6rem
  }

  .krail-N21 .info-item {
    padding: 1.6rem
  }

  .krail-N21 .info-item .info-desc li {
    gap: 0.4rem
  }

  .krail-N21 .content-item+.content-item {
    margin-top: 10.4rem
  }

  .krail-N21 .achievement {
    gap: 1.6rem
  }

  .krail-N21 .achievement-item {
    padding: 1.6rem
  }

  .krail-N21 .achievement-item .achievement-body {
    margin-top: 1.6rem
  }

  .krail-N21 .achievement-item .imageset {
    width: 4.4rem;
    height: 4.4rem
  }

  .krail-N21 .achievement-item .imageset-img {
    width: 2.4rem;
    height: 2.4rem
  }

  .krail-N21 .achievement-item .achievement-desc {
    gap: 0.8rem
  }
}
/* krail-N35 */
.krail-N35 {
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N35 .contents-inner {
  display: flex;
  align-items: flex-start;
  gap: 12rem
}

.krail-N35 .sidebar-spacer {
  flex: 0 0 25.1rem;
  width: 25.1rem
}

.krail-N35 .content-area {
  flex: 1 1 auto;
  min-width: 0
}

.krail-N35 .content-item+.content-item {
  margin-top: 16rem
}

.krail-N35 .textset-subtit {
  font-weight: 500;
  color: var(--text-color3);
  transition: color .3s
}

.krail-N35 .textset-subtit.active {
  color: var(--primary)
}

.krail-N35 .textset-tit {
  display: block;
  margin: .8rem 0 1.2rem
}

.krail-N35 .global {
  display: flex;
  align-items: stretch;
  gap: 4rem;
  margin-top: 4rem
}

.krail-N35 .global-item {
  flex: 1 1 0;
  padding: 2.4rem;
  border-radius: .8rem;
  background: #F8F8F8;
  text-align: center
}

.krail-N35 .global-item>strong {
  display: block;
  font-weight: 700
}

.krail-N35 .global-item:first-child>strong {
  color: var(--primary)
}

.krail-N35 .global-item:nth-child(3)>strong {
  color: #641A03
}

.krail-N35 .global-item:last-child>strong {
  color: #320D02
}

.krail-N35 .global-title {
  transform: translateX(-3.1rem);
  margin: 1.2rem 0 .8rem;
  padding: 1.4rem;
  width: calc(100% + 6.2rem);
  min-height: 5.8rem;
  text-align: center;
  border-radius: .8rem
}

.krail-N35 .global-item:first-child .global-title {
  background: var(--primary)
}

.krail-N35 .global-item:nth-child(3) .global-title {
  background: #641A03
}

.krail-N35 .global-item:last-child .global-title {
  background: #320D02
}

.krail-N35 .global-title p {
  font-weight: 700;
  color: var(--white)
}

.krail-N35 .global-item>p strong {
  display: block;
  font-weight: 700
}

.krail-N35 .ico-arrow {
  flex-shrink: 0;
  align-self: center;
  width: 4.6rem;
  height: .6rem;
  background: url(../icons/ico_arrow_dash.svg) no-repeat center / contain
}

.krail-N35 .competitiveness {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem;
  margin-top: 4rem
}

.krail-N35 .competitiveness-item {
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N35 .competitiveness-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.8rem;
  height: 3.4rem;
  border-radius: .4rem;
  background: var(--primary);
  text-align: center;
  color: var(--white);
  font-weight: 700
}

.krail-N35 .competitiveness-item:last-child .competitiveness-badge {
  background: #9A1F1E
}

.krail-N35 .competitiveness-tit {
  display: block;
  margin: 2.4rem 0;
  font-weight: 700
}

.krail-N35 .competitiveness-desc+.competitiveness-desc {
  margin-top: 4rem
}

.krail-N35 .competitiveness-desc strong {
  display: block;
  font-weight: 700
}

.krail-N35 .competitiveness-desc p {
  margin-top: .8rem
}

.krail-N35 .competitiveness-desc p+strong,
.krail-N35 .competitiveness-desc strong+strong {
  margin-top: 0.8rem
}

.krail-N35 .competitiveness-alert {
  margin: 4rem 0;
  padding: 1.6rem;
  border-radius: .8rem;
  background: #F8F8F8
}

.krail-N35 .competitiveness-alert-item+.competitiveness-alert-item {
  margin-top: 1.2rem
}

.krail-N35 .competitiveness-alert-item strong {
  font-weight: 700
}

.krail-N35 .competitiveness-alert-item p {
  margin-top: .8rem
}

@media (max-width: 1280px) {
  .krail-N35 .global {
    flex-direction: column;
    gap: 1.2rem
  }

  .krail-N35 .ico-arrow {
    width: .6rem;
    height: 2rem;
    background: url(../icons/ico_arrow_dash_primary.svg) no-repeat center / contain
  }

  .krail-N35 .global-item {
    flex: none;
    width: 100%
  }
}

@media (max-width: 992px) {
  .krail-N35 {
    padding-top: 4rem;
    padding-bottom: 4rem
  }

  .krail-N35 .contents-inner {
    flex-direction: column;
    gap: 0
  }

  .krail-N35 .sidebar-spacer {
    display: none
  }

  .krail-N35 .content-item+.content-item {
    margin-top: 8rem
  }

  .krail-N35 .textset-tit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N35 .global-item {
    padding: 1.6rem
  }

  .krail-N35 .global-title {
    transform: none;
    margin: 1.6rem 0;
    padding: 0.8rem;
    border-radius: .4rem;
    min-height: 4.2rem;
    width: 100%
  }

  .krail-N35 .competitiveness {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.6rem
  }

  .krail-N35 .competitiveness-item {
    padding: 1.6rem
  }

  .krail-N35 .competitiveness-badge {
    padding: 0 0.4rem;
    min-height: 3.2rem
  }

  .krail-N35 .competitiveness-tit {
    margin: 1.6rem 0
  }

  .krail-N35 .competitiveness-desc+.competitiveness-desc {
    margin-top: 2.4rem
  }

  .krail-N35 .competitiveness-desc p,
  .krail-N35 .competitiveness-desc p+strong,
  .krail-N35 .competitiveness-desc strong+strong {
    margin-top: 0.4rem
  }

  .krail-N35 .competitiveness-alert {
    margin: 2.4rem 0;
    padding: 1.2rem;
    border-radius: .4rem
  }

  .krail-N35 .competitiveness-alert-item p {
    margin-top: 0.4rem
  }
}
/* krail-N22 */
.krail-N22 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N22 .contents-inner {
  width: 100%
}

.krail-N22 .textset-tit {
  color: var(--primary)
}

.krail-N22 .textset-subtit {
  display: block;
  margin: .8rem 0 1.2rem
}

.krail-N22 .textset .textset-desc {
  margin: 0;
  color: #181818
}

.krail-N22 .list-area {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N22 .list-area .item {
  grid-column: span 2;
  padding: 2.4rem;
  border-radius: .8rem;
  background: var(--white)
}

.krail-N22 .list-area .item:nth-child(4),
.krail-N22 .list-area .item:nth-child(5) {
  grid-column: span 3
}

.krail-N22 .list-area .item h3 {
  margin: 1.2rem 0;
  font-weight: 700
}

.krail-N22 .list-area .item ul {
  margin-top: 1.2rem
}

.krail-N22 .list-area .item li strong {
  font-weight: 700
}

.krail-N22 .list-area .item li+li {
  margin-top: 1.2rem
}

@media (max-width: 992px) {
  .krail-N22 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N22 .textset-subtit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N22 .list-area {
    grid-template-columns: 1fr;
    gap: 1.6rem;
    margin-top: 4rem
  }

  .krail-N22 .list-area .item {
    padding: 1.6rem
  }

  .krail-N22 .list-area .item,
  .krail-N22 .list-area .item:nth-child(4),
  .krail-N22 .list-area .item:nth-child(5) {
    grid-column: span 1
  }

  .krail-N22 .list-area .item h3 {
    margin: 0.8rem 0
  }
}
/* krail-N23 */
.krail-N23 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 8rem
}

.krail-N23 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N23 .org {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 8.2rem;
  margin-top: 8rem
}

.krail-N23 .org-main {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8.2rem
}

.krail-N23 .item {
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N23 .org-main .item {
  position: relative;
  min-width: 20.5rem
}

.krail-N23 .org-main .item+.item::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 100%;
  transform: translateX(-50%);
  width: 0.1rem;
  height: 8.2rem;
  background: var(--border-color)
}

.krail-N23 .org-main .item.main {
  background: var(--primary)
}

.krail-N23 .item strong {
  font-weight: 700
}

.krail-N23 .org-main .item.main strong,
.krail-N23 .org-main .item.main span,
.krail-N23 .org-main .item.main p {
  color: var(--white)
}

.krail-N23 .item span {
  display: block;
  margin-top: 1.2rem;
  font-weight: 700
}

.krail-N23 .item p {
  margin-top: 1.2rem
}

.krail-N23 .org-sub {
  position: relative
}

.krail-N23 .org-sub::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 100%;
  width: 8.2rem;
  height: 0.1rem;
  background: var(--border-color)
}

@media (max-width: 992px) {
  .krail-N23 {
    padding-top: 8rem;
    padding-bottom: 4rem
  }

  .krail-N23 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N23 .org {
    flex-direction: column;
    align-items: center;
    gap: 4rem;
    margin-top: 4rem
  }

  .krail-N23 .org-main {
    gap: 4rem;
    width: 100%
  }

  .krail-N23 .org-main .item {
    width: 100%;
    min-width: 0
  }

  .krail-N23 .org-main .item+.item::before {
    height: 4rem
  }

  .krail-N23 .item {
    padding: 1.6rem;
    text-align: center
  }

  .krail-N23 .item span,
  .krail-N23 .item p {
    margin-top: 0.8rem
  }

  .krail-N23 .org-sub {
    width: 100%
  }

  .krail-N23 .org-sub::before {
    content: none
  }

  .krail-N23 .org-sub .item {
    text-align: left
  }
}
/* krail-N24 */
.krail-N24 {
  overflow: hidden;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 16rem
}

.krail-N24 .textset .textset-tit {
  color: var(--primary)
}

.krail-N24 .textset .textset-subtit {
  display: block;
  margin: .8rem 0 1.2rem
}

.krail-N24 .textset .textset-desc {
  color: #181818
}

.krail-N24 .tableset {
  margin-top: 8rem
}

.krail-N24 .tableset.tableset-round {
  border-radius: 1.6rem
}

.krail-N24 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  text-align: center;
  font-weight: 700
}

.krail-N24 .tableset-table .col-category {
  width: 10rem
}

.krail-N24 .tableset-table .col-position {
  width: 14rem
}

.krail-N24 .tableset-table .col-duty {
  width: 48.7rem
}

.krail-N24 .tableset-table .col-name {
  width: 14rem
}

.krail-N24 .tableset-table .col-contact {
  width: 28rem
}

.krail-N24 .tableset-table .col-email {
  width: 29.3rem
}

.krail-N24 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N24 .tableset-table td.cell-category {
  background: #FBF6F6;
  font-weight: 700;
  text-align: center
}

.krail-N24 .tableset .tableset-table>tbody>*>* {
  color: var(--text-color1);
  text-align: center
}

.krail-N24 .tableset-table td.cell-duty {
  text-align: left;
  padding: 1.2rem 1.6rem;
  color: #181818
}

.krail-N24 .tableset-table td.cell-duty ul {
  margin: 0;
  padding-left: 2rem
}

.krail-N24 .tableset-table td.cell-duty li+li {
  margin-top: .4rem
}

.krail-N24 .tableset-table td.cell-duty li.duty-sub {
  padding-left: 2rem
}

.krail-N24 .tableset-table td.cell-duty li {
  display: flex;
  gap: 0.4rem
}

.krail-N24 .tableset-table td.cell-duty li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  background: var(--black);
  border-radius: 50%
}

.krail-N24 .tableset-table a {
  color: #155B9E
}

.krail-N24 .tableset.tableset-divider .tableset-table tbody>tr>td:first-child:not(.cell-category) {
  border-left: 1px solid var(--line-color1)
}

@media (max-width: 992px) {
  .krail-N24 {
    padding-top: 4rem;
    padding-bottom: 8rem
  }

  .krail-N24 .textset .textset-subtit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N24 .tableset {
    margin-top: 4rem
  }

  .krail-N24 .tableset .tableset-table {
    min-width: 62rem
  }
}
/* krail-N25 */
.krail-N25 {
  overflow: hidden;
  position: relative;
  padding-top: 18rem;
  padding-bottom: 18rem
}

.krail-N25 .contents-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.8rem 8rem;
  width: 100%;
  min-height: 42rem;
  background: url(../images/krail_N25_01.png) no-repeat center/cover
}

.krail-N25 .textset {
  text-align: center
}

.krail-N25 .textset .textset-tit,
.krail-N25 .textset .textset-desc {
  color: var(--white)
}

.krail-N25 .textset .textset-desc {
  margin-top: 1.2rem
}

.krail-N25 .textset .textset-desc strong {
  font-weight: 700
}

@media (max-width: 992px) {
  .krail-N25 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N25 .contents-inner {
    transform: translateX(-1.6rem);
    padding: 4rem 3.2rem;
    width: calc(100% + 3.2rem);
    min-height: 32rem;
    background: url(../images/krail_N25_02.png) no-repeat center/cover !important
  }

  .krail-N25 .textset .textset-desc {
    margin-top: 0.8rem
  }
}
/* krail-N26 */
.krail-N26 {
  overflow: hidden;
  position: relative;
  padding-top: 18rem;
  padding-bottom: 18rem;
  background: #F7F7F7
}

.krail-N26 .textset-tit {
  color: var(--primary)
}

.krail-N26 .textset-subtit {
  display: block;
  margin: 0.8rem 0 1.2rem
}

.krail-N26 .textset .textset-desc {
  color: #181818
}

.krail-N26 .list-area {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N26 .list-area .item {
  padding: 2.4rem;
  border-radius: .8rem;
  background: var(--white)
}

.krail-N26 .list-area .item:nth-child(-n+3) {
  grid-column: span 4
}

.krail-N26 .list-area .item:nth-child(n+4) {
  grid-column: span 3
}

.krail-N26 .list-area .item strong {
  display: block;
  margin: 1.2rem 0;
  font-weight: 700
}

.krail-N26 .list-area .item ul {
  margin-top: 1.2rem
}

.krail-N26 .list-area .item li+li {
  margin-top: 1.2rem
}

.krail-N26 .list-area .item li {
  display: flex;
  gap: 0.4rem;
  color: var(--text-color3)
}

.krail-N26 .list-area .item li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: var(--text-color3)
}

@media (max-width: 992px) {
  .krail-N26 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N26 .textset-subtit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N26 .list-area {
    grid-template-columns: 1fr;
    gap: 1.6rem;
    margin-top: 4rem
  }

  .krail-N26 .list-area .item {
    padding: 1.6rem
  }

  .krail-N26 .list-area .item,
  .krail-N26 .list-area .item:nth-child(-n+3),
  .krail-N26 .list-area .item:nth-child(n+4) {
    grid-column: span 1
  }

  .krail-N26 .list-area .item strong {
    margin: 0.8rem 0
  }

  .krail-N26 .list-area .item li+li {
    margin-top: 0.8rem
  }
}
/* krail-N27 */
.krail-N27 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N27 .textset .textset-desc {
  margin-top: 1.2rem
}

@media (max-width: 992px) {
  .krail-N27 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N27 .textset .textset-desc {
    margin-top: 0.8rem
  }
}
/* krail-N28 */
.krail-N28 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N28 h2 {
  padding-bottom: 1.6rem;
  border-bottom: 1px solid var(--black)
}

.krail-N28 .textset {
  margin-top: 4rem
}

.krail-N28 .textset .textset-tit {
  color: var(--primary)
}

.krail-N28 .textset .textset-subtit {
  display: block;
  margin: 0.8rem 0 1.2rem
}

.krail-N28 .textset .textset-desc {
  margin: 0;
  color: #181818
}

.krail-N28 .info-area h3 {
  margin: 4rem 0;
  font-weight: 700
}

.krail-N28 .info-wrap {
  display: flex;
  align-items: center;
  gap: 8rem
}

.krail-N28 .info-list {
  flex: 1 1 48rem;
  display: flex;
  flex-direction: column;
  gap: 8rem
}

.krail-N28 .info-main {
  position: relative;
  flex: 1 1 32rem
}

.krail-N28 .info-main .connect {
  position: absolute
}

.krail-N28 .info-main .connect img {
  width: 13vw;
  max-width: 21.6rem
}

.krail-N28 .connect-1 {
  bottom: 100%;
  right: 55%
}

.krail-N28 .connect-1 p {
  position: absolute;
  top: 1.4rem;
  right: 1.4rem
}

.krail-N28 .connect-2 {
  bottom: 100%;
  left: 55%
}

.krail-N28 .connect-2 p {
  position: absolute;
  top: 1.4rem;
  left: 1.4rem
}

.krail-N28 .connect-3 {
  top: 100%;
  right: 55%
}

.krail-N28 .connect-3 p {
  position: absolute;
  bottom: 1.4rem;
  right: 1.4rem
}

.krail-N28 .connect-4 {
  top: 100%;
  left: 55%
}

.krail-N28 .connect-4 p {
  position: absolute;
  bottom: 1.4rem;
  left: 1.4rem
}

.krail-N28 .item {
  overflow: hidden;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N28 .item-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.2rem 0;
  min-height: 7.2rem;
  text-align: center
}

.krail-N28 .info-list .item-head {
  background: #FBF6F6
}

.krail-N28 .info-main .item-head {
  background: var(--primary)
}

.krail-N28 .item-head strong {
  font-weight: 700
}

.krail-N28 .item-head h4 {
  margin-bottom: .4rem;
  font-weight: 700
}

.krail-N28 .info-main .item-head>* {
  color: var(--white)
}

.krail-N28 .item-body {
  padding: 1.6rem
}

.krail-N28 .info-list .item-body {
  min-height: 13.6rem
}

.krail-N28 .item-body li {
  display: flex;
  gap: 0.8rem;
  color: #181818
}

.krail-N28 .item-body li::before {
  content: '';
  flex-shrink: 0;
  transform: translateY(1.25rem);
  width: 0.4rem;
  height: 0.4rem;
  background: #181818;
  border-radius: 50%
}

.krail-N28 .connect-mo {
  display: none
}

@media (max-width: 992px) {
  .krail-N28 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N28 h2 {
    padding-bottom: 1.2rem
  }

  .krail-N28 .textset .textset-subtit {
    margin: 0.8rem 0
  }

  .krail-N28 .info-area h3 {
    margin: 2.4rem 0
  }

  .krail-N28 .info-wrap {
    display: flex;
    flex-direction: column;
    gap: 2.4rem
  }

  .krail-N28 .info-list,
  .krail-N28 .info-main {
    display: contents
  }

  .krail-N28 .item-planning {
    order: 1
  }

  .krail-N28 .item-curriculum {
    order: 2
  }

  .krail-N28 .connect-mo-1 {
    order: 3
  }

  .krail-N28 .item-quality {
    order: 4
  }

  .krail-N28 .connect-mo-2 {
    order: 5
  }

  .krail-N28 .item-tower {
    order: 6
  }

  .krail-N28 .item-global {
    order: 7
  }

  .krail-N28 .connect {
    display: none
  }

  .krail-N28 .item {
    width: 100%
  }

  .krail-N28 .item-head {
    padding: 0.8rem 0;
    min-height: 6rem
  }

  .krail-N28 .item-body {
    padding: 1.2rem
  }

  .krail-N28 .info-list .item-body {
    min-height: auto
  }

  .krail-N28 .item-body li+li {
    margin-top: 0.4rem
  }

  .krail-N28 .connect-mo {
    display: block;
    text-align: center
  }
}
/* krail-N29 */
.krail-N29 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N29 .textset .textset-tit {
  color: var(--primary)
}

.krail-N29 .textset .textset-subtit {
  display: block;
  margin: 0.8rem 0 1.2rem
}

.krail-N29 .textset .textset-desc {
  margin: 0;
  color: #181818
}

.krail-N29 .tableset {
  margin-top: 8rem;
  background: var(--white)
}

.krail-N29 .tableset.tableset-round {
  border-radius: 1.6rem
}

.krail-N29 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  text-align: center;
  font-weight: 700
}

.krail-N29 .tableset-table .col-category {
  width: 14rem
}

.krail-N29 .tableset-table .col-partner {
  width: 28rem
}

.krail-N29 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N29 .tableset-table td.cell-category {
  background: #FBF6F6;
  font-weight: 700;
  text-align: center
}

.krail-N29 .tableset .tableset-table>tbody>*>* {
  color: var(--text-color1);
  text-align: center
}

.krail-N29 .tableset-table td.cell-duty {
  text-align: left;
  padding: 1.2rem 1.6rem;
  color: #181818
}

.krail-N29 .tableset-table td.cell-duty ul {
  margin: 0;
  padding-left: 2rem
}

.krail-N29 .tableset-table td.cell-duty li+li {
  margin-top: .4rem
}

.krail-N29 .tableset-table td.cell-duty li {
  display: flex;
  gap: 0.4rem
}

.krail-N29 .tableset-table td.cell-duty li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  background: var(--black);
  border-radius: 50%
}

@media (max-width: 992px) {
  .krail-N29 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N29 .textset .textset-subtit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N29 .tableset {
    margin-top: 4rem
  }

  .krail-N29 .tableset .tableset-table {
    min-width: 62rem
  }
}
/* krail-N30 */
.krail-N30 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N30 .textset .textset-tit {
  color: var(--primary)
}

.krail-N30 .textset .textset-subtit {
  display: block;
  margin: 0.8rem 0 1.2rem
}

.krail-N30 .textset .textset-desc {
  margin: 0;
  color: #181818
}

.krail-N30 .info-area {
  display: flex;
  align-items: stretch;
  gap: 4rem;
  margin-top: 4rem
}

.krail-N30 .info-role {
  flex: 0 0 37.7rem
}

.krail-N30 .info-flowchart {
  flex: 1 1 103.3rem
}

.krail-N30 .info-role,
.krail-N30 .info-flowchart {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border-radius: .8rem
}

.krail-N30 .info-head {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem 2.4rem;
  min-height: 5.4rem;
  background: #767676;
  text-align: center
}

.krail-N30 .info-head h3 {
  font-weight: 700;
  color: var(--white)
}

.krail-N30 .info-body {
  flex: 1;
  padding: 2.4rem;
  height: 100%;
  background: #F7F7F7
}

.krail-N30 .info-flowchart .info-body {
  overflow-x: auto;
  display: flex;
  align-items: center;
  justify-content: center
}

.krail-N30 .info-flowchart img {
  min-width: 90rem;
  width: 100%
}

.krail-N30 .info-item {
  display: flex;
  align-items: center;
  gap: .8rem;
  padding: 1.6rem;
  min-height: 6.2rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color);
  background: var(--white)
}

.krail-N30 .info-item+.info-item {
  margin-top: 2.4rem
}

.krail-N30 .info-item span {
  flex: 0 0 2.8rem;
  font-weight: 700
}

.krail-N30 .info-item p {
  color: #181818
}

@media (max-width: 992px) {
  .krail-N30 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N30 .textset .textset-subtit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N30 .info-area {
    flex-direction: column;
    align-items: flex-start
  }

  .krail-N30 .info-role,
  .krail-N30 .info-flowchart {
    flex: none;
    display: block;
    width: 100%
  }

  .krail-N30 .info-head {
    padding: 0.8rem 1.6rem;
    min-height: 4.2rem
  }

  .krail-N30 .info-body {
    padding: 1.6rem
  }

  .krail-N30 .info-flowchart .info-body {
    display: block
  }

  .krail-N30 .info-item {
    gap: 0.4rem;
    padding: 1.2rem;
    min-height: 5rem;
    border-radius: .4rem
  }

  .krail-N30 .info-item+.info-item {
    margin-top: 1.6rem
  }
}
/* krail-N31 */
.krail-N31 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N31 .textset .textset-tit {
  color: var(--primary)
}

.krail-N31 .textset .textset-subtit {
  display: block;
  margin: 0.8rem 0 1.2rem
}

.krail-N31 .textset .textset-desc {
  margin: 0;
  color: #181818
}

.krail-N31 .tableset {
  margin-top: 8rem;
  background: var(--white)
}

.krail-N31 .tableset.tableset-round {
  border-radius: 0.8rem
}

.krail-N31 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  text-align: center;
  font-weight: 700
}

.krail-N31 .tableset-table .col-category {
  width: 14rem
}

.krail-N31 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N31 .tableset-table td.cell-category {
  background: #FBF6F6;
  font-weight: 700;
  text-align: center
}

.krail-N31 .tableset .tableset-table>tbody>*>* {
  color: var(--text-color1);
  text-align: center
}

.krail-N31 .tableset-table td.cell-duty {
  text-align: left;
  padding: 1.2rem 1.6rem;
  color: #181818
}

.krail-N31 .tableset-table td.cell-duty ul {
  margin: 0;
  padding-left: 2rem
}

.krail-N31 .tableset-table td.cell-duty li+li {
  margin-top: .4rem
}

.krail-N31 .tableset-table td.cell-duty li {
  display: flex;
  gap: 0.4rem
}

.krail-N31 .tableset-table td.cell-duty li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  background: var(--black);
  border-radius: 50%
}

.krail-N31 .tableset-roadmap {
  margin-top: 2.4rem
}

.krail-N31 .tableset-roadmap .row-phase td {
  padding: 1.6rem;
  text-align: center;
  vertical-align: middle
}

.krail-N31 .tableset-roadmap .row-phase img {
  width: 3.2rem;
  height: 3.2rem;
  object-fit: contain
}

.krail-N31 .tableset-roadmap .row-phase strong {
  display: block;
  margin: 0.8rem 0;
  font-weight: 400;
  color: #181818
}

.krail-N31 .tableset-roadmap .row-phase span {
  display: block;
  color: #181818
}

.krail-N31 .tableset-roadmap .row-status td {
  padding: 1.6rem;
  text-align: center;
  font-weight: 700;
  color: #181818
}

.krail-N31 .tableset-roadmap .status-build {
  background: #FBF6F6
}

.krail-N31 .tableset-roadmap .status-progress {
  background: #EBD2D2
}

.krail-N31 .tableset-roadmap .status-plan {
  background: #D7A5A5
}

.krail-N31 .tableset-roadmap .status-result {
  background: #C27978
}

.krail-N31 .tableset-roadmap .row-duty td {
  vertical-align: top
}

@media (max-width: 992px) {
  .krail-N31 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N31 .textset .textset-subtit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N31 .tableset {
    margin-top: 4rem
  }

  .krail-N31 .tableset-roadmap {
    margin-top: 1.6rem
  }

  .krail-N31 .tableset .tableset-table {
    min-width: 48rem
  }

  .krail-N31 .tableset-roadmap .tableset-table {
    min-width: 72rem
  }

  .krail-N31 .tableset-roadmap .row-phase img {
    width: 2.2rem;
    height: 2.2rem
  }

  .krail-N31 .tableset-roadmap .row-phase strong {
    margin: 0.4rem 0
  }
}
/* krail-N32 */
.krail-N32 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N32 .info-wrap+.info-wrap {
  margin-top: 4rem
}

.krail-N32 h3 {
  margin-bottom: 4rem;
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid var(--black)
}

.krail-N32 .info-item {
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N32 .info-item+.info-item {
  margin-top: 2.4rem
}

.krail-N32 .info-item strong {
  display: block;
  margin-top: 1.2rem;
  font-weight: 700
}

.krail-N32 .info-item ul {
  margin-top: 1.2rem
}

.krail-N32 .info-item ul li {
  display: flex;
  gap: 0.8rem;
  color: #181818
}

.krail-N32 .info-item ul li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  background: #181818;
  border-radius: 50%
}

.krail-N32 .info-item ul li+li {
  margin-top: 1.2rem
}

.krail-N32 .info-item .alert {
  margin-top: 1.2rem;
  padding: 0.4rem 0.8rem;
  border-radius: .4rem;
  background: #F8F8F8
}

.krail-N32 .info-item .alert strong {
  display: inline-block;
  margin: 0
}

@media (max-width: 992px) {
  .krail-N32 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N32 h3 {
    margin-bottom: 2.4rem;
    padding-bottom: 1.2rem
  }

  .krail-N32 .info-wrap+.info-wrap {
    margin-top: 2.4rem
  }

  .krail-N32 .info-item {
    padding: 1.6rem
  }

  .krail-N32 .info-item strong,
  .krail-N32 .info-item ul,
  .krail-N32 .info-item ul li+li {
    margin-top: 0.8rem
  }

  .krail-N32 .info-item .alert {
    margin-top: 0.8rem;
    padding: 0.4rem;
    border-radius: .4rem
  }

  .krail-N32 .info-item+.info-item {
    margin-top: 1.6rem
  }
}
/* krail-N33 */
.krail-N33 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N33 .textset .textset-desc {
  margin-top: 1.2rem
}

.krail-N33 .textset .textset-desc strong {
  color: var(--primary);
  font-weight: 700
}

@media (max-width: 992px) {
  .krail-N33 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N33 .textset .textset-desc {
    margin-top: 0.8rem
  }
}
/* krail-N34 */
.krail-N34 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N34 .textset .textset-tit {
  color: var(--primary)
}

.krail-N34 .textset .textset-subtit {
  display: block;
  margin: 0.8rem 0 1.2rem
}

.krail-N34 .textset .textset-desc {
  margin: 0;
  color: #181818
}

.krail-N34 .info-area {
  margin-top: 8rem
}

.krail-N34 .info-wrap {
  overflow: hidden;
  border-radius: 1.6rem;
  border: 1px solid var(--border-color)
}

.krail-N34 .info-wrap+.info-wrap {
  margin-top: 2.4rem
}

.krail-N34 .info-wrap .info-head {
  display: flex;
  align-items: center;
  gap: .4rem;
  padding: 1.6rem;
  min-height: 6.2rem;
  background: #F8F8F8
}

.krail-N34 .info-wrap .info-head strong,
.krail-N34 .info-wrap .info-head span {
  font-weight: 700
}

.krail-N34 .info-wrap .info-head p {
  font-weight: 400
}

.krail-N34 .info-wrap .info-item {
  padding: 1.6rem
}

.krail-N34 .info-wrap .info-item+.info-item {
  border-top: 1px solid var(--border-color)
}

.krail-N34 .info-wrap .info-item strong {
  font-weight: 700
}

.krail-N34 .info-wrap .info-item p {
  display: flex;
  gap: 0.4rem;
  color: #181818
}

.krail-N34 .info-wrap .info-item p::before {
  content: '';
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: #181818
}

.krail-N34 .collaboration {
  overflow: hidden;
  margin: 2.4rem 1.6rem;
  border-radius: .8rem
}

.krail-N34 .collaboration-head {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #E5E5E5;
  padding: 1.2rem;
  min-height: 5rem;
  text-align: center
}

.krail-N34 .collaboration-head strong {
  font-weight: 700
}

.krail-N34 .collaboration-body {
  display: flex;
  align-items: stretch;
  gap: 1.2rem;
  padding: 1.6rem;
  background: #F7F7F7
}

.krail-N34 .collaboration-body img {
  flex-shrink: 0;
  align-self: center;
  width: 3rem;
  height: 3rem;
  object-fit: contain
}

.krail-N34 .collaboration-item {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border-radius: .8rem
}

.krail-N34 .collaboration-item strong {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
  min-height: 4.8rem;
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N34 .collaboration-item:nth-child(3) strong {
  background: #641A03
}

.krail-N34 .collaboration-item:last-child strong {
  background: #320D02
}

.krail-N34 .collaboration-item ul {
  flex: 1;
  padding: 1.6rem;
  background: var(--white)
}

.krail-N34 .collaboration-item li {
  display: flex;
  gap: 0.4rem;
  color: #181818
}

.krail-N34 .collaboration-item li::before {
  content: '';
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: #181818
}

@media (max-width: 992px) {
  .krail-N34 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N34 .textset .textset-subtit {
    margin: 0.4rem 0 0.8rem
  }

  .krail-N34 .info-area {
    margin-top: 4rem
  }

  .krail-N34 .info-wrap {
    border-radius: 1.2rem
  }

  .krail-N34 .info-wrap+.info-wrap {
    margin-top: 4rem
  }

  .krail-N34 .info-wrap .info-head {
    padding: 1.2rem;
    min-height: 5rem
  }

  .krail-N34 .info-wrap .info-item {
    padding: 1.2rem
  }

  .krail-N34 .collaboration {
    margin: 1.6rem 1.2rem;
    border-radius: .4rem
  }

  .krail-N34 .collaboration-head {
    padding: 0.8rem;
    min-height: 4rem
  }

  .krail-N34 .collaboration-body {
    flex-direction: column;
    gap: 1.2rem;
    padding: 1.2rem
  }

  .krail-N34 .collaboration-item {
    width: 100%;
    border-radius: .4rem
  }

  .krail-N34 .collaboration-item strong {
    padding: 0.8rem;
    min-height: 3.8rem
  }

  .krail-N34 .collaboration-item ul {
    padding: 1.2rem
  }

  .krail-N34 .collaboration-body img {
    rotate: 90deg;
    width: 2.4rem;
    height: 2.4rem
  }
}
/* krail-N36 */
.krail-N36 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F8F8F8
}

.krail-N36 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N36 .content-wrap {
  display: flex;
  align-items: flex-start;
  gap: 21.6rem;
  margin-top: 8rem
}

.krail-N36 .desc {
  flex: 1 1 54.8rem
}

.krail-N36 .desc p {
  font-weight: 500;
  color: #181818
}

.krail-N36 .desc p+p {
  margin-top: 2.4rem
}

.krail-N36 .imageset {
  flex: 1 1 67.6rem;
  height: auto;
  aspect-ratio: 676/725
}

@media (max-width: 992px) {
  .krail-N36 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N36 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N36 .content-wrap {
    display: block;
    margin-top: 4rem
  }

  .krail-N36 .desc p+p {
    margin-top: 1.6rem
  }

  .krail-N36 .imageset {
    margin-top: 2.4rem;
    aspect-ratio: 328/351
  }
}
/* krail-N37 */
.krail-N37 {
  overflow: hidden;
  position: relative;
  padding-top: 18.8rem;
  padding-bottom: 18.8rem;
  background: url(../images/krail_N37_01.png) no-repeat center/cover
}

.krail-N37 .contents-inner {
  width: 100%
}

.krail-N37 .textset {
  text-align: center
}

.krail-N37 .textset .textset-tit,
.krail-N37 .textset .textset-subtit,
.krail-N37 .textset .textset-desc {
  color: var(--white)
}

.krail-N37 .textset .textset-subtit {
  display: block;
  margin: .8rem 0
}

.krail-N37 .textset .textset-desc {
  font-weight: 500
}

@media (max-width: 992px) {
  .krail-N37 {
    padding-top: 8rem;
    padding-bottom: 8rem;
    background: url(../images/krail_N37_02.png) no-repeat center/cover !important
  }

  .krail-N37 .textset .textset-subtit {
    margin: 0.4rem 0
  }
}
/* krail-N38 */
.krail-N38 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N38 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N38 .list-area {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N38 .list-area .item {
  padding: 2.4rem;
  width: 100%;
  border-radius: .8rem;
  border: 1px solid var(--border-color);
  color: #181818
}

@media (max-width: 992px) {
  .krail-N38 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N38 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N38 .list-area {
    gap: 0.8rem;
    margin-top: 4rem
  }

  .krail-N38 .list-area .item {
    padding: 1.6rem
  }
}
/* krail-N39 */
.krail-N39 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N39 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N39 .process-area {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N39 .process-wrap {
  display: flex;
  align-items: stretch;
  gap: 1.2rem;
  width: 100%
}

.krail-N39 .item {
  flex: 1;
  padding: 2.4rem;
  border-radius: .8rem;
  background: var(--white);
  text-align: center
}

.krail-N39 .item span {
  font-weight: 700;
  color: var(--primary)
}

.krail-N39 .item strong {
  display: block;
  margin: 1.8rem 0 0.8rem;
  font-weight: 700
}

.krail-N39 .item p {
  color: #181818
}

.krail-N39 .item em {
  display: block;
  font-style: normal;
  font-weight: 700
}

.krail-N39 .process-area i {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  width: 3.2rem;
  height: 3.2rem;
  color: var(--primary)
}

.krail-N39 .process-area>i {
  display: none
}

@media (max-width: 992px) {
  .krail-N39 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N39 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N39 .process-area {
    margin-top: 4rem;
    gap: 0.8rem
  }

  .krail-N39 .process-wrap {
    flex-direction: column;
    gap: 0.8rem
  }

  .krail-N39 .item {
    padding: 1.6rem
  }

  .krail-N39 .process-area i {
    display: flex;
    rotate: 90deg
  }
}
/* krail-N40 */
.krail-N40 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 8rem
}

.krail-N40 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N40 .list-area {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N40 .item {
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N40 .item span {
  font-weight: 600;
  color: var(--primary)
}

.krail-N40 .item strong {
  display: block;
  margin: 1rem 0 0.8rem;
  font-weight: 700
}

.krail-N40 .item p {
  color: #181818
}

@media (max-width: 992px) {
  .krail-N40 {
    padding-top: 8rem;
    padding-bottom: 4rem
  }

  .krail-N40 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N40 .list-area {
    grid-template-columns: 1fr;
    gap: 1.6rem;
    margin-top: 4rem
  }
}
/* krail-N41 */
.krail-N41 {
  overflow: hidden;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 16rem
}

.krail-N41 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N41 .list-area {
  display: flex;
  gap: 2.4rem;
  align-items: stretch;
  margin-top: 8rem
}

.krail-N41 .item {
  flex: 1;
  padding: 2.4rem;
  border-radius: .8rem;
  background: #F8F8F8;
  text-align: center
}

.krail-N41 .item span {
  font-weight: 700;
  color: var(--primary)
}

.krail-N41 .item:nth-child(3) span {
  color: #641A03
}

.krail-N41 .item:last-child span {
  color: #320D02
}

.krail-N41 .item strong {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 2.4rem 0;
  padding: 1.4rem;
  min-height: 5.8rem;
  border-radius: .8rem;
  text-align: center;
  color: var(--white);
  font-weight: 700;
  background: var(--primary)
}

.krail-N41 .item:nth-child(3) strong {
  background: #641A03
}

.krail-N41 .item:last-child strong {
  background: #320D02
}

.krail-N41 .item p {
  color: #181818
}

.krail-N41 .ico-arrow {
  flex-shrink: 0;
  align-self: center;
  width: 8rem;
  height: .6rem;
  background: url(../icons/ico_arrow_dash_lg.svg) no-repeat center / contain
}

@media (max-width: 992px) {
  .krail-N41 {
    padding-top: 4rem;
    padding-bottom: 8rem
  }

  .krail-N41 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N41 .list-area {
    margin-top: 4rem;
    flex-direction: column;
    gap: 1.6rem
  }

  .krail-N41 .item {
    flex: none;
    width: 100%;
    padding: 1.6rem
  }

  .krail-N41 .item strong {
    margin: 1.6rem 0;
    padding: 1.4rem;
    min-height: 5.4rem
  }

  .krail-N41 .ico-arrow {
    width: 0.6rem;
    height: 3rem;
    background: url(../icons/ico_arrow_dash_down.svg) no-repeat center / contain
  }
}
/* krail-N42 */
.krail-N42 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N42 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N42 .process-area {
  display: flex;
  align-items: stretch;
  gap: 1.2rem;
  margin-top: 8rem
}

.krail-N42 .item {
  flex: 1;
  padding: 2.4rem;
  border-radius: .8rem;
  background: var(--white);
  text-align: center
}

.krail-N42 .item span {
  font-weight: 700;
  color: var(--primary)
}

.krail-N42 .item strong {
  display: block;
  margin-top: .8rem;
  font-weight: 700
}

.krail-N42 .process-area i {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  width: 3.2rem;
  height: 3.2rem;
  color: var(--primary)
}

@media (max-width: 992px) {
  .krail-N42 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N42 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N42 .process-area {
    flex-direction: column;
    gap: 0.4rem;
    margin-top: 4rem
  }

  .krail-N42 .item {
    flex: none;
    padding: 1.6rem;
    width: 100%
  }

  .krail-N42 .process-area i {
    rotate: 90deg
  }
}
/* krail-N43 */
.krail-N43 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N43 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N43 .info-area {
  overflow: hidden;
  margin-top: 8rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N43 .info-head {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem 2.4rem;
  min-height: 5.4rem;
  background: #767676
}

.krail-N43 .info-head strong {
  color: var(--white);
  font-weight: 700
}

.krail-N43 .info-item {
  display: flex;
  gap: 0.4rem;
  padding: 1.6rem
}

.krail-N43 .info-item+.info-item {
  border-top: 1px solid var(--border-color)
}

.krail-N43 .info-item p {
  color: #181818
}

.krail-N43 .info-item .ico-dot {
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: #181818
}

.krail-N43 .info-item p strong {
  font-weight: 700
}

@media (max-width: 992px) {
  .krail-N43 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N43 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N43 .info-area {
    margin-top: 4rem
  }

  .krail-N43 .info-head {
    padding: 0.8rem 1.6rem;
    min-height: 4.2rem
  }

  .krail-N43 .info-item {
    padding: 1.2rem
  }
}
/* krail-N44 */
.krail-N44 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N44 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N44 .process-area {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N44 .item {
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N44 .item strong {
  display: block;
  margin: 1.2rem 0;
  font-weight: 700
}

.krail-N44 .item ol {
  counter-reset: item
}

.krail-N44 .item li {
  display: flex;
  gap: 0.8rem;
  align-items: flex-start;
  counter-increment: item;
  color: #181818
}

.krail-N44 .item li::before {
  flex-shrink: 0;
  content: counter(item) "."
}

@media (max-width: 992px) {
  .krail-N44 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N44 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N44 .process-area {
    margin-top: 4rem;
    grid-template-columns: 1fr;
    gap: 1.6rem
  }

  .krail-N44 .item {
    padding: 1.6rem
  }

  .krail-N44 .item strong {
    margin: 0.8rem 0
  }
}
/* krail-N45 */
.krail-N45 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F7F7F7
}

.krail-N45 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N45 .notice-area {
  overflow: hidden;
  margin-top: 4rem;
  padding: 4.4rem;
  border-radius: .8rem;
  text-align: center;
  background: url(../images/krail_N45_01.png) no-repeat center/cover
}

.krail-N45 .notice-area p {
  color: var(--white);
  font-weight: 500
}

.krail-N45 .info-item {
  margin-top: 8rem
}

.krail-N45 .tableset {
  margin-top: 4rem;
  background: var(--white)
}

.krail-N45 .tableset.tableset-round {
  border-radius: 1.6rem
}

.krail-N45 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  font-weight: 700
}

.krail-N45 .tableset-table .col-category {
  width: 14rem
}

.krail-N45 .tableset-table .rating-item {
  display: flex;
  align-items: center;
  gap: 0.8rem
}

.krail-N45 .tableset-table .rating-stars {
  letter-spacing: .2rem;
  line-height: 1.4;
  white-space: nowrap
}

.krail-N45 .tableset-table .star-on.star-green {
  color: #01A014
}

.krail-N45 .tableset-table .star-on.star-orange {
  color: #CB5D13
}

.krail-N45 .tableset-table .star-on.star-red {
  color: #CB1313
}

.krail-N45 .tableset-table .star-off {
  color: #D9D9D9
}

.krail-N45 .tableset-table .rating-label {
  font-weight: 700;
  white-space: nowrap
}

.krail-N45 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N45 .tableset-table td.cell-category {
  font-weight: 700;
  text-align: center
}

.krail-N45 .tableset .tableset-table>tbody>*>* {
  color: var(--text-color1);
  text-align: center
}

.krail-N45 .tableset-table td.cell-duty {
  text-align: left
}

.krail-N45 .tableset-table.table-judgment thead th {
  text-align: center
}

.krail-N45 .tableset-table.table-judgment tbody tr:first-child td.cell-cert,
.krail-N45 .tableset-table.table-judgment tbody tr:first-child td.cell-hold,
.krail-N45 .tableset-table.table-judgment tbody tr:first-child td.cell-deny {
  font-weight: 700
}

.krail-N45 .tableset-table.table-judgment td.cell-cert {
  color: #01A014
}

.krail-N45 .tableset-table.table-judgment td.cell-hold {
  color: #CB5D13
}

.krail-N45 .tableset-table.table-judgment td.cell-deny {
  color: #CB1313
}

@media (max-width: 992px) {
  .krail-N45 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N45 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N45 .notice-area {
    margin-top: 2.4rem;
    padding: 3rem 1.6rem;
    background: url(../images/krail_N45_01.png) no-repeat center/cover !important
  }

  .krail-N45 .info-item {
    margin-top: 4rem
  }

  .krail-N45 .tableset {
    margin-top: 2.4rem
  }

  .krail-N45 .tableset .tableset-table {
    min-width: 72rem
  }
}
/* krail-N46 */
.krail-N46 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N46 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N46 .info-area {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N46 .item {
  padding: 2.4rem;
  border-radius: 1.6rem;
  border: 1px solid var(--border-color)
}

.krail-N46 .item-type {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.4rem;
  min-height: 2.6rem;
  color: var(--white);
  font-weight: 700;
  border-radius: .4rem
}

.krail-N46 .item-type.pass {
  background: #01A014
}

.krail-N46 .item-type.hold {
  background: #CB5D13
}

.krail-N46 .item-type.fail {
  background: #CB1313
}

.krail-N46 .item strong {
  display: block;
  margin-top: .8rem;
  font-weight: 700
}

.krail-N46 .item-summary {
  margin-bottom: 0.8rem;
  font-weight: 600
}

.krail-N46 .item p+p {
  color: #181818;
  font-weight: 500
}

.krail-N46 .item em {
  display: block;
  margin-top: 0.8rem;
  font-weight: 700;
  font-style: normal;
  color: #181818
}

@media (max-width: 992px) {
  .krail-N46 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N46 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N46 .info-area {
    margin-top: 4rem;
    grid-template-columns: 1fr;
    gap: 1.6rem
  }

  .krail-N46 .item {
    padding: 1.6rem
  }

  .krail-N46 .item-type {
    min-height: 2.4rem
  }

  .krail-N46 .item strong {
    margin-top: 0.4rem
  }

  .krail-N46 .item-summary {
    margin-bottom: 0.4rem
  }

  .krail-N46 .item em {
    margin-top: 0.4rem
  }
}
/* krail-N47 */
.krail-N47 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 8rem
}

.krail-N47 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N47 .tableset {
  margin-top: 8rem
}

.krail-N47 .tableset.tableset-round {
  border-radius: 1.6rem
}

.krail-N47 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  font-weight: 700
}

.krail-N47 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N47 .tableset .tableset-table>tbody>*>* {
  color: #181818
}

.krail-N47 .tableset-table .col-category {
  width: 14rem
}

.krail-N47 .tableset-table thead th:first-child {
  text-align: center
}

.krail-N47 .tableset-table td.cell-category {
  background: #F7F7F7;
  font-weight: 700;
  text-align: center
}

.krail-N47 .tableset-table td.cell-duty {
  text-align: left
}

.krail-N47 .tableset-table td.cell-duty p {
  display: flex;
  gap: 0.8rem
}

.krail-N47 .tableset-table td.cell-duty p::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: #181818
}

@media (max-width: 992px) {
  .krail-N47 {
    padding-top: 8rem;
    padding-bottom: 4rem
  }

  .krail-N47 .textset .textset-desc {
    margin-top: 0.8rem
  }

  .krail-N47 .tableset {
    margin-top: 4rem
  }

  .krail-N47 .tableset .tableset-table {
    min-width: 50rem
  }
}
/* krail-N48 */
.krail-N48 {
  overflow: hidden;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 16rem
}

.krail-N48 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N48 .process-area {
  display: flex;
  align-items: stretch;
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N48 .process-area .item {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border-radius: .8rem
}

.krail-N48 .process-area .item-head {
  padding: 2.4rem;
  background: var(--primary)
}

.krail-N48 .process-area .item:nth-child(3) .item-head {
  background: #641A03
}

.krail-N48 .process-area .item:last-child .item-head {
  background: #320D02
}

.krail-N48 .process-area .item-head>* {
  color: var(--white)
}

.krail-N48 .process-area .item-head span {
  font-weight: 700
}

.krail-N48 .process-area .item-head strong {
  display: block;
  margin-top: 0.8rem;
  font-weight: 700
}

.krail-N48 .process-area .item-head p {
  font-weight: 400
}

.krail-N48 .process-area .item-body {
  flex: 1;
  padding: 2.4rem;
  background: #F7F7F7
}

.krail-N48 .process-area .item-body .desc+.desc {
  margin-top: .8rem
}

.krail-N48 .process-area .item-body .desc strong {
  font-weight: 700
}

.krail-N48 .process-area .item-body .desc>* {
  color: #181818
}

.krail-N48 .process-area img {
  flex-shrink: 0;
  align-self: center;
  width: 3rem;
  height: 3rem;
  object-fit: contain
}

.krail-N48 .info-area {
  display: flex;
  align-items: stretch;
  gap: 2.4rem;
  margin-top: 4rem
}

.krail-N48 .info-area .item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .8rem;
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N48 .info-area .item img {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  object-fit: contain
}

.krail-N48 .info-area .item strong {
  font-weight: 700
}

.krail-N48 .info-area>img {
  flex-shrink: 0;
  align-self: center;
  width: 2.4rem;
  height: 2.4rem;
  object-fit: contain
}

.krail-N48 .notice-area {
  margin-top: 4rem;
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N48 .notice-area p {
  color: #181818
}

@media (max-width: 992px) {
  .krail-N48 {
    padding-top: 4rem;
    padding-bottom: 8rem
  }

  .krail-N48 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N48 .process-area {
    flex-direction: column;
    align-items: center;
    gap: 1.6rem;
    margin-top: 4rem
  }

  .krail-N48 .process-area .item {
    flex: none;
    width: 100%;
    border-radius: .8rem
  }

  .krail-N48 .process-area .item-head,
  .krail-N48 .process-area .item-body {
    padding: 1.6rem
  }

  .krail-N48 .process-area .item-body .desc+.desc {
    margin-top: 0.4rem
  }

  .krail-N48 .process-area img {
    rotate: 90deg
  }

  .krail-N48 .info-area {
    flex-direction: column;
    align-items: center;
    gap: 1.6rem;
    margin-top: 2.4rem
  }

  .krail-N48 .info-area .item {
    flex: none;
    gap: 0.4rem;
    padding: 1.6rem;
    width: 100%;
    border-radius: .8rem
  }

  .krail-N48 .info-area>img {
    rotate: 90deg;
    width: 1.6rem;
    height: 1.6rem
  }

  .krail-N48 .notice-area {
    margin-top: 2.4rem;
    padding: 1.6rem
  }
}
/* krail-N49 */
.krail-N49 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background: #F8F8F8
}

.krail-N49 .info-item {
  margin-top: 8rem
}

.krail-N49 .info-item>span {
  color: var(--primary)
}

.krail-N49 .info-item>strong {
  display: block;
  margin-top: .8rem
}

.krail-N49 .tableset {
  margin-top: 4rem;
  background: var(--white)
}

.krail-N49 .tableset.tableset-round {
  border-radius: 1.6rem
}

.krail-N49 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  font-weight: 700
}

.krail-N49 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N49 .tableset .tableset-table>tbody>*>* {
  color: #181818
}

.krail-N49 .tableset-table .col-category {
  width: 14rem
}

.krail-N49 .tableset .tableset-table>thead.thead-light>*>*,
.krail-N49 .tableset .tableset-table>tbody>*>* {
  text-align: center
}

.krail-N49 .tableset .tableset-table>thead.thead-light>*>th.cell-affiliation,
.krail-N49 .tableset .tableset-table>tbody>*>td.cell-affiliation {
  text-align: left
}

.krail-N49 .tableset-table td.cell-category {
  font-weight: 700
}

@media (max-width: 992px) {
  .krail-N49 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N49 .info-item {
    margin-top: 4rem
  }

  .krail-N49 .info-item>strong {
    margin-top: 0.4rem
  }

  .krail-N49 .tableset {
    margin-top: 2.4rem
  }

  .krail-N49 .tableset .tableset-table {
    min-width: 94rem
  }
}
/* krail-N50 */
.krail-N50 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N50 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N50 .info-area {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8rem 2.4rem;
  margin-top: 8rem
}

.krail-N50 .tableset {
  margin-top: 4rem;
  background: var(--white)
}

.krail-N50 .tableset.tableset-round {
  border-radius: 1.6rem
}

.krail-N50 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  font-weight: 700
}

.krail-N50 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700
}

.krail-N50 .tableset .tableset-table>tbody>*>* {
  color: #181818
}

.krail-N50 .tableset-table .col-category {
  width: 14rem
}

.krail-N50 .tableset .tableset-table>thead.thead-light>*>*,
.krail-N50 .tableset .tableset-table>tbody>*>* {
  text-align: center
}

.krail-N50 .tableset .tableset-table>tbody>*>td.cell-major {
  text-align: left
}

.krail-N50 .tableset-table td.cell-category {
  font-weight: 700
}

@media (max-width: 1280px) {
  .krail-N50 .info-area {
    display: block
  }

  .krail-N50 .info-item+.info-item {
    margin-top: 8rem
  }
}

@media (max-width: 992px) {
  .krail-N50 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N50 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N50 .info-area {
    margin-top: 4rem
  }

  .krail-N50 .info-item+.info-item {
    margin-top: 4rem
  }

  .krail-N50 .tableset {
    margin-top: 2.4rem
  }

  .krail-N50 .tableset .tableset-table {
    min-width: 78rem
  }
}
/* krail-N51 */
.krail-N51 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 8rem
}

.krail-N51 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N51 .tableset {
  margin-top: 4rem;
  background: var(--white)
}

.krail-N51 .tableset.tableset-round {
  border-radius: 1.6rem
}

.krail-N51 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  font-weight: 700;
  text-align: center
}

.krail-N51 .tableset-table thead th {
  background: var(--primary);
  color: var(--white);
  font-weight: 700;
  text-align: center
}

.krail-N51 .tableset .tableset-table>tbody>*>* {
  color: #181818;
  text-align: center
}

.krail-N51 .tableset-table .col-stage {
  width: 14rem
}

.krail-N51 .tableset-table td.cell-stage {
  background: #F7F7F7;
  font-weight: 700;
  text-align: center
}

.krail-N51 .tableset-table td.cell-evaluation {
  text-align: left
}

.krail-N51 .tableset.tableset-divider .tableset-table tbody>tr>td:first-child:not(.cell-stage) {
  border-left: 1px solid var(--line-color1)
}

@media (max-width: 992px) {
  .krail-N51 {
    padding-top: 8rem;
    padding-bottom: 4rem
  }

  .krail-N51 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N51 .tableset {
    margin-top: 2.4rem
  }

  .krail-N51 .tableset .tableset-table {
    min-width: 88rem
  }
}
/* krail-N52 */
.krail-N52 {
  overflow: hidden;
  position: relative;
  padding-top: 8rem;
  padding-bottom: 16rem
}

.krail-N52 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N52 .info-area {
  overflow: hidden;
  margin-top: 8rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N52 .info-item {
  display: grid;
  grid-template-columns: 14rem 1fr
}

.krail-N52 .info-item+.info-item {
  border-top: 1px solid var(--border-color)
}

.krail-N52 .info-item .info-head {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.6rem;
  text-align: center
}

.krail-N52 .info-item .info-head span {
  font-weight: 700
}

.krail-N52 .info-item:first-child .info-head {
  background: #FBF6F6
}

.krail-N52 .info-item:nth-child(2) .info-head {
  background: #F8EFEF
}

.krail-N52 .info-item:nth-child(3) .info-head {
  background: #EFDBDB
}

.krail-N52 .info-item:nth-child(4) .info-head {
  background: #EBD2D2
}

.krail-N52 .info-item:last-child .info-head {
  background: #D7A5A5
}

.krail-N52 .info-item .info-body {
  padding: 1.6rem;
  border-left: 1px solid var(--border-color)
}

.krail-N52 .info-item .info-body strong {
  font-weight: 700
}

.krail-N52 .info-item .info-body p {
  margin-top: 0.8rem
}

@media (max-width: 992px) {
  .krail-N52 {
    padding-top: 4rem;
    padding-bottom: 8rem
  }

  .krail-N52 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N52 .info-area {
    margin-top: 4rem;
    border: none
  }

  .krail-N52 .info-item {
    overflow: hidden;
    display: block;
    border-radius: .8rem;
    border: 1px solid var(--border-color)
  }

  .krail-N52 .info-item+.info-item {
    margin-top: 1.6rem
  }

  .krail-N52 .info-item .info-head {
    padding: 1.2rem;
    min-height: 4.8rem
  }

  .krail-N52 .info-item .info-body {
    padding: 1.2rem;
    border-left: none;
    border-top: 1px solid var(--border-color);
    text-align: center
  }

  .krail-N52 .info-item .info-body p {
    margin-top: 0.4rem
  }
}
/* krail-N53 */
.krail-N53 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N53 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N53 .tab-area {
  display: inline-flex;
  margin-top: 4rem;
  padding: 0.8rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N53 .tab-item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
  border-radius: .8rem;
  min-width: 13.5rem;
  min-height: 5rem;
  font-weight: 500;
  color: #181818;
  transition: color .3s ease, background-color .3s ease, font-weight .3s ease
}

.krail-N53 .tab-item.active,
.krail-N53 .tab-item:hover {
  color: var(--white);
  background-color: var(--primary);
  font-weight: 700
}

.krail-N53 .process-area {
  display: flex;
  align-items: stretch;
  margin-top: 4rem
}

.krail-N53 .process-item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  flex-wrap: wrap;
  min-height: 13.2rem
}

.krail-N53 .process-item.item-1 {
  background: url(../images/krail_N53_01.png) no-repeat center/contain
}

.krail-N53 .process-item.item-2 {
  background: url(../images/krail_N53_02.png) no-repeat center/contain
}

.krail-N53 .process-item.item-3 {
  background: url(../images/krail_N53_03.png) no-repeat center/contain
}

.krail-N53 .process-item.item-4 {
  background: url(../images/krail_N53_04.png) no-repeat center/contain
}

.krail-N53 .process-item.item-5 {
  background: url(../images/krail_N53_05.png) no-repeat center/contain
}

.krail-N53 .process-item span,
.krail-N53 .process-item strong {
  font-weight: 700
}

.krail-N53 .info-area {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem;
  margin-top: 4rem
}

.krail-N53 .info-item {
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N53 .info-item img {
  width: 3.2rem;
  height: 3.2rem;
  object-fit: contain
}

.krail-N53 .info-item strong {
  display: block;
  margin: 1.2rem 0;
  font-weight: 700
}

.krail-N53 .info-item p {
  color: #181818
}

.krail-N53 .info-item li {
  display: flex;
  gap: 0.4rem
}

.krail-N53 .info-item li+li {
  margin-top: 0.4rem
}

.krail-N53 .info-item ul li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background-color: #181818
}

.krail-N53 .info-item ol {
  list-style: none;
  counter-reset: info-ol;
  margin-top: 0.4rem
}

.krail-N53 .info-item ol li {
  counter-increment: info-ol
}

.krail-N53 .info-item ol li::before {
  content: counter(info-ol) ".";
  flex-shrink: 0
}

.krail-N53 .info-item em {
  font-style: normal;
  font-weight: 700
}

.krail-N53 .btn-area {
  margin-top: 4rem;
  text-align: center
}

.krail-N53 .btn-area .btnset-lg {
  height: 6rem;
  border-radius: .8rem
}

@media (max-width: 992px) {
  .krail-N53 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N53 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N53 .tab-area {
    flex-wrap: wrap;
    margin-top: 2.4rem;
    padding: 0.8rem;
    width: 100%
  }

  .krail-N53 .tab-item {
    padding: 0.8rem;
    min-width: 9.6rem;
    min-height: 4rem
  }

  .krail-N53 .process-area {
    flex-direction: column;
    margin-top: 2.4rem
  }

  .krail-N53 .process-item {
    flex: none;
    flex-direction: column;
    align-items: center;
    gap: 0.8rem;
    width: 100%;
    text-align: center
  }

  .krail-N53 .process-item.item-1 {
    background: url(../images/krail_N53_08.png) no-repeat center/contain
  }

  .krail-N53 .process-item.item-2 {
    background: url(../images/krail_N53_09.png) no-repeat center/contain
  }

  .krail-N53 .process-item.item-3 {
    background: url(../images/krail_N53_10.png) no-repeat center/contain
  }

  .krail-N53 .process-item.item-4 {
    background: url(../images/krail_N53_11.png) no-repeat center/contain
  }

  .krail-N53 .process-item.item-5 {
    background: url(../images/krail_N53_12.png) no-repeat center/contain
  }

  .krail-N53 .info-area {
    grid-template-columns: 1fr;
    gap: 1.6rem;
    margin-top: 2.4rem
  }

  .krail-N53 .info-item {
    padding: 1.6rem
  }

  .krail-N53 .info-item strong {
    margin: 0.8rem 0
  }

  .krail-N53 .btn-area {
    margin-top: 2.4rem
  }

  .krail-N53 .btn-area .btnset-lg {
    height: 5.4rem
  }
}
/* krail-N54 */
.krail-N54 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N54 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N54 .tab-area {
  display: inline-flex;
  margin-top: 4rem;
  padding: 0.8rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N54 .tab-item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
  border-radius: .8rem;
  min-width: 13.5rem;
  min-height: 5rem;
  font-weight: 500;
  color: #181818;
  transition: color .3s ease, background-color .3s ease, font-weight .3s ease
}

.krail-N54 .tab-item.active,
.krail-N54 .tab-item:hover {
  color: var(--white);
  background-color: var(--primary);
  font-weight: 700
}

.krail-N54 .alert-area {
  margin: 4rem 0;
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N54 .alert-area strong {
  font-weight: 700;
  color: #181818
}

.krail-N54 .alert-area li {
  display: flex;
  gap: 0.8rem;
  color: #181818;
  font-weight: 400
}

.krail-N54 .alert-area li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  background: #181818;
  border-radius: 50%
}

.krail-N54 .form-item {
  margin-top: 4rem
}

.krail-N54 .form-item strong {
  display: block;
  margin-bottom: 2.4rem;
  font-weight: 500
}

.krail-N54 .form-box {
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid var(--border-color)
}

.krail-N54 .form-box:first-of-type {
  border-top: 1px solid var(--black)
}

.krail-N54 .form-tit {
  flex: 0 0 25rem;
  display: flex;
  padding: 2rem 1rem 2rem 3rem;
  background: #F7F7F7;
  font-weight: 500
}

.krail-N54 .form-tit span {
  color: #C90000
}

.krail-N54 .inputset {
  flex: 1;
  padding: 1rem 2rem
}

.krail-N54 .inputset:has(.radioset) {
  display: flex;
  align-items: center;
  gap: 1.6rem
}

.krail-N54 .inputset:has(.fileset) {
  padding: 1.2rem 2rem
}

.krail-N54 .inputset p {
  margin-top: 0.8rem;
  color: #C90000
}

.krail-N54 .inputset .form-error {
  display: none
}

.krail-N54 .inputset .form-error.is-active {
  display: block
}

.krail-N54 .inputset-input[type="password"],
.krail-N54 .inputset-input[type="email"],
.krail-N54 .inputset-input[type="tel"] {
  max-width: 30rem
}

.krail-N54 .fileset .fileset-upload {
  margin: 0;
  border-width: 1px;
  border-color: #777
}

.krail-N54 .fileset .fileset-input {
  padding: 0;
  width: auto;
  height: auto;
  border: none;
  color: var(--text-color3);
  margin-left: 0.8rem
}

.krail-N54 .inputset .hint {
  display: block;
  margin-top: 0.8em;
  color: var(--text-color3)
}

.krail-N54 .inputset .inputset-textarea {
  padding: 0.8rem 1.2rem;
  height: 8.2rem;
  resize: none
}

.krail-N54 .form-btn {
  margin-top: 4rem;
  text-align: center
}

.krail-N54 .form-btn .btnset {
  height: 6rem;
  border-radius: .8rem;
  font-weight: 500
}

.modal-cert-apply-done .modalset-header {
  position: static;
  padding: 0;
  margin: 0
}

.modal-cert-apply-done .modalset-header .modalset-close {
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0.8rem;
  right: 0.8rem;
  width: 3.2rem;
  height: 3.2rem
}

.modal-cert-apply-done .modalset-close::before {
  color: var(--text-color3);
  font-size: 1rem
}

.modal-cert-apply-done .modalset-header::before {
  content: none
}

.modal-cert-apply-done .modalset-body {
  text-align: center
}

.modal-cert-apply-done .modalset-title {
  font-weight: 700
}

.modal-cert-apply-done .modalset-text {
  margin: 1rem 0;
  color: #181818
}

.modal-cert-apply-done .modalset-phone {
  display: block;
  margin: 1rem 0;
  color: var(--primary);
  font-weight: 700
}

.modal-cert-apply-done .modalset-body span {
  color: var(--text-color3)
}

.modal-cert-apply-done .modalset-footer {
  margin-top: 1.6rem;
  padding: 0;
  text-align: center
}

.modal-cert-apply-done .modalset-footer::before {
  content: none
}

@media (max-width: 992px) {
  .krail-N54 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N54 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N54 .tab-area {
    flex-wrap: wrap;
    margin-top: 2.4rem;
    padding: 0.8rem;
    width: 100%
  }

  .krail-N54 .tab-item {
    padding: 0.8rem;
    min-width: 9.6rem;
    min-height: 4rem
  }

  .krail-N54 .alert-area {
    margin: 2.4rem 0;
    padding: 1.6rem
  }

  .krail-N54 .form-item {
    margin-top: 2.4rem
  }

  .krail-N54 .form-item strong {
    margin-bottom: 1.6rem
  }

  .krail-N54 .form-box {
    flex-direction: column
  }

  .krail-N54 .form-tit {
    flex: none;
    padding: 1.6rem 1.2rem
  }

  .krail-N54 .inputset {
    padding: 1.6rem 1.2rem
  }

  .krail-N54 .inputset:has(.radioset) {
    gap: 1.2rem
  }

  .krail-N54 .inputset:has(.fileset) {
    padding: 1.6rem 1.2rem
  }

  .krail-N54 .inputset-input[type="password"],
  .krail-N54 .inputset-input[type="email"],
  .krail-N54 .inputset-input[type="tel"] {
    max-width: 100%
  }

  .krail-N54 .fileset .fileset-body .fileset-label {
    gap: 0;
    justify-content: flex-start
  }

  .krail-N54 .fileset .fileset-body .fileset-label .fileset-upload {
    max-width: 0;
    min-width: 12rem
  }

  .krail-N54 .fileset .fileset-group {
    width: auto
  }

  .krail-N54 .inputset .hint {
    margin-top: 0.4rem
  }

  .krail-N54 .inputset .inputset-textarea {
    padding: 0.4rem 0.8rem;
    height: 9rem
  }

  .krail-N54 .form-btn {
    margin-top: 2.4rem
  }
}
/* krail-N55 */
.krail-N55 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N55 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N55 .tab-area {
  display: inline-flex;
  margin-top: 4rem;
  padding: 0.8rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N55 .tab-item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
  border-radius: .8rem;
  min-width: 13.5rem;
  min-height: 5rem;
  font-weight: 500;
  color: #181818;
  transition: color .3s ease, background-color .3s ease, font-weight .3s ease
}

.krail-N55 .tab-item.active,
.krail-N55 .tab-item:hover {
  color: var(--white);
  background-color: var(--primary);
  font-weight: 700
}

.krail-N55 .alert-area {
  margin: 4rem 0;
  padding: 2.4rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N55 .alert-area strong {
  font-weight: 700;
  color: #181818
}

.krail-N55 .alert-area li {
  display: flex;
  gap: 0.8rem;
  color: #181818;
  font-weight: 400
}

.krail-N55 .alert-area li::before {
  content: "";
  flex-shrink: 0;
  transform: translateY(1.125rem);
  width: 0.4rem;
  height: 0.4rem;
  background: #181818;
  border-radius: 50%
}

.krail-N55 .login-area {
  margin: 8rem auto 0;
  padding: 6.4rem;
  max-width: 62rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color);
  text-align: center
}

.krail-N55 .login-form {
  margin-top: 4rem
}

.krail-N55 .form-box:last-child {
  margin-bottom: 4rem
}

.krail-N55 .form-box+.form-box {
  margin-top: 1.6rem
}

.krail-N55 .form-box .inputset {
  display: flex;
  align-items: center;
  gap: .8rem
}

.krail-N55 .form-tit {
  font-weight: 500;
  flex-shrink: 0
}

.krail-N55 .login-area .btnset {
  margin-top: 4rem
}

.krail-N55 .login-area .hint {
  margin-top: 4rem
}

.krail-N55 .login-area .hint p {
  color: var(--text-color3)
}

.krail-N55 .login-area .hint strong {
  font-weight: 400;
  color: var(--primary)
}

.krail-N55 .result-area {
  overflow: hidden;
  margin: 8rem auto 0;
  border-radius: .8rem;
  max-width: 62rem;
  border: solid 1px var(--border-color)
}

.krail-N55 .result-head {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  padding: 2.4rem 4rem
}

.krail-N55 .result-area.success .result-head {
  background: #C4F1DB
}

.krail-N55 .result-area.pending .result-head {
  background: #FFF3CD
}

.krail-N55 .result-area.fail .result-head {
  background: #FDE8E8
}

.krail-N55 .result-head-desc {
  flex: 1
}

.krail-N55 .result-head-desc strong {
  font-weight: 700
}

.krail-N55 .result-item .point {
  font-weight: 700
}

.krail-N55 .result-area.success .result-head-desc strong,
.krail-N55 .result-area.success .result-item .point {
  color: #1A7A50
}

.krail-N55 .result-area.pending .result-head-desc strong,
.krail-N55 .result-area.pending .result-item .point {
  color: #917218
}

.krail-N55 .result-area.fail .result-head-desc strong,
.krail-N55 .result-area.fail .result-item .point {
  color: #CA3636
}

.krail-N55 .result-head-desc p {
  margin-top: .8rem
}

.krail-N55 .result-head img {
  flex-shrink: 0;
  width: 6rem;
  height: 6rem;
  object-fit: cover
}

.krail-N55 .result-body {
  padding: 2.4rem
}

.krail-N55 .result-item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 1.2rem 0
}

.krail-N55 .result-item:first-child {
  padding-top: 0
}

.krail-N55 .result-item:last-child {
  padding-bottom: 0
}

.krail-N55 .result-item strong {
  flex: 0 0 16rem;
  font-weight: 700;
  color: #181818
}

.krail-N55 .result-item p {
  flex: 1
}

.krail-N55 .modalset .modalset-header {
  position: static;
  padding: 0;
  margin: 0
}

.krail-N55 .modalset .modalset-header .modalset-close {
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0.8rem;
  right: 0.8rem;
  width: 3.2rem;
  height: 3.2rem
}

.krail-N55 .modalset .modalset-close::before {
  color: var(--text-color3);
  font-size: 1rem
}

.krail-N55 .modalset .modalset-header::before {
  content: none
}

.krail-N55 .modalset-body {
  text-align: center
}

.krail-N55 .modalset-title {
  font-weight: 700
}

.krail-N55 .modalset-text {
  margin: 1rem 0;
  color: #181818
}

.krail-N55 .modalset-phone {
  display: block;
  margin: 1rem 0;
  color: var(--primary);
  font-weight: 700
}

.krail-N55 .modalset-body span {
  color: var(--text-color3)
}

.krail-N55 .modalset .modalset-footer {
  margin-top: 1.6rem;
  padding: 0;
  text-align: center
}

.krail-N55 .modalset .modalset-footer::before {
  content: none
}

@media (max-width: 992px) {
  .krail-N55 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N55 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N55 .tab-area {
    flex-wrap: wrap;
    margin-top: 2.4rem;
    padding: 0.8rem;
    width: 100%
  }

  .krail-N55 .tab-item {
    padding: 0.8rem;
    min-width: 9.6rem;
    min-height: 4rem
  }

  .krail-N55 .alert-area {
    margin: 2.4rem 0;
    padding: 1.6rem
  }

  .krail-N55 .login-area {
    margin-top: 4rem;
    padding: 3.2rem;
    max-width: 100%
  }

  .krail-N55 .login-form {
    margin-top: 2.4rem
  }

  .krail-N55 .form-box+.form-box {
    margin-top: 1.2rem
  }

  .krail-N55 .form-box .inputset {
    flex-direction: column;
    gap: 0.4rem;
    align-items: flex-start
  }

  .krail-N55 .login-area .btnset {
    margin-top: 2.4rem
  }

  .krail-N55 .login-area .hint {
    margin-top: 2.4rem
  }

  .krail-N55 .result-area {
    margin-top: 4rem
  }

  .krail-N55 .result-head {
    align-items: flex-start;
    gap: 1.2rem;
    padding: 1.6rem 2.4rem
  }

  .krail-N55 .result-head-desc p {
    margin-top: .4rem
  }

  .krail-N55 .result-head img {
    width: 2.4rem;
    height: 2.4rem
  }

  .krail-N55 .result-body {
    padding: 1.6rem
  }

  .krail-N55 .result-item {
    padding: 0.8rem 0
  }

  .krail-N55 .result-item strong {
    flex-basis: 10rem
  }
}
/* krail-N56 */
.krail-N56 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N56 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N56 .imageset {
  overflow: hidden;
  display: block;
  margin-top: 8rem;
  height: 42rem;
  border-radius: .8rem
}

.krail-N56 .accordset {
  margin-top: 8rem;
  border: none
}

.krail-N56 .accordset-item {
  overflow: hidden;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N56 .accordset-item+.accordset-item {
  margin-top: 2.4rem
}

.krail-N56 .accordset-header {
  padding: 4rem
}

.krail-N56 .accordset .accordset-button {
  padding: 0 10.2rem 0 0;
  display: block;
  background-color: transparent !important;
  color: var(--black)
}

.krail-N56 .accordset-button strong {
  display: block;
  font-weight: 700
}

.krail-N56 .accordset-button span {
  display: block;
  margin-top: .8rem;
  color: #181818;
  font-weight: 400
}

.krail-N56 .accordset.accordset-arrow .accordset-header::after {
  content: "";
  right: 4rem;
  width: 6.2rem;
  height: 6.2rem;
  background: url(../icons/ico_arrow_cricle.svg) no-repeat center / contain
}

.krail-N56 .accordset .accordset-content {
  display: block;
  padding: 4rem
}

.krail-N56 .tab-area {
  display: inline-flex;
  padding: 0.8rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color)
}

.krail-N56 .tab-item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
  border-radius: .8rem;
  min-width: 13.5rem;
  min-height: 5rem;
  font-weight: 500;
  color: #181818;
  background: transparent;
  transition: color .3s ease, background-color .3s ease, font-weight .3s ease
}

.krail-N56 .tab-item.active,
.krail-N56 .tab-item:hover {
  color: var(--white);
  background-color: var(--primary);
  font-weight: 700
}

.krail-N56 .tableset {
  display: none;
  margin-top: 4rem;
  background: var(--white)
}

.krail-N56 .tableset.active {
  display: block
}

.krail-N56 .tableset.tableset-round {
  border-radius: .8rem
}

.krail-N56 .tableset .tableset-table>thead.thead-light>*>* {
  background: #767676;
  border-color: transparent;
  color: var(--white);
  font-weight: 700
}

.krail-N56 .tableset-table .col-no {
  width: 10rem
}

.krail-N56 .tableset-table .col-goal {
  width: 20rem
}

.krail-N56 .tableset-table .col-ability {
  width: 26rem
}

.krail-N56 .tableset-table .col-define {
  width: 44rem
}

.krail-N56 .tableset-table thead th {
  background: #767676;
  color: var(--white);
  font-weight: 700;
  text-align: left
}

.krail-N56 .tableset .tableset-table>tbody>*>* {
  color: var(--text-color1);
  text-align: left
}

.krail-N56 .tableset-table thead th.cell-no,
.krail-N56 .tableset .tableset-table>tbody>*>*.cell-no {
  text-align: center;
  font-weight: 700
}

.krail-N56 .tableset-table td.cell-goal {
  color: #181818
}

.krail-N56 .tableset-table td.cell-desc {
  color: var(--black)
}

.krail-N56 .tableset-table.table-ability thead th,
.krail-N56 .tableset-table.table-ability tbody td {
  text-align: left
}

.krail-N56 .tableset-table.table-ability td.cell-ability {
  font-weight: 700;
  color: var(--black)
}

.krail-N56 .tableset-table.table-ability td.cell-define {
  color: #181818
}

.krail-N56 .tableset-table.table-ability td.cell-learn {
  color: var(--black)
}

@media (max-width: 992px) {
  .krail-N56 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N56 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N56 .tab-area {
    flex-wrap: wrap;
    padding: 0.8rem;
    width: 100%
  }

  .krail-N56 .tab-item {
    padding: 0.8rem;
    min-width: 9.6rem;
    min-height: 4rem
  }

  .krail-N56 .imageset {
    margin-top: 4rem;
    height: 42rem
  }

  .krail-N56 .accordset {
    margin-top: 4rem
  }

  .krail-N56 .accordset-header {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2.4rem;
    padding: 2.4rem
  }

  .krail-N56 .accordset.accordset-arrow .accordset-header::after {
    position: static;
    transform: none;
    width: 4.8rem;
    height: 4.8rem
  }

  .krail-N56 .accordset.accordset-arrow .accordset-item.active .accordset-header::after {
    transform: rotate(180deg)
  }

  .krail-N56 .accordset-button span {
    margin-top: 0.4rem
  }

  .krail-N56 .accordset .accordset-content {
    padding: 2.4rem
  }

  .krail-N56 .tableset .tableset-table {
    min-width: 96rem
  }
}
/* krail-N57 */
.krail-N57 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N57 .textset .textset-desc {
  margin-top: 1.2rem;
  color: #181818
}

.krail-N57 .banner-area {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.4rem;
  margin-top: 8rem
}

.krail-N57 .banner-area .imageset {
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.8rem;
  border-radius: .8rem;
  border: 1px solid var(--border-color);
  height: auto;
  min-height: 14rem
}

.krail-N57 .banner-area .imageset img {
  width: 100%;
  height: auto;
  object-fit: contain
}

.krail-N57 .banner-area .item strong {
  display: block;
  margin-top: 1.6rem;
  text-align: center;
  font-weight: 500;
  color: #181818
}

@media (max-width: 992px) {
  .krail-N57 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N57 .textset .textset-desc {
    margin-top: .8rem
  }

  .krail-N57 .banner-area {
    grid-template-columns: 1fr;
    gap: 1.6rem
  }

  .krail-N57 .banner-area .imageset {
    padding: 2.4rem
  }

  .krail-N57 .banner-area .item strong {
    margin-top: 1.2rem
  }
}
/* krail-N58 */
.board_blank {
  display: flex;
  justify-content: center;
  width: 100%;
  height: 300px;
  background: #ddd;
  flex-direction: column;
  font-size: 30px;
  line-height: 1.5;
  padding-left: 20px
}

.krail-N58 {
  overflow: hidden;
  position: relative;
  padding-top: 16rem;
  padding-bottom: 16rem
}

.krail-N58 .contents-inner {
  width: 100%
}

.krail-N58 h2 {
  text-align: center
}

.krail-N58 .contact-area {
  overflow: hidden;
  display: flex;
  align-items: stretch;
  justify-content: center;
  border-radius: 2.4rem;
  border: 1px solid var(--border-color)
}

.krail-N58 .imageset {
  flex: 1;
  min-height: 83.1rem;
  height: auto
}

.krail-N58 .form-group {
  flex: 1;
  padding: 4rem 6.4rem
}

.krail-N58 .form-alert {
  margin-top: 4rem;
  padding: 1.6rem;
  border-radius: .8rem;
  background: #F7f7f7
}

.krail-N58 .form-alert span {
  color: #c90000
}

.krail-N58 .form-group .form-tit {
  margin-bottom: 0.4rem;
  font-weight: var(--fw-medium)
}

.krail-N58 .form-group .form-tit+.checkset-wrap,
.krail-N58 .form-group .form-tit+.radioset-wrap {
  gap: 1.2rem 4rem;
  margin-top: 1.6rem;
  flex-wrap: wrap
}

.krail-N58 .form-group .form-tit span {
  color: #c90000
}

.krail-N58 .form-box+.form-box {
  margin-top: 2.4rem
}

.krail-N58 .inputset+.inputset {
  margin-top: 4rem
}

.krail-N58 .inputset .inputset-tit {
  margin-bottom: 0.8rem
}

.krail-N58 .inputset .inputset-label {
  width: 100%
}

.krail-N58 .inputset .inputset-textarea {
  display: block;
  height: 12rem;
  resize: none
}

.krail-N58 .checkset .checkset-label {
  padding-left: 3.2rem
}

.krail-N58 .checkset .checkset-label::before {
  width: 2.4rem;
  height: 2.4rem
}

.krail-N58 .checkset .checkset-label::after {
  font-size: 2.4rem
}

.krail-N58 .form-wrap {
  margin-top: .8rem
}

.krail-N58 .contents-agree {
  display: flex;
  align-items: center;
  gap: 0.4rem
}

.krail-N58 .form-btn {
  margin-top: 4rem
}

.krail-N58 .form-btn .btnset {
  font-weight: 700
}

.krail-N58 .info-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.4rem;
  border-bottom: 1px solid #e5e5e5
}

.krail-N58 .info-title h3 {
  font-size: var(--fs-h4)
}

.krail-N58 .modal-close {
  cursor: pointer
}

.krail-N58 .info-area {
  overflow-y: auto
}

.krail-N58 .info-group+.info-group {
  margin-top: 2.4rem
}

.krail-N58 .info-group strong {
  display: block;
  padding-bottom: 1.2rem;
  font-size: var(--fs-h5)
}

.krail-N58 .info-desc {
  overflow-y: auto;
  padding: 1.6rem;
  max-height: 20.7rem;
  background: #f8f8fa;
  border-radius: 1.6rem
}

.krail-N58 .info-desc::-webkit-scrollbar {
  width: 6px
}

.krail-N58 .info-desc::-webkit-scrollbar-track {
  background-color: #ddd
}

.krail-N58 .info-desc::-webkit-scrollbar-thumb {
  background-color: #888;
  border-radius: 3px
}

.krail-N58 .info-desc p {
  font-size: var(--fs-p1)
}

.krail-N58 .info-desc p.fw-medium {
  font-weight: var(--fw-medium)
}

.krail-N58 .info-desc .mtb {
  margin: 2.4rem 0
}

.krail-N58 .info-desc em {
  display: flex;
  align-items: center;
  position: relative;
  margin: 2.4rem 0 1rem;
  font-style: normal;
  font-weight: 600
}

.krail-N58 .info-list em::before {
  content: "";
  margin-right: 0.8rem;
  width: 0.4rem;
  height: 0.4rem;
  background: var(--black);
  border-radius: 50%
}

.krail-N58 .info-list p {
  padding-left: 1.2rem
}

.krail-N58 .modal-confirm .modal-area {
  position: relative;
  padding: 3.2rem;
  max-width: 36rem;
  background: var(--text-color1);
  border-radius: 0.8rem
}

.krail-N58 .modal-confirm .modal-icon {
  position: absolute;
  top: 1.4rem;
  right: 1.6rem;
  width: 2.8rem;
  height: 2.8rem;
  border: 0;
  background: transparent
}

.krail-N58 .modal-confirm .modal-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain
}

.krail-N58 .modal-confirm .modal-figure {
  margin: 0 auto;
  width: 5.6rem;
  height: 5.6rem
}

.krail-N58 .modal-confirm .modal-figure img {
  width: 100%;
  height: 100%;
  object-fit: contain
}

.krail-N58 .modal-confirm .modal-body {
  font-size: var(--fs-p1);
  text-align: center;
  color: var(--white)
}

.krail-N58 .modal-confirm .modal-textarea {
  margin: 1.6rem 0
}

.krail-N58 .modal-confirm .modal-footer {
  text-align: center
}

.krail-N58 .modal-confirm .modal-footer .btnset {
  min-width: 9.4rem;
  height: 4rem;
  border-radius: 0.4rem
}

.krail-N58 .modal-confirm .modal-footer .btnset.btnset-line-light {
  border-color: var(--white);
  color: var(--white)
}

.krail-N58 .modalset .modalset-close::before {
  color: var(--text-color1)
}

@media (max-width: 992px) {
  .krail-N58 {
    padding-top: 8rem;
    padding-bottom: 8rem
  }

  .krail-N58 .contact-area {
    display: block;
    border-radius: 1.6rem
  }

  .krail-N58 .imageset {
    display: block;
    height: 17.9rem;
    min-height: 0
  }

  .krail-N58 .form-group {
    padding: 1.6rem
  }

  .krail-N58 .form-alert {
    padding: 1.2rem;
    margin-top: 2.4rem
  }

  .krail-N58 .form-box+.form-box {
    margin-top: 1.4rem
  }

  .krail-N58 .form-group .form-tit+.checkset-wrap,
  .krail-N58 .form-group .form-tit+.radioset-wrap {
    gap: 0.8rem 2.4rem
  }

  .krail-N58 .checkset .checkset-label {
    padding-left: 2.6rem;
    max-width: 100%
  }

  .krail-N58 .checkset .checkset-label::before {
    width: 1.8rem;
    height: 1.8rem
  }

  .krail-N58 .checkset .checkset-label::after {
    font-size: 1.8rem
  }

  .krail-N58 .contents-agree .btnset {
    transform: translateX(-0.8rem)
  }

  .krail-N58 .form-wrap {
    display: block;
    margin-top: 0.4rem
  }

  .krail-N58 .form-btn {
    margin-top: 2.4rem
  }

  .krail-N58 .form-btn .btnset {
    width: 100%
  }

  .krail-N58 .modal-confirm .modal-figure {
    width: 4.8rem;
    height: 4.8rem
  }

  .krail-N58 .modal-confirm .modal-textarea {
    margin: 0.8rem 0
  }
}