/* Name	: 공감그리고 vol_58 default.css
/* Date	: 2025-11-05 */

* {
  margin: 0; padding: 0;
}
.pc-block {
  display: block;
}

.m-block {
  display: none;
}

.t-block {
  display: none;
}

.stretched-link {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 110;
}

/***************** Basic ******************/
html {
  font-size: 62.5%;
}

body {
  font-family: "Pretendard", "malgun gothic", 맑은고딕, "Dotum", 돋움, "Arial", "sans-serif";
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 180%;
  word-spacing: 2px;
  color: #000;
  word-break: keep-all;
}
body img {
  max-width: 100%;
  vertical-align: top;
}
body:has(.nav-open) {
  overflow: hidden;
}
body::-webkit-scrollbar {
  width: 5px;
}
body::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.3);
}
body::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: #6d7c77;
}

p {
  margin-bottom: 2em;
}

b {
  font-weight: 600;
}

sup {
  font-size: 1.2rem;
  vertical-align: revert;
  line-height: 100%;
  margin-left: 2px;
  display: inline-block;
}

.sec {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.sec > * {
  margin: 0 2rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

/************** header 스크롤 시 스타일 ***************/
body > header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 200;
}


/* logo / 지난호 보기 */
body > header .bi {
  font-size: 3rem;
  padding: 0 3.5rem;
  margin: 4.3rem 0;
}
body > header .bi a {
  color: #000;
  text-decoration: none;
}
body > header .webzine-list-wrap {
  font-size: 1.4rem;
  font-weight: 600;
}
body > header .webzine-list-wrap .webzine-list-active {
  border: 1px solid #000;
  border-radius: 30px;
  padding: 0.5rem 4rem 0.5rem 2rem;
  margin-left: 2rem;
  cursor: pointer;
}
body > header .webzine-list-wrap .webzine-list-active figure {
  line-height: 0;
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
body > header .webzine-list-wrap .webzine-list-active figure img {
  -webkit-filter: invert(100%);
          filter: invert(100%);
}
body > header .webzine-list-wrap .webzine-list {
  width: 100%;
  position: absolute;
  display: none;
}
body > header .webzine-list-wrap .webzine-list ul {
  border: 1px solid #000;
  background: #fff;
  margin-top: 1rem;
  margin-left: 2rem;
}
body > header .webzine-list-wrap .webzine-list ul li a {
  text-align: center;
  color: #000;
  text-decoration: none;
  padding: 0.5rem;
  display: block;
}
body > header .webzine-list-wrap .webzine-list ul li a:hover {
  text-decoration: underline;
}
body > header.fixed {
  width: 100%;
  border-bottom: 1px solid #ccc;
  background: #fff;
  position: fixed;
}

body > header.fixed .bi a {
  color: #000;
}
body > header.fixed .webzine-list-wrap .webzine-list-active {
  color: #000;
  border: 1px solid #000;
}
body > header.fixed .webzine-list-wrap .webzine-list-active figure img {
  -webkit-filter: invert(100%);
          filter: invert(100%);
}
body > header.fixed .webzine-list-wrap .webzine-list ul {
  border: 1px solid #000;
  background: #fff;
}
body > header.fixed .webzine-list-wrap .webzine-list ul li a {
  color: #000;
}
body > header.fixed .menu-wrap {
  background: #000;
}
body > header.fixed .menu-wrap .menu-trigger span {
  border-bottom-color: #fff;
}
body > header:has(.nav-open)::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.4;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 190;
}

/*********** nav_pc ************/
.menu-wrap {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #000;
  margin-left: auto;
  margin-right: 2rem;
}
.menu-wrap .menu_btn {
  width: 100%;
  height: 100%;
  position: absolute;
}
.menu-wrap .menu-trigger {
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  width: 30px;
  height: 20px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1000;
}
.menu-wrap .menu-trigger span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 3px solid #fff;
}
.menu-wrap .menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-wrap .menu-trigger span:nth-of-type(2) {
  top: 8.5px;
}
.menu-wrap .menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-wrap .menu-trigger span:nth-of-type(1) {
  -webkit-animation: menu-bar-01 0.75s forwards;
  animation: menu-bar-01 0.75s forwards;
}
.menu-wrap .menu-trigger span:nth-of-type(2) {
  -webkit-transition: all 0.25s 0.25s;
  transition: all 0.25s 0.25s;
  opacity: 1;
}
.menu-wrap .menu-trigger span:nth-of-type(3) {
  -webkit-animation: menu-bar-02 0.75s forwards;
  animation: menu-bar-02 0.75s forwards;
}
header:has(.nav-open) .menu-wrap span {
  border-bottom: 3px solid #000 !important;
}
header:has(.nav-open) .menu-wrap span:nth-of-type(1) {
  -webkit-animation: active-menu-bar-01 0.75s forwards;
  animation: active-menu-bar-01 0.75s forwards;
}
header:has(.nav-open) .menu-wrap span:nth-of-type(2) {
  opacity: 0;
}
header:has(.nav-open) .menu-wrap span:nth-of-type(3) {
  -webkit-animation: active-menu-bar-02 0.75s forwards;
  animation: active-menu-bar-02 0.75s forwards;
}

