@charset "UTF-8";
/* SETTING */
/* IMPORT */
html, body, h1, h2, h3, h4, h5, p, div, ul, ol, li, img, input, select, textarea, button, address, span, i, iframe {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  outline: none;
  font-family: inherit;
  font-weight: inherit;
  font-style: normal;
  font-size: inherit;
  color: inherit;
  word-break: keep-all; }

a {
  color: inherit;
  text-decoration: inherit; }

a, [onclick], button {
  cursor: pointer; }

img {
  max-width: 100%;
  height: auto; }

li {
  list-style: none; }

input, select, textarea, button {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none; }

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px white inset !important; }

label {
  display: block; }

iframe {
  display: block; }

.overflow-hidden {
  overflow: hidden; }

.row {
  width: 100%;
  margin: 0 auto;
  max-width: 1080px; }

.row-t {
  width: 100%;
  margin: 0 auto;
  max-width: 780px; }

.row-p {
  width: 100%;
  margin: 0 auto;
  max-width: 672px; }

.im {
  margin-left: 12px;
  margin-right: 12px; }

.ip {
  box-sizing: border-box;
  padding-left: 12px;
  padding-right: 12px; }

.fl {
  float: left; }

.fr {
  float: right; }

.cl {
  clear: both; }

.col-1 {
  position: relative;
  width: 8.33333%; }

.col-2 {
  position: relative;
  width: 16.66667%; }

.col-3 {
  position: relative;
  width: 25%; }

.col-4 {
  position: relative;
  width: 33.33333%; }

.col-5 {
  position: relative;
  width: 41.66667%; }

.col-6 {
  position: relative;
  width: 50%; }

.col-7 {
  position: relative;
  width: 58.33333%; }

.col-8 {
  position: relative;
  width: 66.66667%; }

.col-9 {
  position: relative;
  width: 75%; }

.col-10 {
  position: relative;
  width: 83.33333%; }

.col-11 {
  position: relative;
  width: 91.66667%; }

.col-12 {
  position: relative;
  width: 100%; }

@media (max-width: 780px) {
  .pc-only {
    display: none; } }

.mobile-only {
  display: none; }
  @media (max-width: 780px) {
    .mobile-only {
      display: block; } }

.im {
  position: relative;
  margin-left: 24px;
  margin-right: 24px; }
  @media (max-width: 780px) {
    .im {
      margin-left: 24px;
      margin-right: 24px; } }

.ip {
  position: relative;
  box-sizing: border-box;
  padding-left: 24px;
  padding-right: 24px; }
  @media (max-width: 780px) {
    .ip {
      padding-left: 24px;
      padding-right: 24px; } }

.vertical-parent {
  position: relative;
  height: 100%;
  overflow: auto;
  text-align: center; }
  .vertical-parent:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    margin-left: -0.03em;
    height: 100%; }
  .vertical-parent .vertical-container {
    display: inline-block;
    vertical-align: middle;
    max-width: 90%; }

@media (max-width: 780px) {
  .col-2 {
    width: 33.33333%; } }
@media (max-width: 780px) {
  .col-2 {
    width: 50%; } }

@media (max-width: 780px) {
  .col-3 {
    width: 50%; } }
@media (max-width: 780px) {
  .col-3 {
    width: 50%; } }

@media (max-width: 780px) {
  .col-4 {
    width: 50%; } }
@media (max-width: 780px) {
  .col-4 {
    width: 100%; } }

@media (max-width: 780px) {
  .col-5 {
    width: 100%; } }
@media (max-width: 780px) {
  .col-5 {
    width: 100%; } }

@media (max-width: 780px) {
  .col-6 {
    width: 100%; } }

@media (max-width: 780px) {
  .col-7 {
    width: 50%; } }
@media (max-width: 780px) {
  .col-7 {
    width: 100%; } }

