@charset "UTF-8";
/************************************************************************************/
/************************************* Colors *************************************/
/************************************************************************************/
/* absolute-center */
/* transition */
/************************************************************************************/
/************************************* KICOX x INFO *********************************/
/************************************************************************************/
h2.style-KICOXINFO {
  text-align: center;
  position: relative;
}
h2.style-KICOXINFO::after {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #000;
  display: block;
  position: absolute;
  top: 26%;
  left: 0;
}
h2.style-KICOXINFO span {
  font-size: 0.8em;
  color: #45b473;
  display: block;
}
h2.style-KICOXINFO span.num {
  font-size: 2em;
  font-weight: 200;
}

.kicon-info {
  border: 1px solid #000;
  padding: 2em;
}
.kicon-info h2 {
  text-align: center;
}
.kicon-info h2 span {
  font-size: 0.8em;
  display: block;
}
.kicon-info h3 {
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  border-width: 1px 0;
  margin-bottom: 1em;
}
.kicon-info h3 span {
  width: calc(100% - 100px);
  display: block;
}
.kicon-info h3 span.title {
  width: 100px;
  color: #fff;
  padding: 0.5em 1em;
}
.kicon-info h3.green {
  color: #45b473;
}
.kicon-info h3.green .title {
  background: #45b473;
}
.kicon-info h3.blue {
  color: #4cadff;
}
.kicon-info h3.blue .title {
  background: #4cadff;
}
.kicon-info h3.h3-style2 {
  border: 1px solid #000;
  background: #eaebeb;
  padding: 0.5em 1em;
  display: block;
}
.kicon-info ul li {
  margin-bottom: 1.5em;
}
.kicon-info ul li:last-child {
  margin-bottom: 0;
}
.kicon-info ul li span .title {
  font-weight: 600;
  display: block;
}
.kicon-info ul li .img-wrap figure figcaption.figtitle {
  font-size: 1em;
}
.kicon-info table {
  font-size: 0.9em;
}
.kicon-info table thead {
  color: #000;
  background: #fff;
}
.kicon-info table th, .kicon-info table td {
  padding: 0.5em 1em;
}
.kicon-info table th {
  font-weight: 400;
}
@media screen and (max-width: 580px) {
  .kicon-info h3 {
    display: block;
  }
  .kicon-info h3 span {
    width: 100%;
    text-align: left;
  }
  .kicon-info h3 span.title {
    margin-bottom: 0.5em;
  }
  .kicon-info .table-wrap {
    overflow-x: auto;
  }
  .kicon-info .table-wrap table {
    width: 580px;
  }
}
@media screen and (max-width: 480px) {
  .kicon-info {
    padding: 2em 1rem;
  }
}

/************************************************************************************/
/***************************** Performance x Profits ********************************/
/************************************************************************************/
/* 명예의 전당 */
.company-info::before, .company-info::after {
  content: "";
  height: 9px;
  background: url("../../images/sub/sub0201_company_pattern.png") repeat-x;
  display: block;
}
.company-info.marginB {
  margin-bottom: 4em;
}
.company-info .company-inner {
  padding: 2em;
  display: flex;
}
.company-info .company-inner > div {
  padding: 1em;
}
.company-info .company-inner .company-name {
  border-right: 1px solid #000;
}
.company-info .company-inner .company-name span {
  border: 1px solid #000;
  padding: 0.5em 1em;
  display: inline-block;
}
.company-info .company-inner dl {
  display: flex;
}
.company-info .company-inner dl dt {
  width: 100px;
  font-weight: bold;
}
.company-info .company-inner dl dt span {
  border-bottom: 2px solid #000;
  display: inline-block;
}
.company-info .company-inner dl dd ul li b {
  margin-right: 1em;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .company-info .company-inner {
    padding: 2em 1em;
    display: block;
  }
  .company-info .company-inner .company-name {
    border-right: 0;
    border-bottom: 1px solid #000;
  }
}
@media screen and (max-width: 480px) {
  .company-info .company-inner {
    padding: 2em 0;
  }
  .company-info .company-inner > div {
    padding: 1em 0;
  }
  .company-info .company-inner dl {
    display: block;
  }
  .company-info .company-inner dl dt {
    margin-bottom: 0.5em;
  }
  .company-info .company-inner dl dl {
    margin-bottom: 1.5em;
  }
}

.interview-style1 h2.question {
  border: 1px solid #000;
  background: #f2f2f2;
  padding: 1em 2em;
  margin-left: 1em;
  position: relative;
}
.interview-style1 h2.question::before {
  content: "Q";
  color: #fff;
  border-radius: 0 100px 100px 0;
  background: #000;
  padding: 0.5rem 3rem;
  display: block;
  position: absolute;
  top: -1em;
  left: -1em;
}
.interview-style1 h2.question::after {
  content: "";
  width: 31px;
  height: 20px;
  background: url("../../images/sub/question_back.png") no-repeat;
  display: block;
  position: absolute;
  top: 0.95em;
  left: -1em;
  z-index: -1;
}
@media screen and (max-width: 480px) {
  .interview-style1 h2.question {
    padding: 1em;
  }
}
.interview-style1 .marginB {
  margin-bottom: 4em;
}

