@charset "UTF-8";
/*
カラー・フォント定義
*/
/* =========================== 共通 =========================== */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

select::-ms-expand {
  display: none; }

a {
  color: #333333;
  text-decoration: none; }
  a:hover {
    color: #333333;
    text-decoration: underline; }

ul {
  list-style-type: none; }

figure {
  margin: 0px 0px 0px 0px; }

body {
  font-family: "Noto Sans JP", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 400;
  color: #333333;
  background-color: #fff;
  position: relative;
  font-size: 16px;
  line-height: 1;
  padding: 0px;
  overflow: hidden;
  padding: 96px 0px 0px 0px; }
  body.no_scroll {
    overflow: hidden !important; }
  @media only screen and (max-width: 959px) {
    body {
      font-size: 14px;
      padding: 64px 0px 0px 0px; } }

/* =========================== 汎用スタイル =========================== */
@media only screen and (min-width: 960px) {
  .pc {
    display: block; } }
@media only screen and (max-width: 959px) {
  .pc {
    display: none; } }

@media only screen and (min-width: 960px) {
  .sp {
    display: none; } }
@media only screen and (max-width: 959px) {
  .sp {
    display: block; } }

.anchorlink {
  position: relative;
  top: -128px;
  display: block; }

.mb8 {
  margin-bottom: 8px !important; }

.mb12 {
  margin-bottom: 12px !important; }

.mb16 {
  margin-bottom: 16px !important; }

.mb24 {
  margin-bottom: 24px !important; }

.mb32 {
  margin-bottom: 32px !important; }

.mb48 {
  margin-bottom: 48px !important; }

.mb64 {
  margin-bottom: 64px !important; }

.mb96 {
  margin-bottom: 96px !important; }

.mb128 {
  margin-bottom: 128px !important; }

.fadein {
  opacity: 0;
  transform: translate(0, 40px);
  transition: all 1000ms; }

.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
  transition-timing-function: ease-in-out; }
  .fadein.scrollin.del01 {
    transition-delay: 0.1s; }
  .fadein.scrollin.del02 {
    transition-delay: 0.2s; }
  .fadein.scrollin.del03 {
    transition-delay: 0.3s; }
  .fadein.scrollin.del04 {
    transition-delay: 0.4s; }
  .fadein.scrollin.del05 {
    transition-delay: 0.5s; }
  .fadein.scrollin.del06 {
    transition-delay: 0.6s; }
  .fadein.scrollin.del07 {
    transition-delay: 0.7s; }
  .fadein.scrollin.del08 {
    transition-delay: 0.8s; }
  .fadein.scrollin.del09 {
    transition-delay: 0.9s; }
  .fadein.scrollin.del1 {
    transition-delay: 1s; }

.fadeinX {
  opacity: 0;
  transform: translate(40px, 0);
  transition: all 1000ms; }

.fadeinX.scrollin {
  opacity: 1;
  transform: translate(0, 0);
  transition-timing-function: ease-in-out; }
  .fadeinX.scrollin.del01 {
    transition-delay: 0.1s; }
  .fadeinX.scrollin.del02 {
    transition-delay: 0.2s; }
  .fadeinX.scrollin.del03 {
    transition-delay: 0.3s; }
  .fadeinX.scrollin.del04 {
    transition-delay: 0.4s; }
  .fadeinX.scrollin.del05 {
    transition-delay: 0.5s; }
  .fadeinX.scrollin.del06 {
    transition-delay: 0.6s; }
  .fadeinX.scrollin.del07 {
    transition-delay: 0.7s; }
  .fadeinX.scrollin.del08 {
    transition-delay: 0.8s; }
  .fadeinX.scrollin.del09 {
    transition-delay: 0.9s; }
  .fadeinX.scrollin.del1 {
    transition-delay: 1s; }