.rect-16-9 {
  width: auto;
  padding-top: 56.25% !important;
  background-color: #fafafa; }
  .rect-16-9 > * {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.simple-bar {
  margin-top: 0 !important; }
  .simple-bar:before {
    display: block;
    content: "";
    width: 36px;
    height: 0;
    margin: 24px auto;
    border-top: 2px solid #ffffff; }

.parellex-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 130%;
  background-position-x: center;
  background-size: cover; }

.jg-slider {
  position: relative; }
  .jg-slider .viewport {
    position: relative;
    height: 100%; }
    .jg-slider .viewport ul {
      position: relative;
      height: 100%; }
      .jg-slider .viewport ul li {
        position: relative;
        background-size: cover;
        height: 100%; }
  .jg-slider .dot-wrap {
    position: absolute;
    bottom: 24px;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 1; }
    .jg-slider .dot-wrap .dot {
      display: inline-block;
      width: 12px;
      height: 12px;
      margin: 3px 3px;
      background-color: #aaa;
      border-radius: 12px;
      cursor: pointer;
      opacity: 0.7;
      transition: all 0.2s; }
      .jg-slider .dot-wrap .dot.on {
        width: 18px;
        height: 18px;
        margin: 0 4px;
        background-color: #eee;
        opacity: 1; }
  .jg-slider .pointer {
    position: absolute;
    top: 50%;
    margin-top: -24px;
    width: 24px;
    height: 48px;
    line-height: 48px;
    font-size: 36px;
    text-align: center;
    color: #ffffff;
    cursor: pointer;
    z-index: 2; }
    .jg-slider .pointer-prev {
      left: 50%;
      margin-left: -516px; }
      .jg-slider .pointer-prev:before {
        content: "\f104";
        font-family: "FontAwesome"; }
    .jg-slider .pointer-next {
      right: 50%;
      margin-right: -516px; }
      .jg-slider .pointer-next:before {
        content: "\f105";
        font-family: "FontAwesome"; }

.parallax .parallax-background {
  position: absolute;
  overflow: hidden;
  top: -20%;
  left: 0;
  width: 100%;
  height: 140%;
  background-position: center;
  background-size: cover;
  z-index: 0; }

body {
  line-height: 2;
  font-family: "Ubuntu", "Noto sans KR", sans-serif;
  font-size: 16px;
  color: #2e2e2e; }
  @media (max-width: 780px) {
    body {
      font-size: 12px; } }

#site-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: none;
  background: rgba(0, 0, 0, 0.8);
  line-height: 1;
  z-index: 1200; }
  #site-nav > .close {
    position: fixed;
    top: 0;
    right: 0;
    padding: 24px;
    font-size: 24px;
    color: #ffffff;
    cursor: pointer;
    transition: 0.3s all;
    z-index: 1400; }
    #site-nav > .close:hover {
      opacity: 0.25; }
  #site-nav > .container {
    float: right;
    overflow: auto;
    box-sizing: border-box;
    padding: 72px 24px 24px 24px;
    color: #ffffff;
    margin-right: -336px;
    font-size: 18px;
    text-align: right;
    text-transform: uppercase;
    -webkit-overflow-scrolling: touch; }
    #site-nav > .container li {
      display: block;
      transition: 0.3s all; }
      #site-nav > .container li a {
        display: block;
        padding: 18px 0; }
      #site-nav > .container li:hover {
        opacity: 0.25; }

#site-header {
  width: 100%;
  height: 60px;
  line-height: 60px;
  position: absolute;
  top: 0;
  left: 0;
  color: #ffffff;
  z-index: 1000;
  transition: background-color 0.3s; }
  #site-header.on {
    position: fixed;
    top: 0 !important; }
  #site-header h1 {
    display: block;
    float: left; }
    #site-header h1 img {
      display: block;
      height: 24px;
      padding: 18px 0; }
  #site-header a {
    display: block; }
  #site-header .ip:after, #site-header .im:after {
    content: "";
    display: block;
    clear: both; }
  #site-header h1 img {
    height: 36px;
    transition: all 0.3s; }
  #site-header #nav-opener {
    font-size: 24px; }
  #site-header #menu {
    font-size: 14px;
    float: right;
    letter-spacing: 0.1em; }
    #site-header #menu ul:after {
      content: "";
      display: block;
      clear: both; }
    #site-header #menu ul li {
      float: left; }
    #site-header #menu ul li + li {
      margin-left: 24px; }
    #site-header #menu .is_kor .eng {
      color: #aaa; }
    #site-header #menu .is_eng .kor {
      color: #aaa; }
  #site-header.on {
    background-color: #2e2e2e; }
    #site-header.on h1 img {
      height: 24px; }
  @media (max-width: 780px) {
    #site-header {
      position: fixed; } }