.inside-interview {
  margin-top: 6em;
}
.inside-interview::before, .inside-interview::after {
  content: "";
  height: 9px;
  background: url("../../images/sub/sub0201_company_pattern.png") repeat-x;
  display: block;
}
.inside-interview h2 {
  border: 2px solid #000;
  border-radius: 100px;
  background: #fff;
  padding: 0.2em 1em;
  margin-bottom: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
.inside-interview h2::before {
  content: "/";
  font-style: italic;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 60%);
}
.inside-interview h2::after {
  content: "!";
  color: #fff;
  border-radius: 100px;
  background: #000;
  padding: 0 1em;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
}
@media screen and (max-width: 500px) {
  .inside-interview h2 {
    width: 80%;
    font-size: 1.2em;
    text-align: center;
  }
}
.inside-interview .inside-interview-inner {
  padding: 2em;
}
.inside-interview .inside-interview-inner > div {
  display: flex;
}
.inside-interview .inside-interview-inner > div > div {
  width: calc(100% - 240px - 3em);
  margin-bottom: 2em;
}
.inside-interview .inside-interview-inner > div > div:last-child {
  margin-bottom: 0;
}
.inside-interview .inside-interview-inner > div > div.img-wrap {
  width: 240px;
  margin-right: 3em;
}
.inside-interview .inside-interview-inner > div > div .slogun {
  font-size: 1.3em;
  font-weight: 600;
  text-decoration: underline;
  margin: 1em 0 0.2em 0;
}
.inside-interview .inside-interview-inner > div > div .interviewee {
  font-weight: 600;
  margin-bottom: 1em;
  display: flex;
  align-items: center;
}
.inside-interview .inside-interview-inner > div > div .interviewee span {
  font-size: 0.85em;
  font-weight: 400;
  color: #777;
  display: flex;
  align-items: center;
}
.inside-interview .inside-interview-inner > div > div .interviewee span::before {
  content: "";
  width: 1px;
  height: 16px;
  border-right: 1px solid #777;
  margin: 0 10px;
  display: block;
}
@media screen and (max-width: 768px) {
  .inside-interview .inside-interview-inner > div {
    display: block;
    margin-bottom: 3em;
  }
  .inside-interview .inside-interview-inner > div:last-child {
    margin-bottom: 0;
  }
  .inside-interview .inside-interview-inner > div > div {
    width: 100%;
  }
  .inside-interview .inside-interview-inner > div > div.img-wrap {
    margin: 0 auto 1em auto;
  }
  .inside-interview .inside-interview-inner > div > div .slogun {
    text-align: center;
  }
  .inside-interview .inside-interview-inner > div > div .interviewee {
    justify-content: center;
  }
}

/* 라이징 스타 */
.quote::before, .quote::after {
  content: "";
  height: 9px;
  background: url("../../images/sub/sub0201_company_pattern.png") repeat-x;
  display: block;
}
.quote .quote-inner {
  font-size: 1.5em;
  font-weight: 500;
  text-align: center;
  padding: 1em;
}

/* K-파워경쟁력 */
.k-competitiveness {
  display: flex;
  flex-wrap: wrap;
}
.k-competitiveness:last-child::after {
  display: none;
}
.k-competitiveness h2.h2-style3 span {
  font-size: 0.7em;
  background: #83c0e9;
  padding: 0 1em;
  margin-top: 0.5em;
  display: table;
}
.k-competitiveness::after {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: 2px solid #83c0e9;
  margin: 2em 0;
  display: block;
}
.k-competitiveness > figure {
  width: 40%;
  margin-right: 1em;
}
.k-competitiveness > div {
  width: calc(60% - 1em);
}
.k-competitiveness dl {
  margin-bottom: 0.1em;
  display: flex;
}
.k-competitiveness dl dt {
  font-weight: 600;
  margin-right: 1rem;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .k-competitiveness {
    display: block;
  }
  .k-competitiveness > figure {
    width: 100%;
    text-align: center;
    margin-right: 0;
    margin-bottom: 1em;
  }
  .k-competitiveness > div {
    width: 100%;
  }
}

