/* Color Definitions */
/* line 30, ../sass/_core.sass */
a {
  word-wrap: break-word;
}

/* line 33, ../sass/_core.sass */
ul {
  margin-left: 0;
}
/* line 35, ../sass/_core.sass */
ul li {
  list-style: none;
}

/* line 38, ../sass/_core.sass */
.row {
  max-width: 87.5rem;
}

/* line 41, ../sass/_core.sass */
h2, h3 {
  color: #3c96ad;
}

@font-face {
  font-family: "IGYuGothicM";
  font-weight: normal;
  src: local("Yu Gothic Medium") format("opentype"), local("Yu Gothic Medium") format("opentype"), local("YuGothic-Regular") format("opentype");
}
@font-face {
  font-family: "IGYuGothicM";
  font-weight: bold;
  src: local("YuGothic-Bold") format("opentype"), local("YuGothic-Bold") format("opentype");
}
@font-face {
  font-family: "IGYuGothicM";
  font-weight: 500;
  src: local("YuGothic-Bold") format("opentype"), local("YuGothic-Bold") format("opentype");
}
/* line 66, ../sass/_core.sass */
table tbody tr:nth-child(even) {
  background-color: #EBF4F5;
}

/* line 69, ../sass/_core.sass */
html {
  height: 100%;
  width: 100%;
  margin: 0;
  -webkit-text-size-adjust: none;
}
/* line 75, ../sass/_core.sass */
html body {
  margin: 0;
  padding: 0;
  height: 100%;
  width: 100%;
  background: #f9f9f9;
  font-family: IGYuGothicM, YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, Helvetica, Arial, sans-serif;
  font-feature-settings: "palt";
  color: #3F3F3F;
}
/* line 85, ../sass/_core.sass */
html body.category-index h2 {
  letter-spacing: 0.25rem;
}
/* line 87, ../sass/_core.sass */
html body.category-index h2, html body.category-index h3 {
  margin-top: 1rem;
}
/* line 89, ../sass/_core.sass */
html body.category-index h4 {
  margin-top: 1.4rem;
  background: #62B4C8;
  padding: 0.125rem 0.4rem;
  border-radius: 3px;
  color: #fff;
  font-weight: bold;
  font-size: 1rem;
}

/* line 98, ../sass/_core.sass */
#container {
  min-height: 100%;
}