#site-footer {
  position: relative;
  padding: 48px 0;
  background-color: #2e2e2e;
  font-size: 14px;
  color: #ffffff; }
  #site-footer .logo-wrap {
    position: absolute;
    top: 0;
    right: 0; }
    @media (max-width: 780px) {
      #site-footer .logo-wrap {
        display: none; } }
  #site-footer .logo {
    height: 36px; }
  #site-footer .links a {
    display: inline-block; }
    #site-footer .links a img {
      width: 24px;
      height: 24px; }
    #site-footer .links a + a {
      margin-left: 12px; }
  #site-footer .address, #site-footer .links, #site-footer .copyrights {
    margin: 12px 0; }

.section {
  position: relative;
  padding: 144px 0;
  overflow: hidden; }
  @media (max-width: 780px) {
    .section {
      padding: 72px 0; } }
  .section h2 {
    font-weight: bold;
    font-size: 48px;
    font-style: italic;
    line-height: 1.2;
    margin-left: -0.05em;
    margin: 24px 0; }
    @media (max-width: 780px) {
      .section h2 {
        font-size: 30px; } }
  .section h3 {
    font-weight: bold;
    font-size: 30px;
    font-style: italic;
    line-height: 1.2;
    margin-left: -0.05em; }
    @media (max-width: 780px) {
      .section h3 {
        font-size: 24px; } }
  .section .sub-title {
    font-weight: bold;
    font-size: 30px;
    font-style: italic;
    line-height: 1.2;
    margin-left: -0.05em;
    font-style: normal;
    font-weight: normal;
    margin: 24px 0; }
    @media (max-width: 780px) {
      .section .sub-title {
        font-size: 24px; } }
  .section .paragraph {
    margin: 24px 0; }
    .section .paragraph p {
      margin: 12px 0; }
  .section .small-images {
    margin-top: 24px; }
    .section .small-images img {
      display: inline-block;
      width: auto;
      height: 48px; }
      .section .small-images img + img {
        margin-left: 24px; }
  .section .medium-images {
    margin-top: -12px; }
    .section .medium-images img {
      display: inline-block;
      width: auto;
      height: 72px; }
      .section .medium-images img + img {
        margin-left: 48px; }
    @media (max-width: 780px) {
      .section .medium-images img {
        height: 48px; }
        .section .medium-images img + img {
          margin-left: 24px; } }
  .section .buttons {
    margin-top: 24px; }
  .section .button {
    position: relative;
    display: inline-block;
    padding: 0 24px;
    border: 1px solid #2e2e2e;
    font-size: 14px;
    line-height: 36px;
    letter-spacing: 0.1em;
    text-align: center;
    overflow: hidden; }
    .section .button:before {
      content: "";
      position: absolute;
      top: 0;
      left: 120%;
      width: 140%;
      height: 100%;
      transform: skewX(15deg);
      transition: 0.3s left;
      z-index: 0; }
    .section .button:after {
      content: attr(data-name);
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      transition: 0.3s color;
      z-index: 1; }
    .section .button:hover:before {
      left: -20%; }
    .section .button {
      color: #2e2e2e; }
      .section .button:before {
        background-color: #2e2e2e; }
      .section .button:hover {
        color: #ffffff; }
    .section .button.white {
      border-color: #ffffff;
      color: #ffffff; }
      .section .button.white:before {
        background-color: #ffffff; }
      .section .button.white:hover {
        color: #2e2e2e; }
  .section .container {
    position: relative;
    z-index: 1; }
  .section.no-padding {
    padding: 0 !important; }
  .section.text-and-image .section-image {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -20%;
    -webkit-transition: all 0.3s cubic-bezier(0.68, 0, 0.265, 1);
    /* older webkit */
    -webkit-transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -moz-transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    /* easeInOutBack */ }
    .section.text-and-image .section-image img {
      width: 100%;
      height: auto; }
  @media (max-width: 780px) {
    .section.text-and-image .section-image {
      position: relative;
      top: auto;
      left: auto;
      margin: 12px auto; } }
  .section.text-and-image:hover .section-image {
    transform: scale(1.05) rotateZ(5deg); }
  .section.mask-and-image .im:after {
    content: "";
    display: block;
    clear: both; }
  .section.mask-and-image .contents {
    width: 33.33333%;
    color: #ffffff; }
    .section.mask-and-image .contents img {
      height: 48px; }
  .section.mask-and-image .section-image {
    position: absolute;
    top: 0;
    width: 66.66667%;
    height: 100%;
    background-size: cover;
    transition: all 0.3s; }
  .section.mask-and-image:hover .section-image {
    transform: scale(1.1); }
  .section.mask-and-image:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    width: 60%;
    height: 100%;
    transform: skewX(-20deg);
    background-size: auto 100%; }
  .section.mask-and-image.left .contents {
    float: left; }
  .section.mask-and-image.left .section-image {
    left: 33.33333%;
    background-position: center; }
  .section.mask-and-image.left:after {
    background-image: url(/statics/image/common/background-vertical-blue.jpg);
    left: -15%; }
  .section.mask-and-image.right .contents {
    float: right; }
  .section.mask-and-image.right .section-image {
    right: 33.33333%;
    background-position: center; }
  .section.mask-and-image.right:after {
    background-image: url(/statics/image/common/background-vertical-red.jpg);
    right: -15%; }
  @media (max-width: 780px) {
    .section.mask-and-image {
      padding-bottom: 0; }
      .section.mask-and-image .contents {
        width: 100%; }
      .section.mask-and-image .section-image {
        position: relative;
        top: auto;
        left: auto !important;
        right: auto !important;
        width: 100%;
        height: 288px;
        margin-top: 48px; }
      .section.mask-and-image:after {
        display: none; }
    .section.mask-and-image.left {
      background-color: #3b96cc; }
    .section.mask-and-image.right {
      background-color: #d9553f; } }
  .section.center-text {
    padding: 180px 12px;
    text-align: center; }
    .section.center-text .paragraph {
      margin: 48px 0; }
    @media (max-width: 780px) {
      .section.center-text {
        padding: 120px 12px; } }
    .section.center-text.white .contents {
      color: #ffffff; }
      .section.center-text.white .contents .paragraph {
        margin-bottom: 0; }
  .section.text-wide .contents {
    width: 66.66667%; }
    @media (max-width: 780px) {
      .section.text-wide .contents {
        width: 100%; } }

#landing-section .contents {
  color: #ffffff; }
  #landing-section .contents .primary {
    font-weight: bold;
    font-size: 48px;
    font-style: italic;
    line-height: 1.2;
    margin-left: -0.05em;
    font-style: normal;
    font-weight: 100;
    line-height: 1.4; }
    @media (max-width: 780px) {
      #landing-section .contents .primary {
        font-size: 30px; } }
  #landing-section .contents .secondary {
    font-size: 18px;
    margin-top: 12px; }
    @media (max-width: 780px) {
      #landing-section .contents .secondary {
        font-size: 16px; } }
#landing-section .jg-slider .viewport ul li {
  background-position: center;
  background-attachment: fixed; }

#together-section .table ul li {
  margin-bottom: 24px; }
  #together-section .table ul li .image {
    width: 50%;
    max-width: 144px;
    margin: 0 auto; }
    #together-section .table ul li .image img {
      width: 100%;
      height: auto;
      display: block; }
  #together-section .table ul li .text {
    margin-top: 24px; }
    #together-section .table ul li .text .primary {
      font-weight: bold;
      font-size: 20px;
      font-style: italic;
      line-height: 1.2; }
      @media (max-width: 780px) {
        #together-section .table ul li .text .primary {
          font-size: 16px; } }
    #together-section .table ul li .text .secondary {
      font-size: 12px;
      margin-top: 12px;
      padding: 0 12px; }