/* 지원사업 체크리스트 */
.check-list .marginB {
  margin-bottom: 5em !important;
}
.check-list h2.h2-style2 a {
  font-size: 0.5em;
  color: #fff;
  border-radius: 10rem;
  padding: 0 1em;
  margin-left: 1em;
  background: #000;
  display: inline-flex;
  align-items: center;
}
.check-list h2.h2-style2 a::after {
  content: "";
  width: 19px;
  height: 19px;
  background: url("../../images/sub/check_more.png") no-repeat;
  margin-left: 0.5rem;
  display: inline-block;
}
.check-list h3 {
  margin-top: 2em;
}
.check-list .kicox-organization {
  border: 1px solid #000;
  padding: 0 1em;
  display: inline-block;
}
.check-list .table-wrap {
  margin-bottom: 1.6em;
  overflow-x: auto;
}
.check-list .table-wrap table {
  font-size: 0.9em;
  min-width: 767px;
}
.check-list .table-wrap table th, .check-list .table-wrap table td {
  vertical-align: middle;
  padding: 1rem;
}
.check-list .table-wrap table tbody th {
  background: #ededed;
}

/************************************************************************************/
/*********************************** Support x Share ********************************/
/************************************************************************************/
/* Zoom-in 뉴페이스 */
.content-wrap:has(.new-face) .new-face {
  background: url("../../images/sub/sub0301_bg.jpg");
}
.content-wrap:has(.new-face) .sub-visual-wrap .text-visual figure {
  background: none;
}
.content-wrap:has(.new-face) .summary .inner::after {
  display: none;
}
.content-wrap:has(.new-face) .content-inner::before {
  content: "";
  width: 64px;
  height: 52px;
  background: url("../../images/sub/summary_icon.png") no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 10px;
  transform: translateY(-70%);
}
@media screen and (max-width: 550px) {
  .content-wrap:has(.new-face) .content-inner::before {
    width: 55px;
    height: 45px;
  }
}
.content-wrap:has(.new-face) .inside-interview {
  margin-top: 6em;
}
.content-wrap:has(.new-face) .inside-interview .inside-interview-inner {
  padding-top: 4em;
}
.content-wrap:has(.new-face) .inside-interview span {
  font-weight: 600;
  color: #39b97a;
  display: inline-block;
  position: relative;
}
.content-wrap:has(.new-face) .inside-interview span::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: 3px solid #39b97a;
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
}

.new-face-content p {
  font-weight: 500;
  line-height: 130%;
}
.new-face-content p.list {
  color: #fff;
  border-radius: 100px;
  background: #39b97a;
  padding: 0 1em;
  display: table;
}

.new-face-content1 {
  display: flex;
  align-items: flex-start;
}
.new-face-content1 > figure,
.new-face-content1 > div {
  margin: 0 2em;
  flex: 1;
}
.new-face-content1 > div {
  border: 4px solid #000;
  padding: 2em;
  margin-top: 15%;
  background: #fff;
}

.new-face-content2 figure:first-child {
  position: absolute;
  top: 50%;
  right: 0;
}
.new-face-content2 div {
  border: 4px solid #000;
  border-radius: 100px;
  background: #fff;
  padding: 1em 2em;
  position: absolute;
  top: 0;
  left: 45%;
}
.new-face-content2 > p {
  padding-left: 4rem;
}

.new-face-content3 figure:first-child {
  position: absolute;
  top: 50%;
  left: 0;
}
.new-face-content3 figure:nth-child(2) {
  text-align: right;
}

.new-face-content4 div {
  border: 4px solid #000;
  border-radius: 100px;
  background: #fff;
  padding: 1em 2em;
  position: absolute;
  top: 0;
  left: 45%;
}

.new-face-content5 figure:nth-child(1) {
  text-align: right;
}
.new-face-content5 figure:nth-child(2) {
  position: absolute;
  top: 50%;
  left: 0;
}

.new-face-content6 {
  display: flex;
}
.new-face-content6 > div {
  margin: 0 1em;
}
.new-face-content6 > div:nth-child(2) {
  margin-top: 10%;
}
.new-face-content6 > div:nth-child(2) p {
  position: absolute;
  bottom: 15%;
  left: 4rem;
}

.new-face-content7 p {
  padding-left: 4rem;
}

.new-face-content8 figure {
  text-align: right;
}
.new-face-content8 p {
  padding-left: 40%;
}