/* Small only */
@media screen and (max-width: 39.9375em) {
  /* line 104, ../sass/_core.sass */
  h2 {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
    font-size: 1.4rem;
    font-weight: bold;
  }

  /* line 109, ../sass/_core.sass */
  h3 {
    font-size: 1rem;
    line-height: 1.6rem;
    font-weight: bold;
  }

  /* line 113, ../sass/_core.sass */
  h4, h5, h6 {
    font-size: 0.875em;
    margin: 0.5rem 0;
    line-height: 1.2rem;
    font-weight: bold;
  }

  /* line 118, ../sass/_core.sass */
  h5, h6 {
    font-size: 0.85rem;
  }

  /* line 120, ../sass/_core.sass */
  p, dt, dd, li, td, th {
    font-size: 0.875rem;
  }
}
/* Medium and up 640 */
@media screen and (min-width: 40em) {
  /* line 126, ../sass/_core.sass */
  h2 {
    margin-top: 1rem;
    margin-bottom: 1.5rem;
    font-size: 1.4rem;
    font-weight: bold;
  }

  /* line 131, ../sass/_core.sass */
  h3 {
    font-size: 1.2rem;
    line-height: 2.4rem;
    margin-top: 1.40625rem;
    font-weight: bold;
  }

  /* line 136, ../sass/_core.sass */
  h4, h5, h6 {
    font-size: 1.1rem;
    margin-bottom: 0.25rem;
    margin-top: 0.25rem;
    line-height: 1.6rem;
    font-weight: bold;
  }

  /* line 142, ../sass/_core.sass */
  h5, h6 {
    font-size: 0.85rem;
  }

  /* line 144, ../sass/_core.sass */
  a:hover {
    opacity: 0.75;
  }
}
/* Medium only.   */
/* Large and up  */
@media screen and (min-width: 64em) {
  /* line 153, ../sass/_core.sass */
  h2 {
    margin-top: 1rem;
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
    font-weight: bold;
  }

  /* line 158, ../sass/_core.sass */
  h3 {
    font-size: 1.3rem;
    line-height: 2.4rem;
    font-weight: bold;
  }

  /* line 162, ../sass/_core.sass */
  h4, h5, h6 {
    font-size: 1rem;
    margin-bottom: 0.25rem;
    margin-top: 0.25rem;
    line-height: 1.6rem;
    font-weight: bold;
  }

  /* line 168, ../sass/_core.sass */
  h5, h6 {
    font-size: 0.85rem;
  }
}
/* Large only */
/* XLarge and up 1200 */
/* XLarge only */
/* XXLarge and up 1440px */
/* Main Layout settings */
/* Small only */
@media screen and (max-width: 39.9375em) {
  /* line 9, ../sass/public.sass */
  span.hamburger {
    z-index: 1000;
    position: fixed;
    display: inline-block;
    padding: 0.25rem;
    margin: 0.65rem 0.5rem;
    right: 0.35rem;
  }

  /* line 17, ../sass/public.sass */
  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }

  /* line 23, ../sass/public.sass */
  .menu-trigger {
    position: relative;
    width: 25px;
    height: 20px;
  }
  /* line 27, ../sass/public.sass */
  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    border-radius: 4px;
  }
  /* line 34, ../sass/public.sass */
  .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  /* line 36, ../sass/public.sass */
  .menu-trigger span:nth-of-type(2) {
    top: 9px;
  }
  /* line 38, ../sass/public.sass */
  .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  /* line 40, ../sass/public.sass */
  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
  }
  /* line 43, ../sass/public.sass */
  .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  /* line 45, ../sass/public.sass */
  .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(45deg);
    transform: translateY(-9px) rotate(45deg);
  }

  /* line 49, ../sass/public.sass */
  #responsive-menu {
    z-index: 100;
    top: 3.38rem;
    left: 0;
    padding-top: 2rem;
    position: fixed;
    background: #62B4C8;
    width: 100%;
    animation-duration: 0.25s;
    animation-name: fade-in;
    -moz-animation-duration: 0.25s;
    -moz-animation-name: fade-in;
    -webkit-animation-duration: 0.25s;
    -webkit-animation-name: fade-in;
  }
  /* line 64, ../sass/public.sass */
  #responsive-menu ul.globalnav {
    display: flex;
    flex-direction: column;
  }
  /* line 67, ../sass/public.sass */
  #responsive-menu ul.globalnav li {
    display: block;
  }

  /* line 72, ../sass/public.sass */
  body.public #container {
    padding-top: 3.38rem;
    position: relative;
  }
  /* line 75, ../sass/public.sass */
  body.public #header {
    background: #62B4C8;
    position: fixed;
    z-index: 200;
    top: 0;
    width: 100%;
  }
  /* line 81, ../sass/public.sass */
  body.public #header h1#logo {
    overflow: hidden;
  }
  /* line 83, ../sass/public.sass */
  body.public #header h1#logo a {
    display: block;
    width: 60px;
    height: 0;
    padding-top: 30px;
    overflow: hidden;
    background: url("/images/HeaderLogoW_retina.png") no-repeat 0 0;
    -webkit-background-size: 60px 30px;
    background-size: 60px 30px;
    margin: 0.5rem 0;
  }
  /* line 93, ../sass/public.sass */
  body.public #header .globalnav {
    margin-top: 0.5rem;
    margin-bottom: 2rem;
  }
  /* line 97, ../sass/public.sass */
  body.public #header .globalnav li a {
    font-weight: bold;
    text-align: left;
    font-size: 1rem;
    padding: 1rem;
    white-space: nowrap;
    color: #fff;
  }
  /* line 104, ../sass/public.sass */
  body.public #header .relations {
    background: #62B4C8;
  }
  /* line 107, ../sass/public.sass */
  body.public #header .relations li a {
    font-weight: bold;
    font-size: 0.65rem;
    color: #fff;
    padding: 0.7rem 0.5rem;
    white-space: nowrap;
  }
  /* line 114, ../sass/public.sass */
  body.public #header .relations li:first-child a {
    padding-left: 0;
  }

  /* line 116, ../sass/public.sass */
  #footer {
    background: #62b4c8;
    min-height: 10rem;
  }
  /* line 119, ../sass/public.sass */
  #footer .menu {
    margin: 1rem 0;
    flex-wrap: wrap;
  }
  /* line 122, ../sass/public.sass */
  #footer .menu li {
    padding: 0.5rem 0;
  }
  /* line 124, ../sass/public.sass */
  #footer .menu li a {
    color: #fff;
    border-left: 1px solid #b9ddff;
    padding: 0.1rem 1rem 0.1rem 0.2rem;
    font-weight: bold;
    font-size: 0.8125rem;
    white-space: nowrap;
  }
  /* line 131, ../sass/public.sass */
  #footer .copyright {
    margin: 1rem 0;
    font-size: 0.8125rem;
    color: #fff;
  }
}
/* Medium and up 640 */
@media screen and (min-width: 40em) {
  /* line 138, ../sass/public.sass */
  body.public {
    background: #62B4C8;
  }
  /* line 140, ../sass/public.sass */
  body.public div#header {
    margin-bottom: 1rem;
  }
  /* line 142, ../sass/public.sass */
  body.public div#header .relations {
    margin: 1rem 0;
  }
  /* line 144, ../sass/public.sass */
  body.public div#header .relations a {
    padding: 0.1rem 1rem 0.1rem 0.2rem;
    font-weight: bold;
    font-size: 0.75rem;
    color: #fff;
    white-space: nowrap;
  }
  /* line 150, ../sass/public.sass */
  body.public div#header .relations a:hover {
    opacity: 0.7;
  }
  /* line 152, ../sass/public.sass */
  body.public div#header #navigation-container {
    display: flex;
  }
  /* line 154, ../sass/public.sass */
  body.public div#header #navigation-container h1#logo a {
    margin-right: 4rem;
    display: block;
    width: 120px;
    height: 0;
    padding: 60px 0 0 0;
    margin-top: 2rem;
    overflow: hidden;
    background: url("/images/HeaderLogoW_retina.png") no-repeat left top;
    background-size: 120px 60px;
  }
  /* line 164, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav {
    margin-top: 1.5rem;
  }
  /* line 166, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav li {
    float: left;
    margin-right: 1rem;
  }
  /* line 169, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav li a {
    font-size: 0.875rem;
  }
  /* line 171, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .works a {
    display: block;
    width: 118px;
    height: 0;
    padding: 50px 0 26px 44px;
    font-weight: bold;
    color: #fff;
    overflow: hidden;
    background: url("/images/HeaderWorks.png") no-repeat left top;
    background-size: 102px 76px;
  }
  /* line 182, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .hotnews {
    margin: 8px 0 0 12px;
  }
  /* line 184, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .hotnews a {
    display: block;
    width: 78px;
    height: 0;
    padding: 28px 0 15px 0px;
    overflow: hidden;
    font-weight: bold;
    color: #fff;
    background: url("/images/HeaderNews.png") no-repeat left top;
    background-size: 45px 40px;
  }
  /* line 195, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .jobs {
    margin: 8px 0 0 12px;
  }
  /* line 197, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .jobs a {
    display: block;
    width: 88px;
    height: 0;
    padding: 28px 0 15px 0px;
    overflow: hidden;
    font-weight: bold;
    color: #fff;
    background: url("/images/HeaderRecruit.png") no-repeat left top;
    background-size: 64px 40px;
  }
  /* line 208, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .company {
    margin: 8px 0 0 12px;
  }
  /* line 210, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .company a {
    display: block;
    width: 100px;
    height: 0;
    padding: 28px 0 15px 0px;
    overflow: hidden;
    font-weight: bold;
    color: #fff;
    background: url("/images/HeaderCompany.png") no-repeat left top;
    background-size: 77px 40px;
  }
  /* line 221, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .app {
    margin: 8px 0 0 12px;
  }
  /* line 223, ../sass/public.sass */
  body.public div#header #navigation-container .globalnav .app a {
    display: block;
    width: 120px;
    height: 0;
    padding: 28px 0 15px 0px;
    overflow: hidden;
    font-weight: bold;
    color: #fff;
    background: url("/images/HeaderApp.png") no-repeat left top;
    background-size: 30px 40px;
  }

  /* line 235, ../sass/public.sass */
  #content {
    height: 100%;
    overflow: hidden;
    padding-bottom: 10rem;
  }

  /* line 240, ../sass/public.sass */
  #footer {
    background: #62b4c8;
    min-height: 10rem;
    margin-top: -10rem;
  }
  /* line 244, ../sass/public.sass */
  #footer .menu {
    margin: 1rem 0;
  }
  /* line 247, ../sass/public.sass */
  #footer .menu li a {
    color: #fff;
    border-left: 1px solid #b9ddff;
    padding: 0.1rem 1rem 0.1rem 0.2rem;
    font-weight: bold;
    font-size: 0.8125rem;
    white-space: nowrap;
  }
  /* line 254, ../sass/public.sass */
  #footer .copyright {
    margin: 1rem 0;
    font-size: 0.8125rem;
    color: #fff;
  }
}
/* Medium only.   */
/* Large and up  */
/* Large only */
/* XLarge and up 1200 */
/* XLarge only */
/* XXLarge and up 1440px */