#main-works-section {
  background-color: #eeeef5;
  background-attachment: fixed;
  background-size: 60%;
  background-position: center;
  background-repeat: no-repeat; }
  #main-works-section h2 {
    margin: 0;
    padding: 96px 0; }
  #main-works-section .list ul li {
    position: relative;
    overflow: hidden; }
    #main-works-section .list ul li:after {
      content: "";
      display: block;
      clear: both; }
    #main-works-section .list ul li .text {
      box-sizing: border-box;
      background-color: #ffffff; }
      #main-works-section .list ul li .text:after {
        content: "";
        display: block;
        clear: both; }
      #main-works-section .list ul li .text .contents {
        max-width: 480px; }
      #main-works-section .list ul li .text .title .primary {
        font-weight: bold;
        font-size: 30px;
        font-style: italic;
        line-height: 1.2;
        margin-left: -0.05em; }
        @media (max-width: 780px) {
          #main-works-section .list ul li .text .title .primary {
            font-size: 24px; } }
      #main-works-section .list ul li .text .title .secondary {
        font-weight: bold;
        font-size: 20px;
        font-style: italic;
        line-height: 1.2;
        margin-top: 12px;
        font-weight: bold; }
        @media (max-width: 780px) {
          #main-works-section .list ul li .text .title .secondary {
            font-size: 16px; } }
      #main-works-section .list ul li .text .paragraph {
        margin-top: 0; }
        #main-works-section .list ul li .text .paragraph .excerpt {
          clear: both;
          margin-top: 24px;
          font-weight: bold; }
        #main-works-section .list ul li .text .paragraph:before {
          display: block;
          content: "";
          width: 36px;
          height: 0;
          margin: 24px 0;
          border-top: 2px solid #2e2e2e; }
      @media (max-width: 780px) {
        #main-works-section .list ul li .text {
          float: none !important;
          text-align: left !important; } }
    #main-works-section .list ul li .image {
      position: absolute;
      top: 0;
      height: 100%;
      background-size: cover;
      background-position: center; }
      @media (max-width: 780px) {
        #main-works-section .list ul li .image {
          position: relative;
          float: none;
          top: auto;
          left: auto !important;
          right: auto !important;
          height: 240px; } }
    #main-works-section .list ul li.right .text {
      float: right;
      padding: 96px 48px;
      text-align: left; }
      #main-works-section .list ul li.right .text .contents {
        float: left; }
        #main-works-section .list ul li.right .text .contents .paragraph:before {
          float: left; }
    #main-works-section .list ul li.right .image {
      left: 0; }
    #main-works-section .list ul li.left .text {
      float: left;
      padding: 96px 48px;
      text-align: right; }
      #main-works-section .list ul li.left .text .contents {
        float: right; }
        #main-works-section .list ul li.left .text .contents .paragraph:before {
          float: right; }
    #main-works-section .list ul li.left .image {
      right: 0; }
    @media (max-width: 780px) {
      #main-works-section .list ul li.left .text .contents {
        float: left; }
        #main-works-section .list ul li.left .text .contents .paragraph:before {
          float: left; }
      #main-works-section .list ul li.left .image {
        left: 0;
        right: auto; } }