@media screen and (max-width: 768px) {
  .new-face-content1 {
    display: block;
  }
  .new-face-content1 > div {
    margin-top: 1em;
  }

  .new-face-content2 figure:first-child {
    text-align: center;
    position: relative;
    top: auto;
    left: auto;
  }
  .new-face-content2 div {
    text-align: center;
    position: relative;
    top: auto;
    left: auto;
  }

  .new-face-content3 figure:first-child {
    text-align: center;
    position: relative;
    top: auto;
    left: auto;
  }
  .new-face-content3 figure:nth-child(2) {
    text-align: center;
  }

  .new-face-content4 {
    margin-bottom: 3em;
  }
  .new-face-content4 div {
    margin: 2em 0;
    position: relative;
    top: auto;
    left: auto;
  }

  .new-face-content5 {
    margin-bottom: 3em;
  }
  .new-face-content5 figure:nth-child(2) {
    text-align: right;
    position: relative;
    top: auto;
    left: auto;
  }

  .new-face-content6 {
    margin-bottom: 3em;
    display: block;
  }
  .new-face-content6 > div {
    margin: 0;
  }
}
@media screen and (max-width: 500px) {
  .new-face-content6 > div:nth-child(2) p {
    bottom: 0;
    left: 0;
  }

  .new-face-content7 p {
    padding-left: 0;
  }
}
/* 다함께 산단여행 */
.place h3 {
  font-size: 0.9em;
  color: #fff;
  border-radius: 0 10rem 10rem 0;
  background: #000;
  padding: 0.5em 1em;
  margin-bottom: 1em;
  display: inline-block;
}
.place .address,
.place .time,
.place .phone,
.place .website {
  display: flex;
  align-items: center;
}
.place .address::before,
.place .time::before,
.place .phone::before,
.place .website::before {
  content: "";
  width: 15px;
  height: 15px;
  background-repeat: no-repeat;
  background-size: 100%;
  margin-right: 1rem;
  display: block;
}
.place .address::before {
  background-image: url("../../images/sub/sub0302_icon_address.svg");
}
.place .time::before {
  background-image: url("../../images/sub/sub0302_icon_time.svg");
}
.place .phone::before {
  background-image: url("../../images/sub/sub0302_icon_phone.svg");
}
.place .website::before {
  background-image: url("../../images/sub/sub0302_icon_website.svg");
}

.picnic-wrap {
  border-top: 1px solid #000;
  padding-top: 3em;
  position: relative;
}
.picnic-wrap::before, .picnic-wrap::after {
  content: "";
  width: 15px;
  height: 15px;
  border: 5px solid #000;
  border-radius: 50%;
  background: #fff;
  display: block;
  position: absolute;
  top: 0;
  transform: translateY(-50%);
}
.picnic-wrap::before {
  left: 20%;
}
.picnic-wrap::after {
  left: 80%;
}
.picnic-wrap h3 {
  font-size: 1.1em;
}
.picnic-wrap .picnic:last-child {
  border-top: 1px solid #000;
  padding-top: 3em;
}

/* 슬기로운 산단생활 */
.healing .img-wrap {
  position: relative;
}
.healing .img-wrap .hash-tag {
  position: absolute;
  bottom: 1.5rem;
  left: 1rem;
}
.healing .img-wrap .hash-tag span {
  border: 1px solid #000;
  border-radius: 10rem;
  background: #fff;
  padding: 0.2em 1em;
  display: inline-block;
}
.healing .address {
  text-align: center;
  color: #fff;
  border-radius: 10rem;
  background: #03984c;
  padding: 0.3em 1em;
}
.healing .recommender {
  font-size: 1.2em;
  font-weight: 600;
  margin: 2em 0;
}
.healing .recommender span {
  font-size: 0.8em;
  font-weight: 400;
}
.healing .question {
  font-weight: 600;
  color: #03984c;
  margin-bottom: 0;
}
.healing .answer {
  margin-bottom: 2rem;
}

/* 마음 우편함 */
.content-wrap:has(.letter-wrap) .letter-wrap {
  background: url("../../images/sub/sub0304_bg.jpg");
}
.content-wrap:has(.letter-wrap) .sub-visual-wrap .text-visual figure {
  background: none;
}
.content-wrap:has(.letter-wrap) .summary .inner::after {
  display: none;
}
.content-wrap:has(.letter-wrap) .content-inner::before {
  content: "";
  width: 64px;
  height: 52px;
  background: url("../../images/sub/summary_icon.png") no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 10px;
  transform: translateY(-70%);
}
@media screen and (max-width: 550px) {
  .content-wrap:has(.letter-wrap) .content-inner::before {
    width: 55px;
    height: 45px;
  }
}
.content-wrap:has(.letter-wrap) .letter {
  background: #fff;
  padding: 3em;
}
.content-wrap:has(.letter-wrap) .letter .letter-inner {
  border: 1rem dashed #d7d7d7;
  padding: 2em;
}
.content-wrap:has(.letter-wrap) .letter .letter-inner .letter-icon {
  width: 150px;
  display: block;
  position: absolute;
  top: 1em;
  right: -2rem;
}
.content-wrap:has(.letter-wrap) .letter .letter-inner h2 span {
  font-size: 0.6em;
  font-weight: 400;
}
.content-wrap:has(.letter-wrap) .letter .letter-inner .float-left {
  max-width: 40%;
  border-radius: 100rem;
  box-shadow: 5px 5px rgba(0, 0, 0, 0.3);
  margin-right: 2em;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .content-wrap:has(.letter-wrap) .letter .letter-inner .float-left {
    max-width: none;
    margin-right: 0;
    margin-bottom: 2em;
    float: none;
  }
}
.content-wrap:has(.letter-wrap) .letter .letter-inner .sender,
.content-wrap:has(.letter-wrap) .letter .letter-inner .recipient {
  font-weight: 600;
  text-align: left;
}
.content-wrap:has(.letter-wrap) .letter .letter-inner .sender span,
.content-wrap:has(.letter-wrap) .letter .letter-inner .recipient span {
  color: #fff;
  background: #000;
  border-radius: 10rem;
  padding: 0 0.5em;
  display: inline-block;
}
@media screen and (max-width: 480px) {
  .content-wrap:has(.letter-wrap) .letter {
    padding: 1em;
  }
  .content-wrap:has(.letter-wrap) .letter .letter-inner {
    border: 0.5rem dashed #d7d7d7;
    padding: 1em;
  }
  .content-wrap:has(.letter-wrap) .letter .letter-inner .letter-icon {
    opacity: 0.5;
  }
}