@-webkit-keyframes menu-bar-01 {
  0% {
    -webkit-transform: translateY(20px) rotate(45deg);
            transform: translateY(20px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(20px) rotate(0);
            transform: translateY(20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}

@keyframes menu-bar-01 {
  0% {
    -webkit-transform: translateY(20px) rotate(45deg);
            transform: translateY(20px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(20px) rotate(0);
            transform: translateY(20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes menu-bar-02 {
  0% {
    -webkit-transform: translateY(-20px) rotate(-45deg);
            transform: translateY(-20px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-20px) rotate(0);
            transform: translateY(-20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar-02 {
  0% {
    -webkit-transform: translateY(-20px) rotate(-45deg);
            transform: translateY(-20px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-20px) rotate(0);
            transform: translateY(-20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes active-menu-bar-01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(9px) rotate(0);
            transform: translateY(9px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(9px) rotate(45deg);
            transform: translateY(9px) rotate(45deg);
  }
}
@keyframes active-menu-bar-01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(9px) rotate(0);
            transform: translateY(9px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(9px) rotate(45deg);
            transform: translateY(9px) rotate(45deg);
  }
}
@-webkit-keyframes active-menu-bar-02 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-9px) rotate(0);
            transform: translateY(-9px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-9px) rotate(-45deg);
            transform: translateY(-9px) rotate(-45deg);
  }
}
@keyframes active-menu-bar-02 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-9px) rotate(0);
            transform: translateY(-9px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-9px) rotate(-45deg);
            transform: translateY(-9px) rotate(-45deg);
  }
}
.nav-wrap {
  width: 100%;
  max-width: 600px;
  height: 100%;
  margin-left: auto;
  display: block;
  position: fixed;
  top: 0;
  right: -600px;
  z-index: 200;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.nav-wrap.nav-open {
  right: 0px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) -5px 0 20px;
          box-shadow: rgba(0, 0, 0, 0.2) -5px 0 20px;
}
.nav-wrap div {
  width: 100%;
  padding: 100px 4% 0;
  height: 100%;
  background-color: #fff;
  z-index: 200;
}
.nav-wrap div ul a {
  display: block;
}
.nav-wrap div ul[data-depth="1"] {
  border-top: 2px solid #ccc;
}
.nav-wrap div ul[data-depth="1"] > li {
  font-size: 1.8rem;
  font-weight: 500;
  border-bottom: 1px solid #ccc;
  padding: 18px 20px;
  position: relative;
}
.nav-wrap div ul[data-depth="1"] > li > a {
  color: #000;
  text-decoration: none;
}
.nav-wrap div ul> li > a span {line-height: 2rem;}
.nav-wrap div ul[data-depth="1"] > li:has(ul[data-depth="2"])::before, .nav-wrap div ul[data-depth="1"] > li:has(ul[data-depth="2"])::after {
  content: "";
  display: block;
  position: absolute;
  top: 32px;
  right: 14px;
  width: 10px;
  height: 2px;
  background-color: #000;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.nav-wrap div ul[data-depth="1"] > li:has(ul[data-depth="2"])::after {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.nav-wrap div ul[data-depth="1"] > li:has(ul[data-depth="2"]).on::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.nav-wrap div ul[data-depth="2"] {
  width: 100%;
  height: auto;
  font-size: 0.9em;
  font-weight: 400;
  padding: 2rem 1rem;
  display: none;
}
.nav-wrap div ul[data-depth="2"] li {
  padding-bottom: 1rem;
}
.nav-wrap div ul[data-depth="2"] li a {
  color: #000;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.nav-wrap div ul[data-depth="2"] li a figure {
  width: 40px;
  height: 40px;
  margin-right: 1rem;
  display: block;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.img_line {border: 1px solid #ccc; box-sizing: border-box;}
/*************** header 시작 스타일 ***************/
body > header {
  width: 100%;
  position: fixed;
  /* logo */
  /* 지난호 보기 */
}
body > header .bi a {
  color: #000;
}
body > header .webzine-list-wrap {
  color: #000;
}
body > header .webzine-list-wrap .webzine-list-active {
  border: 1px solid #000;
}
body > header .webzine-list-wrap .webzine-list-active figure img {
  -webkit-filter: invert(100%);
          filter: invert(100%);
          
}
body > header .webzine-list-wrap .webzine-list ul {
  border: 1px solid #000;
  background: transparent;
}
body > header .webzine-list-wrap .webzine-list ul li a {
  color: #000;
}

/* nav */
.menu-wrap {
  background-color: #000;
}
.menu-wrap .menu-trigger span {
  border-bottom: 3px solid #fff;
}

/************** Footer ***************/
footer {
  font-size: 1.6rem;
  color: #cdcdcd;
  background: #000;
  padding: 10rem 0;
}
footer .footer-inner {
  max-width: 1440px;
  padding: 0 20px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
footer .footer-inner > div:last-child {
  line-height: 160%;
  margin-left: auto;
  width: 70%;
}
footer .footer-inner > div .copy {
  margin-top: 2rem;
}
footer .ci {
  max-width: 200px;
  margin-left: 3rem;
  margin-bottom: 2rem;
}
footer .webzine-list-wrap {
  width: 250px;
  font-weight: 600;
  color: #cdcdcd;
}
footer .webzine-list-wrap .webzine-list-active {
  border: 1px solid #cdcdcd;
  border-radius: 30px;
  padding: 1rem 4rem 1rem 2rem;
  margin-left: 2rem;
  cursor: pointer;
}
footer .webzine-list-wrap .webzine-list-active figure {
  line-height: 0;
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
footer .webzine-list-wrap .webzine-list {
  width: 100%;
  position: absolute;
  display: none;
  top: 0;
  -webkit-transform: translateY(calc(-100% - 10px));
          transform: translateY(calc(-100% - 10px));
}
footer .webzine-list-wrap .webzine-list ul {
  border: 1px solid #fff;
  background: #000;
  margin-top: 1rem;
  margin-left: 2rem;
}
footer .webzine-list-wrap .webzine-list ul li a {
  text-align: center;
  color: #cdcdcd;
  text-decoration: none;
  padding: 0.5rem;
  display: block;
}
footer .webzine-list-wrap .webzine-list ul li a:hover {
  text-decoration: underline;
}
footer .sns {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
footer .sns a {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #2d2d2d;
  margin: 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer .sns a img {
  width: 50%;
}
footer .sns a img.facebook {
  width: auto;
  height: 50%;
}
footer .addendum {
    font-size: 1.2rem;
    line-height: 1.8rem;
    margin-top: 2rem;
  }


/* ----------------- Responsive ----------------- */
/* Layout Max Size : ~ 1440px
/* Desktop : 1024px ~ 1280px
/* Tablet : 768px ~ 1024px
/* Mobile : ~ 767px


/**********  Tablet ***********/
@media screen and (max-width: 960px) {
  .pc-block {
    display: none !important;
  }

  .t-block {
    display: block !important;
  }

  .m-block {
    display: none !important;
  }

  .menu_btn {
    position: relative;
    z-index: 1000;
    height: 100%;
  }
}

@media screen and (max-width: 840px) {
  /****** Footer *******/
  footer {
    /* CI */
    /* 지난호 보기 */
    /* sns */
  }
  footer .footer-inner {
    display: block;
  }
  footer .footer-inner > div:last-child {
    margin-top: 3rem;
    text-align: center;
    width: 100%;
  }
  footer .ci {
    margin-left: auto;
    margin-right: auto;
  }
  footer .webzine-list-wrap {
    margin: 0 auto;
  }
  footer .webzine-list-wrap .webzine-list-active {
    margin-left: 0;
  }
  footer .webzine-list-wrap .webzine-list ul {
    margin-left: 0;
  }
  footer .sns {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}


/**********  Mobile ***********/
@media screen and (max-width: 768px) {
  .pc-block {
    display: none !important;
  }

  .m-block {
    display: block !important;
  }

  .t-block {
    display: none !important;
  }

  body > header .ci {
    padding: 0 1rem;
    margin: 2rem 0;
  }
  body > header .ci img {
    width: 170px;
  }
  body > header .bi {
    font-size: 2rem;
    padding: 0 1rem;
    margin: 2rem 0;
  }

  .nav-wrap div {
    padding: 50px 4% 0;
  }

  .menu-wrap {
    width: 30px;
    height: 30px;
  }
  .menu-wrap .menu-trigger {
    width: 20px;
    height: 15px;
  }
  .menu-wrap .menu-trigger span:nth-child(2) {
    top: 6px;
  }

  @-webkit-keyframes menu-bar-01 {
    0% {
      -webkit-transform: translateY(10px) rotate(45deg);
              transform: translateY(10px) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(10px) rotate(0);
              transform: translateY(10px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }

  @keyframes menu-bar-01 {
    0% {
      -webkit-transform: translateY(10px) rotate(45deg);
              transform: translateY(10px) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(10px) rotate(0);
              transform: translateY(10px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @-webkit-keyframes menu-bar-02 {
    0% {
      -webkit-transform: translateY(-10px) rotate(-45deg);
              transform: translateY(-10px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-10px) rotate(0);
              transform: translateY(-10px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @keyframes menu-bar-02 {
    0% {
      -webkit-transform: translateY(-10px) rotate(-45deg);
              transform: translateY(-10px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-10px) rotate(0);
              transform: translateY(-10px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @-webkit-keyframes active-menu-bar-01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(4px) rotate(0);
              transform: translateY(4px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(4px) rotate(45deg);
              transform: translateY(4px) rotate(45deg);
    }
  }
  @keyframes active-menu-bar-01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(4px) rotate(0);
              transform: translateY(4px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(4px) rotate(45deg);
              transform: translateY(4px) rotate(45deg);
    }
  }
  @-webkit-keyframes active-menu-bar-02 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(-8px) rotate(0);
              transform: translateY(-8px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(-8px) rotate(-45deg);
              transform: translateY(-8px) rotate(-45deg);
    }
  }
  @keyframes active-menu-bar-02 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(-8px) rotate(0);
              transform: translateY(-8px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(-8px) rotate(-45deg);
              transform: translateY(-8px) rotate(-45deg);
    }
  }
}
@media screen and (max-width: 640px) {
  /************ Header ************/
  body {
    font-size: 1.6rem;
  }
  body:has(.nav-open)::after {
    display: none;
  }
  body > header .webzine-list-wrap {
    display: none;
  }

  /************ nav ************/
  .nav-wrap {
    max-width: none;
    right: -100%;
  }
  .nav-wrap div {
    overflow: auto;
  }

  /************ Footer ************/
  footer {
    padding: 5rem 0;
  }
}