#partner-section {
  background-color: #eeeef5; }

#excellence-section .table {
  text-align: center; }
  #excellence-section .table ul li {
    font-weight: bold;
    font-size: 20px;
    font-style: italic;
    line-height: 1.2;
    float: left;
    margin: 24px 0; }
    @media (max-width: 780px) {
      #excellence-section .table ul li {
        font-size: 16px; } }
    #excellence-section .table ul li img {
      display: block;
      width: 80%;
      max-width: 84px;
      margin: 0 auto 12px auto; }

#popcorn-section,
#cola-section {
  background-size: cover;
  background-position: center; }

#works-section ul {
  overflow: hidden; }
  #works-section ul li {
    position: relative;
    overflow: hidden;
    float: left;
    width: 33.33333%;
    padding-top: 25%; }
    #works-section ul li .vertical-parent {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.3);
      transition: all 0.3s;
      z-index: 1; }
    #works-section ul li .contents {
      color: #ffffff;
      transition: all 0.3s; }
    #works-section ul li .image {
      position: absolute;
      overflow: hidden;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-position: center;
      background-size: cover;
      transition: all 0.3s; }
    #works-section ul li .detail {
      position: absolute;
      box-sizing: border-box;
      top: 100%;
      left: 0;
      width: 100%;
      padding: 36px;
      color: #ffffff;
      z-index: 2;
      transition: all 0.3s; }
      #works-section ul li .detail .primary {
        font-weight: bold;
        font-size: 30px;
        font-style: italic;
        line-height: 1.2;
        margin-left: -0.05em;
        font-style: normal;
        margin-bottom: 12px; }
        @media (max-width: 780px) {
          #works-section ul li .detail .primary {
            font-size: 24px; } }
      #works-section ul li .detail button {
        margin-top: 18px; }
      #works-section ul li .detail:before {
        content: "";
        position: absolute;
        display: block;
        top: -24px;
        left: -24px;
        width: 0;
        height: 0;
        border-left: 24px solid transparent;
        border-right: 24px solid transparent; }
    #works-section ul li:hover .image {
      transform: scale(1.05); }
    @media (min-width: 1080px) {
      #works-section ul li:hover .contents {
        transform: translateY(200%);
        opacity: 0; }
      #works-section ul li:hover .detail {
        transform: translateY(-100%); } }
    @media (min-width: 1080px) {
      #works-section ul li:nth-child(1):hover .vertical-parent {
        background-color: rgba(220, 90, 0, 0.7); } }
    @media (min-width: 1080px) {
      #works-section ul li:nth-child(2):hover .vertical-parent {
        background-color: rgba(80, 180, 160, 0.7); } }
    @media (min-width: 1080px) {
      #works-section ul li:nth-child(3):hover .vertical-parent {
        background-color: rgba(160, 80, 180, 0.7); } }