/************************************************************************************/
/*********************************** Heart x Hope ********************************/
/************************************************************************************/
.tech-wrap {
  border-top: 1px solid #000;
  padding-top: 3em;
  position: relative;
}
.tech-wrap::before, .tech-wrap::after {
  content: "";
  width: 15px;
  height: 15px;
  border: 5px solid #000;
  border-radius: 50%;
  background: #fff;
  display: block;
  position: absolute;
  top: 0;
  transform: translateY(-50%);
}
.tech-wrap::before {
  left: 20%;
}
.tech-wrap::after {
  left: 80%;
}
.tech-wrap .tech h2 {
  font-weight: 200;
  text-align: center;
}
.tech-wrap .tech h2 span {
  font-size: 0.6em;
  font-weight: 600;
  color: #4cadff;
  border-bottom: 2px solid #4cadff;
  display: inline-block;
}
.tech-wrap .tech figure {
  position: relative;
  width: 200px;
  border: 2px solid #4cadff;
  border-radius: 50%;
  margin: 0 auto 1em auto;
  display: block;
  position: relative;
  overflow: hidden;
}
.tech-wrap .tech figure:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 100%;
}
.tech-wrap .tech figure > .content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.tech-wrap .tech figure img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* 직장인 생활백서 */
.work-wrap > div {
  display: flex;
}
.work-wrap > div > div {
  width: calc(100% - 200px - 2em);
}
.work-wrap header {
  width: 200px;
  color: #5a4f4c;
  margin-right: 2em;
}
.work-wrap header h2 {
  font-size: 1.2em;
}
.work-wrap header h2 span {
  font-size: 2em;
  display: flex;
  align-items: flex-start;
}
.work-wrap header h2 span::before {
  content: "step";
  font-size: 0.5em;
  margin-top: 0.5rem;
  margin-right: 1em;
  display: block;
}
.work-wrap header ul li {
  font-size: 0.9em;
  font-weight: 600;
  padding-left: 2rem;
  position: relative;
}
.work-wrap header ul li::before {
  content: "";
  width: 15px;
  height: 15px;
  background: no-repeat center/100% url("../../images/sub/sub0403_icon.svg");
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
}
.work-wrap table {
  font-size: 0.8em;
}
.work-wrap table th, .work-wrap table td {
  vertical-align: middle;
  padding: 0.5em 1em;
}
@media screen and (max-width: 767px) {
  .work-wrap > div {
    border-bottom: 1px dashed #5a4f4c;
    padding-bottom: 3em;
    display: block;
  }
  .work-wrap > div:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .work-wrap > div > div {
    width: 100%;
  }
  .work-wrap header {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2em;
  }
  .work-wrap header h2 br {
    display: none;
  }
  .work-wrap .table-wrap {
    overflow-x: auto;
  }
  .work-wrap .table-wrap table {
    width: 768px;
  }
}

/* 회사사용 설명성 */
.menual header {
  margin-bottom: 0.9em;
  position: relative;
}
.menual header::before {
  content: "";
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #000;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
}
.menual header h2 {
  font-size: 1em;
  border-radius: 10rem;
  background: #4cadff;
  padding: 0.1em 1em;
  margin: 0 auto;
  display: table;
}
.menual header h2 span {
  color: #fff;
}
.menual b.block {
  border-bottom: 15px solid yellow;
  line-height: 0;
  display: inline-block;
}
.menual .border-box {
  font-size: 0.85em;
  border: 1px dashed #000;
  padding: 1em;
  margin-bottom: 1em;
}
.menual .border-box ul {
  margin-left: 1em;
}
@media screen and (max-width: 480px) {
  .menual p:has(.block) {
    text-align: left;
  }
}