header {
  height: 96px;
  width: 100%;
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  padding: 0px 32px 0px 32px;
  background-color: #fff; }
  @media only screen and (max-width: 959px) {
    header {
      height: 64px;
      padding: 0px 10px 0px 10px;
      background-color: #fff; } }
  header h1 {
    width: 125px;
    height: 45px;
    margin: 23px 0px 0px 0px; }
    @media only screen and (max-width: 959px) {
      header h1 {
        margin: 18px 0px 0px 0px;
        width: 80px;
        height: 29px; } }
    header h1 a {
      display: block; }
    header h1 img {
      width: 100%;
      height: auto; }
  header nav {
    width: calc(100% - 125px);
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-flex-direction: row;
    /* Safari */
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center; }
    @media only screen and (max-width: 959px) {
      header nav {
        text-align: center;
        visibility: hidden;
        transition: 0.4s;
        opacity: 0;
        top: 64px;
        left: 0;
        position: fixed;
        background-color: rgba(255, 255, 255, 0.95);
        width: 100%;
        height: calc(100% - 64px);
        padding: 24px 10px;
        display: block; }
        header nav.on {
          transition: 0.4s;
          opacity: 1;
          visibility: visible;
          transform: translateY(0px);
          -webkit-transform: translateY(0px); } }
    header nav .main-nav {
      padding: 0px 0px 0px 0px;
      margin: 0px 0px 0px 0px; }
      @media only screen and (max-width: 959px) {
        header nav .main-nav {
          padding: 0px 0px 0px 0px;
          margin: 0px 0px 0px 0px;
          text-align: center;
          width: 100%; } }
      header nav .main-nav li {
        display: inline-block;
        margin: 0px 40px 0px 0px;
        font-size: 16px;
        font-weight: 700;
        height: 96px;
        line-height: 96px; }
        @media only screen and (max-width: 1200px) {
          header nav .main-nav li {
            margin: 0px 20px 0px 0px; } }
        @media only screen and (max-width: 959px) {
          header nav .main-nav li {
            display: block;
            font-weight: 700;
            height: auto;
            line-height: 1; } }
        @media only screen and (max-width: 959px) {
          header nav .main-nav li.standard {
            margin: 0px 0px 24px 0px;
            border-bottom: 1px solid #ccc;
            padding: 0px 0px 24px 0px; } }
    header nav .sub-nav {
      padding: 0px 0px 0px 0px; }
      @media only screen and (max-width: 1200px) {
        header nav .sub-nav {
          padding: 0px 0px 0px 0px; } }
      @media only screen and (max-width: 959px) {
        header nav .sub-nav ul {
          display: block; } }
      header nav .sub-nav li {
        display: inline-block;
        margin: 0px 20px 0px 0px; }
        @media only screen and (max-width: 1200px) {
          header nav .sub-nav li {
            margin: 0px 10px 0px 0px; } }
        @media only screen and (max-width: 959px) {
          header nav .sub-nav li {
            width: 100%;
            margin: 0px 0px 16px 0px;
            padding: 0px 0px 0px 0px;
            text-align: center; }
            header nav .sub-nav li:last-child {
              width: 100%; } }
        header nav .sub-nav li:last-child {
          margin: 0px 0px 0px 0px;
          padding: 0px 0px 0px 0px; }
        header nav .sub-nav li a {
          display: -webkit-flex;
          /* Safari */
          display: flex;
          -webkit-flex-direction: row;
          /* Safari */
          flex-direction: row;
          -webkit-flex-wrap: wrap;
          /* Safari */
          flex-wrap: wrap;
          align-items: center;
          height: 64px;
          position: relative;
          border-radius: 100px;
          border: 1px solid #19254a;
          padding: 0px 65px 0px 20px;
          text-align: center; }
          @media only screen and (max-width: 959px) {
            header nav .sub-nav li a {
              width: 100%; }
              header nav .sub-nav li a p {
                width: 100%; } }
          header nav .sub-nav li a strong {
            width: 100%;
            display: block;
            font-size: 16px;
            color: #19254a;
            margin: 0px 0px 8px 0px; }
          header nav .sub-nav li a span {
            width: 100%;
            display: block;
            font-size: 12px;
            display: block; }
          header nav .sub-nav li a::after {
            content: "";
            position: absolute;
            width: 10px;
            height: 12px;
            bottom: calc(50% - 6px);
            right: 18px;
            transition: 0.2s;
            z-index: 2;
            background-image: url("../img/base/arrow-right.svg");
            background-size: 10px 12px; }
          header nav .sub-nav li a::before {
            content: "";
            position: absolute;
            width: 45px;
            height: 100%;
            top: 0;
            right: -2px;
            transition: 0.2s;
            background-color: #19254a;
            border-top-right-radius: 100px;
            border-bottom-right-radius: 100px;
            border: 1px solid #19254a;
            z-index: 1; }
          header nav .sub-nav li a:hover {
            text-decoration: none; }
            header nav .sub-nav li a:hover::after {
              right: 13px; }
  header .menu-btn {
    display: none;
    position: absolute;
    cursor: pointer;
    right: 10px;
    top: 20px;
    width: 30px;
    height: 23px; }
    @media only screen and (max-width: 959px) {
      header .menu-btn {
        display: block; } }
    header .menu-btn span {
      position: absolute;
      width: 30px;
      height: 3px;
      display: block;
      background-color: #2084c7;
      left: 0px;
      transition: 0.3s; }
      header .menu-btn span:nth-child(1) {
        top: 0px;
        animation: type7-top .5s;
        animation-fill-mode: forwards; }
      header .menu-btn span:nth-child(2) {
        width: 30px;
        top: 10px;
        animation-fill-mode: forwards; }
      header .menu-btn span:nth-child(3) {
        width: 30px;
        animation: type7-bottom .5s;
        animation-fill-mode: forwards;
        top: 20px;
        animation: type7-bottom .5s; }
    header .menu-btn.on span:nth-child(1) {
      animation: type7-top-close .5s;
      animation-fill-mode: forwards !important; }
    header .menu-btn.on span:nth-child(2) {
      width: 30px;
      opacity: 0; }
    header .menu-btn.on span:nth-child(3) {
      width: 30px;
      animation: type7-bottom-close .5s;
      animation-fill-mode: forwards !important; }

footer {
  background-color: #19254a; }
  footer .inner {
    width: 100%;
    max-width: 1080px;
    margin: 0px auto;
    padding: 80px 0px 80px 0px;
    font-size: 14px;
    color: #fff;
    position: relative; }
    @media only screen and (max-width: 959px) {
      footer .inner {
        padding: 64px 20px 64px 20px; } }
    footer .inner a {
      color: #fff; }
    footer .inner ul {
      margin: 0px 0px 40px 0px; }
      @media only screen and (max-width: 959px) {
        footer .inner ul {
          text-align: center;
          margin: 0px 10px 32px 10px; } }
      footer .inner ul li {
        display: inline-block;
        margin: 0px 32px 0px 0px; }
        @media only screen and (max-width: 959px) {
          footer .inner ul li {
            margin: 0px 12px 0px 12px; } }
        footer .inner ul li:last-child {
          margin: 0px 0px 0px 0px; }
    footer .inner h3 {
      margin: 0px 0px 32px 0px; }
      @media only screen and (max-width: 959px) {
        footer .inner h3 {
          text-align: center; } }
      footer .inner h3 img {
        width: 157px;
        height: auto; }
    footer .inner h4 {
      font-weight: normal;
      line-height: 1.6; }
      @media only screen and (max-width: 959px) {
        footer .inner h4 {
          margin: 0px 0px 30px 0px; } }
    footer .inner small {
      position: absolute;
      font-size: 14px;
      right: 0;
      bottom: 80px; }
      @media only screen and (max-width: 959px) {
        footer .inner small {
          position: relative;
          right: inherit;
          bottom: inherit;
          text-align: right;
          display: block; } }

.pankuzu {
  padding: 0px 32px;
  margin: 0px 0px 0px 0px;
  background-color: #666666; }
  @media only screen and (max-width: 959px) {
    .pankuzu {
      margin: 8px 0px 0px 0px;
      padding: 0px 8px 0px 8px; } }
  @media only screen and (max-width: 959px) {
    .pankuzu ul {
      display: flex;
      flex-wrap: nowrap;
      /* 改行を防ぐ */ } }
  .pankuzu ul li {
    display: inline-block;
    background-size: 5px 6px;
    padding: 10px 0px 10px 0px;
    margin: 0px 16px 0px 0px;
    font-size: 12px;
    color: #fff;
    line-height: 1.2;
    white-space: nowrap; }
    .pankuzu ul li:last-child {
      white-space: inherit; }
    @media only screen and (max-width: 959px) {
      .pankuzu ul li:first-child {
        min-width: 64px; } }
    .pankuzu ul li:last-child {
      padding: 10px 0px 10px 0px; }
    .pankuzu ul li a {
      display: block;
      text-decoration: none;
      color: #fff;
      position: relative;
      padding: 0px 26px 0px 0px; }
      .pankuzu ul li a::after {
        z-index: 1;
        content: "";
        position: absolute;
        width: 10px;
        height: 1px;
        top: 50%;
        right: 0;
        background-color: #fff; }

@keyframes type7-top {
  0% {
    transform: translateX(0px) rotate(0deg); }
  50% {
    transform: translateY(0px) rotate(0deg); }
  100% {
    transform: translateY(0px) rotate(0deg); } }
@keyframes type7-bottom {
  0% {
    transform: translateY(0px) rotate(0deg); }
  50% {
    transform: translateY(0px) rotate(0deg); }
  100% {
    transform: translateY(0px) rotate(0deg); } }
@keyframes type7-top-close {
  0% {
    transform: translateY(0px) rotate(0deg); }
  50% {
    transform: translateY(0px) rotate(0deg); }
  100% {
    transform: translateY(10px) rotate(-45deg); } }
@keyframes type7-bottom-close {
  0% {
    transform: translateY(0px) rotate(0deg); }
  50% {
    transform: translateY(0px) rotate(0deg); }
  100% {
    transform: translateY(-10px) rotate(45deg); } }
.standard-text-set h2 {
  font-size: 24px;
  border-bottom: 1px solid #2084c7;
  margin: 0px 0px 32px 0px;
  padding: 0px 0px 18px 0px;
  line-height: 1.4; }
  @media only screen and (max-width: 959px) {
    .standard-text-set h2 {
      font-size: 22px; } }
.standard-text-set h3 {
  font-size: 20px;
  color: #19254a;
  margin: 0px 0px 18px 0px;
  line-height: 1.4; }
  @media only screen and (max-width: 959px) {
    .standard-text-set h3 {
      font-size: 18px; } }
.standard-text-set p {
  line-height: 1.8;
  margin: 0px 0px 32px 0px; }
.standard-text-set h4 {
  font-size: 18px;
  color: #2084c7;
  margin: 0px 0px 18px 0px;
  line-height: 1.4; }
  @media only screen and (max-width: 959px) {
    .standard-text-set h4 {
      font-size: 16px; } }
.standard-text-set h5 {
  font-size: 16px;
  margin: 0px 0px 18px 0px;
  line-height: 1.4; }
.standard-text-set .standard-list {
  padding: 0px 0px 0px 10px;
  margin: 0px 0px 24px 0px; }
  .standard-text-set .standard-list li {
    background-image: url("../img/base/list-ico01.svg");
    background-size: 18px 15px;
    background-position: left center;
    padding: 0px 0px 0px 30px;
    line-height: 1.4;
    margin: 0px 0px 12px 0px; }
.standard-text-set .emphasis-box {
  padding: 32px;
  font-weight: 700;
  border: 1px dotted #333333;
  background-color: #f3f3f3;
  line-height: 1.8;
  margin: 0px 0px 32px 0px; }
  @media only screen and (max-width: 959px) {
    .standard-text-set .emphasis-box {
      padding: 16px; } }
.standard-text-set .related-articles-card a {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  border: 1px solid #cccccc;
  border-radius: 5px;
  background-color: #f8f8f8; }
  @media only screen and (max-width: 959px) {
    .standard-text-set .related-articles-card a {
      display: block; } }
  .standard-text-set .related-articles-card a:hover {
    text-decoration: none; }
  .standard-text-set .related-articles-card a figure {
    width: 330px; }
    @media only screen and (max-width: 959px) {
      .standard-text-set .related-articles-card a figure {
        width: 100%; } }
    .standard-text-set .related-articles-card a figure img {
      vertical-align: bottom;
      border-top-left-radius: 5px;
      border-bottom-left-radius: 5px;
      width: 100%;
      height: auto; }
      @media only screen and (max-width: 959px) {
        .standard-text-set .related-articles-card a figure img {
          border-top-left-radius: 5px;
          border-top-right-radius: 5px;
          border-bottom-left-radius: 0px; } }
  .standard-text-set .related-articles-card a .right {
    width: calc(100% - 330px); }
    @media only screen and (max-width: 959px) {
      .standard-text-set .related-articles-card a .right {
        width: 100%; } }
    .standard-text-set .related-articles-card a .right .inner {
      padding: 32px; }
      @media only screen and (max-width: 959px) {
        .standard-text-set .related-articles-card a .right .inner {
          padding: 16px; } }
      .standard-text-set .related-articles-card a .right .inner ul li {
        display: inline-block;
        border-radius: 100px;
        padding: 6px 12px 6px 12px;
        font-size: 12px;
        margin: 0px 6px 20px 0px; }
        .standard-text-set .related-articles-card a .right .inner ul li.cat {
          background-color: #19254a;
          color: #fff; }
        .standard-text-set .related-articles-card a .right .inner ul li.tag {
          background-color: #fff; }
      .standard-text-set .related-articles-card a .right .inner h3 {
        font-size: 16px;
        color: #2084c7;
        margin: 0px 0px 20px 0px; }
      .standard-text-set .related-articles-card a .right .inner span {
        line-height: 1.6;
        font-size: 14px; }

.navigation {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  justify-content: center;
  /* 水平方向の中央揃え */ }
  .navigation h2 {
    display: none; }
  .navigation a {
    background-color: #19254a;
    font-size: 12px;
    display: inline-block;
    height: 32px;
    line-height: 31px;
    padding: 0px 9px;
    margin: 0px 5px 0px 5px;
    text-align: center;
    border-radius: 5px;
    color: #fff; }
    .navigation a svg {
      display: none; }
    .navigation a.prev::after {
      content: "<";
      width: 100%;
      display: inline; }
    .navigation a.next::after {
      content: ">";
      width: 100%;
      display: inline; }
  .navigation span.current {
    background-color: #cfcfcf;
    color: #fff;
    font-size: 12px;
    display: inline-block;
    height: 32px;
    line-height: 31px;
    padding: 0px 9px;
    text-align: center;
    border-radius: 5px;
    margin: 0px 5px 0px 5px; }
  .navigation span.dots {
    line-height: 31px; }
  .navigation .nav-prev-text,
  .navigation .nav-next-text {
    display: none; }

.base-btn01 {
  text-align: center; }
  .base-btn01 a {
    display: inline-block;
    border-radius: 100px;
    padding: 20px 61px 20px 0px;
    font-size: 16px;
    font-weight: 700;
    position: relative;
    letter-spacing: 0.2em; }
    @media only screen and (max-width: 959px) {
      .base-btn01 a {
        font-size: 16px;
        padding: 16px 55px 16px 32px; } }
    .base-btn01 a:hover {
      text-decoration: none;
      opacity: 0.9; }
      .base-btn01 a:hover::after {
        right: -5px; }
    .base-btn01 a::after {
      content: "";
      position: absolute;
      width: 49px;
      height: 49px;
      top: calc(50% - 24px);
      right: 0px;
      transition: 0.2s;
      background-image: url("../img/base/base-btn-bg.svg");
      background-size: 49px 49px; }

.btn-apply {
  text-align: center; }
  .btn-apply a {
    display: inline-block;
    border-radius: 100px;
    color: #fff;
    background-color: #ff9933;
    padding: 24px 80px 24px 32px;
    font-size: 24px;
    position: relative; }
    @media only screen and (max-width: 959px) {
      .btn-apply a {
        font-size: 16px;
        padding: 16px 80px 16px 32px; } }
    .btn-apply a:hover {
      text-decoration: none;
      opacity: 0.7; }
      .btn-apply a:hover::after {
        transform: scale(1.1, 1.1); }
    .btn-apply a::after {
      content: "";
      position: absolute;
      width: 40px;
      height: 40px;
      top: calc(50% - 20px);
      right: 32px;
      transition: 0.2s;
      background-image: url("../img/base/application-btn-icon.svg");
      background-size: 40px 40px; }
      @media only screen and (max-width: 959px) {
        .btn-apply a::after {
          width: 30px;
          height: 30px;
          background-size: 30px 30px;
          top: calc(50% - 15px); } }

.base-container {
  width: 100%;
  max-width: 1100px;
  margin: 0px auto 64px auto;
  padding: 0px 10px 0px 10px; }
  @media only screen and (max-width: 959px) {
    .base-container {
      margin: 0px 0px 40px 0px; } }

.page-ttl {
  padding: 0px 0px;
  margin: 0px 0px 64px 0px;
  overflow: hidden;
  position: relative; }
  @media only screen and (max-width: 959px) {
    .page-ttl {
      margin: 0px 0px 32px 0px; } }
  .page-ttl::after {
    z-index: 1;
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    bottom: 0px;
    left: 0px;
    background-color: #19254a; }
  .page-ttl h1 {
    position: relative;
    width: 100%;
    max-width: 1100px;
    margin: 0px auto 0px auto;
    font-size: 36px;
    font-weight: 700;
    padding: 40px 10px 40px 10px; }
    @media only screen and (max-width: 959px) {
      .page-ttl h1 {
        font-size: 24px;
        padding: 20px 10px 20px 10px;
        line-height: 1.4; } }
    .page-ttl h1::after {
      z-index: 2;
      content: "";
      position: absolute;
      width: 200%;
      height: 2px;
      bottom: 0px;
      left: 0px;
      background-color: #2084c7; }

.base-ttl-h2 {
  font-size: 24px;
  border-bottom: 1px solid #cccccc;
  padding: 0px 0px 20px 0px;
  margin: 0px 0px 32px 0px; }
  @media only screen and (max-width: 959px) {
    .base-ttl-h2 {
      font-size: 20px;
      padding: 0px 0px 16px 0px;
      margin: 0px 0px 24px 0px; } }
  .base-ttl-h2 span {
    font-size: 14px;
    color: #19254a;
    margin: 0px 0px 0px 12px; }
    @media only screen and (max-width: 959px) {
      .base-ttl-h2 span {
        font-size: 12px; } }

.base-article-list {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  margin: 0px 0px 0px -40px; }
  @media only screen and (max-width: 959px) {
    .base-article-list {
      margin: 0px 0px 0px -16px; } }
  .base-article-list li {
    width: calc(33.3% - 40px);
    margin: 0px 0px 40px 40px; }
    @media only screen and (max-width: 959px) {
      .base-article-list li {
        width: calc(50% - 16px);
        margin: 0px 0px 40px 16px; } }
    .base-article-list li a {
      display: block; }
      .base-article-list li a:hover {
        text-decoration: none; }
        .base-article-list li a:hover figure img {
          transform: scale(1.1); }
        .base-article-list li a:hover > p {
          text-decoration: underline; }
      .base-article-list li a figure {
        margin: 0px 0px 16px 0px;
        overflow: hidden;
        border-radius: 10px; }
        @media only screen and (max-width: 959px) {
          .base-article-list li a figure {
            margin: 0px 0px 12px 0px; } }
        .base-article-list li a figure img {
          width: 100%;
          height: auto;
          border-radius: 10px;
          vertical-align: bottom;
          transition: 0.3s; }
      .base-article-list li a .tag-header p {
        display: inline-block;
        background-color: #f9f7f6;
        padding: 6px 12px;
        border-radius: 10px;
        margin: 0px 10px 16px 0px;
        font-size: 12px; }
        @media only screen and (max-width: 959px) {
          .base-article-list li a .tag-header p {
            margin: 0px 4px 12px 0px;
            padding: 6px 6px; } }
      .base-article-list li a h3 {
        font-size: 16px;
        font-weight: 700;
        color: #2084c7;
        margin: 0px 0px 16px 0px; }
        @media only screen and (max-width: 959px) {
          .base-article-list li a h3 {
            font-size: 14px;
            line-height: 1.2;
            margin: 0px 0px 12px 0px; } }
      .base-article-list li a > p {
        font-size: 14px;
        line-height: 1.6;
        margin: 0px 0px 16px 0px; }
        @media only screen and (max-width: 959px) {
          .base-article-list li a > p {
            font-size: 12px;
            margin: 0px 0px 8px 0px; } }

body.index .index-base-ttl {
  text-align: center;
  margin: 0px 0px 64px 0px; }
  @media only screen and (max-width: 959px) {
    body.index .index-base-ttl {
      margin: 0px 0px 32px 0px; } }
  body.index .index-base-ttl h2 {
    font-size: 36px;
    font-weight: 700; }
    @media only screen and (max-width: 959px) {
      body.index .index-base-ttl h2 {
        font-size: 24px; } }
  body.index .index-base-ttl span {
    display: block;
    font-size: 130px;
    font-weight: 700;
    color: #f6f6f6;
    font-style: italic;
    margin: 0px 0px -30px 0px; }
    @media only screen and (max-width: 959px) {
      body.index .index-base-ttl span {
        font-size: 64px;
        margin: 0px 0px -20px 0px; } }
    body.index .index-base-ttl span.f100 {
      font-size: 100px; }
      @media only screen and (max-width: 959px) {
        body.index .index-base-ttl span.f100 {
          font-size: 50px; } }
    body.index .index-base-ttl span.f90 {
      font-size: 90px; }
      @media only screen and (max-width: 959px) {
        body.index .index-base-ttl span.f90 {
          font-size: 50px; } }
    body.index .index-base-ttl span.f80 {
      font-size: 80px; }
      @media only screen and (max-width: 959px) {
        body.index .index-base-ttl span.f80 {
          font-size: 50px; } }
body.index .mv {
  background-color: #f8f8f8;
  height: 560px;
  margin: 0px 0px 0px 0px;
  position: relative; }
  @media only screen and (max-width: 959px) {
    body.index .mv {
      height: auto;
      margin: 0px 0px 0px 0px; } }
  body.index .mv .bg {
    position: absolute;
    width: 50%;
    height: 100%;
    z-index: 1;
    right: 0;
    top: 0;
    background-image: url("../img/index/mv/bg.webp");
    background-position: right center;
    background-size: cover; }
    @media only screen and (max-width: 959px) {
      body.index .mv .bg {
        width: 100%;
        background-image: url("../img/index/mv/bg-sp.webp");
        background-position: center center; } }
  body.index .mv .bg2 {
    position: absolute;
    width: 50%;
    height: 100%;
    z-index: 2;
    background-color: #2084c7;
    transform: skewX(-20deg);
    left: 10%;
    top: 0; }
    @media only screen and (max-width: 959px) {
      body.index .mv .bg2 {
        display: none; } }
  body.index .mv .inner {
    position: relative;
    z-index: 3;
    width: 50%;
    height: 100%;
    padding: 90px 64px;
    background-color: #2084c7; }
    @media only screen and (max-width: 959px) {
      body.index .mv .inner {
        width: 100%;
        padding: 48px 10px;
        background-color: rgba(32, 132, 199, 0.7); } }
    body.index .mv .inner h1 {
      font-size: 36px;
      font-weight: 700;
      line-height: 1.5;
      margin: 0px 0px 43px 0px;
      color: #fff; }
      @media only screen and (max-width: 959px) {
        body.index .mv .inner h1 {
          font-size: 24px;
          line-height: 1.8; } }
      body.index .mv .inner h1 span {
        font-size: 54px; }
        @media only screen and (max-width: 959px) {
          body.index .mv .inner h1 span {
            font-size: 36px; } }
    body.index .mv .inner h2 {
      font-size: 22px;
      line-height: 1.6;
      font-weight: 400;
      margin: 0px 0px 43px 0px;
      color: #fff; }
      @media only screen and (max-width: 959px) {
        body.index .mv .inner h2 {
          font-size: 16px;
          margin: 0px 0px 24px 0px; } }
    @media only screen and (max-width: 959px) {
      body.index .mv .inner ul {
        display: -webkit-flex;
        /* Safari */
        display: flex;
        -webkit-flex-direction: row;
        /* Safari */
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        /* Safari */
        flex-wrap: wrap; } }
    body.index .mv .inner li {
      display: inline-block;
      margin: 0px 20px 0px 0px; }
      @media only screen and (max-width: 1200px) {
        body.index .mv .inner li {
          margin: 0px 10px 0px 0px; } }
      @media only screen and (max-width: 959px) {
        body.index .mv .inner li {
          width: 100%;
          margin: 0px 0px 16px 0px;
          padding: 0px 0px 0px 0px; }
          body.index .mv .inner li:last-child {
            width: 100%; } }
      body.index .mv .inner li:last-child {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 0px 0px; }
      body.index .mv .inner li a {
        display: -webkit-flex;
        /* Safari */
        display: flex;
        -webkit-flex-direction: row;
        /* Safari */
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        /* Safari */
        flex-wrap: wrap;
        align-items: center;
        height: 80px;
        position: relative;
        border-radius: 100px;
        border: 2px solid #19254a;
        padding: 0px 50px 0px 50px;
        text-align: center;
        background-color: #fff; }
        @media only screen and (max-width: 959px) {
          body.index .mv .inner li a {
            width: 100%; } }
        @media only screen and (max-width: 959px) {
          body.index .mv .inner li a p {
            width: 100%; } }
        body.index .mv .inner li a strong {
          width: 100%;
          display: block;
          font-size: 18px;
          color: #19254a;
          margin: 0px 0px 12px 0px; }
        body.index .mv .inner li a span {
          width: 100%;
          display: block;
          font-size: 14px;
          color: #999999; }
        body.index .mv .inner li a:hover {
          text-decoration: none; }
body.index .box01 {
  background-color: #f9f7f6;
  padding: 80px 0px 80px 0px;
  margin: 0px 0px 80px 0px; }
  @media only screen and (max-width: 959px) {
    body.index .box01 {
      padding: 40px 0px 40px 0px; } }
  body.index .box01 .inner {
    position: relative; }
    body.index .box01 .inner figure {
      position: absolute;
      left: 64px;
      bottom: -128px;
      width: 335px; }
      @media only screen and (max-width: 959px) {
        body.index .box01 .inner figure {
          left: inherit;
          right: 32px;
          bottom: -64px;
          text-align: right; } }
      body.index .box01 .inner figure img {
        width: 100%;
        height: auto; }
        @media only screen and (max-width: 959px) {
          body.index .box01 .inner figure img {
            width: 50%; } }
    body.index .box01 .inner .text {
      width: calc(100% - 335px - 64px - 64px);
      font-size: 24px;
      line-height: 2.4;
      margin: 0px 0px 0px 463px;
      background-color: #fff;
      border-top-left-radius: 32px;
      border-bottom-left-radius: 32px;
      padding: 50px 50px; }
      @media only screen and (max-width: 959px) {
        body.index .box01 .inner .text {
          width: calc(100% - 16px);
          margin: 0px 0px 0px 16px;
          padding: 32px 20px  96px 20px;
          font-size: 20px;
          line-height: 2.8; } }
      body.index .box01 .inner .text span {
        font-weight: 700;
        position: relative; }
        body.index .box01 .inner .text span::after {
          z-index: 1;
          content: "";
          position: absolute;
          width: 5px;
          height: 5px;
          top: -10px;
          left: calc(50% - 3px);
          background-color: #2084c7;
          border-radius: 10px; }
body.index .box02 h2 {
  font-size: 36px;
  font-weight: 700;
  text-align: center;
  margin: 0px 0px 64px 0px; }
  @media only screen and (max-width: 959px) {
    body.index .box02 h2 {
      font-size: 24px;
      margin: 0px 0px 32px 0px; } }
body.index .box02 .inner {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  margin: 0px 0px 0px -40px; }
  @media only screen and (max-width: 959px) {
    body.index .box02 .inner {
      display: block;
      margin: 0px 0px 0px 0px; } }
  body.index .box02 .inner dl {
    background-color: #f9f7f6;
    width: calc(33.3% - 40px);
    margin: 0px 0px 0px 40px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px; }
    @media only screen and (max-width: 959px) {
      body.index .box02 .inner dl {
        width: 100%;
        margin: 0px 0px 20px 0px; } }
    body.index .box02 .inner dl dt {
      border-top-left-radius: 10px;
      border-top-right-radius: 10px;
      color: #fff;
      background-color: #19254a;
      padding: 24px 24px 24px 24px;
      line-height: 1.6; }
      body.index .box02 .inner dl dt.bg01 {
        background-image: url("../img/index/box02/bg01.svg");
        background-size: 70px auto;
        background-repeat: no-repeat;
        background-position: left 12px center;
        padding-left: 100px; }
      body.index .box02 .inner dl dt.bg02 {
        background-image: url("../img/index/box02/bg02.svg");
        background-size: 54px auto;
        background-repeat: no-repeat;
        background-position: left 16px center;
        padding-left: 89px; }
      body.index .box02 .inner dl dt.bg03 {
        background-image: url("../img/index/box02/bg03.svg");
        background-size: 54px auto;
        background-repeat: no-repeat;
        background-position: left 16px center;
        padding-left: 89px; }
    body.index .box02 .inner dl dd {
      padding: 24px;
      font-size: 14px;
      line-height: 1.6; }
      @media only screen and (max-width: 959px) {
        body.index .box02 .inner dl dd {
          padding: 16px; } }
body.index .box03 .voice-header {
  margin: 0px 0px 64px 0px; }
  @media only screen and (max-width: 959px) {
    body.index .box03 .voice-header {
      margin: 0px 0px 32px 0px; } }
  body.index .box03 .voice-header dl {
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-flex-direction: row;
    /* Safari */
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap; }
    @media only screen and (max-width: 959px) {
      body.index .box03 .voice-header dl {
        display: block; } }
    body.index .box03 .voice-header dl dt {
      width: 125px; }
      @media only screen and (max-width: 959px) {
        body.index .box03 .voice-header dl dt {
          width: 100%;
          text-align: center;
          margin: 0px 0px 24px 0px; } }
      body.index .box03 .voice-header dl dt img {
        width: 125px;
        height: auto; }
        @media only screen and (max-width: 959px) {
          body.index .box03 .voice-header dl dt img {
            width: 40%; } }
    body.index .box03 .voice-header dl dd {
      width: calc(100% - 125px);
      font-size: 18px;
      line-height: 1.6;
      padding: 0px 0px 0px 40px; }
      @media only screen and (max-width: 959px) {
        body.index .box03 .voice-header dl dd {
          width: 100%;
          padding: 0px 0px 0px 0px; } }
body.index .box03 .inner {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  margin: 0px 0px -40px -40px; }
  @media only screen and (max-width: 959px) {
    body.index .box03 .inner {
      margin: 0px 0px 0px 0px; } }
  body.index .box03 .inner dl {
    width: calc(50% - 40px);
    margin: 0px 0px 40px 40px; }
    @media only screen and (max-width: 959px) {
      body.index .box03 .inner dl {
        width: calc(100%);
        margin: 0px 0px 20px 0px; } }
    body.index .box03 .inner dl dt {
      color: #2084c7;
      font-size: 18px;
      border-bottom: 1px solid #cccccc;
      margin: 0px 0px 12px 0px;
      padding: 0px 0px 20px 0px;
      font-weight: 700; }
      @media only screen and (max-width: 959px) {
        body.index .box03 .inner dl dt {
          font-size: 16px; } }
    body.index .box03 .inner dl dd {
      font-size: 16px;
      line-height: 1.8; }
      @media only screen and (max-width: 959px) {
        body.index .box03 .inner dl dd {
          font-size: 14px; } }

.cta-contact {
  background-color: #f4f4f4;
  padding: 45px 45px;
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  align-items: center;
  justify-content: center; }
  @media only screen and (max-width: 959px) {
    .cta-contact {
      padding: 24px 10px; } }
  .cta-contact.m96 {
    margin: 0px 0px 96px 0px; }
    @media only screen and (max-width: 959px) {
      .cta-contact.m96 {
        margin: 0px 0px 48px 0px; } }
  .cta-contact .left {
    width: 40%; }
    @media only screen and (max-width: 959px) {
      .cta-contact .left {
        width: 100%; } }
    .cta-contact .left h2 {
      text-align: center;
      font-size: 30px;
      font-weight: 700;
      line-height: 1.6; }
      @media only screen and (max-width: 959px) {
        .cta-contact .left h2 {
          font-size: 22px;
          margin: 0px 0px 24px 0px; } }
  .cta-contact .right {
    width: 60%;
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-flex-direction: row;
    /* Safari */
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
    justify-content: center; }
    @media only screen and (max-width: 959px) {
      .cta-contact .right {
        width: 100%; } }
    .cta-contact .right a {
      width: calc(40% - 40px);
      margin: 0px 20px 0px 20px;
      padding: 64px 20px 64px 20px;
      display: block;
      background-color: #ffffff;
      border-radius: 10px;
      text-align: center; }
      @media only screen and (max-width: 959px) {
        .cta-contact .right a {
          margin: 0px 5px 0px 5px;
          width: calc(50% - 10px);
          padding: 32px 10px 32px 10px; } }
      .cta-contact .right a h3 {
        font-size: 24px;
        margin: 0px 0px 16px 0px;
        font-weight: 700; }
        @media only screen and (max-width: 959px) {
          .cta-contact .right a h3 {
            font-size: 16px;
            margin: 0px 0px 12px 0px; } }
      .cta-contact .right a span {
        font-size: 18px;
        font-weight: 700;
        display: block;
        margin: 0px 0px 40px 0px; }
        @media only screen and (max-width: 959px) {
          .cta-contact .right a span {
            font-size: 12px;
            margin: 0px 0px 20px 0px; } }
      .cta-contact .right a figure img {
        width: 132px;
        height: auto; }
        @media only screen and (max-width: 959px) {
          .cta-contact .right a figure img {
            width: 100px; } }

body.hina .hina-ttl-h1 {
  font-size: 24px;
  border-bottom: 2px solid #2084c7;
  margin: 0px 0px 32px 0px; }
  @media only screen and (max-width: 959px) {
    body.hina .hina-ttl-h1 {
      font-size: 18px;
      margin: 0px 0px 24px 0px; } }
  body.hina .hina-ttl-h1 span {
    display: inline-block;
    position: relative;
    padding: 0px 0px 16px 0px; }
    body.hina .hina-ttl-h1 span::after {
      z-index: 1;
      content: "";
      position: absolute;
      width: 100%;
      height: 2px;
      bottom: -2px;
      left: 0;
      background-color: #19254a; }

body.search-area .inner dl {
  border: 2px solid #ccc;
  border-radius: 10px;
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  margin: 0px 0px 24px 0px; }
  @media only screen and (max-width: 959px) {
    body.search-area .inner dl {
      margin: 0px 0px 16px 0px; } }
  body.search-area .inner dl dt {
    width: 164px;
    border-right: 2px solid #ccc;
    padding: 20px 0px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-flex-direction: row;
    /* Safari */
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; }
    @media only screen and (max-width: 959px) {
      body.search-area .inner dl dt {
        font-size: 16px;
        width: 120px; } }
  body.search-area .inner dl dd {
    width: calc(100% - 164px);
    padding: 20px 32px 0px 32px;
    font-size: 18px; }
    @media only screen and (max-width: 959px) {
      body.search-area .inner dl dd {
        font-size: 14px;
        width: calc(100% - 120px);
        padding: 20px 16px 0px 16px; } }
    body.search-area .inner dl dd a {
      display: inline-block;
      margin: 0px 20px 20px 0px;
      border-right: 1px solid #cccccc;
      padding: 0px 20px 0px 0px; }
      @media only screen and (max-width: 959px) {
        body.search-area .inner dl dd a {
          margin: 0px 6px 20px 0px;
          padding: 0px 6px 0px 0px; } }
      body.search-area .inner dl dd a:nth-last-child(1) {
        border-right: none;
        padding: 0px 0px 0px 0px;
        margin: 0px 0px 20px 0px; }
        @media only screen and (max-width: 959px) {
          body.search-area .inner dl dd a:nth-last-child(1) {
            margin: 0px 0px 20px 0px; } }
  body.search-area .inner dl.area01 {
    border-color: #7383c7; }
    body.search-area .inner dl.area01 dt {
      border-color: #7383c7; }
  body.search-area .inner dl.area02 {
    border-color: #73c7c0; }
    body.search-area .inner dl.area02 dt {
      border-color: #73c7c0; }
  body.search-area .inner dl.area03 {
    border-color: #7ac774; }
    body.search-area .inner dl.area03 dt {
      border-color: #7ac774; }
  body.search-area .inner dl.area04 {
    border-color: #74a6c7; }
    body.search-area .inner dl.area04 dt {
      border-color: #74a6c7; }
  body.search-area .inner dl.area05 {
    border-color: #c2c773; }
    body.search-area .inner dl.area05 dt {
      border-color: #c2c773; }
  body.search-area .inner dl.area06 {
    border-color: #c79475; }
    body.search-area .inner dl.area06 dt {
      border-color: #c79475; }
  body.search-area .inner dl.area07 {
    border-color: #75c79a; }
    body.search-area .inner dl.area07 dt {
      border-color: #75c79a; }
  body.search-area .inner dl.area08 {
    border-color: #c77489; }
    body.search-area .inner dl.area08 dt {
      border-color: #c77489; }

body.search-job .search-job-inner .job-list {
  text-align: left;
  padding: 0px 0px 0px 20px; }

body.category .search-num {
  font-size: 16px;
  margin: 0px 0px 32px 0px; }

body.job-detail .tag-header {
  position: relative; }
  body.job-detail .tag-header .menu a {
    display: inline-block;
    border: 1px solid #999999;
    padding: 16px 24px; }
    body.job-detail .tag-header .menu a.on {
      color: #2084c7;
      border-bottom: 1px solid #fff; }
    body.job-detail .tag-header .menu a:first-child {
      margin: 0px 10px 0px 0px; }
  body.job-detail .tag-header .detail-container {
    margin: -1px 0px 32px 0px;
    border: 1px solid #999999;
    padding: 32px;
    display: none; }
    @media only screen and (max-width: 959px) {
      body.job-detail .tag-header .detail-container {
        padding: 16px; } }
    body.job-detail .tag-header .detail-container.on {
      display: block; }
    body.job-detail .tag-header .detail-container.company-detail {
      display: block;
      padding: 0px;
      border: none; }
      body.job-detail .tag-header .detail-container.company-detail h2 {
        font-size: 16px;
        font-weight: 700;
        line-height: 1.6; }
      body.job-detail .tag-header .detail-container.company-detail .company-text {
        margin-bottom: 0px !important; }
    body.job-detail .tag-header .detail-container .top-container {
      display: -webkit-flex;
      /* Safari */
      display: flex;
      -webkit-flex-direction: row;
      /* Safari */
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      /* Safari */
      flex-wrap: wrap;
      margin: 0px 0px 32px 0px; }
      body.job-detail .tag-header .detail-container .top-container figure {
        width: 35%; }
        @media only screen and (max-width: 959px) {
          body.job-detail .tag-header .detail-container .top-container figure {
            width: 100%;
            margin: 0px 0px 16px 0px; } }
        body.job-detail .tag-header .detail-container .top-container figure img {
          width: 100%;
          height: auto; }
      body.job-detail .tag-header .detail-container .top-container .right-inner {
        width: 65%;
        padding: 0px 0px 0px 24px; }
        @media only screen and (max-width: 959px) {
          body.job-detail .tag-header .detail-container .top-container .right-inner {
            width: 100%;
            padding: 0px 0px 0px 0px; } }
        body.job-detail .tag-header .detail-container .top-container .right-inner h1 {
          color: #19254a;
          font-size: 24px;
          line-height: 1.2;
          margin: 0px 0px 29px 0px;
          font-weight: 700; }
          @media only screen and (max-width: 959px) {
            body.job-detail .tag-header .detail-container .top-container .right-inner h1 {
              font-size: 18px;
              margin: 0px 0px 16px 0px; } }
        body.job-detail .tag-header .detail-container .top-container .right-inner dl {
          display: -webkit-flex;
          /* Safari */
          display: flex;
          -webkit-flex-direction: row;
          /* Safari */
          flex-direction: row;
          -webkit-flex-wrap: wrap;
          /* Safari */
          flex-wrap: wrap;
          margin: 0px 0px 12px 0px; }
          body.job-detail .tag-header .detail-container .top-container .right-inner dl dt {
            width: 64px; }
            body.job-detail .tag-header .detail-container .top-container .right-inner dl dt span {
              display: block;
              text-align: center;
              border-radius: 100px;
              background-color: #f7f7f7;
              padding: 6px 0px;
              font-weight: 700;
              line-height: 1.4; }
          body.job-detail .tag-header .detail-container .top-container .right-inner dl dd {
            width: calc(100% - 64px);
            padding: 6px 0px 6px 16px;
            line-height: 1.4; }
        body.job-detail .tag-header .detail-container .top-container .right-inner ul {
          margin: 20px 0px 0px 0px; }
          body.job-detail .tag-header .detail-container .top-container .right-inner ul li {
            display: inline-block;
            margin: 0px 10px 10px 0px; }
            body.job-detail .tag-header .detail-container .top-container .right-inner ul li a {
              display: block;
              font-size: 14px;
              font-weight: 700;
              padding: 0px 0px 6px 0px;
              border-bottom: 2px dotted #adadad; }
              body.job-detail .tag-header .detail-container .top-container .right-inner ul li a:hover {
                text-decoration: none;
                color: #2084c7;
                border-bottom: 2px dotted #2084c7; }
        body.job-detail .tag-header .detail-container .top-container .right-inner .company-text {
          font-size: 14px;
          line-height: 1.6;
          margin: 16px 0px 32px 0px; }
    body.job-detail .tag-header .detail-container .bottom-container h2 {
      margin: 0px 0px 24px 0px; }
      body.job-detail .tag-header .detail-container .bottom-container h2 span {
        font-size: 16px;
        display: inline-block;
        text-align: center;
        border-radius: 100px;
        background-color: #f7f7f7;
        padding: 6px 16px;
        font-weight: 700; }
    body.job-detail .tag-header .detail-container .bottom-container p {
      font-size: 14px;
      line-height: 1.8; }
body.job-detail .job-detail-main h3 {
  font-size: 18px;
  font-weight: 700;
  margin: 0px 0px 6px 0px;
  padding: 0px 0px 16px 0px;
  border-bottom: 1px dotted #cfcfcf; }
  @media only screen and (max-width: 959px) {
    body.job-detail .job-detail-main h3 {
      font-size: 16px; } }
body.job-detail .job-detail-main p {
  margin: 0px 0px 32px 0px;
  line-height: 1.8; }
body.job-detail .job-detail-main .btn-apply {
  margin-top: 50px; }
  @media only screen and (max-width: 959px) {
    body.job-detail .job-detail-main .btn-apply {
      margin-top: 30px; } }

body.contact .contact-top-text {
  line-height: 1.6;
  margin: 0px 0px 32px 0px; }
body.contact .tag-header .menu span {
  display: inline-block;
  border: 1px solid #999999;
  padding: 16px 24px;
  color: #2084c7;
  border-bottom: 1px solid #fff; }
body.contact .tag-header .top-container {
  margin-bottom: 0px !important; }
  body.contact .tag-header .top-container .right-inner h3 {
    color: #19254a;
    font-size: 24px;
    line-height: 1.2;
    margin: 0px 0px 29px 0px;
    font-weight: 700; }
    @media only screen and (max-width: 959px) {
      body.contact .tag-header .top-container .right-inner h3 {
        font-size: 18px;
        margin: 0px 0px 16px 0px; } }
body.contact .form-container {
  max-width: 900px; }
  body.contact .form-container dl {
    margin: 0px 0px 32px 0px; }
    @media only screen and (max-width: 959px) {
      body.contact .form-container dl {
        margin: 0px 0px 24px 0px; } }
    body.contact .form-container dl dt {
      margin: 0px 0px 12px 0px; }
      body.contact .form-container dl dt span {
        display: inline-block;
        font-size: 12px;
        color: #ff3333;
        margin: 0px 0px 0px 10px; }
  body.contact .form-container input[type="text"], body.contact .form-container textarea {
    border: 1px solid #cccccc;
    background-color: #f6f6f6;
    padding: 10px 10px;
    margin: 0px 0px 0px 0px;
    width: 100%;
    font-size: 16px; }
    @media only screen and (max-width: 959px) {
      body.contact .form-container input[type="text"], body.contact .form-container textarea {
        padding: 8px;
        font-size: 14px; } }
  body.contact .form-container button {
    margin: 10px 0px 0px 0px;
    border-radius: 100px;
    background-color: #19254a;
    color: #fff;
    padding: 10px 20px;
    font-size: 14px; }
  body.contact .form-container .submit-btn {
    text-align: center; }
  body.contact .form-container input[type="submit"] {
    background-color: #19254a;
    color: #ffffff;
    border: none;
    padding: 20px 50px;
    cursor: pointer;
    font-size: 24px;
    border-radius: 100px; }

body.category .category-list {
  margin: 0px 0px 52px 0px; }
  @media only screen and (max-width: 959px) {
    body.category .category-list {
      margin: 0px 0px 32px 0px; } }
  body.category .category-list li {
    display: inline-block;
    margin: 0px 12px 12px 0px; }
    @media only screen and (max-width: 959px) {
      body.category .category-list li {
        margin: 0px 8px 8px 0px; } }
    body.category .category-list li a {
      display: block;
      background-color: #19254a;
      color: #fff;
      padding: 8px 20px;
      border-radius: 5px;
      font-size: 12px;
      text-decoration: none; }
      @media only screen and (max-width: 959px) {
        body.category .category-list li a {
          padding: 8px 10px; } }
      body.category .category-list li a:hover {
        background-color: #2084c7; }

.ranking-containe .inner {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  justify-content: center;
  margin: 0px 0px 0px -40px; }
  @media only screen and (max-width: 959px) {
    .ranking-containe .inner {
      margin: 0px 0px 0px 0px; } }
  .ranking-containe .inner .ranking-post {
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-flex-direction: row;
    /* Safari */
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
    width: calc(33.3% - 40px);
    margin: 0px 0px 40px 40px;
    text-decoration: none; }
    @media only screen and (max-width: 959px) {
      .ranking-containe .inner .ranking-post {
        width: 100%;
        margin: 0px 0px 20px 0px; } }
    .ranking-containe .inner .ranking-post figure {
      width: 50%;
      border-radius: 5px;
      overflow: hidden; }
      .ranking-containe .inner .ranking-post figure img {
        width: 100%;
        height: auto;
        border-radius: 5px;
        transition: 0.2s; }
    .ranking-containe .inner .ranking-post:hover figure img {
      transform: scale(1.1, 1.1); }
    .ranking-containe .inner .ranking-post .right {
      width: 50%;
      padding: 0px 0px 0px 16px; }
      .ranking-containe .inner .ranking-post .right em {
        display: inline-block;
        background-color: #333333;
        color: #fff;
        padding: 4px 10px;
        margin: 0px 0px 12px 0px;
        font-size: 12px;
        font-style: normal; }
      .ranking-containe .inner .ranking-post .right h3 {
        font-size: 12px;
        font-weight: 700;
        line-height: 1.4;
        color: #2084c7;
        margin: 0px 0px 6px 0px; }
      .ranking-containe .inner .ranking-post .right ul li {
        display: inline-block;
        border-radius: 100px;
        background-color: #f9f7f6;
        padding: 6px 16px;
        font-size: 12px;
        margin: 0px 8px 6px 0px; }

body.detail .detail-main-container {
  max-width: 920px; }
body.detail .detail-header {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-direction: row;
  /* Safari */
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
  font-size: 12px;
  margin: 0px 0px 32px 0px; }
  body.detail .detail-header .left {
    width: calc(100% - 80px); }
    body.detail .detail-header .left ul {
      margin: 0px 0px -6px 0px; }
      body.detail .detail-header .left ul li {
        display: inline-block;
        margin: 0px 10px 6px 0px; }
        body.detail .detail-header .left ul li:last-child {
          margin: 0px 0px 0px 0px; }
        body.detail .detail-header .left ul li a {
          display: block;
          border-radius: 100px;
          padding: 6px 12px 6px 12px; }
          body.detail .detail-header .left ul li a.cat {
            background-color: #19254a;
            color: #fff; }
          body.detail .detail-header .left ul li a.tag {
            background-color: #f9f7f6; }
  body.detail .detail-header .right {
    width: 80px;
    text-align: right; }
    body.detail .detail-header .right em {
      font-style: normal; }
body.detail .main-img {
  margin: 0px 0px 40px 0px; }
  body.detail .main-img img {
    width: 100%;
    height: auto;
    border-radius: 10px; }