@media (max-width: 1080px) {
  #works-section ul li {
    float: none;
    width: 100%;
    padding-top: 0; }
    #works-section ul li .vertical-parent {
      display: none; }
    #works-section ul li .image img {
      top: 50%;
      margin-top: -20%; }
    #works-section ul li .detail {
      position: relative;
      box-sizing: border-box;
      top: auto;
      left: auto;
      width: auto;
      padding: 60px 24px 48px 24px;
      background-color: rgba(0, 0, 0, 0.3);
      color: #ffffff;
      text-align: center;
      z-index: 2; }
      #works-section ul li .detail .primary {
        font-weight: normal; }
      #works-section ul li .detail .secondary {
        display: none; } }

.work-full {
  color: #ffffff; }
  .work-full .title .primary {
    font-weight: bold;
    font-size: 48px;
    font-style: italic;
    line-height: 1.2;
    margin-left: -0.05em; }
    @media (max-width: 780px) {
      .work-full .title .primary {
        font-size: 30px; } }
  .work-full .title .secondary {
    font-size: 18px; }
  .work-full .description {
    font-weight: bold;
    font-size: 48px;
    font-style: italic;
    line-height: 1.2;
    margin-left: -0.05em;
    font-style: normal;
    font-weight: 100;
    line-height: 1.4; }
    @media (max-width: 780px) {
      .work-full .description {
        font-size: 30px; } }

#info-section h2,
#character-section h2,
#screenshot-section h2,
#episode-section h2 {
  font-weight: bold;
  font-size: 30px;
  font-style: italic;
  line-height: 1.2;
  margin-left: -0.05em;
  padding-bottom: 18px;
  border-bottom: 3px solid; }
  @media (max-width: 780px) {
    #info-section h2,
    #character-section h2,
    #screenshot-section h2,
    #episode-section h2 {
      font-size: 24px; } }
  #info-section h2.no-border,
  #character-section h2.no-border,
  #screenshot-section h2.no-border,
  #episode-section h2.no-border {
    padding-bottom: 0;
    border-bottom: 0; }