/* 안전한 내일 */
.safty-wrap h2 {
  font-size: 1em;
  border-radius: 0 100rem 100rem 0;
  padding: 0.2em 1em;
  display: table;
}
.safty-wrap ul {
  font-size: 0.85em;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
}
.safty-wrap ul li {
  width: calc(100% / 4);
  padding: 0 1em;
}
.safty-wrap ul li dl dt figure {
  text-align: center;
  margin-bottom: 1rem;
  display: block;
}
.safty-wrap ul li dl dt figure img {
  width: 40%;
}
.safty-wrap ul li dl dt span {
  color: #fff;
  background: #000;
  display: block;
}
.safty-wrap ul li dl dd {
  word-break: keep-all;
}
@media screen and (max-width: 640px) {
  .safty-wrap ul li {
    width: 50%;
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 480px) {
  .safty-wrap ul li {
    padding: 0 0.5rem;
  }
}

/* KICOX 뉴스 */
.news-wrap > div {
  border-bottom: 1px solid #000;
  padding-bottom: 2em;
  margin-bottom: 2em;
}
.news-wrap > div h2 {
  font-size: 1.2em;
}
.news-wrap .news {
  display: flex;
}
.news-wrap .news > figure {
  width: 40%;
  margin-right: 2em;
}
.news-wrap .news > div {
  width: calc(100% - 40% - 2em);
}
@media screen and (max-width: 767px) {
  .news-wrap .news {
    display: block;
  }
  .news-wrap .news > figure {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2em;
  }
  .news-wrap .news > div {
    width: 100%;
  }
}

/* KICOX LETTER */
.quiz-wrap h2 {
  border-bottom: 2px dashed #92be5a;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.quiz-wrap h2 figure {
  width: 100px;
  display: block;
}
.quiz-wrap ul {
  display: flex;
  flex-wrap: wrap;
}
.quiz-wrap ul li {
  margin-right: 2em;
}
.quiz-wrap ul li:last-child {
  margin-right: 0;
}
.quiz-wrap .border-box {
  font-size: 0.8em;
  border: 2px dashed #92be5a;
  padding: 1em;
  margin-top: 3em;
}
.quiz-wrap .border-box h3 {
  border-bottom: 1px solid #92be5a;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}
.quiz-wrap .border-box figure {
  text-align: right;
}
.quiz-wrap .border-box figure img {
  width: 80px;
}
.quiz-wrap .opinion > div {
  font-size: 0.8em;
  margin-bottom: 2em;
}
.quiz-wrap .btn-wrap {
  padding-top: 2em;
  border-top: 1px solid #92be5a;
}
.quiz-wrap .btn-wrap a {
  color: #fff;
  border-radius: 10rem;
  padding: 0.5em 2em;
  margin: 0 auto;
  display: table;
}

/* common */
h2 {
  font-size: 1.5em;
  font-weight: 600;
  margin-bottom: 1em;
}
h2.style-normal {
  border-bottom: 1px dashed #000;
  display: inline-block;
}
h2.h2-style2 {
  line-height: 120%;
  padding-left: 2rem;
  position: relative;
}
h2.h2-style2::before, h2.h2-style2::after {
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #000;
  display: block;
  position: absolute;
  left: 0;
}
h2.h2-style2::before {
  top: 0.3rem;
}
h2.h2-style2::after {
  top: 1.5rem;
}

h3 {
  font-size: 1.2em;
  font-weight: 600;
}
h3.h3-style2 {
  font-size: 1.1em;
  padding-left: 1.3rem;
  position: relative;
  /*&::before {
      content:'';
      width:1px;
      height:1.5rem;
      border-right:4px solid $black;
      display:block;
      position:absolute;
      top:7px;
      left:0;
  }*/
}

div:has(> .float-left)::after,
div:has(> .float-right)::after {
  content: "";
  display: block;
  clear: both;
}

.float-left {
  max-width: 50%;
  margin-right: 1em;
  margin-bottom: 1em;
  float: left;
}
@media screen and (max-width: 580px) {
  .float-left {
    max-width: none;
    margin-right: 0;
    float: none;
  }
}

.float-right {
  margin-left: 1em;
  margin-bottom: 1em;
  float: right;
}
@media screen and (max-width: 580px) {
  .float-right {
    max-width: none;
    margin-left: 0;
    float: none;
  }
}

.inner {
  max-width: 1240px;
  padding: 0 2rem;
  margin: 0 auto;
}

.content-wrap:has(.summary) .content-inner {
  padding-top: 5em;
}

.content-inner {
  padding-top: 10em;
  padding-bottom: 10em;
}
.content-inner .col-2 {
  display: flex;
  flex-wrap: wrap;
}
.content-inner .col-2 > * {
  width: calc(100% / 2 - (3em / 2));
  margin-right: 3em;
  margin-bottom: 3em;
}
.content-inner .col-2 > *:nth-child(2n) {
  margin-right: 0;
}
.content-inner .img-wrap {
  margin: 1em 0;
}
.content-inner .img-wrap figure {
  text-align: center;
}
.content-inner .img-wrap figure figcaption {
  font-style: italic;
  font-size: 0.8em;
}
.content-inner .img-wrap figure figcaption.figtitle {
  font-style: normal;
  font-size: 1.2em;
  font-weight: 600;
  text-align: left;
}
.content-inner .img-wrap.img-grid {
  display: flex;
}
.content-inner .img-wrap.img-grid > * {
  margin: 0 1em;
  flex: 1;
}
.content-inner .figcaption {
  font-style: italic;
  font-size: 0.8em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .content-inner .col-2 {
    display: block;
  }
  .content-inner .col-2 > * {
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 500px) {
  .content-inner .img-wrap.img-grid {
    display: block;
  }
  .content-inner .img-wrap.img-grid > * {
    margin: 0;
    margin-bottom: 1em;
  }
  .content-inner .img-wrap.img-grid > *:last-child {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 480px) {
  .content-inner {
    padding-top: 5.5em;
    padding-bottom: 5.5em;
  }
}

.small-txt {
  font-size: 0.8em;
}

.gray-txt {
  color: #767676;
}

.scroll-control {
  width: 25px;
  position: absolute;
  left: 2rem;
  bottom: 0;
  transform: translateY(50%);
}
.scroll-control a {
  padding: 10px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.scroll-control a img {
  width: 60%;
}
.scroll-control div {
  line-height: 100%;
  margin: 1em 0;
}
.scroll-control.fixed1 {
  position: fixed;
  top: 0;
  bottom: unset;
}
.scroll-control.fixed2 {
  position: fixed;
  top: 50%;
  transition: all 0.4s ease;
  transform: none;
}
@media screen and (max-width: 1340px) {
  .scroll-control {
    display: none;
  }
}

.EndMark {
  width: 31px;
  height: 17px;
  background: url("../../images/common/endmark.svg") no-repeat;
  background-size: 100%;
  margin-left: 5px;
  display: inline-block;
}

.marginB {
  margin-bottom: 3em !important;
}

.foot-note {
  border-top: 1px dashed #000;
  padding-top: 2em;
  margin-top: 2em;
}

.sub-header-wrap {
  max-width: 1920px;
  margin: 0 auto;
}

.sub-header {
  border-bottom: 2px solid #000;
  background: #fff;
  padding-bottom: 8em;
  margin-top: 8rem;
}
.sub-header header {
  width: 50%;
  word-break: keep-all;
}
.sub-header header h1 {
  font-family: "GmarketSans", sans-serif;
  font-size: 3em;
  font-weight: 700;
  text-align: left;
  line-height: 130%;
  margin-top: 5rem;
}
.sub-header header h1 span {
  font-size: 0.6em;
}
.sub-header header h1 span.sub-title {
  font-weight: 400;
  line-height: 140%;
  margin-top: 0.7em;
  display: block;
}
.sub-header header h1 span.sub-title b {
  display: inline-block;
  border-bottom: 2px solid #000;
}
@media screen and (max-width: 1100px) {
  .sub-header header {
    width: 100%;
  }
}
.sub-header .writer {
  color: #777;
  margin-top: 2em;
  display: flex;
  align-items: center;
}
.sub-header .writer > img {
  width: 17px;
  margin-right: 2rem;
}
.sub-header .writer span {
  color: #000;
  display: flex;
  align-items: center;
}
.sub-header .writer span::after {
  content: "";
  width: 1px;
  height: 16px;
  border-right: 1px solid #777;
  margin: 0 10px;
  display: block;
}
.sub-header .writer span.multi {
  margin-left: 2rem;
}
.sub-header .category {
  font-family: "GmarketSans", sans-serif;
  font-size: 1.2rem;
  font-weight: 400;
  position: absolute;
  top: 10%;
  left: 0;
  transform: rotate(90deg);
}
@media screen and (max-width: 1350px) {
  .sub-header .category {
    display: none;
  }
}
@media screen and (max-width: 1023px) {
  .sub-header {
    padding-bottom: 10%;
    margin-top: 5%;
  }
  .sub-header header h1 {
    font-size: 3em;
    margin-top: 1em;
  }
}
@media screen and (max-width: 768px) {
  .sub-header {
    padding-bottom: 15%;
  }
}
@media screen and (max-width: 480px) {
  .sub-header header h1 {
    font-size: 2em;
  }
}

.summary {
  font-size: 1.1em;
  font-weight: 600;
  padding: 6em 0 3em 0;
  z-index: -1;
}
.summary .inner {
  text-align: center;
}
.summary .inner::after {
  content: "";
  width: 64px;
  height: 52px;
  background: url("../../images/sub/summary_icon.png") no-repeat;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  left: 10px;
  transform: translateY(150%);
}
@media screen and (max-width: 550px) {
  .summary .inner::after {
    width: 55px;
    height: 45px;
  }
}

/* visual */
/* landscape */
.sub-visual-wrap {
  width: 100%;
  max-width: 1920px;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.sub-visual-wrap .sub-visual {
  position: absolute;
}
.sub-visual-wrap .sub-visual figure {
  display: block;
  overflow: hidden;
}
.sub-visual-wrap .sub-visual figure img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.sub-visual-wrap .sub-visual.landscape {
  width: 50%;
  right: 0;
  bottom: -9rem;
}
.sub-visual-wrap .sub-visual.landscape figure {
  position: relative;
  border-radius: 500px 0 0 500px;
}
.sub-visual-wrap .sub-visual.landscape figure:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 62.5%;
}
.sub-visual-wrap .sub-visual.landscape figure > .content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 1550px) {
  .sub-visual-wrap .sub-visual.landscape figure {
    position: relative;
  }
  .sub-visual-wrap .sub-visual.landscape figure:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 73.8636363636%;
  }
  .sub-visual-wrap .sub-visual.landscape figure > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .sub-visual-wrap .sub-visual.landscape figure img {
    width: auto;
    height: 100%;
  }
}
@media screen and (max-width: 1300px) {
  .sub-visual-wrap .sub-visual.landscape figure {
    position: relative;
  }
  .sub-visual-wrap .sub-visual.landscape figure:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 85.2272727273%;
  }
  .sub-visual-wrap .sub-visual.landscape figure > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
.sub-visual-wrap .sub-visual.portrait {
  width: 31.25%;
  right: 5%;
  bottom: -3em;
}
.sub-visual-wrap .sub-visual.portrait figure {
  position: relative;
  border-radius: 500px 500px 0 0;
}
.sub-visual-wrap .sub-visual.portrait figure:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 100%;
}
.sub-visual-wrap .sub-visual.portrait figure > .content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 1800px) {
  .sub-visual-wrap .sub-visual.portrait figure {
    position: relative;
  }
  .sub-visual-wrap .sub-visual.portrait figure:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 116.6666666667%;
  }
  .sub-visual-wrap .sub-visual.portrait figure > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 1500px) {
  .sub-visual-wrap .sub-visual.portrait figure {
    position: relative;
  }
  .sub-visual-wrap .sub-visual.portrait figure:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 133.3333333333%;
  }
  .sub-visual-wrap .sub-visual.portrait figure > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 1100px) {
  .sub-visual-wrap {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
  }
  .sub-visual-wrap .sub-visual.landscape {
    bottom: 0;
    right: 0;
    transform: translateY(90%);
  }
  .sub-visual-wrap .sub-visual.landscape figure {
    position: relative;
  }
  .sub-visual-wrap .sub-visual.landscape figure:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 51.1363636364%;
  }
  .sub-visual-wrap .sub-visual.landscape figure > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .sub-visual-wrap .sub-visual.landscape figure img {
    width: 100%;
    height: auto;
  }
  .sub-visual-wrap .sub-visual.portrait {
    bottom: 0;
    transform: translateY(90%);
  }
  .sub-visual-wrap .sub-visual.portrait figure {
    position: relative;
  }
  .sub-visual-wrap .sub-visual.portrait figure:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%;
  }
  .sub-visual-wrap .sub-visual.portrait figure > .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .sub-visual-wrap .sub-visual.landscape {
    transform: translateY(100%);
  }
}

/* 텍스트스타일 visual */
.sub-header:has(.text-visual) header {
  width: 100%;
}
.sub-header:has(.text-visual) .sub-visual-wrap {
  max-width: none;
  position: absolute !important;
  bottom: 0 !important;
  left: 0;
  transform: none;
}

.sub-visual-wrap .text-visual {
  width: 40%;
  max-width: 400px;
  position: absolute;
  right: -2em;
  bottom: 0;
  transform: translateY(4rem);
}

/* 유튜브 영상 */
.youtube_movie {
  position: relative;
  margin: 40px 0;
  position: relative;
}
.youtube_movie::before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 55.5555555556%;
}
.youtube_movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/* 참여하기 */
.involved-wrap {
  border: 5px dashed #5a4f4c;
  background: #fff;
  padding: 2em;
}
.involved-wrap > figure {
  width: 150px;
  position: absolute;
  right: 1em;
  bottom: 1em;
}
.involved-wrap a {
  font-weight: 600;
  color: #fff;
  border-radius: 10rem;
  background: #8b0800;
  padding: 0.5em 2em;
  display: inline-block;
}
@media screen and (max-width: 740px) {
  .involved-wrap > figure {
    margin-left: auto;
    position: relative;
    right: auto;
    bottom: auto;
  }
}
@media screen and (max-width: 480px) {
  .involved-wrap {
    padding: 1em;
  }
  .involved-wrap > figure {
    width: 100px;
  }
}