#info-section h3,
#character-section h3,
#screenshot-section h3,
#episode-section h3 {
  font-weight: bold;
  font-size: 48px;
  font-style: italic;
  line-height: 1.2;
  margin-left: -0.05em; }
  @media (max-width: 780px) {
    #info-section h3,
    #character-section h3,
    #screenshot-section h3,
    #episode-section h3 {
      font-size: 30px; } }

#info-section {
  background-position: center;
  background-size: cover;
  color: #ffffff; }
  #info-section h2 {
    border-color: #ffffff; }
  #info-section h3 .secondary {
    margin-top: 12px;
    font-size: 20px;
    font-weight: normal; }
  #info-section .spec {
    padding-left: 48px;
    margin: 24px 0; }
    #info-section .spec ul li {
      margin-bottom: 18px; }
      #info-section .spec ul li .icon {
        display: inline-block;
        width: 48px;
        height: 48px;
        margin-right: 12px;
        vertical-align: -20px; }
      #info-section .spec ul li .text {
        display: inline-block;
        line-height: 48px;
        font-weight: bold;
        font-size: 20px;
        font-style: italic;
        line-height: 1.2;
        font-weight: normal; }
        @media (max-width: 780px) {
          #info-section .spec ul li .text {
            font-size: 16px; } }
  #info-section .image {
    text-align: right;
    margin: 24px 0; }
    #info-section .image img {
      max-width: 100%; }
  @media (max-width: 780px) {
    #info-section .spec {
      padding-left: 0; }
      #info-section .spec ul:after {
        content: "";
        display: block;
        clear: both; }
      #info-section .spec ul li {
        float: left;
        width: 50%; }
        #info-section .spec ul li .icon {
          width: 24px;
          height: 24px;
          vertical-align: -5px; }
        #info-section .spec ul li .text {
          line-height: 24px;
          font-size: 16px; }
    #info-section .image {
      float: left;
      text-align: center; } }

#character-section #character-view {
  margin-bottom: 192px; }
  #character-section #character-view .contents .text h3 .ko {
    font-size: 18px;
    margin-left: 6px; }
  #character-section #character-view .contents .image {
    position: absolute;
    left: 50%;
    margin-top: -8.33333%;
    height: auto; }
    #character-section #character-view .contents .image img {
      display: block; }
  @media (max-width: 780px) {
    #character-section #character-view {
      margin-bottom: 48px;
      color: #2e2e2e; }
      #character-section #character-view .contents .image {
        position: relative;
        top: auto;
        left: auto;
        margin-top: auto; } }
#character-section #character-list ul li {
  margin-bottom: 24px; }
  #character-section #character-list ul li img {
    display: block;
    width: 100%;
    height: auto; }

#screenshot-section .dot-wrap {
  display: none; }
#screenshot-section .thumbnail {
  position: absolute;
  left: 0;
  bottom: 24px;
  width: 100%; }
  #screenshot-section .thumbnail ul {
    text-align: center; }
    #screenshot-section .thumbnail ul li {
      display: inline-block;
      width: 48px;
      height: 48px;
      margin: 12px 2px;
      background-size: cover;
      background-position: center center;
      box-shadow: 0 0 12px 0 #2e2e2e;
      cursor: pointer;
      transition: width 0.3s, height 0.3s, margin 0.3s; }
      #screenshot-section .thumbnail ul li.on {
        width: 72px;
        height: 72px;
        margin: 0 2px;
        border: 2px solid #ffffff; }
@media (max-width: 780px) {
  #screenshot-section .dot-wrap {
    display: block; }
  #screenshot-section .thumbnail {
    display: none; } }

#episode-section ul li {
  margin-bottom: 48px; }
  #episode-section ul li h2 {
    margin-top: 0; }
  #episode-section ul li .contents {
    width: 100%;
    height: 100%; }
    #episode-section ul li .contents .meta {
      padding: 6px 12px;
      background-color: #2e2e2e;
      line-height: 1.6;
      color: #ccc; }
      #episode-section ul li .contents .meta b {
        margin: 0 4px;
        font-weight: bold;
        color: #ffffff; }
    #episode-section ul li .contents img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  #episode-section ul li:first-child {
    margin-bottom: 24px; }
    #episode-section ul li:first-child .rect-16-9 {
      background-color: transparent; }
      @media (max-width: 780px) {
        #episode-section ul li:first-child .rect-16-9 {
          padding-top: 168px !important; } }

#works-how-section {
  background-color: #fafafa; }
  #works-how-section .how-graph {
    position: relative;
    padding-top: 200%; }
    #works-how-section .how-graph img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: auto;
      z-index: 1; }
    #works-how-section .how-graph .shadow {
      position: absolute;
      background: #fafafa;
      opacity: 1;
      transition: all .5s;
      z-index: 2; }
      #works-how-section .how-graph .shadow.hide {
        opacity: 0; }
    #works-how-section .how-graph #shadow-1 {
      top: 0;
      left: 0;
      width: 32%;
      padding-top: 60%; }
    #works-how-section .how-graph #shadow-2 {
      top: 0;
      left: 73%;
      width: 20%;
      padding-top: 57%; }
    #works-how-section .how-graph #shadow-3 {
      top: 38%;
      left: 43%;
      width: 50%;
      padding-top: 26%; }
    #works-how-section .how-graph #shadow-4 {
      top: 40%;
      left: 0;
      width: 35%;
      padding-top: 40%; }
    #works-how-section .how-graph #shadow-5 {
      top: 63%;
      left: 25%;
      width: 75%;
      padding-top: 30%; }
    #works-how-section .how-graph #shadow-6 {
      bottom: 0;
      left: 36%;
      width: 27%;
      padding-top: 30%; }

#recruitment-landing-section h2 {
  transform: translateY(-48px); }
  @media (max-width: 780px) {
    #recruitment-landing-section h2 {
      transform: translateY(-18px); } }

#recruitment-detail-section ul {
  margin-top: 48px; }
  #recruitment-detail-section ul li .key {
    font-weight: bold; }
  #recruitment-detail-section ul li + li {
    margin-top: 24px; }

#faq-list-section ul {
  border-top: 1px solid #ddd; }
  #faq-list-section ul li .key {
    position: relative;
    padding: 24px;
    padding-right: 60px;
    border-bottom: 1px solid #ddd;
    transition: background-color 0.9s; }
    #faq-list-section ul li .key:before {
      content: "+";
      position: absolute;
      display: block;
      top: 0;
      right: 0;
      padding: 24px; }
    #faq-list-section ul li .key.on {
      background-color: #fafafa; }
      #faq-list-section ul li .key.on:before {
        content: "—"; }
    #faq-list-section ul li .key:hover {
      transition: background-color 0.3s;
      background-color: #fafafa;
      cursor: pointer; }
    @media (max-width: 780px) {
      #faq-list-section ul li .key {
        padding: 12px;
        padding-right: 36px;
        font-weight: bold; }
        #faq-list-section ul li .key:before {
          padding: 12px; } }
  #faq-list-section ul li .val {
    display: none;
    padding: 36px 24px;
    border-bottom: 1px solid #ddd;
    background-color: #fafafa; }
    @media (max-width: 780px) {
      #faq-list-section ul li .val {
        padding: 24px; } }

#map-section #map {
  display: block;
  width: 100%;
  height: 480px; }

#contact-section .form {
  text-align: left;
  margin: 36px auto;
  max-width: 600px; }
  #contact-section .form ul li {
    position: relative;
    margin-bottom: 12px;
    padding-left: 72px; }
    #contact-section .form ul li .label {
      position: absolute;
      top: 0;
      left: 0;
      line-height: 48px; }
    #contact-section .form ul li .body input, #contact-section .form ul li .body textarea {
      box-sizing: border-box;
      height: 48px;
      padding: 0 12px;
      border: 2px solid #ccc;
      line-height: 34px; }
    #contact-section .form ul li .body input {
      width: 100%; }
    #contact-section .form ul li .body textarea {
      width: 100%;
      height: 240px;
      resize: none; }

/*# sourceMappingURL=style.css.map */
