@charset "UTF-8";
/*! Yaku Han JP v3.3.1 (OFL-1.1 AND MIT) by Qrac */
/*! Type: YakuHanJP - Based on Noto Sans CJK JP */
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("../fonts/YakuHanJP-Thin.eot");
  src: url("../fonts/YakuHanJP-Thin.woff2") format("woff2"), url("../fonts/YakuHanJP-Thin.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("../fonts/YakuHanJP-Light.eot");
  src: url("../fonts/YakuHanJP-Light.woff2") format("woff2"), url("../fonts/YakuHanJP-Light.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/YakuHanJP-DemiLight.eot");
  src: url("../fonts/YakuHanJP-DemiLight.woff2") format("woff2"), url("../fonts/YakuHanJP-DemiLight.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/YakuHanJP-Regular.eot");
  src: url("../fonts/YakuHanJP-Regular.woff2") format("woff2"), url("../fonts/YakuHanJP-Regular.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/YakuHanJP-Medium.eot");
  src: url("../fonts/YakuHanJP-Medium.woff2") format("woff2"), url("../fonts/YakuHanJP-Medium.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/YakuHanJP-Bold.eot");
  src: url("../fonts/YakuHanJP-Bold.woff2") format("woff2"), url("../fonts/YakuHanJP-Bold.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/YakuHanJP-Black.eot");
  src: url("../fonts/YakuHanJP-Black.woff2") format("woff2"), url("../fonts/YakuHanJP-Black.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}
/*
 *
 * variables
 *
 */
/*--------------------------------------------------------------------------
  breakpoint
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  size
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  animation
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  icon
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  font
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  easing
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  transition
---------------------------------------------------------------------------*/
/*
 *
 * mixin
 *
 */
/*--------------------------------------------------------------------------
  media
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  color
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  pseudo
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  hover-img
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  cf
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  font
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  pseudo
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  cf
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  math function
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
  icon vw()使用
---------------------------------------------------------------------------*/
/*
 *
 * reset
 *
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  vertical-align: top;
}

/*
 *
 * base
 *
 */
/*--------------------------------------------------------------------------
  html
---------------------------------------------------------------------------*/
html {
  -webkit-font-smoothing: antialiased;
}

/*--------------------------------------------------------------------------
   body
---------------------------------------------------------------------------*/
body {
  min-width: 320px;
  -webkit-text-size-adjust: 100%;
  overflow: auto;
  position: relative;
  font-size: 0.9375rem;
  font-family: "YakuHanJP", "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: normal;
  color: #0a0a0a;
  line-height: 1.5;
  text-size-adjust: 100%;
  -webkit-font-smoothing: subpixel-antialiased;
  background: #FFFFFF;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 3.4667vw;
  }
}

/*--------------------------------------------------------------------------
   base link
---------------------------------------------------------------------------*/
a {
  color: #0a0a0a;
  outline-color: #0c0d6a;
  text-decoration: none;
  word-break: break-word;
}
a:visited {
  outline: none;
}
@media screen and (min-width: 768px) {
  a:hover {
    color: #0c0d6a;
    text-decoration: underline;
  }
}
/*--------------------------------------------------------------------------
   form
---------------------------------------------------------------------------*/
input, select, textarea {
  outline-color: #0c0d6a;
}

/*--------------------------------------------------------------------------
  img
---------------------------------------------------------------------------*/
img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  img {
    width: 100%;
    max-width: none;
  }
}

/*
 *
 * layout
 *
 */
/*--------------------------------------------------------------------------
  l-page
---------------------------------------------------------------------------*/
.l-page {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .l-page {
    width: 100%;
  }
}

/*--------------------------------------------------------------------------
  l-contents
---------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .l-contents {
    padding-top: 14.5333vw;
  }
  .is-page--top .l-contents {
    padding-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .is-page--top .l-contents {
    padding-top: 20px;
  }
}

/*--------------------------------------------------------------------------
  l-inner
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .l-inner {
    max-width: 1440px;
    width: 100%;
    padding: 0 70px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .l-inner {
    padding-left: 6.9333vw;
    padding-right: 6.9333vw;
  }
}

@media screen and (min-width: 768px) {
  .l-inner-m {
    max-width: 1292px;
    width: 100%;
    padding: 0 70px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .l-inner-m {
    padding-left: 6.9333vw;
    padding-right: 6.9333vw;
  }
}

@media screen and (min-width: 768px) {
  .l-inner-s {
    max-width: 1148px;
    width: 100%;
    padding: 0 70px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .l-inner-s {
    padding-left: 6.9333vw;
    padding-right: 6.9333vw;
  }
}

@media screen and (max-width: 767px) {
  .l-inner-adjust-sp {
    margin-left: -3.8667vw;
    margin-right: -3.8667vw;
  }
}

/*--------------------------------------------------------------------------
  l-section
---------------------------------------------------------------------------*/
.l-section:nth-of-type(odd) {
  background: #f3f6f9;
}
@media screen and (min-width: 768px) {
  .l-section {
    padding-top: 120px;
    padding-bottom: 120px;
  }
  .c-page-header + .l-section {
    padding-top: 70px;
  }
}
@media screen and (max-width: 767px) {
  .l-section {
    padding-top: 13.8667vw;
    padding-bottom: 13.8667vw;
  }
  .c-page-header + .l-section {
    padding-top: 12vw;
  }
  .l-section#result {
    padding-top: 19.2vw;
  }
}

/*--------------------------------------------------------------------------
  l-header
---------------------------------------------------------------------------*/
.l-header {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
.l-header.is-open, .l-header.is-fixed {
  position: fixed;
  z-index: 1000;
}
.l-header.is-open {
  overflow: auto;
  height: 100%;
}
.l-header__btn-gnav span {
  transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.l-header__logo:before, .l-header__logo:after {
  position: absolute;
  content: "\ea09";
  font-family: "myfont", sans-serif;
  font-weight: normal;
  line-height: 1;
  font-size: 10px;
  transform: scale(0.5);
  color: #FFFFFF;
}
.l-header__logo:before {
  transform-origin: left bottom;
}
.is-page--top .l-header__logo:before {
  content: none;
}
.l-header__logo:after {
  transform-origin: right top;
}
@media screen and (min-width: 768px) {
  .l-header {
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .is-page--top .l-header {
    opacity: 1;
  }
  .l-header.is-active {
    opacity: 1;
  }
  .l-header.is-fixed .l-header__logo {
    background-color: transparent;
  }
  .l-header.is-fixed .l-header__logo:before, .l-header.is-fixed .l-header__logo:after {
    opacity: 0;
  }
  .l-header__logo {
    border-radius: 0 5px 5px 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2000;
    width: 302px;
    padding: 20px 0 0 20px;
    font-size: 1.0625rem;
    font-weight: bold;
    background-color: #FFFFFF;
  }
  .l-header__logo:before, .l-header__logo:after {
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    transform: scale(0.5);
  }
  .l-header__logo:before {
    bottom: 0;
    left: 20px;
    transform: rotate(90deg) scale(0.5);
  }
  .l-header__logo:after {
    top: 25px;
    right: -5px;
    transform: rotate(90deg) scale(0.5);
  }
  .l-header__logo a {
    display: flex;
    align-items: center;
    text-decoration: none;
    padding: 3px 0 16px 10px;
    height: 64px;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    color: #0a0a0a;
  }
  .l-header__logo a:hover {
    opacity: 0.6;
  }
  .l-header__logo img {
    width: 92px;
    margin-right: 14px;
  }
  .l-header__btn-entry {
    position: absolute;
    top: 34px;
    right: 98px;
    z-index: 2000;
    width: 163px;
    text-align: center;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.08);
  }
  .l-header__btn-entry a {
    display: flex;
    justify-content: center;
    height: 50px;
    line-height: 48px;
    border-radius: 3px;
    background: #ff7a0d;
    border: solid 1px #ff7a0d;
    color: #FFFFFF;
    font-weight: bold;
    text-decoration: none;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .l-header__btn-entry a:hover {
    background-color: #FFFFFF;
    color: #ff7a0d;
  }
  .l-header__btn-entry a > span {
    letter-spacing: 0.025em;
    position: relative;
  }
  .l-header__btn-entry a > span:after {
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 11px;
    padding-left: 10px;
  }
  .l-header__btn-gnav {
    position: absolute;
    top: 34px;
    right: 34px;
    z-index: 2000;
    margin-left: 14px;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.08);
  }
  .l-header__btn-gnav a {
    border-radius: 3px;
    display: flex;
    position: relative;
    width: 50px;
    height: 50px;
    background: #FFFFFF;
    padding: 16px 14px;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .l-header__btn-gnav a:hover {
    background: #0c0d6a;
  }
  .l-header__btn-gnav a:hover span {
    background: #FFFFFF;
  }
  .l-header__btn-gnav a span {
    display: block;
    position: absolute;
    left: 14px;
    width: 22px;
    height: 2px;
    background: #0c0d6a;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .l-header__btn-gnav a span:nth-child(1) {
    top: 16px;
  }
  .l-header__btn-gnav a span:nth-child(2) {
    top: 24px;
  }
  .l-header__btn-gnav a span:nth-child(3) {
    bottom: 16px;
  }
  .l-header__btn-gnav.is-active {
    z-index: 3000;
  }
  .l-header__btn-gnav.is-active span {
    left: 15px;
    width: 27px;
  }
  .l-header__btn-gnav.is-active span:nth-child(1) {
    top: 16px;
    transform-origin: left top;
    transform: rotate(38deg) translate(0%, 0);
  }
  .l-header__btn-gnav.is-active span:nth-child(2) {
    opacity: 0;
  }
  .l-header__btn-gnav.is-active span:nth-child(3) {
    bottom: 16px;
    transform: rotate(-38deg) translate(0%, 0);
    transform-origin: left bottom;
  }
}
@media screen and (max-width: 767px) {
  .l-header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
  }
  .l-header__inner {
    display: flex;
    justify-content: space-between;
    padding: 3.8667vw 3.8667vw 3.4667vw 2.8vw;
    background: #FFFFFF;
  }
  .l-header__logo {
    height: 9.3333vw;
    font-size: 2.9333vw;
    font-weight: bold;
    background: white;
  }
  .l-header__logo a {
    display: flex;
    align-items: center;
  }
  .l-header__logo img {
    width: 17.6vw;
    margin-right: 1.8667vw;
  }
  .l-header__btns {
    display: flex;
    align-items: center;
    position: relative;
  }
  .l-header__btn-entry {
    z-index: 2000;
    width: 26.6667vw;
    text-align: center;
  }
  .l-header__btn-entry a {
    display: block;
    height: 8.8vw;
    line-height: 8.8vw;
    border-radius: 0.6667vw;
    background: #ff7a0d;
    color: #FFFFFF;
    font-size: 2.9333vw;
    font-weight: bold;
    text-decoration: none;
  }
  .l-header__btn-entry a > span {
    position: relative;
  }
  .l-header__btn-entry a > span:after {
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
    padding-left: 1.3333vw;
  }
  .l-header__btn-gnav {
    margin-left: 3.4667vw;
    position: relative;
    z-index: 3000;
  }
  .l-header__btn-gnav a {
    display: flex;
    position: relative;
    width: 9.3333vw;
    height: 9.0667vw;
    background: #FFFFFF;
    padding: 1.2vw 1.0667vw;
    border-radius: 0.6667vw;
  }
  .l-header__btn-gnav a span {
    display: block;
    position: absolute;
    left: 1.0667vw;
    width: 7.2vw;
    height: 2px;
    background: #0c0d6a;
  }
  .l-header__btn-gnav a span:nth-child(1) {
    top: 2.4vw;
  }
  .l-header__btn-gnav a span:nth-child(2) {
    top: 4.2667vw;
  }
  .l-header__btn-gnav a span:nth-child(3) {
    bottom: 2.4vw;
  }
  .l-header__btn-gnav.is-active {
    position: fixed;
    top: 3.8667vw;
    right: 3.8667vw;
    z-index: 3000;
  }
  .l-header__btn-gnav.is-active span {
    left: 2.2667vw;
    width: 6.6667vw;
  }
  .l-header__btn-gnav.is-active span:nth-child(1) {
    top: 2.2667vw;
    transform-origin: left top;
    transform: rotate(39deg) translate(0%, 0);
  }
  .l-header__btn-gnav.is-active span:nth-child(2) {
    opacity: 0;
  }
  .l-header__btn-gnav.is-active span:nth-child(3) {
    bottom: 2.2667vw;
    transform: rotate(-39deg) translate(0%, 0);
    transform-origin: left bottom;
  }
}

/*--------------------------------------------------------------------------
  l-global-nav
---------------------------------------------------------------------------*/
.l-global-nav {
  opacity: 0;
  display: none;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 20px;
  z-index: 2000;
  background: #FFFFFF;
}
.l-header.is-open .l-global-nav {
  display: block;
  opacity: 1;
  visibility: visible;
}
@media screen and (min-width: 768px) {
  .l-global-nav {
    height: 100%;
    min-height: 700px;
  }
  .l-global-nav__inner-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0 126px;
    border-radius: 5px;
    background: #e1e9f2;
  }
  .l-global-nav__inner {
    display: flex;
    flex-direction: row-reverse;
    width: 100%;
    max-width: 1148px;
    margin: 0 auto;
  }
  .l-global-nav__main {
    width: 63.9373%;
    height: 100%;
    padding-left: 106px;
    font-weight: 500;
    font-size: 1.0625rem;
  }
  .l-global-nav__main ul {
    display: flex;
    flex-flow: column wrap;
    height: calc(7em + 294px);
    padding-right: 23px;
  }
  .l-global-nav__main ul li {
    margin: 21px 0;
    line-height: 1;
  }
  .l-global-nav__main ul li a {
    color: #444444;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    text-decoration: none;
  }
  .l-global-nav__main ul li a:hover {
    color: #0c0d6a;
  }
  .l-global-nav__sub {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    width: 36.0627%;
    min-height: 100%;
    min-width: 310px;
    padding-right: 100px;
    border-right: solid 1px #b6bdd7;
  }
  .l-global-nav__sub .logo {
    display: flex;
    align-items: center;
    width: 272px;
    font-size: 1.0625rem;
    font-weight: bold;
  }
  .l-global-nav__sub .logo img {
    width: 120px;
    margin-right: 16px;
  }
  .l-global-nav__sub .entry {
    width: 100%;
    max-width: 306px;
  }
  .l-global-nav__sub .entry a {
    letter-spacing: 0.025em;
    display: block;
    position: relative;
    padding: 0 30px;
    height: 68px;
    line-height: 68px;
    border-radius: 3px;
    color: #FFFFFF;
    font-weight: bold;
    text-decoration: none;
    background: #ff7a0d;
    border: solid 1px #ff7a0d;
    padding-right: 40px;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .l-global-nav__sub .entry a:hover {
    background: #FFFFFF;
    color: #ff7a0d;
  }
  .l-global-nav__sub .entry a:after {
    position: absolute;
    top: 50%;
    right: 22px;
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 12px;
    transform: translateY(-50%);
    padding-left: 10px;
  }
  .l-global-nav__sub .company {
    position: absolute;
    bottom: 15px;
    left: 23px;
    display: flex;
    font-size: 0.75rem;
  }
  .l-global-nav__sub .company li {
    margin-right: 24px;
  }
  .l-global-nav__sub .company li a {
    position: relative;
    color: #777777;
    text-decoration: none;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .l-global-nav__sub .company li a:hover {
    color: #0c0d6a;
  }
  .l-global-nav__sub .company li.blank a {
    padding-right: 20px;
  }
  .l-global-nav__sub .company li.blank a:after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 12px;
  }
}
@media screen and (max-width: 1439px) and (min-width: 768px) {
  .l-global-nav__inner-wrap {
    padding: 0 63px;
  }
  .l-global-nav__main {
    width: 60%;
    padding-left: 53px;
  }
  .l-global-nav__sub {
    display: flex;
    justify-content: space-between;
    width: 40%;
    padding-right: 53px;
  }
}
@media screen and (max-width: 1060px) and (min-width: 768px) {
  .l-global-nav__inner {
    flex-wrap: wrap;
  }
  .l-global-nav__main {
    order: 2;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  .l-global-nav__sub {
    display: flex;
    flex-wrap: initial;
    order: 1;
    width: 100%;
    border: none;
    margin-bottom: 13px;
    padding: 0 0 53px;
    border-bottom: solid 1px #b6bdd7;
  }
  .l-global-nav__sub .entry {
    margin-left: 10px;
    width: calc(100% - 327px);
  }
}
@media screen and (max-width: 767px) {
  .l-global-nav {
    padding: 1.6vw;
    overflow: auto;
  }
  .l-global-nav__inner-wrap {
    background: #e1e9f2;
    padding: 17.4667vw 8.5333vw 13.3333vw;
  }
  .l-global-nav__main {
    font-weight: 500;
    font-size: 3.7333vw;
  }
  .l-global-nav__main ul li {
    line-height: 1;
    border-bottom: solid 0.2667vw rgba(12, 13, 106, 0.1);
  }
  .l-global-nav__main ul li a {
    display: block;
    position: relative;
    padding: 6.1333vw 1.3333vw 6.1333vw 0;
    color: #444444;
    background-size: 6px auto;
  }
  .l-global-nav__main ul li a:after {
    position: absolute;
    top: 50%;
    right: 1.3333vw;
    transform: translateY(-50%);
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.9333vw;
    line-height: 2.9333vw;
  }
  .l-global-nav__sub .entry {
    margin-top: 12.2667vw;
  }
  .l-global-nav__sub .entry a {
    display: block;
    position: relative;
    padding: 0 6.6667vw;
    height: 17.3333vw;
    font-size: 3.4667vw;
    line-height: 17.3333vw;
    border-radius: 0.4vw;
    color: #FFFFFF;
    font-weight: bold;
    text-decoration: none;
    background: #ff7a0d;
    padding-right: 9.3333vw;
    background-size: 1.8667vw auto;
  }
  .l-global-nav__sub .entry a:after {
    position: absolute;
    top: 50%;
    right: 5.8667vw;
    transform: translateY(-50%);
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
  }
  .l-global-nav__sub .company {
    margin-top: 9.3333vw;
  }
  .l-global-nav__sub .company li {
    margin-top: 4vw;
    font-size: 3.2vw;
  }
  .l-global-nav__sub .company li a {
    display: inline-block;
    position: relative;
    color: #444444;
    padding-right: 5.6vw;
  }
  .l-global-nav__sub .company li.blank a:after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
  }
}

/*--------------------------------------------------------------------------
  l-footer
---------------------------------------------------------------------------*/
.l-footer {
  position: relative;
  background: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .l-footer {
    padding: 20px 20px 20px;
  }
  .l-footer--index {
    padding-top: 30px;
  }
  .l-footer__pagetop {
    margin-top: 15px;
  }
  .l-footer__pagetop a {
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    color: transparent;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .l-footer__pagetop a:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "\ea02";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 50px;
    transform: rotate(-90deg);
    color: #FFFFFF;
  }
  .l-footer__pagetop a:hover:before {
    color: #0c0d6a;
  }
  .l-footer__main {
    position: relative;
    border-radius: 5px;
    padding: 40px 0 63px 0;
    background: url("../images/common/bg-footer.jpg") no-repeat 50% 50%;
    background-size: cover;
  }
  .l-footer__main .l-inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .l-footer__main-inner {
    display: flex;
    justify-content: space-between;
  }
  .l-footer__logo {
    width: 76px;
  }
  .l-footer__logo img {
    width: 76px;
  }
  .l-footer__nav {
    display: flex;
  }
  .l-footer__nav ul {
    width: 282px;
  }
  .l-footer__nav li {
    margin-top: 18px;
    padding-right: 30px;
  }
  .l-footer__nav li a {
    position: relative;
    padding-left: 17px;
    line-height: 1;
    font-size: 0.875rem;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    text-decoration: none;
    color: #FFFFFF;
  }
  .l-footer__nav li a:before {
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    position: absolute;
    top: 0.35rem;
    left: 0;
  }
  .l-footer__nav li a:hover {
    color: #0c0d6a;
  }
  .l-footer__sub {
    display: flex;
    justify-content: space-between;
    padding: 27px 15px 7px 6px;
    font-size: 0.75rem;
  }
  .l-footer__copy {
    margin-top: 21px;
    color: #777777;
    font-size: 0.6875rem;
  }
  .l-footer__company {
    display: flex;
    position: absolute;
    bottom: -43px;
    left: 10px;
  }
  .l-footer__company li {
    margin-right: 24px;
  }
  .l-footer__company li a {
    position: relative;
    display: inline-block;
    color: #777777;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    text-decoration: none;
    font-size: 0.75rem;
  }
  .l-footer__company li a:hover {
    color: #0c0d6a;
  }
  .l-footer__company li.blank a {
    padding-right: 20px;
  }
  .l-footer__company li.blank a:after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 12px;
  }
}
@media screen and (max-width: 1120px) and (min-width: 768px) {
  .l-footer__nav ul {
    width: auto;
  }
}
@media screen and (max-width: 930px) and (min-width: 768px) {
  .l-footer__nav {
    flex-wrap: wrap;
  }
  .l-footer__nav ul {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-footer {
    position: relative;
    padding: 0 1.6vw;
  }
  .l-footer--index {
    padding-top: 2.1333vw;
  }
  .l-footer a {
    color: #FFFFFF;
  }
  .l-footer__pagetop {
    position: absolute;
    top: 7.2vw;
    right: 6.9333vw;
  }
  .l-footer__pagetop a {
    display: block;
    color: transparent;
    width: 9.7333vw;
    height: 9.7333vw;
  }
  .l-footer__pagetop a:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "\ea02";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 9.7333vw;
    line-height: 9.7333vw;
    transform: rotate(-90deg);
    color: #FFFFFF;
  }
  .l-footer__pagetop img {
    width: 9.7333vw;
  }
  .l-footer__logo img {
    width: 15.7333vw;
  }
  .l-footer__main {
    border-radius: 0.6667vw;
    padding: 4.5333vw 1.0667vw 8.5333vw;
    background: url("../images/common/bg-footer-sp.jpg") no-repeat 50% 50%;
    background-size: cover;
  }
  .l-footer__nav li {
    margin-top: 4.8vw;
  }
  .l-footer__nav li a {
    position: relative;
    padding-left: 4vw;
  }
  .l-footer__nav li a:before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
  }
  .l-footer__company {
    border-top: solid 0.2667vw rgba(255, 255, 255, 0.4);
    margin-top: 6.9333vw;
    padding-top: 3.4667vw;
    font-size: 3.2vw;
  }
  .l-footer__company li {
    margin-top: 3.7333vw;
  }
  .l-footer__company li a {
    position: relative;
    padding-right: 5.8667vw;
  }
  .l-footer__company li.blank a:after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
  }
  .l-footer__sub {
    display: flex;
    justify-content: space-between;
    padding: 5.0667vw 2.6667vw 5.3333vw;
  }
  .l-footer__copy {
    color: #777777;
    font-size: 2.6667vw;
  }
}

/*--------------------------------------------------------------------------
  l-breadcrumb
---------------------------------------------------------------------------*/
.l-breadcrumb br {
  display: none !important;
}
.l-breadcrumb ul {
  display: flex;
  flex-wrap: wrap;
}
.l-breadcrumb ul li {
  overflow: hidden;
  white-space: nowrap;
}
.l-breadcrumb ul li:last-child {
  text-overflow: ellipsis;
}
@media screen and (min-width: 768px) {
  .l-breadcrumb {
    padding: 20px 26px 0;
  }
  .l-breadcrumb ul {
    font-size: 0.8125rem;
  }
  .l-breadcrumb ul li {
    margin-right: 9px;
  }
  .l-breadcrumb ul li a {
    color: #0c0d6a;
  }
  .l-breadcrumb ul li:after {
    content: "/";
    padding-left: 11px;
  }
  .l-breadcrumb ul li:last-child:after {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .l-breadcrumb {
    padding: 3.2vw 7.2vw;
  }
  .l-breadcrumb ul {
    font-size: 3.2vw;
  }
  .l-breadcrumb ul li {
    margin-right: 1.0667vw;
    white-space: nowrap;
  }
  .l-breadcrumb ul li a {
    color: #0c0d6a;
  }
  .l-breadcrumb ul li:after {
    content: "/";
    padding-left: 0.5333vw;
  }
  .l-breadcrumb ul li:last-child:after {
    content: none;
  }
}

/*
 *
 * utility
 *
 */
/*--------------------------------------------------------------------------
  display
---------------------------------------------------------------------------*/
.u-sp {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .u-sp {
    display: block !important;
  }
}

@media screen and (max-width: 767px) {
  .u-pc {
    display: none !important;
  }
}

/*--------------------------------------------------------------------------
  position
---------------------------------------------------------------------------*/
.u-txt-c {
  text-align: center;
}

.u-txt-l {
  text-align: left;
}

.u-ta-r {
  text-align: right;
}

/*--------------------------------------------------------------------------
  bg
---------------------------------------------------------------------------*/
.u-bg-gray {
  background: #f3f6f9;
}

/*--------------------------------------------------------------------------
  link
---------------------------------------------------------------------------*/
.u-link a {
  display: inline-block;
  position: relative;
  color: #0c0d6a;
  text-decoration: none;
}
.u-link a:before {
  position: absolute;
  left: 0;
}
@media screen and (min-width: 768px) {
  .u-link a {
    padding-left: 13px;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .u-link a:before {
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    top: 0.6rem;
  }
  .u-link a:hover {
    color: #777777;
  }
  .u-link--blank a:after {
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    top: 0.6rem;
    padding-left: 6px;
  }
}
@media screen and (max-width: 767px) {
  .u-link a {
    padding-left: 4.8vw;
  }
  .u-link a:before {
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
    top: 0.3rem;
  }
  .u-link--blank a:after {
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
    top: 0.3rem;
    padding-left: 0.8vw;
  }
}

/*--------------------------------------------------------------------------
  em
---------------------------------------------------------------------------*/
.u-em-c {
  color: #0c0d6a;
}

.u-em-w {
  font-weight: bold;
}

/*--------------------------------------------------------------------------
 .js-appearance-in
---------------------------------------------------------------------------*/
.js-appearance-in.app-hide {
  opacity: 0;
  backface-visibility: hidden;
}
@media screen and (min-width: 768px) {
  .js-appearance-in.app-hide {
    transform: translateX(-60px);
  }
}
@media screen and (max-width: 767px) {
  .js-appearance-in.app-hide {
    transform: translateX(-4vw);
  }
}
.js-appearance-in.app-show {
  opacity: 1;
  transform: translateX(0);
  transition: opacity 1.2s cubic-bezier(0.165, 0.84, 0.44, 1), transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition-delay: 0.1s;
}
@media screen and (min-width: 768px) {
  .js-appearance-in.app-show.js-ap-delay2 {
    transition-delay: 0.2s;
  }
  .js-appearance-in.app-show.js-ap-delay3 {
    transition-delay: 0.3s;
  }
  .js-appearance-in.app-show.js-ap-delay4 {
    transition-delay: 0.4s;
  }
}

/*
 *
 * component
 *
 */
/*--------------------------------------------------------------------------
  c-img-txt
---------------------------------------------------------------------------*/
.c-img-txt {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.c-img-txt--reverse {
  flex-direction: row-reverse;
}
.c-img-txt--altop {
  align-items: flex-start;
}
.c-img-txt .img {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .c-img-txt .img {
    border-radius: 5px;
  }
}
@media screen and (max-width: 767px) {
  .c-img-txt .img {
    border-radius: 1.3333vw;
  }
}
@media screen and (max-width: 1279px) and (min-width: 768px) {
  .c-img-txt {
    flex-wrap: wrap;
  }
  .c-img-txt .img,
  .c-img-txt .txt-wrap {
    width: 100%;
    max-width: none;
  }
}
@media screen and (max-width: 767px) {
  .c-img-txt {
    flex-direction: column;
  }
  .c-img-txt--reverse-sp {
    flex-direction: column-reverse;
  }
}

/*--------------------------------------------------------------------------
.c-btn
---------------------------------------------------------------------------*/
.c-btn a, .c-btn input[type=submit],
.c-list-btn a,
.c-list-btn input[type=submit] {
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  position: relative;
  background: #0c0d6a;
  color: #FFFFFF;
  border-color: #FFFFFF;
  font-weight: bold;
  text-align: center;
  outline-color: #1d388f;
}
.c-btn span,
.c-list-btn span {
  display: inline-block;
  position: relative;
  color: #FFFFFF;
}
.c-btn--anchor a:before,
.c-list-btn--anchor a:before {
  transform: rotate(90deg);
}
.c-btn--white a, .c-btn--white input[type=submit],
.c-list-btn--white a,
.c-list-btn--white input[type=submit] {
  background-color: #FFFFFF;
  border-color: #0c0d6a;
  color: #0c0d6a;
}
.c-btn--gry a,
.c-list-btn--gry a {
  background-color: #f3f6f9;
  border-color: #f3f6f9;
  color: #0c0d6a;
}
.c-btn--gry a:before,
.c-list-btn--gry a:before {
  color: #0c0d6a !important;
}
.c-btn--orange a,
.c-list-btn--orange a {
  background-color: #ff7a0d;
  border-color: #ff7a0d;
  color: #FFFFFF;
}
.c-btn--orange a:before,
.c-list-btn--orange a:before {
  color: #FFFFFF !important;
}
.c-btn--green a,
.c-list-btn--green a {
  background-color: #0D8D1A;
  border-color: #0D8D1A;
  color: #FFFFFF;
}
.c-btn--green a:before,
.c-list-btn--green a:before {
  color: #FFFFFF !important;
}
@media screen and (min-width: 768px) {
  .c-btn a, .c-btn input[type=submit],
  .c-list-btn a,
  .c-list-btn input[type=submit] {
    align-items: center;
    border-radius: 3px;
    min-width: 290px;
    padding: 10px 48px 10px 28px;
    height: 68px;
    text-decoration: none;
    border-width: 1px;
    border-style: solid;
    font-size: 0.9375rem;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .c-btn a:hover, .c-btn input[type=submit]:hover,
  .c-list-btn a:hover,
  .c-list-btn input[type=submit]:hover {
    background-color: #FFFFFF;
    color: #0c0d6a;
    border-color: #0c0d6a;
  }
  .c-btn a:before, .c-btn span:before,
  .c-list-btn a:before,
  .c-list-btn span:before {
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 13px;
    display: block;
    position: absolute;
    right: 26px;
    top: 50%;
    margin-top: -6px;
    z-index: 10;
    color: #FFFFFF;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .c-btn a:hover:before, .c-btn span:hover:before,
  .c-list-btn a:hover:before,
  .c-list-btn span:hover:before {
    color: #0c0d6a;
  }
  .c-btn--white a:hover, .c-btn--white input[type=submit]:hover,
  .c-list-btn--white a:hover,
  .c-list-btn--white input[type=submit]:hover {
    background-color: #0c0d6a;
    color: #FFFFFF;
  }
  .c-btn--gry a:hover,
  .c-list-btn--gry a:hover {
    background-color: #0c0d6a;
    color: #f3f6f9;
  }
  .c-btn--gry a:hover:before,
  .c-list-btn--gry a:hover:before {
    color: #f3f6f9 !important;
  }
  .c-btn--orange a:hover,
  .c-list-btn--orange a:hover {
    border-color: #ff7a0d;
    background-color: #FFFFFF;
    color: #ff7a0d;
  }
  .c-btn--orange a:hover:before,
  .c-list-btn--orange a:hover:before {
    color: #ff7a0d !important;
  }
  .c-btn--green a:hover,
  .c-list-btn--green a:hover {
    border-color: #0D8D1A;
    background-color: #FFFFFF;
    color: #0D8D1A;
  }
  .c-btn--green a:hover:before,
  .c-list-btn--green a:hover:before {
    color: #0D8D1A !important;
  }
  .c-btn--blank a:before,
  .c-list-btn--blank a:before {
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 11px;
  }
  .c-btn--center a, .c-btn--center input[type=submit],
  .c-list-btn--center a,
  .c-list-btn--center input[type=submit] {
    padding-right: 48px;
    padding-left: 48px;
  }
  .c-btn--large a, .c-btn--large input[type=submit],
  .c-list-btn--large a,
  .c-list-btn--large input[type=submit] {
    width: 100%;
    height: 102px;
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 767px) {
  .c-btn a, .c-btn input[type=submit],
  .c-list-btn a,
  .c-list-btn input[type=submit] {
    border-radius: 1.3333vw;
    padding: 0 11.3333vw 0 6.6667vw;
    height: 17.3333vw;
    line-height: 17.3333vw;
    font-size: 3.4667vw;
    text-decoration: none;
    border-width: 0.2667vw;
  }
  .c-btn a:before, .c-btn span:before,
  .c-list-btn a:before,
  .c-list-btn span:before {
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.9333vw;
    line-height: 2.9333vw;
    display: block;
    position: absolute;
    right: 7.2vw;
    top: 50%;
    margin-top: -1.4667vw;
    z-index: 10;
  }
  .c-btn--blank a:before,
  .c-list-btn--blank a:before {
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
  }
  .c-btn--large a, .c-btn--large input[type=submit],
  .c-list-btn--large a,
  .c-list-btn--large input[type=submit] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    font-size: 4vw;
    height: 22.9333vw;
    line-height: 1.5;
  }
}

/*--------------------------------------------------------------------------
.c-btn-all
---------------------------------------------------------------------------*/
.c-btn-all a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: #0c0d6a;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .c-btn-all {
    margin-top: 60px;
  }
  .c-btn-all a {
    position: relative;
    border-radius: 5px;
    border: solid 1px #0c0d6a;
    height: 100px;
    font-size: 1.125rem;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .c-btn-all a:before {
    position: absolute;
    top: calc(50% - 10px);
    right: 40px;
    content: "\ea03";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 20px;
  }
  .c-btn-all a:hover {
    background-color: #0c0d6a;
    color: #FFFFFF;
  }
  .c-btn-all--blank a::before {
    top: calc(50% - 5px);
    right: 46px;
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 11px;
  }
}
@media screen and (max-width: 767px) {
  .c-btn-all {
    margin-top: 8.5333vw;
  }
  .c-btn-all a {
    border-radius: 0.6667vw;
    border: solid 0.2667vw #0c0d6a;
    height: 24.5333vw;
    padding-bottom: 5.8667vw;
    background: url("../images/common/icon-all-blu.svg") no-repeat 50% calc(100% - 6.4vw);
    background-size: 3.4667vw;
    font-size: 3.4667vw;
  }
  .c-btn-all--blank a {
    position: relative;
    background-image: none;
    height: 24.0773vw;
  }
  .c-btn-all--blank a::before {
    position: absolute;
    top: calc(100% - 8.2667vw);
    right: calc(50% - 2.1333vw);
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 11.5px;
  }
}

/*--------------------------------------------------------------------------
  c-title
---------------------------------------------------------------------------*/
.c-search-title {
  font-weight: bold;
  line-height: 1.5;
}
.c-search-title em {
  color: #0c0d6a;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .c-search-title {
    font-size: 2.125rem;
    margin-top: 74px;
    margin-bottom: 40px;
  }
  .c-search-title em {
    margin-right: 10px;
  }
}
@media screen and (max-width: 767px) {
  .c-search-title {
    font-size: 5.6vw;
    margin-top: 12vw;
    margin-bottom: 5.8667vw;
  }
  .c-search-title em {
    margin-right: 2.6667vw;
  }
}

.c-title-lv-1 {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c-title-lv-1 {
    font-size: 2.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .c-title-lv-1 {
    font-size: 8.5333vw;
  }
}

.c-title-lv-2 {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c-title-lv-2 {
    font-size: 1.875rem;
  }
  .c-title-lv-2--top {
    font-size: 2.125rem;
  }
}
@media screen and (max-width: 767px) {
  .c-title-lv-2 {
    font-size: 5.8667vw;
  }
}

.c-title-lv-2_v2 {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c-title-lv-2_v2 {
    font-size: 2.125rem;
  }
}
@media screen and (max-width: 767px) {
  .c-title-lv-2_v2 {
    font-size: 5.6vw;
  }
}

.c-title-lv-2_5 {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c-title-lv-2_5 {
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .c-title-lv-2_5 {
    font-size: 5.0667vw;
  }
}

.c-title-lv-3 {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c-title-lv-3 {
    font-size: 1.375rem;
  }
}
@media screen and (max-width: 767px) {
  .c-title-lv-3 {
    font-size: 4.2667vw;
  }
}

/*--------------------------------------------------------------------------
  c-section-header
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .c-section-header__label {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-size: 1.1875rem;
    color: #0c0d6a;
    letter-spacing: 0.05em;
  }
  .c-section-header__labelJa {
    font-size: 0.9375rem;
    color: #0c0d6a;
    font-weight: bold;
  }
  .c-section-header__title {
    margin-top: 6px;
  }
  .c-section-header--text {
    display: flex;
    align-items: center;
  }
  .c-section-header--text .txt {
    margin-left: 45px;
  }
}
@media screen and (max-width: 767px) {
  .c-section-header__label {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-size: 4vw;
    color: #0c0d6a;
    letter-spacing: 0.05em;
  }
  .c-section-header__labelJa {
    font-size: 3.4667vw;
    color: #0c0d6a;
    font-weight: bold;
  }
  .c-section-header__title {
    margin-top: 1.8667vw;
  }
  .c-section-header--text .txt {
    margin-top: 5.0667vw;
  }
}

/*--------------------------------------------------------------------------
  c-bg-font
---------------------------------------------------------------------------*/
.c-bg-font {
  position: absolute;
}
.c-bg-font--next {
  top: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .c-bg-font {
    right: -100%;
  }
  .c-bg-font--project-story {
    width: 2052px;
  }
  .c-bg-font--project {
    width: 2305px;
  }
  .c-bg-font--interview {
    width: 2656px;
  }
  .c-bg-font--top-message {
    width: 1546px;
  }
  .c-bg-font--recruit-message {
    width: 1032px;
  }
  .c-bg-font--slogan {
    width: 1116px;
  }
  .c-bg-font--office {
    width: 734px;
  }
  .c-bg-font--recruit {
    width: 916px;
  }
  .c-bg-font--next {
    right: -8px;
    top: -2px;
    width: 40.0694%;
  }
}
@media screen and (max-width: 767px) {
  .c-bg-font {
    right: -290%;
  }
  .c-bg-font--project-story {
    width: 227.0667vw;
  }
  .c-bg-font--project {
    width: 241.6vw;
  }
  .c-bg-font--interview {
    width: 289.2vw;
  }
  .c-bg-font--top-message {
    width: 163.7333vw;
  }
  .c-bg-font--recruit-message {
    width: 111.7333vw;
  }
  .c-bg-font--slogan {
    width: 106.4vw;
  }
  .c-bg-font--office {
    width: 74.5333vw;
  }
  .c-bg-font--recruit {
    width: 93.2vw;
  }
  .c-bg-font--next {
    right: -0.6667vw;
    width: 58.6667vw;
  }
}

/*--------------------------------------------------------------------------
  c-page-header
---------------------------------------------------------------------------*/
.c-page-header {
  position: relative;
  background-color: #FFFFFF;
  color: #FFFFFF;
}
.c-page-header .js-mask {
  overflow: hidden;
  width: 0;
  transition: width 0.9s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition-delay: 0.2s;
}
.c-page-header .js-mask.c-page-header__txt, .c-page-header .js-mask.info__name, .c-page-header .js-mask.info__txt {
  transition-delay: 0.4s;
}
.c-page-header .js-mask.is-active {
  width: 100%;
}
.c-page-header .js-mask span {
  display: block;
}
.c-page-header .js-mask span.mark {
  display: inline-block;
  width: auto;
  background: #FFFFFF;
  color: #0c0d6a;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-page-header .js-mask span.mark {
    font-size: 3.7333vw;
    padding: 0.5333vw 3.2vw 0.8vw;
    border-radius: 22.4vw;
    margin-bottom: 1.3333vw;
  }
}
@media screen and (min-width: 768px) {
  .c-page-header .js-mask span.mark {
    top: -5px;
    margin-left: 15px;
    font-size: 1.3125rem;
    border-radius: 84px;
    margin-right: 20px;
    padding: 7px 20px 8.5px 20px;
  }
}
.c-page-header__inner {
  background: #0c0d6a;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.c-page-header__numbering {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .c-page-header__numbering {
    margin-bottom: 15px;
    font-size: 1.1875rem;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header__numbering {
    margin-bottom: 3.4667vw;
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .c-page-header--about .c-page-header__txt.js-mask span {
    max-width: 730px;
  }
}
.c-page-header--training {
  padding-bottom: 0;
}
.c-page-header--project-detail .js-mask {
  display: block;
}
@media screen and (min-width: 768px) {
  .c-page-header--project-detail__label {
    margin-bottom: 20px;
    padding-top: 65px;
    font-size: 1.0625rem;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header--project-detail__label {
    margin-bottom: 3.4667vw;
    font-size: 3.4667vw;
  }
}
.c-page-header--project-detail__title {
  font-weight: bold;
  transition-delay: 0.4s !important;
}
@media screen and (min-width: 768px) {
  .c-page-header--project-detail__title {
    font-size: 2.3125rem;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header--project-detail__title {
    font-size: 6.9333vw;
  }
}
.c-page-header--interview-detail .js-mask {
  display: block;
}
@media screen and (min-width: 768px) {
  .c-page-header--interview-detail {
    padding-bottom: 20px;
  }
}
.c-page-header--interview-detail__title {
  color: #fff;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c-page-header--interview-detail__title {
    font-size: 2.3125rem;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header--interview-detail__title {
    font-size: 6.9333vw;
  }
}
.c-page-header--interview-detail .info {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c-page-header--interview-detail .info {
    margin-top: 15px;
    margin-bottom: -20px;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header--interview-detail .info {
    margin-top: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .c-page-header--interview-detail .info__name {
    margin-bottom: 15px;
    font-size: 1.1875rem;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header--interview-detail .info__name {
    flex: 0 0 auto;
    min-width: 17.3333vw;
    margin-bottom: 0.8vw;
    padding-right: 2.6667vw;
    font-size: 3.7333vw;
  }
  .c-page-header--interview-detail .info__name .js-mask span {
    min-width: 17.3333vw;
    width: auto;
  }
}
@media screen and (min-width: 768px) {
  .c-page-header--interview-detail .info__txt {
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header--interview-detail .info__txt {
    font-size: 3.4667vw;
  }
}
@media screen and (min-width: 768px) {
  .c-page-header--recruit-detail {
    height: 400px;
  }
  .c-page-header--recruit-detail .c-page-header__inner {
    height: 360px;
    background-image: var(--image-bg-pc, none);
  }
}
@media screen and (max-width: 767px) {
  .c-page-header--recruit-detail .c-page-header__inner {
    align-items: center;
    padding-bottom: 0;
    height: 52vw;
    background-image: var(--image-bg-sp, none);
  }
  .c-page-header--recruit-detail .c-page-header__inner .c-title-lv-1 {
    font-size: 6.9333vw;
  }
}
@media screen and (min-width: 768px) {
  .c-page-header--recruit-message .c-page-header__txt.js-mask span {
    max-width: 721px;
  }
}
@media screen and (min-width: 768px) {
  .c-page-header {
    padding: 20px;
  }
  .c-page-header .js-mask span {
    width: 65vw;
  }
  .c-page-header__inner {
    display: flex;
    align-items: center;
    border-radius: 10px;
    width: 100%;
    height: 515px;
  }
  .c-page-header--s .c-page-header__inner {
    height: 400px;
  }
  .c-page-header__txt {
    margin-top: 15px;
    font-size: 1.0625rem;
    line-height: 2;
    margin-bottom: -30px;
  }
  .c-page-header--about .c-page-header__inner {
    background-image: url("../images/about/kv.jpg");
  }
  .c-page-header--office .c-page-header__inner {
    background-image: url("../images/office/kv.jpg");
  }
  .c-page-header--data .c-page-header__inner {
    background-image: url("../images/data/kv.jpg");
  }
  .c-page-header--culture .c-page-header__inner {
    background-image: url("../images/culture/kv.jpg");
  }
  .c-page-header--training .c-page-header__inner {
    background-image: url("../images/training/kv.jpg");
  }
  .c-page-header--interview .c-page-header__inner {
    background-image: url("../images/interview/index/kv.jpg");
  }
  .c-page-header--top-message .c-page-header__inner {
    background-image: url("../images/top-message/kv.jpg");
  }
  .c-page-header--recruit-message .c-page-header__inner {
    background-image: url("../images/recruit-message/kv.jpg");
  }
  .c-page-header--faq .c-page-header__inner {
    background-image: url("../images/faq/kv.jpg");
  }
  .c-page-header--recruit .c-page-header__inner {
    background-image: url("../images/recruit/index/kv.jpg");
  }
  .c-page-header--fulltime-employee .c-page-header__inner {
    background-image: url("../images/fulltime-employee/kv.jpg");
  }
  .c-page-header--interview-kouno .c-page-header__inner {
    background-image: url("../images/interview/kouno/kv.jpg");
  }
  .c-page-header--interview-tamahoko .c-page-header__inner {
    background-image: url("../images/interview/tamahoko/kv.jpg");
  }
  .c-page-header--interview-orihara .c-page-header__inner {
    background-image: url("../images/interview/orihara/kv.jpg");
  }
  .c-page-header--interview-itagaki .c-page-header__inner {
    background-image: url("../images/interview/itagaki/kv.jpg");
  }
  .c-page-header--interview-aburaya .c-page-header__inner {
    background-image: url("../images/interview/aburaya/kv.jpg");
  }
  .c-page-header--interview-kuniyoshi .c-page-header__inner {
    background-image: url("../images/interview/kuniyoshi/kv.jpg");
  }
  .c-page-header--interview-abe .c-page-header__inner {
    background-image: url("../images/interview/abe/kv.jpg");
  }
  .c-page-header--interview-sakai .c-page-header__inner {
    background-image: url("../images/interview/sakai/kv.jpg");
  }
  .c-page-header--interview-sone .c-page-header__inner {
    background-image: url("../images/interview/sone/kv.jpg");
  }
  .c-page-header--interview-hirai .c-page-header__inner {
    background-image: url("../images/interview/hirai/kv.jpg");
  }
  .c-page-header--interview-tejima .c-page-header__inner {
    background-image: url("../images/interview/tejima/kv.jpg");
  }
  .c-page-header--interview-matsuoka .c-page-header__inner {
    background-image: url("../images/interview/matsuoka/kv.jpg");
  }
  .c-page-header--interview-yoshida .c-page-header__inner {
    background-image: url("../images/interview/yoshida/kv.jpg");
  }
  .c-page-header--interview-sato .c-page-header__inner {
    background-image: url("../images/interview/sato/kv.jpg");
  }
  .c-page-header--interview-asai .c-page-header__inner {
    background-image: url("../images/interview/asai/kv.jpg");
  }
  .c-page-header--interview-gohira .c-page-header__inner {
    background-image: url("../images/interview/gohira/kv.jpg");
  }
  .c-page-header--interview-shimizu .c-page-header__inner {
    background-image: url("../images/interview/shimizu/kv.jpg");
  }
  .c-page-header--interview-yokoe .c-page-header__inner {
    background-image: url("../images/interview/yokoe/kv.jpg");
  }
  .c-page-header--interview-nomata .c-page-header__inner {
    background-image: url("../images/interview/nomata/kv.jpg");
  }
  .c-page-header--project-minami .c-page-header__inner {
    background-image: url("../images/project/minami/kv.jpg");
  }
  .c-page-header--project-komukai .c-page-header__inner {
    background-image: url("../images/project/komukai/kv.jpg");
  }
  .c-page-header--project-ishii .c-page-header__inner {
    background-image: url("../images/project/ishii/kv.jpg");
  }
}
@media screen and (max-width: 767px) {
  .c-page-header {
    padding: 1.8667vw;
  }
  .c-page-header .js-mask span {
    width: 85.6vw;
  }
  .c-page-header--s .c-page-header__inner {
    height: 53.3333vw;
  }
  .c-page-header__inner {
    display: flex;
    align-items: flex-end;
    border-radius: 1.3333vw;
    width: 100%;
    padding-bottom: 9.0667vw;
    height: 99.4667vw;
  }
  .c-page-header__inner .l-inner-m {
    width: 100%;
    padding-right: 5.3333vw;
    padding-left: 5.3333vw;
  }
  .c-page-header__txt {
    margin-top: 3.4667vw;
    font-size: 3.4667vw;
    line-height: 6.1333vw;
  }
  .c-page-header--about .c-page-header__inner {
    background-image: url("../images/about/kv-sp.jpg");
  }
  .c-page-header--office .c-page-header__inner {
    background-image: url("../images/office/kv-sp.jpg");
  }
  .c-page-header--data .c-page-header__inner {
    background-image: url("../images/data/kv-sp.jpg");
  }
  .c-page-header--culture .c-page-header__inner {
    background-image: url("../images/culture/kv-sp.jpg");
  }
  .c-page-header--training .c-page-header__inner {
    background-image: url("../images/training/kv-sp.jpg");
  }
  .c-page-header--interview .c-page-header__inner {
    background-image: url("../images/interview/index/kv-sp.jpg");
  }
  .c-page-header--top-message .c-page-header__inner {
    background-image: url("../images/top-message/kv-sp.jpg");
  }
  .c-page-header--recruit-message .c-page-header__inner {
    background-image: url("../images/recruit-message/kv-sp.jpg");
  }
  .c-page-header--faq .c-page-header__inner {
    background-image: url("../images/faq/kv-sp.jpg");
  }
  .c-page-header--recruit .c-page-header__inner {
    background-image: url("../images/recruit/index/kv-sp.jpg");
  }
  .c-page-header--fulltime-employee .c-page-header__inner {
    background-image: url("../images/fulltime-employee/kv-sp.jpg");
  }
  .c-page-header--interview-kouno .c-page-header__inner {
    background-image: url("../images/interview/kouno/kv-sp.jpg");
  }
  .c-page-header--interview-tamahoko .c-page-header__inner {
    background-image: url("../images/interview/tamahoko/kv-sp.jpg");
  }
  .c-page-header--interview-orihara .c-page-header__inner {
    background-image: url("../images/interview/orihara/kv-sp.jpg");
  }
  .c-page-header--interview-itagaki .c-page-header__inner {
    background-image: url("../images/interview/itagaki/kv-sp.jpg");
  }
  .c-page-header--interview-aburaya .c-page-header__inner {
    background-image: url("../images/interview/aburaya/kv-sp.jpg");
  }
  .c-page-header--interview-kuniyoshi .c-page-header__inner {
    background-image: url("../images/interview/kuniyoshi/kv-sp.jpg");
  }
  .c-page-header--interview-abe .c-page-header__inner {
    background-image: url("../images/interview/abe/kv-sp.jpg");
  }
  .c-page-header--interview-sakai .c-page-header__inner {
    background-image: url("../images/interview/sakai/kv-sp.jpg");
  }
  .c-page-header--interview-sone .c-page-header__inner {
    background-image: url("../images/interview/sone/kv-sp.jpg");
  }
  .c-page-header--interview-hirai .c-page-header__inner {
    background-image: url("../images/interview/hirai/kv-sp.jpg");
  }
  .c-page-header--interview-tejima .c-page-header__inner {
    background-image: url("../images/interview/tejima/kv-sp.jpg");
  }
  .c-page-header--interview-matsuoka .c-page-header__inner {
    background-image: url("../images/interview/matsuoka/kv-sp.jpg");
  }
  .c-page-header--interview-yoshida .c-page-header__inner {
    background-image: url("../images/interview/yoshida/kv-sp.jpg");
  }
  .c-page-header--interview-sato .c-page-header__inner {
    background-image: url("../images/interview/sato/kv-sp.jpg");
  }
  .c-page-header--interview-asai .c-page-header__inner {
    background-image: url("../images/interview/asai/kv-sp.jpg");
  }
  .c-page-header--interview-gohira .c-page-header__inner {
    background-image: url("../images/interview/gohira/kv-sp.jpg");
  }
  .c-page-header--interview-shimizu .c-page-header__inner {
    background-image: url("../images/interview/shimizu/kv-sp.jpg");
  }
  .c-page-header--interview-yokoe .c-page-header__inner {
    background-image: url("../images/interview/yokoe/kv-sp.jpg");
  }
  .c-page-header--interview-nomata .c-page-header__inner {
    background-image: url("../images/interview/nomata/kv-sp.jpg");
  }
  .c-page-header--project-minami .c-page-header__inner {
    background-image: url("../images/project/minami/kv-sp.jpg");
  }
  .c-page-header--project-komukai .c-page-header__inner {
    background-image: url("../images/project/komukai/kv-sp.jpg");
  }
  .c-page-header--project-ishii .c-page-header__inner {
    background-image: url("../images/project/ishii/kv-sp.jpg");
  }
}

/*--------------------------------------------------------------------------
  c-recommend
---------------------------------------------------------------------------*/
.c-recommend {
  background-color: #dee6e9;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .c-recommend {
    padding: 55px 0 62px;
  }
  .c-recommend__title {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-size: 1.1875rem;
    color: #777777;
    letter-spacing: 0.05em;
  }
  .c-recommend__btn {
    margin-top: 15px;
  }
  .c-recommend__btn a {
    min-width: 520px;
    font-size: 1.0625rem;
  }
}
@media screen and (max-width: 767px) {
  .c-recommend {
    padding: 9.0667vw 0 10.6667vw;
  }
  .c-recommend__title {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-size: 4vw;
    color: #777777;
    letter-spacing: 0.05em;
  }
  .c-recommend__btn {
    margin-top: 3.4667vw;
  }
  .c-recommend__btn a {
    min-width: 100%;
  }
  .c-recommend__btn a:before {
    right: 4vw;
  }
}

/*--------------------------------------------------------------------------
 .c-empathy
---------------------------------------------------------------------------*/
.c-empathy {
  color: #ff7a0d;
  text-align: center;
}
.c-empathy--row {
  display: flex;
  align-items: center;
}
.c-empathy--row .c-empathy___label {
  text-align: right;
}
@media screen and (min-width: 768px) {
  .c-empathy--row .c-empathy___label {
    margin: 0 16px 5px 0;
  }
  .c-empathy--row .c-empathy___label span {
    padding: 5px 0;
    border-bottom: 1px solid;
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .c-empathy--row .c-empathy___label {
    margin: 0 4vw 0 0;
    padding-bottom: 1.3333vw;
    border-bottom: 1px solid;
  }
  .c-empathy--row .c-empathy___label.is-active {
    border-bottom: none;
  }
}
.c-empathy--row .c-empathy___label::before, .c-empathy--row .c-empathy___label::after {
  content: none;
}
.c-empathy--row .c-empathy___btn {
  display: block;
  padding-top: 0;
}
@media screen and (min-width: 768px) {
  .c-empathy--row .c-empathy___btn {
    width: 52px;
    height: 52px;
  }
}
.c-empathy--row .c-empathy___btn .mark {
  position: relative;
  padding-bottom: 0;
}
.c-empathy--row .c-empathy___btn .mark, .c-empathy--row .c-empathy___btn .mark::before, .c-empathy--row .c-empathy___btn .mark::after {
  background-size: 100% auto;
}
@media screen and (min-width: 768px) {
  .c-empathy--row .c-empathy___btn .mark, .c-empathy--row .c-empathy___btn .mark::before, .c-empathy--row .c-empathy___btn .mark::after {
    width: 52px;
    height: 52px;
  }
}
@media screen and (max-width: 767px) {
  .c-empathy--row .c-empathy___btn .mark, .c-empathy--row .c-empathy___btn .mark::before, .c-empathy--row .c-empathy___btn .mark::after {
    width: 12vw;
    height: 12vw;
  }
}
.c-empathy___label::before, .c-empathy___label::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  position: relative;
  display: inline-block;
  background: #ff7a0d;
}
.c-empathy___label::before {
  left: 0;
  transform: rotate(-35deg);
}
.c-empathy___label::after {
  right: 0;
  transform: rotate(35deg);
}
.c-empathy___btn {
  display: inline-block;
  color: #ff7a0d;
  letter-spacing: 0.075em;
  font-weight: bold;
  position: relative;
}
.c-empathy___btn .mark {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.c-empathy___btn .mark::before, .c-empathy___btn .mark::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: no-repeat 50% 0;
  position: absolute;
  top: 0;
  left: 0;
}
.c-empathy___btn .mark::before {
  background-image: url("../images/common/icon-heart.svg");
}
.c-empathy___btn .mark::after {
  opacity: 0;
  background-image: url("../images/common/icon-heart-on.svg");
}
.c-empathy___btn.is-disactive .mark {
  transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.c-empathy___btn.is-disactive .mark::before, .c-empathy___btn.is-disactive .mark::after {
  transition: opacity 0.6s cubic-bezier(0.19, 1, 0.22, 1), box-shadow 0.2s cubic-bezier(0.23, 1, 0.32, 1);
}
.c-empathy___btn.is-active, .c-empathy___btn.is-on {
  pointer-events: none;
}
.c-empathy___btn.is-active .mark, .c-empathy___btn.is-on .mark {
  transform: translateX(-50%) rotateY(180deg);
}
.c-empathy___btn.is-active .mark::before, .c-empathy___btn.is-on .mark::before {
  opacity: 0;
}
.c-empathy___btn.is-active .mark::after, .c-empathy___btn.is-on .mark::after {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .c-empathy {
    margin-top: 14.9333vw;
    font-size: 3.4667vw;
  }
  .c-empathy___label {
    margin-bottom: 2.9333vw;
  }
  .c-empathy___label::before, .c-empathy___label::after {
    width: 0.5333vw;
    height: 5.0667vw;
    top: 0.8vw;
  }
  .c-empathy___label::before {
    margin-right: 2.6667vw;
  }
  .c-empathy___label::after {
    margin-left: 2.6667vw;
  }
  .c-empathy___btn {
    font-size: 4vw;
    padding-top: 18.9333vw;
  }
  .c-empathy___btn .mark {
    width: 16vw;
    height: 16vw;
    padding-bottom: 1.3333vw;
    overflow: visible;
    box-sizing: content-box;
  }
  .c-empathy___btn .mark::before, .c-empathy___btn .mark::after {
    border-radius: 50%;
    width: 16vw;
    height: 16vw;
    background-size: 16vw auto;
    box-shadow: 0 0.4vw 0.9333vw 0 rgba(0, 0, 0, 0.05);
  }
}
@media screen and (min-width: 768px) {
  .c-empathy {
    margin-top: 85px;
    font-size: 0.9375rem;
  }
  .l-section .c-empathy {
    margin-bottom: -30px;
  }
  .c-empathy___label {
    margin-bottom: 12px;
  }
  .c-empathy___label::before, .c-empathy___label::after {
    top: 3px;
    width: 2px;
    height: 21px;
  }
  .c-empathy___label::before {
    margin-right: 12px;
  }
  .c-empathy___label::after {
    margin-left: 12px;
  }
  .c-empathy___btn {
    font-size: 1rem;
    padding-top: 80px;
  }
  .c-empathy___btn .mark {
    width: 70px;
    height: 70px;
    padding-bottom: 10px;
    overflow: visible;
    box-sizing: content-box;
  }
  .c-empathy___btn .mark::before, .c-empathy___btn .mark::after {
    border-radius: 50%;
    width: 70px;
    height: 70px;
    background-size: 70px auto;
    box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.05);
  }
  .c-empathy___btn:hover {
    text-decoration: none;
    color: #ff7a0d;
  }
  .c-empathy___btn:hover .mark {
    transform: scale(1.01) translateY(-2px) translateX(-50%);
    transition: transform 0.2s cubic-bezier(0.23, 1, 0.32, 1);
  }
  .c-empathy___btn:hover .mark::before, .c-empathy___btn:hover .mark::after {
    box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.1);
  }
}

/*--------------------------------------------------------------------------
  c-list-btn
---------------------------------------------------------------------------*/
.c-list-btn li a {
  justify-content: flex-start;
}
@media screen and (min-width: 768px) {
  .c-list-btn {
    margin-top: -2.6786%;
    display: flex;
    flex-wrap: wrap;
  }
  .c-list-btn li {
    box-shadow: 0px 0px 34px 0px rgba(3, 4, 34, 0.05);
    margin: 2.6786% 2.6786% 0 0;
    width: 31.5476%;
  }
  .c-list-btn li:nth-child(3n) {
    margin-right: 0;
  }
  .c-list-btn li a {
    min-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .c-list-btn {
    margin-top: 6.9333vw;
  }
  .c-list-btn li {
    margin-top: 2.6667vw;
    box-shadow: 0px 0px 2.6667vw 0px rgba(12, 13, 106, 0.05);
  }
  .c-list-btn li a {
    width: 100%;
    text-align: left;
  }
}

/*--------------------------------------------------------------------------
  c-page-lead
---------------------------------------------------------------------------*/
.c-page-lead {
  position: relative;
}
.c-page-lead .l-inner-s {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .c-page-lead .txt {
    margin-top: 30px;
    line-height: 2;
    font-size: 1.0625rem;
  }
}
@media screen and (max-width: 767px) {
  .c-page-lead {
    padding-bottom: 27.7333vw;
  }
  .c-page-lead .txt {
    margin-top: 5.0667vw;
    line-height: 2;
  }
}

/*--------------------------------------------------------------------------
 .c-next-article
---------------------------------------------------------------------------*/
.c-next-article {
  position: relative;
  z-index: 0;
  background: #f3f6f9;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .c-next-article {
    padding: 80px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .c-next-article {
    padding: 13.8667vw 0 0;
  }
}
@media screen and (min-width: 768px) {
  .c-next-article .c-section-header {
    margin-bottom: 5px;
    padding-left: 72px;
  }
  .c-next-article .c-section-header .c-title-lv-3 {
    font-size: 1.3125rem !important;
    margin-top: -2px;
  }
}
@media screen and (max-width: 767px) {
  .c-next-article .c-section-header {
    margin-bottom: 3.7333vw;
  }
  .c-next-article .c-section-header .c-title-lv-3 {
    margin-top: -0.5333vw;
  }
}

/*--------------------------------------------------------------------------
  c-keywords
---------------------------------------------------------------------------*/
.c-keywords {
  display: flex;
  flex-wrap: wrap;
}
.c-keywords li a, .c-keywords li span {
  background: #0c0d6a;
  color: #FFFFFF;
  font-weight: bold;
  display: block;
}
.c-keywords li a {
  color: #FFFFFF;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .c-keywords {
    margin-bottom: -6px;
  }
  .c-keywords li {
    font-size: 0.8125rem;
    margin-right: 6px;
    margin-bottom: 6px;
  }
  .c-keywords li a, .c-keywords li span {
    border-radius: 3px;
    padding: 5px 7px;
    border: solid 1px #0c0d6a;
    letter-spacing: 0.06em;
  }
  .c-keywords li a {
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .c-keywords li a:hover {
    background-color: #FFFFFF;
    color: #0c0d6a;
  }
}
@media screen and (max-width: 767px) {
  .c-keywords {
    margin-bottom: -1.3333vw;
  }
  .c-keywords li {
    font-size: 3.2vw;
    margin-right: 1.0667vw;
    margin-bottom: 1.3333vw;
  }
  .c-keywords li a, .c-keywords li span {
    border-radius: 0.8vw;
    padding: 1.0667vw 2.1333vw;
  }
}

/*--------------------------------------------------------------------------
  c-cv
---------------------------------------------------------------------------*/
.l-section + .c-cv {
  padding-top: 0;
}

@media screen and (min-width: 768px) {
  .c-cv {
    padding-top: 120px;
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 767px) {
  .c-cv {
    padding-top: 13.8667vw;
    padding-bottom: 8vw;
    padding-left: 1.6vw;
    padding-right: 1.6vw;
  }
}
.c-cv .inner {
  color: #FFFFFF;
  border-radius: 5px;
  background: no-repeat 50% 50%;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .c-cv .inner {
    background-image: url("../images/common/bg-cv-pc.png");
    padding: 70px 60px 70px 80px;
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 960px) and (min-width: 768px) {
  .c-cv .inner {
    display: block;
  }
  .c-cv .inner .content {
    width: 100%;
    max-width: none;
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .c-cv .inner {
    background-image: url("../images/common/bg-cv-sp.png");
    padding: 23.4667vw 6.9333vw;
  }
}
.c-cv .headline {
  font-weight: bold;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .c-cv .headline {
    font-size: 2rem;
    width: 375px;
  }
}
@media screen and (max-width: 767px) {
  .c-cv .headline {
    font-size: 5.8667vw;
  }
}
@media screen and (min-width: 768px) {
  .c-cv .content {
    width: calc(100% - 403px);
    max-width: 493px;
  }
}
@media screen and (max-width: 767px) {
  .c-cv .content {
    margin-top: 6.6667vw;
  }
}
.c-cv .content .text {
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .c-cv .content .text {
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .c-cv .content .text {
    font-size: 3.4667vw;
  }
}
@media screen and (min-width: 768px) {
  .c-cv .content .c-btn {
    margin-top: 32px;
  }
  .c-cv .content .c-btn a {
    font-size: 1.125rem;
    width: 100%;
    padding-top: 13px;
    padding-bottom: 13px;
    height: 75px;
  }
}
@media screen and (max-width: 767px) {
  .c-cv .content .c-btn {
    margin-top: 6.6667vw;
  }
  .c-cv .content .c-btn a {
    font-size: 4vw;
    width: 100%;
    height: 16.8vw;
    line-height: 16.8vw;
  }
}

/*--------------------------------------------------------------------------
  c-summary-section
---------------------------------------------------------------------------*/
.c-summary-section .txt {
  line-height: 2;
}
.c-summary-section .c-section-header__title {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .c-summary-section {
    padding-top: 90px;
  }
  .c-summary-section .image .img img {
    border-radius: 5px;
  }
  .c-summary-section .txt-wrap {
    padding-top: 90px;
    padding-left: 144px;
    padding-right: 144px;
  }
  .c-summary-section .txt-wrap .txt {
    margin-top: 30px;
  }
  .c-summary-section .txt-wrap .txt + .txt {
    margin-top: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
  .c-summary-section {
    padding-left: 72px;
    padding-right: 72px;
  }
}
@media screen and (min-width: 768px) and (max-width: 980px) {
  .c-summary-section {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .c-summary-section .image {
    margin-left: -6.9333vw;
    margin-right: -6.9333vw;
  }
  .c-summary-section .image .img img {
    border-radius: 0;
  }
  .c-summary-section .txt-wrap {
    padding-top: 13.8667vw;
  }
  .c-summary-section .txt-wrap .txt {
    margin-top: 3.4667vw;
  }
}

/*
 *
 * project
 *
 */
/*--------------------------------------------------------------------------
  p-index-news-modal
---------------------------------------------------------------------------*/
.p-index-news-modal {
  display: none;
}
.p-index-news-modal .btn-close {
  position: absolute;
  z-index: 10;
}
.p-index-news-modal .btn-close a {
  color: transparent;
}
.p-index-news-modal .btn-close a:before {
  position: absolute;
  top: 0;
  left: 0;
  color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .p-index-news-modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3000;
    width: 100%;
    height: 100%;
    overflow: auto;
    padding: 40px;
  }
  .p-index-news-modal .modal-inner {
    position: relative;
  }
  .p-index-news-modal ul {
    position: relative;
    z-index: 1;
  }
  .p-index-news-modal ul li {
    display: none;
    background: #FFFFFF;
    border-radius: 5px;
    padding: 90px 144px 90px;
  }
  .p-index-news-modal ul li a {
    color: #0c0d6a;
    text-decoration: underline;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-index-news-modal ul li a:hover {
    text-decoration: none;
  }
  .p-index-news-modal ul li.is-active {
    display: block;
  }
  .p-index-news-modal ul li .header {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
  }
  .p-index-news-modal ul li .header .label {
    font-size: 1.1875rem;
    margin-right: 28px;
    color: #0c0d6a;
  }
  .p-index-news-modal ul li .header .date {
    font-size: 1.125rem;
    color: #777777;
  }
  .p-index-news-modal ul li .header .c-title-lv-3 {
    margin-top: 10px;
  }
  .p-index-news-modal ul li .content {
    margin-top: 30px;
    padding-top: 20px;
    border-top: solid 1px #777777;
  }
  .p-index-news-modal ul li .content p {
    margin-top: 10px;
    line-height: 2;
  }
  .p-index-news-modal ul li .content p img {
    border-radius: 5px;
    margin: 33px 0;
  }
  .p-index-news-modal .btn-close {
    top: 0;
    right: 5px;
  }
  .p-index-news-modal .btn-close a {
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-index-news-modal .btn-close a:before {
    content: "\ea06";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 40px;
  }
  .p-index-news-modal .btn-close a:hover:before {
    color: #0c0d6a;
  }
  .p-index-news-modal .btn-close img {
    width: 40px;
  }
  .p-index-news-modal .bg {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(10, 10, 10, 0.3);
  }
}
@media screen and (max-width: 767px) {
  .p-index-news-modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3000;
    width: 100%;
    height: 100%;
    overflow: auto;
    padding: 16.8vw 3.0667vw 10.4vw;
  }
  .p-index-news-modal .modal-inner {
    position: relative;
    padding: 0;
  }
  .p-index-news-modal ul {
    position: relative;
    z-index: 1;
  }
  .p-index-news-modal ul li {
    display: none;
    background: #FFFFFF;
    border-radius: 0.6667vw;
    padding: 9.8667vw 5.6vw 10.6667vw;
  }
  .p-index-news-modal ul li a {
    color: #0c0d6a;
    text-decoration: underline;
  }
  .p-index-news-modal ul li.is-active {
    display: block;
  }
  .p-index-news-modal ul li .header {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
  }
  .p-index-news-modal ul li .header .label {
    margin-right: 3.8667vw;
    font-size: 4vw;
    color: #0c0d6a;
  }
  .p-index-news-modal ul li .header .date {
    font-size: 3.7333vw;
    color: #777777;
  }
  .p-index-news-modal ul li .header .c-title-lv-3 {
    margin-top: 2.4vw;
  }
  .p-index-news-modal ul li .content {
    margin-top: 4.8vw;
    padding-top: 2.9333vw;
    border-top: solid 0.2667vw #777777;
  }
  .p-index-news-modal ul li .content p {
    margin-top: 3.2vw;
    line-height: 2;
  }
  .p-index-news-modal ul li .content img {
    border-radius: 0.6667vw;
    margin: 4vw 0;
  }
  .p-index-news-modal .btn-close {
    top: -12vw;
    right: 0;
    width: 9.3333vw;
    height: 9.3333vw;
  }
  .p-index-news-modal .btn-close a:before {
    content: "\ea06";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 9.3333vw;
    line-height: 9.3333vw;
  }
  .p-index-news-modal .bg {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(10, 10, 10, 0.3);
  }
}

/*--------------------------------------------------------------------------
  p-index-mv
---------------------------------------------------------------------------*/
.p-index-mv {
  width: 100%;
}
.p-index-mv__inner {
  background: no-repeat 50% 50%;
  background-size: cover;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-index-mv__inner {
    background-attachment: fixed;
  }
}
@media screen and (min-width: 768px) {
  .p-index-mv__inner {
    background-image: url("../images/index/bg-mv.jpg");
  }
}
@media screen and (max-width: 767px) {
  .p-index-mv__inner {
    background-image: url("../images/index/bg-mv-sp.jpg");
  }
}

/*--------------------------------------------------------------------------
  p-index-mv-catchcopy
---------------------------------------------------------------------------*/
@keyframes slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@keyframes kvLineTween {
  0% {
    height: 0%;
    transform: translateY(0);
  }
  40% {
    height: 0%;
    transform: translateY(0);
  }
  100% {
    height: 100%;
    transform: translateY(30px);
  }
}
.p-index-mv-catchcopy {
  position: relative;
  height: 100svh;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .p-index-mv-catchcopy {
    height: calc(100svh - 20px);
  }
}
@media screen and (min-width: 768px) and (max-height: 650px) {
  .p-index-mv-catchcopy {
    height: auto;
  }
}
.p-index-mv-catchcopy:after {
  content: "";
  display: block;
  position: absolute;
  top: -10%;
  left: 0;
  width: 100%;
  height: 120%;
  background: no-repeat 100% 0;
  background-image: url("../images/index/bg-mv-stripe.png");
  background-size: auto 100%;
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy:after {
    background-image: url("../images/index/bg-mv-stripe-sp.png");
  }
}
.p-index-mv-catchcopy__slider {
  opacity: 0;
  position: relative;
  z-index: 10;
  margin-top: min(7.4306vw, 107px);
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__slider {
    margin-top: 0;
    padding-top: 100px;
  }
}
.p-index-mv-catchcopy__slider .slides {
  display: flex;
  gap: 30px;
  width: min-content;
  animation: slide 80s linear infinite;
}
.p-index-mv-catchcopy__slider .slides .slide {
  width: clamp(384px, 33.3333vw, 480px);
  flex-shrink: 0;
  border-radius: 5px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__slider .slides .slide {
    width: 56vw;
    border-radius: 1.3333vw;
  }
}
.p-index-mv-catchcopy__text {
  position: relative;
  z-index: 20;
  top: clamp(-82px, -5.6944vw, -69.7px);
  left: min(9.6528vw, 139px);
  width: 100vw;
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__text {
    top: 0;
    left: 6.6667vw;
    padding-top: 60px;
    padding-bottom: 90px;
  }
}
.p-index-mv-catchcopy__text .inner {
  max-width: 1440px;
  margin: 0 auto;
}
.p-index-mv-catchcopy__text img {
  height: 100%;
}
.p-index-mv-catchcopy__text .js-mask {
  display: block;
  width: 0;
  overflow: hidden;
  transition: width 0.6s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.p-index-mv-catchcopy__text .js-mask.is-active {
  width: 100%;
}
.p-index-mv-catchcopy__text .label {
  width: clamp(204.6px, 23.6806vw, 341px);
}
.p-index-mv-catchcopy__text .label img {
  width: clamp(204.6px, 23.6806vw, 341px);
  max-width: none;
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__text .label {
    width: 50.6667vw;
  }
  .p-index-mv-catchcopy__text .label img {
    width: 50.6667vw;
  }
}
.p-index-mv-catchcopy__text .copy {
  margin-top: 34px;
  width: clamp(328.8px, 38.0556vw, 548px);
}
.p-index-mv-catchcopy__text .copy .js-mask {
  transition-delay: 0.2s;
}
.p-index-mv-catchcopy__text .copy img {
  width: clamp(328.8px, 38.0556vw, 548px);
  max-width: none;
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__text .copy {
    width: 86.4vw;
    margin-top: 18.5px;
  }
  .p-index-mv-catchcopy__text .copy img {
    width: 86.4vw;
  }
}
.p-index-mv-catchcopy__scroll {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  color: #FFFFFF;
  font-size: 0.9375rem;
  font-style: italic;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;
  opacity: 0;
  transition: opacity 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__scroll {
    font-size: 2.9333vw;
  }
}
.p-index-mv-catchcopy__scroll.is-active {
  opacity: 1;
}
.p-index-mv-catchcopy__scroll .txt, .p-index-mv-catchcopy__scroll .line {
  display: block;
}
.p-index-mv-catchcopy__scroll .line {
  overflow: hidden;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  margin-top: 12px;
  width: 1px;
  height: 30px;
  background: rgba(255, 255, 255, 0.5);
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__scroll .line {
    width: 0.2667vw;
    height: 8vw;
    margin-top: 1.8667vw;
  }
}
.p-index-mv-catchcopy__scroll .line span {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 9px;
  background: #FFFFFF;
  transform: translateX(0);
  animation-duration: 1200ms;
  animation-name: kvLineTween;
  transition-timing-function: linear;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  animation-iteration-count: infinite;
}
@media screen and (max-width: 767px) {
  .p-index-mv-catchcopy__scroll .line span {
    width: 0.2667vw;
    height: 2.4vw;
  }
}

/*--------------------------------------------------------------------------
  p-index-mv-message
---------------------------------------------------------------------------*/
.p-index-mv-message {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-index-mv-message {
    padding-bottom: 100px;
  }
}
.p-index-mv-message .txt-wrap {
  color: #FFFFFF;
  line-height: 2.1;
  font-size: 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-index-mv-message .txt-wrap {
    margin-top: -100px;
  }
}
.p-index-mv-message .txt-wrap .text {
  text-align: center;
  opacity: 0;
}
@media screen and (min-width: 768px) {
  .p-index-mv-message .txt-wrap .text {
    transform: translateY(20px);
  }
}
@media screen and (max-width: 767px) {
  .p-index-mv-message .txt-wrap .text {
    transform: translateY(5.3333vw);
  }
}
.p-index-mv-message .txt-wrap .text.is-active {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1), transform 1.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition-delay: 0.2s;
}
.p-index-mv-message .txt-wrap .text + .text {
  margin-top: 45px;
}
@media screen and (min-width: 768px) {
  .p-index-mv-message .txt-wrap {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    word-break: keep-all;
  }
}
@media screen and (max-width: 767px) {
  .p-index-mv-message .txt-wrap {
    font-size: 0.875rem;
    padding: min(56vw, 330px) 0;
  }
}
.p-index-mv-message .bg-images {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-index-mv-message .bg-images {
    max-height: 838px;
    position: relative;
    overflow: hidden;
  }
}
.p-index-mv-message .bg-images .image {
  opacity: 0;
  position: absolute;
  width: 100%;
  transition: opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1), transform 1.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.p-index-mv-message .bg-images .image img {
  display: none;
}
.p-index-mv-message .bg-images .image:nth-child(1) {
  z-index: 5;
}
.p-index-mv-message .bg-images .image:nth-child(2) {
  z-index: 4;
}
.p-index-mv-message .bg-images .image:nth-child(3) {
  z-index: 3;
}
.p-index-mv-message .bg-images .image:nth-child(4) {
  z-index: 2;
}
.p-index-mv-message .bg-images .image:nth-child(5) {
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-index-mv-message .bg-images .image {
    top: 0;
    left: 50%;
    height: 100%;
    min-width: 1000px;
    max-width: 1595px;
    transform: translateX(-50%) translateY(10px);
  }
  .p-index-mv-message .bg-images .image img.pc {
    display: block;
  }
  .p-index-mv-message .bg-images .image:first-child {
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .p-index-mv-message .bg-images .image {
    transform: translateX(-50%) translateY(2.6667vw);
    position: absolute;
    left: 50%;
  }
  .p-index-mv-message .bg-images .image img.sp {
    display: block;
  }
  .p-index-mv-message .bg-images .image:nth-child(1), .p-index-mv-message .bg-images .image:nth-child(2) {
    top: 0;
  }
  .p-index-mv-message .bg-images .image:nth-child(3), .p-index-mv-message .bg-images .image:nth-child(4), .p-index-mv-message .bg-images .image:nth-child(5) {
    bottom: 0;
  }
}
.p-index-mv-message .bg-images .image.is-active {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/*--------------------------------------------------------------------------
  p-index-news
---------------------------------------------------------------------------*/
.p-index-news ul li {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.p-index-news ul li a {
  position: relative;
  display: block;
}
.p-index-news ul li a:before {
  position: absolute;
  color: #777777;
}
.p-index-news ul li.is-current {
  position: relative;
  opacity: 1;
  pointer-events: auto;
}
@media screen and (min-width: 768px) {
  .p-index-news {
    width: 500px;
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 21px 24px 27px;
    border-radius: 5px 0 0 0;
    background: #FFFFFF;
    z-index: 10;
    line-height: 1;
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .p-index-news.is-active {
    opacity: 1;
  }
  .p-index-news:before, .p-index-news:after {
    position: absolute;
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    transform: scale(0.5);
    color: #FFFFFF;
  }
  .p-index-news:before {
    transform-origin: left bottom;
    bottom: 20px;
    left: 0;
    transform: rotate(-90deg) scale(0.5);
  }
  .p-index-news:after {
    transform-origin: right top;
    top: -5px;
    right: 25px;
    transform: rotate(-90deg) scale(0.5);
  }
  .p-index-news .inner {
    display: flex;
    align-items: center;
  }
  .p-index-news p {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    padding-right: 18px;
    border-right: solid 1px #bbbbbb;
    color: #0c0d6a;
    font-size: 1rem;
    width: 62px;
  }
  .p-index-news ul {
    position: relative;
    width: calc(100% - 62px);
  }
  .p-index-news ul li {
    width: 100%;
  }
  .p-index-news ul li a {
    padding: 0 18px;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    text-decoration: none;
  }
  .p-index-news ul li a span {
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-index-news ul li a:before {
    top: 0;
    right: 3px;
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
  }
  .p-index-news ul li a:hover {
    color: #0c0d6a;
  }
  .p-index-news ul li a:hover:before,
  .p-index-news ul li a:hover span {
    color: #0c0d6a;
  }
  .p-index-news ul li .data {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    color: #777777;
    margin-right: 9px;
  }
  .p-index-news ul li .ttl {
    font-size: 0.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-index-news {
    overflow: hidden;
    border-radius: 1.3333vw;
    background: #FFFFFF;
    box-shadow: 0px 0px 9.0667vw 0px rgba(0, 0, 0, 0.1);
    width: 96.2667vw;
    margin: 6.4vw auto 6.9333vw;
    padding: 4.2667vw 6.6667vw;
  }
  .p-index-news .inner {
    overflow: hidden;
  }
  .p-index-news p {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    color: #0c0d6a;
  }
  .p-index-news ul {
    position: relative;
    margin-top: 2.4vw;
  }
  .p-index-news ul li {
    width: 82.9333vw;
    white-space: nowrap;
  }
  .p-index-news ul li a:before {
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    content: "\ea01";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.1333vw;
    line-height: 2.1333vw;
  }
  .p-index-news ul li .data {
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    color: #777777;
    margin-right: 2.6667vw;
  }
  .p-index-news ul li .ttl {
    font-size: 3.2vw;
  }
}

/*--------------------------------------------------------------------------
  p-index-search-box
---------------------------------------------------------------------------*/
.p-index-search-box {
  background-color: #0c0d6a;
  border-radius: 5px;
}
@media screen and (min-width: 768px) {
  .p-index-search-box {
    margin: 0 20px;
    padding: 36px 0;
  }
}
@media screen and (max-width: 767px) {
  .p-index-search-box {
    margin: 0 1.8667vw;
    padding: 2.6667vw 4.8vw 4vw;
  }
}
.p-index-search-box .inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .p-index-search-box .inner {
    max-width: 867px;
    width: 90%;
  }
}

@media screen and (min-width: 768px) {
  .p-index-search-form form {
    display: flex;
    align-items: center;
  }
}
.p-index-search-form .label {
  color: #FFFFFF;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-index-search-form .label {
    font-size: 1rem;
    margin-right: 64px;
  }
}
@media screen and (max-width: 767px) {
  .p-index-search-form .label {
    display: block;
    font-size: 3.2vw;
    margin-bottom: 1.6vw;
  }
}
.p-index-search-form select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: right center;
  background-color: #FFFFFF;
  border: solid 1px #cccccc;
  color: #cccccc;
  transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  transition-duration: 80ms;
  width: 100%;
}
.p-index-search-form select option {
  color: #0c0d6a;
}
.p-index-search-form select::-ms-expand {
  display: none;
}
.p-index-search-form select.is-selected {
  color: #0c0d6a;
  border-color: #0c0d6a;
}
@media screen and (max-width: 767px) {
  .p-index-search-form select {
    font-size: 3.4667vw;
    border-radius: 0.8vw;
    padding: 0 11.7333vw 0 4vw;
    height: 50px;
    line-height: 50px;
  }
}
@media screen and (min-width: 768px) {
  .p-index-search-form select {
    font-size: 0.875rem;
    border-radius: 3px;
    padding: 16px 44px 13px 15px;
  }
}
.p-index-search-form .select-wrap {
  position: relative;
}
.p-index-search-form .select-wrap::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: url("../images/common/icon-select-arrow-gray.svg") no-repeat 50% 50%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .p-index-search-form .select-wrap {
    display: inline-block;
    width: 61.6vw;
  }
  .p-index-search-form .select-wrap::after {
    right: 5.3333vw;
    width: 2.6667vw;
    height: 1.6vw;
    background-size: 2.6667vw 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .p-index-search-form .select-wrap {
    width: 53.7486%;
    max-width: 466px;
    margin-right: 12px;
  }
  .p-index-search-form .select-wrap::after {
    right: 15px;
    width: 14px;
    height: 7px;
    background-size: 14px 7px;
  }
}
.p-index-search-form .c-btn {
  display: inline-block;
}
.p-index-search-form .c-btn span {
  color: rgba(12, 13, 106, 0.4);
}
.p-index-search-form .c-btn span::before {
  color: rgba(12, 13, 106, 0.4);
  right: 20px;
}
.p-index-search-form .c-btn input {
  background: #bbbbbb;
  color: rgba(12, 13, 106, 0.4);
}
@media screen and (max-width: 767px) {
  .p-index-search-form .c-btn {
    margin-left: 2.1333vw;
    vertical-align: top;
    width: 21.6vw;
  }
  .p-index-search-form .c-btn span {
    display: block;
  }
}
.p-index-search-form .c-btn.is-disable {
  cursor: not-allowed;
  opacity: 0.8;
}
.p-index-search-form .c-btn.is-disable input {
  pointer-events: none;
}
.p-index-search-form input[type=submit] {
  cursor: pointer;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
@media screen and (max-width: 767px) {
  .p-index-search-form input[type=submit] {
    width: 100%;
    height: 50px;
    line-height: 50px;
    border-radius: 0.8vw;
  }
}
@media screen and (min-width: 768px) {
  .p-index-search-form input[type=submit] {
    max-width: 128px;
    min-width: auto;
    height: 47px;
    font-size: 0.875rem;
    padding: 10px 38px 10px 20px;
  }
}

/*--------------------------------------------------------------------------
  p-index-top-message / p-index-who-we-are
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-index-top-message__main .c-section-header__title,
  .p-index-who-we-are__main .c-section-header__title {
    margin-top: 45px;
  }
}
.p-index-top-message__main .img,
.p-index-who-we-are__main .img {
  position: relative;
  overflow: visible;
}
.p-index-top-message__main .img img,
.p-index-who-we-are__main .img img {
  position: relative;
  z-index: 10;
  overflow: hidden;
}
.p-index-top-message__main .img:before, .p-index-top-message__main .img:after,
.p-index-who-we-are__main .img:before,
.p-index-who-we-are__main .img:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}
.p-index-top-message__main .img:before,
.p-index-who-we-are__main .img:before {
  background-color: rgba(203, 207, 212, 0.2);
}
.p-index-top-message__main .img:after,
.p-index-who-we-are__main .img:after {
  background-color: rgba(219, 229, 240, 0.2);
}
@media screen and (min-width: 768px) {
  .p-index-top-message__main .img,
  .p-index-who-we-are__main .img {
    max-width: 636px;
    width: 49.0741%;
  }
  .p-index-top-message__main .img img, .p-index-top-message__main .img:before, .p-index-top-message__main .img:after,
  .p-index-who-we-are__main .img img,
  .p-index-who-we-are__main .img:before,
  .p-index-who-we-are__main .img:after {
    border-radius: 5px;
  }
  .p-index-top-message__main .img:before,
  .p-index-who-we-are__main .img:before {
    top: -41px;
    left: -40px;
  }
  .p-index-top-message__main .img:after,
  .p-index-who-we-are__main .img:after {
    bottom: -41px;
    right: -40px;
  }
}
@media screen and (max-width: 767px) {
  .p-index-top-message__main .img,
  .p-index-who-we-are__main .img {
    width: 86.9333vw;
  }
  .p-index-top-message__main .img img, .p-index-top-message__main .img:before, .p-index-top-message__main .img:after,
  .p-index-who-we-are__main .img img,
  .p-index-who-we-are__main .img:before,
  .p-index-who-we-are__main .img:after {
    border-radius: 1.3333vw;
  }
  .p-index-top-message__main .img:before,
  .p-index-who-we-are__main .img:before {
    top: -5.3333vw;
    left: -4.5333vw;
  }
  .p-index-top-message__main .img:after,
  .p-index-who-we-are__main .img:after {
    bottom: -4.2667vw;
    right: -4.5333vw;
  }
}
@media screen and (max-width: 767px) {
  .p-index-top-message__main .txt-wrap,
  .p-index-who-we-are__main .txt-wrap {
    background: #FFFFFF;
    margin: 13.0667vw -6.9333vw 4.2667vw;
    padding: 0 6.9333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-index-top-message__main .txt-wrap h2,
  .p-index-who-we-are__main .txt-wrap h2 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .p-index-top-message__main .txt-wrap h2,
  .p-index-who-we-are__main .txt-wrap h2 {
    font-size: 5.8667vw;
  }
}
.p-index-top-message__main .txt-wrap .txt,
.p-index-who-we-are__main .txt-wrap .txt {
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-index-top-message__main .txt-wrap .txt,
  .p-index-who-we-are__main .txt-wrap .txt {
    margin-top: 30px;
    font-size: 0.9375rem;
  }
  .p-index-top-message__main .txt-wrap .txt + .txt,
  .p-index-who-we-are__main .txt-wrap .txt + .txt {
    margin-top: 7px;
  }
}
@media screen and (max-width: 767px) {
  .p-index-top-message__main .txt-wrap .txt,
  .p-index-who-we-are__main .txt-wrap .txt {
    margin-top: 8vw;
  }
  .p-index-top-message__main .txt-wrap .txt + .txt,
  .p-index-who-we-are__main .txt-wrap .txt + .txt {
    margin-top: 1.3333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-index-top-message__main .txt-wrap .c-btn,
  .p-index-who-we-are__main .txt-wrap .c-btn {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .p-index-top-message__main .txt-wrap .c-btn,
  .p-index-who-we-are__main .txt-wrap .c-btn {
    margin-top: 8vw;
  }
}
@media screen and (max-width: 1280px) and (min-width: 981px) {
  .p-index-top-message .c-section-header__title br,
  .p-index-who-we-are .c-section-header__title br {
    display: none;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-index-top-message .p-index-top-message__main,
  .p-index-top-message .p-index-who-we-are__main,
  .p-index-who-we-are .p-index-top-message__main,
  .p-index-who-we-are .p-index-who-we-are__main {
    flex-wrap: wrap;
  }
  .p-index-top-message .p-index-top-message__main .txt-wrap,
  .p-index-top-message .p-index-who-we-are__main .txt-wrap,
  .p-index-who-we-are .p-index-top-message__main .txt-wrap,
  .p-index-who-we-are .p-index-who-we-are__main .txt-wrap {
    margin-top: 100px;
    padding: 0;
  }
  .p-index-top-message .p-index-top-message__main .txt-wrap,
  .p-index-top-message .p-index-top-message__main .txt,
  .p-index-top-message .p-index-top-message__main .img,
  .p-index-top-message .p-index-top-message__main .c-btn,
  .p-index-top-message .p-index-who-we-are__main .txt-wrap,
  .p-index-top-message .p-index-who-we-are__main .txt,
  .p-index-top-message .p-index-who-we-are__main .img,
  .p-index-top-message .p-index-who-we-are__main .c-btn,
  .p-index-who-we-are .p-index-top-message__main .txt-wrap,
  .p-index-who-we-are .p-index-top-message__main .txt,
  .p-index-who-we-are .p-index-top-message__main .img,
  .p-index-who-we-are .p-index-top-message__main .c-btn,
  .p-index-who-we-are .p-index-who-we-are__main .txt-wrap,
  .p-index-who-we-are .p-index-who-we-are__main .txt,
  .p-index-who-we-are .p-index-who-we-are__main .img,
  .p-index-who-we-are .p-index-who-we-are__main .c-btn {
    width: 100%;
    max-width: none !important;
  }
}

/*--------------------------------------------------------------------------
  p-index-top-message
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-index-top-message__main {
    padding-top: 91px;
  }
  .p-index-top-message__main .txt-wrap {
    max-width: 578px;
    width: 44.5988%;
  }
  .p-index-top-message__main .txt-wrap .txt {
    max-width: 493px;
  }
  .p-index-top-message__main .txt-wrap .txt .name {
    font-size: 1.1875rem;
    font-weight: bold;
    margin-left: 10px;
  }
  .p-index-top-message__main .txt-wrap .c-btn {
    max-width: 502px;
  }
  .p-index-top-message__main .txt-wrap .c-btn a {
    height: 75px;
  }
}
@media screen and (max-width: 767px) {
  .p-index-top-message {
    padding: 16.5333vw 0 0;
  }
  .p-index-top-message__main .txt .name {
    font-weight: bold;
    margin-left: 1.6vw;
  }
  .p-index-top-message__main .c-btn a {
    height: 16.8vw;
  }
}

/*--------------------------------------------------------------------------
  p-index-who-we-are
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-index-who-we-are__main {
    padding-top: 146px;
    padding-bottom: 145px;
  }
  .p-index-who-we-are__main .txt-wrap {
    max-width: 590px;
    width: 43.5185%;
    padding-left: 73px;
  }
  .p-index-who-we-are__sub {
    padding: 80px 0 105px;
    background: #f3f6f9;
  }
  .p-index-who-we-are__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .p-index-who-we-are__list .item {
    margin-top: 2.0472%;
    width: 48.9969%;
  }
  .p-index-who-we-are__list .item a {
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.1);
    display: flex;
    height: 100%;
    background-color: #FFFFFF;
    text-decoration: none;
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-index-who-we-are__list .item a:hover {
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.4);
    transform: translate(0, -6px);
  }
  .p-index-who-we-are__list .item a:hover .img:before {
    opacity: 1;
  }
  .p-index-who-we-are__list .item a:hover .txt {
    color: #0a0a0a;
  }
  .p-index-who-we-are__list .item .img {
    width: 31.4961%;
    padding-top: 31.4961%;
    background-position: 0 50%;
    background-size: cover;
    position: relative;
  }
  .p-index-who-we-are__list .item .img:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(12, 13, 106, 0.4);
    opacity: 0;
    z-index: 1;
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-index-who-we-are__list .item.item01 .img {
    background-image: url("../images/index/img-who-we-are-2.jpg");
  }
  .p-index-who-we-are__list .item.item02 .img {
    background-image: url("../images/index/img-who-we-are-3.jpg");
  }
  .p-index-who-we-are__list .item.item03 .img {
    background-image: url("../images/index/img-who-we-are-4.jpg");
  }
  .p-index-who-we-are__list .item.item04 .img {
    background-image: url("../images/index/img-who-we-are-5.jpg");
  }
  .p-index-who-we-are__list .item .txt-wrap {
    width: 68.5039%;
    display: flex;
    flex-wrap: wrap;
    padding: 10px 40px;
    align-items: center;
  }
  .p-index-who-we-are__list .item h3 {
    font-size: 1.3125rem;
    font-weight: bold;
    color: #0c0d6a;
  }
  .p-index-who-we-are__list .item .txt {
    margin-top: 10px;
    width: 100%;
    line-height: 1.8;
  }
  .p-index-who-we-are__message {
    margin-top: 86px;
    max-width: 1292px;
    align-items: flex-start;
  }
  .p-index-who-we-are__message .img {
    max-width: 502px;
    width: 43.5764%;
    padding-top: 6px;
  }
  .p-index-who-we-are__message .txt-wrap {
    max-width: 606px;
    width: 52.6042%;
  }
  .p-index-who-we-are__message .txt-wrap .c-section-header__title {
    margin-top: 9px;
  }
  .p-index-who-we-are__message .txt-wrap .txt {
    margin-top: 30px;
    font-size: 0.9375rem;
    line-height: 2;
  }
  .p-index-who-we-are__message .txt-wrap .c-btn a {
    width: auto;
    height: 75px;
    margin-top: 30px;
    padding-right: 46px;
    padding-left: 26px;
  }
}
@media screen and (max-width: 767px) {
  .p-index-who-we-are {
    padding: 3.7333vw 0 0;
  }
  .p-index-who-we-are__main {
    padding-top: 17.3333vw;
    padding-bottom: 14.6667vw;
  }
  .p-index-who-we-are__sub {
    background: #f3f6f9;
    padding-bottom: 17.0667vw;
  }
  .p-index-who-we-are__list {
    padding-top: 14.1333vw;
    padding-bottom: 17.3333vw;
    margin: 0 -3.8667vw;
  }
  .p-index-who-we-are__list .item {
    margin-top: 2.6667vw;
  }
  .p-index-who-we-are__list .item a {
    position: relative;
    display: block;
    border-radius: 0.6667vw;
    box-shadow: 0 0 4.5333vw 0 rgba(0, 0, 0, 0.1);
    background-color: #FFFFFF;
    padding: 5.6vw;
  }
  .p-index-who-we-are__list .item .img {
    border-radius: 0.6667vw;
    position: absolute;
    top: 6.6667vw;
    left: 5.6vw;
    display: block;
    width: 36.5333vw;
    height: 36.5333vw;
    background-position: 0 50%;
    background-size: cover;
  }
  .p-index-who-we-are__list .item.item01 .img {
    background-image: url("../images/index/img-who-we-are-2.jpg");
  }
  .p-index-who-we-are__list .item.item02 .img {
    background-image: url("../images/index/img-who-we-are-3.jpg");
  }
  .p-index-who-we-are__list .item.item03 .img {
    background-image: url("../images/index/img-who-we-are-4.jpg");
  }
  .p-index-who-we-are__list .item.item04 .img {
    background-image: url("../images/index/img-who-we-are-5.jpg");
  }
  .p-index-who-we-are__list .item h3 {
    display: flex;
    align-items: center;
    margin: 0 0 0 36.5333vw;
    min-height: 36.5333vw;
    font-size: 4.2667vw;
    font-weight: bold;
    color: #0c0d6a;
    text-align: center;
    justify-content: center;
  }
  .p-index-who-we-are__list .item .txt {
    margin-top: 5.0667vw;
    width: 100%;
    line-height: 1.8;
  }
  .p-index-who-we-are__message .txt-wrap {
    margin-top: 11.7333vw;
  }
  .p-index-who-we-are__message .txt-wrap .txt {
    margin-top: 6.4vw;
    line-height: 2;
  }
  .p-index-who-we-are__message .txt-wrap .c-btn {
    margin-top: 5.0667vw;
  }
  .p-index-who-we-are__message .txt-wrap .c-btn a {
    height: 16.8vw;
  }
}

/*--------------------------------------------------------------------------
  p-index-project
---------------------------------------------------------------------------*/
.p-index-project {
  position: relative;
}
.p-index-project__inner .c-section-header {
  position: relative;
  z-index: 10;
}
.p-index-project__inner .txt {
  line-height: 2;
}
.p-index-project .c-bg-font {
  top: 0;
}
.p-index-project .c-bg-font span {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-index-project {
    padding: 93px 0;
  }
  .p-index-project__inner {
    position: relative;
    z-index: 1;
    max-width: 1292px;
    padding: 0 70px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-index-project__inner .c-section-header {
    margin-bottom: 30px;
  }
  .p-index-project__slider {
    margin: 45px 0 0;
  }
  .p-index-project__slider .inner {
    position: relative;
  }
  .p-index-project__slider .prev,
  .p-index-project__slider .next {
    position: absolute;
    top: clamp(100px, 13vw, 218px);
  }
  .p-index-project__slider .prev a,
  .p-index-project__slider .next a {
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    text-decoration: none;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    border-radius: 50%;
  }
  .p-index-project__slider .prev a:hover,
  .p-index-project__slider .next a:hover {
    background-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0px 0px 12px 0px rgba(12, 13, 106, 0.5);
  }
  .p-index-project__slider .prev a:before,
  .p-index-project__slider .next a:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "\ea02";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 50px;
    color: #0c0d6a;
  }
  .p-index-project__slider .prev {
    left: 50%;
    transform: translateX(max(-30vw - 65px, -497px));
  }
  .p-index-project__slider .prev a::before {
    transform: rotate(-180deg);
  }
  .p-index-project__slider .next {
    right: 50%;
    transform: translateX(min(30vw + 65px, 497px));
  }
  .p-index-project__slider .list {
    display: flex;
    position: relative;
    left: 50%;
    width: 6000px;
  }
  .p-index-project__slider .list li {
    width: 62.7778vw;
    max-width: 904px;
    padding-right: 40px;
    opacity: 0.5;
    transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  }
  .p-index-project__slider .list li.is-current {
    opacity: 1;
  }
  .p-index-project__slider .list li.is-current .txt-wrap {
    opacity: 1;
    transition-delay: 0.35s;
    transition-duration: 0.4s;
  }
  .p-index-project__slider .list li a {
    display: block;
    position: relative;
    text-decoration: none;
  }
  .p-index-project__slider .list li a:hover .img:before {
    opacity: 1;
  }
  .p-index-project__slider .list li .img {
    position: relative;
    overflow: hidden;
    border-radius: 5px;
  }
  .p-index-project__slider .list li .img:before {
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(12, 13, 106, 0.4);
    opacity: 0;
  }
  .p-index-project__slider .list li .img img {
    max-width: none;
  }
  .p-index-project__slider .list li .txt-wrap {
    opacity: 0;
    transition: opacity 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition-delay: 0s;
    border-radius: 0 5px 0 0;
    position: relative;
    left: -1px;
    margin-top: -108px;
    padding: 20px 30px 10px 1px;
    background: #FFFFFF;
    width: 70.2546%;
    z-index: 1;
  }
  .p-index-project__slider .list li .txt-wrap:after {
    content: "";
    display: block;
    position: absolute;
    color: #FFFFFF;
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    transform: scale(0.5);
    transform-origin: right bottom;
    top: 98px;
    right: -5px;
  }
  .p-index-project__slider .list li .txt-wrap .label {
    font-size: 0.8125rem;
    line-height: 2;
    margin-bottom: 10px;
  }
  .p-index-project__slider .list li .txt-wrap .catchcopy {
    color: #0c0d6a;
    font-size: 1.1875rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .p-index-project__slider .list li .txt-wrap .catchcopy br.detail {
    display: none !important;
  }
  .p-index-project__slider .list li .txt-wrap .profile {
    margin-top: 13px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 16px;
  }
  .p-index-project__slider .list li .txt-wrap .profile .position {
    font-size: 0.8125rem;
    line-height: 2;
  }
  .p-index-project__slider .list li .txt-wrap .profile .name {
    font-size: 1.1875rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .p-index-project .c-bg-font {
    top: -0.5556vw;
  }
}
@media screen and (max-width: 767px) {
  .p-index-project {
    overflow: hidden;
    padding: 17.0667vw 0 9.6vw;
  }
  .p-index-project__inner {
    padding: 0 6.9333vw;
  }
  .p-index-project__inner .c-section-header {
    margin-bottom: 5.0667vw;
  }
  .p-index-project__slider {
    margin: 7.2vw 0 0;
  }
  .p-index-project__slider .inner {
    position: relative;
    margin-bottom: 4.8vw;
  }
  .p-index-project__slider .prev,
  .p-index-project__slider .next {
    position: absolute;
    top: 25.6vw;
    z-index: 10;
  }
  .p-index-project__slider .prev a,
  .p-index-project__slider .next a {
    position: relative;
    display: block;
    width: 6.6667vw;
    height: 6.6667vw;
  }
  .p-index-project__slider .prev a:before,
  .p-index-project__slider .next a:before {
    color: #0c0d6a;
    position: absolute;
    top: 0;
    left: 0;
    content: "\ea02";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 6.6667vw;
    line-height: 6.6667vw;
  }
  .p-index-project__slider .prev {
    left: 2.4vw;
  }
  .p-index-project__slider .prev a::before {
    transform: rotate(-180deg);
  }
  .p-index-project__slider .next {
    right: 2.4vw;
  }
  .p-index-project__slider .list {
    display: flex;
    top: 0;
    left: 0;
    width: 400vw;
    margin-left: -82.6667vw;
  }
  .p-index-project__slider .list li {
    width: 89.3333vw;
    padding-right: 2.6667vw;
    opacity: 0.5;
    transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  }
  .p-index-project__slider .list li.is-current {
    opacity: 1;
  }
  .p-index-project__slider .list li a {
    display: block;
    position: relative;
  }
  .p-index-project__slider .list li .img {
    width: 100%;
    border-top-left-radius: 1.3333vw;
    border-top-right-radius: 1.3333vw;
    overflow: hidden;
  }
  .p-index-project__slider .list li img {
    width: 100%;
    max-width: none;
  }
  .p-index-project__slider .list li .txt-wrap {
    position: relative;
    border-radius: 0 0.6667vw 0.6667vw 0;
    padding: 5.0667vw 2.6667vw 0 0;
    margin-top: -9.0667vw;
    background: #FFFFFF;
    margin-right: 2.6667vw;
    z-index: 1;
  }
  .p-index-project__slider .list li .txt-wrap:after {
    content: "";
    display: block;
    position: absolute;
    color: #FFFFFF;
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    transform: scale(0.5);
    transform-origin: right bottom;
    top: 6.4vw;
    right: -5px;
  }
  .p-index-project__slider .list li .txt-wrap p {
    color: #0a0a0a;
    line-height: 6.1333vw;
  }
  .p-index-project__slider .list li .txt-wrap .label {
    font-size: 0.8125rem;
    line-height: 2;
    margin-bottom: 1.6vw;
  }
  .p-index-project__slider .list li .txt-wrap .catchcopy {
    color: #0c0d6a;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .p-index-project__slider .list li .txt-wrap .profile {
    margin-top: 5.0667vw;
  }
  .p-index-project__slider .list li .txt-wrap .profile .position {
    display: block;
    font-size: 0.8125rem;
    line-height: 2;
  }
  .p-index-project__slider .list li .txt-wrap .profile .name {
    display: block;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .p-index-project .c-bg-font {
    top: -0.5333vw;
  }
}

/*--------------------------------------------------------------------------
  p-index-interview
---------------------------------------------------------------------------*/
.p-index-interview .c-bg-font {
  top: 0;
}
.p-index-interview .c-bg-font span {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-index-interview {
    position: relative;
    padding: 94px 0 0;
  }
  .p-index-interview__inner {
    position: relative;
    z-index: 1;
    max-width: 1292px;
    padding: 0 70px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-index-interview__inner .c-section-header {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .p-index-interview {
    position: relative;
    padding: 16vw 0 0;
  }
  .p-index-interview__inner {
    position: relative;
    z-index: 1;
    padding: 0 6.9333vw;
  }
  .p-index-interview__inner .c-section-header {
    margin-bottom: 6.9333vw;
  }
}

/*--------------------------------------------------------------------------
  p-project-index-lead
---------------------------------------------------------------------------*/
.p-project-index-lead {
  position: relative;
}
.p-project-index-lead .l-inner-s {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-project-index-lead {
    padding: 94px 0 124px;
  }
  .p-project-index-lead .txt {
    margin-top: 30px;
    line-height: 2;
    font-size: 1.0625rem;
  }
  .p-project-index-lead .c-bg-font {
    bottom: -3px;
    right: -8px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-index-lead {
    padding: 15.4667vw 0 22.6667vw;
  }
  .p-project-index-lead .c-bg-font {
    right: -3.2vw;
    bottom: -1.0667vw;
  }
}

/*--------------------------------------------------------------------------
  p-project-index-list
---------------------------------------------------------------------------*/
.p-project-index-list {
  background-color: #f2f6f9;
}
@media screen and (min-width: 768px) {
  .p-project-index-list {
    padding: 118px 0 136px;
  }
  .p-project-index-list__item {
    margin-top: 19px;
  }
  .p-project-index-list__item:first-child {
    margin-top: 0;
  }
  .p-project-index-list__item a {
    overflow: hidden;
    border-radius: 5px;
    display: flex;
    text-decoration: none;
    background-color: #FFFFFF;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.1);
    min-height: 308px;
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    color: #0a0a0a;
  }
  .p-project-index-list__item a:hover {
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.4);
    transform: translate(0, -5px);
  }
  .p-project-index-list__item a:hover .img:before {
    opacity: 1;
  }
  .p-project-index-list__item .img {
    width: 47.5282%;
    position: relative;
    display: block;
    min-height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 0;
  }
  .p-project-index-list__item .img:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(12, 13, 106, 0.4);
    opacity: 0;
    z-index: 1;
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-project-index-list__item .txt-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 56px;
    width: 52.4718%;
  }
  .p-project-index-list__item .txt-wrap .txt {
    margin-top: 18px;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .p-project-index-list {
    padding: 11.3333vw 0 24.4vw;
  }
  .p-project-index-list__item {
    margin: 2.5333vw 0 0;
  }
  .p-project-index-list__item a {
    overflow: hidden;
    display: block;
    border-radius: 0.6667vw;
    background-color: #FFFFFF;
    box-shadow: 0px 0px 4.5333vw 0px rgba(12, 13, 106, 0.1);
  }
  .p-project-index-list__item .img {
    display: block;
    height: 52.5333vw;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 0;
  }
  .p-project-index-list__item .txt-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 6.9333vw 5.8667vw 8.6667vw;
  }
  .p-project-index-list__item .txt-wrap .c-title-lv-3 {
    color: #0c0d6a;
  }
  .p-project-index-list__item .txt-wrap .c-title-lv-3 br {
    display: none !important;
  }
  .p-project-index-list__item .txt-wrap .txt {
    margin-top: 3.2vw;
    line-height: 2;
  }
}

/*--------------------------------------------------------------------------
  p-culture-index-section
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-culture-index-section {
    margin-top: 90px;
  }
  .p-culture-index-section:first-of-type {
    margin-top: 0;
  }
  .p-culture-index-section .img {
    width: 47.1813%;
  }
  .p-culture-index-section .txt-wrap {
    width: 47.1813%;
  }
  .p-culture-index-section .txt-wrap .txt {
    margin-top: 30px;
    line-height: 2;
  }
  .p-culture-index-section .txt-wrap .txt + .txt {
    margin-top: 15px;
  }
}
@media screen and (max-width: 900px) and (min-width: 768px) {
  .p-culture-index-section .c-img-txt {
    flex-wrap: wrap;
  }
  .p-culture-index-section .c-img-txt .img,
  .p-culture-index-section .c-img-txt .txt-wrap {
    width: 100%;
    max-width: none;
  }
  .p-culture-index-section .c-img-txt .txt-wrap {
    margin-top: 45px;
  }
}
@media screen and (max-width: 767px) {
  .p-culture-index-section {
    margin-top: 12.8vw;
  }
  .p-culture-index-section:first-of-type {
    margin-top: 0;
  }
  .p-culture-index-section .img {
    margin-top: 6.6667vw;
  }
  .p-culture-index-section .txt-wrap .txt {
    margin-top: 5.3333vw;
    line-height: 2;
  }
  .p-culture-index-section .txt-wrap .txt + .txt {
    margin-top: 4.5333vw;
  }
}

.p-culture-index-corporate {
  padding-bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-culture-index-corporate {
    padding-top: 90px;
  }
  .p-culture-index-corporate .p-culture-index-section .c-img-txt .img {
    width: 30.5291%;
    max-width: 352px;
  }
  .p-culture-index-corporate .p-culture-index-section .c-img-txt .txt-wrap {
    width: 63.8335%;
  }
}

/*--------------------------------------------------------------------------
  p-culture-award
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-culture-award {
    margin-top: 45px;
  }
}
@media screen and (max-width: 767px) {
  .p-culture-award {
    margin-top: 6.9333vw;
  }
}
.p-culture-award__inner {
  background-color: #f3f6f9;
}
@media screen and (min-width: 768px) {
  .p-culture-award__inner {
    padding: 60px 144px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1292px) and (min-width: 768px) {
  .p-culture-award__inner {
    padding-right: 72px;
    padding-left: 72px;
  }
}
@media screen and (max-width: 767px) {
  .p-culture-award__inner {
    margin-left: -3.46665vw;
    margin-right: -3.46665vw;
    padding: 8.5333vw 3.4667vw;
  }
}
.p-culture-award__movie {
  width: 100%;
}
.p-culture-award__movie .video iframe {
  width: 100%;
}
.p-culture-award__movie figcaption {
  color: #777777;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-culture-award__movie {
    margin-top: 30px;
  }
  .p-culture-award__movie .video iframe {
    height: 486px;
    border-radius: 5px;
  }
  .p-culture-award__movie figcaption {
    font-size: 0.9375rem;
    margin-top: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-culture-award__movie {
    margin-top: 5.3333vw;
  }
  .p-culture-award__movie .video iframe {
    height: 49.6vw;
    border-radius: 1.3333vw;
  }
  .p-culture-award__movie figcaption {
    font-size: 3.4667vw;
    margin-top: 0.8vw;
  }
}
.p-culture-award .txt {
  color: #0a0a0a;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-culture-award .txt {
    margin-top: 30px;
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-culture-award .txt {
    margin-top: 5.0667vw;
    font-size: 3.4667vw;
  }
}

/*--------------------------------------------------------------------------
  p-data-list
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-data-list {
    display: grid;
    display: -ms-grid;
    grid-gap: 2.8472vw;
    gap: 2.8472vw;
    grid-template: "box1  box2" auto "box3  box3" auto "box4  box5" auto "box4  box6" auto "box7  box7" auto/1fr 1fr;
    -ms-grid-columns: 1fr 2.7778vw 1fr;
    -ms-grid-rows: auto 2.7778vw auto 2.7778vw auto 2.7778vw auto;
  }
  .p-data-list li {
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.05);
    overflow: hidden;
    border-radius: 5px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    height: 15.9722vw;
    max-height: 230px;
    color: transparent;
  }
  .p-data-list li:nth-child(1) {
    grid-area: box1;
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    background-image: url("../images/data/img-1.png");
  }
  .p-data-list li:nth-child(2) {
    grid-area: box2;
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    background-image: url("../images/data/img-2.png");
  }
  .p-data-list li:nth-child(3) {
    grid-area: box3;
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    background-image: url("../images/data/img-3.png");
    height: 34.3056vw;
    max-height: 494px;
  }
  .p-data-list li:nth-child(4) {
    grid-area: box4;
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-row-span: 3;
    background-image: url("../images/data/img-4.png");
    height: 46.4583vw;
    max-height: 669px;
  }
  .p-data-list li:nth-child(5) {
    grid-area: box5;
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    background-image: url("../images/data/img-5.png");
    height: 17.6389vw;
    max-height: 254px;
  }
  .p-data-list li:nth-child(6) {
    grid-area: box6;
    -ms-grid-row: 7;
    -ms-grid-column: 3;
    background-image: url("../images/data/img-6.png");
    height: 26.0417vw;
    max-height: 375px;
  }
  .p-data-list li:nth-child(7) {
    grid-area: box7;
    -ms-grid-row: 9;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    background-image: url("../images/data/img-7.png");
    height: 39.5139vw;
    max-height: 569px;
  }
}
@media screen and (min-width: 1439px) {
  .p-data-list {
    grid-gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .p-data-list {
    margin-top: -2.6667vw;
  }
  .p-data-list li {
    box-shadow: 0px 0px 4.5333vw 0px rgba(12, 13, 106, 0.05);
    overflow: hidden;
    border-radius: 0.6667vw;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    margin-top: 2.6667vw;
    color: transparent;
  }
  .p-data-list li:nth-child(1) {
    background-image: url("../images/data/img-1-sp.png");
    height: 44vw;
  }
  .p-data-list li:nth-child(2) {
    background-image: url("../images/data/img-2-sp.png");
    height: 50.9333vw;
  }
  .p-data-list li:nth-child(3) {
    background-image: url("../images/data/img-3-sp.png");
    height: 148.5333vw;
  }
  .p-data-list li:nth-child(4) {
    background-image: url("../images/data/img-4-sp.png");
    height: 106.9333vw;
  }
  .p-data-list li:nth-child(5) {
    background-image: url("../images/data/img-5-sp.png");
    height: 56vw;
  }
  .p-data-list li:nth-child(6) {
    background-image: url("../images/data/img-6-sp.png");
    height: 73.8667vw;
  }
  .p-data-list li:nth-child(7) {
    background-image: url("../images/data/img-7-sp.png");
    height: 200.8vw;
  }
}

/*--------------------------------------------------------------------------
 .p-data-notice
---------------------------------------------------------------------------*/
.p-data-notice {
  text-align: right;
  color: #777777;
}
@media screen and (min-width: 768px) {
  .p-data-notice {
    margin: 15px 0 -2.8472vw;
  }
}
@media screen and (max-width: 767px) {
  .p-data-notice {
    margin-top: 26px;
  }
}

/*--------------------------------------------------------------------------
  p-office-index-lead
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-office-index-lead .c-list-btn {
    padding-top: 45px;
  }
  .p-office-index-lead .c-bg-font {
    right: -5px;
    bottom: -10px;
  }
}
@media screen and (min-width: 768px) {
  .p-office-index-lead .c-bg-font {
    right: -5px;
    bottom: -10px;
  }
}

/*--------------------------------------------------------------------------
  p-office-index-section
---------------------------------------------------------------------------*/
.p-office-index-cv {
  background: #f3f6f9;
}
.p-office-index-cv .c-cv {
  padding-top: 0;
}

.p-office-index-section:nth-of-type(odd) {
  background: #f3f6f9;
}
.p-office-index-section:nth-of-type(odd) .list li .txt {
  background: #f3f6f9;
}
.p-office-index-section:nth-of-type(odd) .list li .txt:before, .p-office-index-section:nth-of-type(odd) .list li .txt:after {
  color: #f3f6f9;
}
.p-office-index-section .list li {
  position: relative;
  line-height: 1;
}
.p-office-index-section .list li .img {
  overflow: hidden;
}
.p-office-index-section .list li .txt {
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #FFFFFF;
  color: #0c0d6a;
}
.p-office-index-section .list li .txt:before, .p-office-index-section .list li .txt:after {
  content: "";
  display: block;
  position: absolute;
  color: #FFFFFF;
}
.p-office-index-section .list li .txt:before {
  transform-origin: left top;
}
.p-office-index-section .list li .txt:after {
  transform-origin: right bottom;
}
@media screen and (min-width: 768px) {
  .p-office-index-section .list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .p-office-index-section .list li {
    margin-top: 3.4692%;
    width: 48.222%;
  }
  .p-office-index-section .list li .txt {
    display: inline-block;
    border-radius: 0 5px 0 0;
    padding: 17px 24px 0px 2px;
  }
  .p-office-index-section .list li .txt:before, .p-office-index-section .list li .txt:after {
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    transform: scale(0.5);
  }
  .p-office-index-section .list li .txt:before {
    top: -5px;
    left: 0;
  }
  .p-office-index-section .list li .txt:after {
    bottom: 0;
    right: -5px;
  }
  .p-office-index-section .list li .img img {
    border-radius: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-office-index-section .list {
    margin-top: 6.6667vw;
  }
  .p-office-index-section .list li {
    margin-top: 4vw;
  }
  .p-office-index-section .list li .img img {
    border-radius: 0.6667vw;
  }
  .p-office-index-section .list li .txt {
    border-radius: 0 0.6667vw 0 0;
    padding: 2.1333vw 2.6667vw 0 0.5333vw;
  }
  .p-office-index-section .list li .txt:before, .p-office-index-section .list li .txt:after {
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
    transform: scale(0.3);
  }
  .p-office-index-section .list li .txt:before {
    top: -0.8vw;
    left: 0vw;
  }
  .p-office-index-section .list li .txt:after {
    right: -0.8vw;
    bottom: 0vw;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-index-lead
---------------------------------------------------------------------------*/
.p-recruit-index-lead {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-recruit-index-lead .c-bg-font {
    bottom: -10px;
    right: -10px;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-index-lead {
    padding-bottom: 27.7333vw;
  }
  .p-recruit-index-lead .c-list-btn {
    margin-top: -2.6667vw;
  }
  .p-recruit-index-lead .c-bg-font {
    bottom: -2.4vw;
    right: -1.3333vw;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-flow
---------------------------------------------------------------------------*/
.p-recruit-flow .box {
  background: #f3f6f9;
}
.p-recruit-flow .note {
  color: #444444;
}
@media screen and (min-width: 768px) {
  .p-recruit-flow {
    margin-top: 90px;
  }
  .p-recruit-flow .box {
    margin-top: 30px;
    padding: 40px 95px;
  }
  .p-recruit-flow .img {
    margin-top: 30px;
  }
  .p-recruit-flow .note {
    margin-top: 23px;
    font-size: 0.8125rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-flow {
    margin-top: 13.8667vw;
  }
  .p-recruit-flow .box {
    margin-top: 6.9333vw;
    padding: 8vw 5.6vw;
  }
  .p-recruit-flow h3 {
    font-size: 4.2667vw;
  }
  .p-recruit-flow .img {
    margin-top: 5.6vw;
  }
  .p-recruit-flow .note {
    margin-top: 4vw;
    font-size: 3.2vw;
    line-height: 4.8vw;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-search-form
---------------------------------------------------------------------------*/
.p-recruit-search-form {
  position: relative;
  z-index: 20;
}
@media screen and (max-width: 767px) {
  .p-recruit-search-form {
    margin-top: 9.3333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-search-form {
    margin-top: 34px;
  }
  .p-recruit-search-form form {
    display: flex;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-search-form .lead {
    margin-bottom: 3.4667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-search-form .lead {
    margin-bottom: 20px;
  }
}
.p-recruit-search-form label {
  color: #0c0d6a;
  font-weight: bold;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .p-recruit-search-form label {
    margin-bottom: 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-search-form label {
    font-size: 0.875rem;
    margin-right: 14px;
  }
}
.p-recruit-search-form select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: right center;
  background-color: #FFFFFF;
  border: solid 1px #cccccc;
  color: #cccccc;
  transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  transition-duration: 80ms;
  width: 100%;
}
.p-recruit-search-form select option {
  color: #0c0d6a;
}
.p-recruit-search-form select::-ms-expand {
  display: none;
}
.p-recruit-search-form select.is-selected {
  color: #0c0d6a;
  border-color: #0c0d6a;
}
@media screen and (max-width: 767px) {
  .p-recruit-search-form select {
    font-size: 3.4667vw;
    border-radius: 0.4vw;
    padding: 3.7333vw 11.7333vw 4.2667vw 4vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-search-form select {
    font-size: 0.875rem;
    border-radius: 3px;
    padding: 16px 44px 13px 15px;
  }
}
.p-recruit-search-form .select-wrap {
  position: relative;
}
.p-recruit-search-form .select-wrap::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: url("../images/common/icon-select-arrow.svg") no-repeat 50% 50%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .p-recruit-search-form .select-wrap {
    margin-bottom: 6.9333vw;
  }
  .p-recruit-search-form .select-wrap::after {
    right: 5.3333vw;
    width: 2.6667vw;
    height: 1.6vw;
    background-size: 2.6667vw 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-search-form .select-wrap {
    width: 468px;
    margin-right: 40px;
  }
  .p-recruit-search-form .select-wrap::after {
    right: 15px;
    width: 14px;
    height: 7px;
    background-size: 14px 7px;
  }
}
.p-recruit-search-form .c-btn {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .p-recruit-search-form .c-btn {
    display: block;
  }
  .p-recruit-search-form .c-btn span {
    display: block;
  }
}
.p-recruit-search-form .c-btn.is-disable {
  cursor: not-allowed;
}
.p-recruit-search-form .c-btn.is-disable span {
  color: #FFFFFF;
}
.p-recruit-search-form .c-btn.is-disable span::before {
  color: #FFFFFF;
}
.p-recruit-search-form .c-btn.is-disable input {
  pointer-events: none;
  background: #bbbbbb;
  color: #FFFFFF;
}
.p-recruit-search-form input[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
}
@media screen and (max-width: 767px) {
  .p-recruit-search-form input[type=submit] {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-search-form input[type=submit] {
    min-width: 114px;
    height: 47px;
    font-size: 0.875rem;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-list
---------------------------------------------------------------------------*/
.p-recruit-list__item {
  background: #FFFFFF;
}
@media screen and (max-width: 767px) {
  .p-recruit-list__item .title {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
}
.p-recruit-list__item .title .mark {
  line-height: 1.5;
  background-color: #f3f6f9;
  border: solid 1px #0c0d6a;
}
@media screen and (max-width: 767px) {
  .p-recruit-list__item .title .mark {
    word-break: keep-all;
    padding: 0.8vw 3.4667vw 1.0667vw;
    border-radius: 6.4vw;
    margin-right: 2.6667vw;
    font-size: 4.16vw;
    position: relative;
    top: -0.8vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-list__item .title .mark {
    padding: 3px 14px 4px;
    font-size: 1.2rem;
    border-radius: 24px;
    margin-right: 20px;
  }
}
.p-recruit-list__item .txt {
  line-height: 2;
}
.p-recruit-list__item .c-list-btn .more a {
  background: #dfe6ea;
  color: #0c0d6a;
}
.p-recruit-list__item .table {
  border-top: solid 1px #cccccc;
  line-height: 2;
}
.p-recruit-list__item .table__item {
  border-bottom: solid 1px #cccccc;
}
.p-recruit-list__item .table__ttl {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .p-recruit-list__item .table {
    margin-top: 6.9333vw;
  }
  .p-recruit-list__item .table__item {
    padding: 2.6667vw 0;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-list__item .table {
    margin-top: 30px;
  }
  .p-recruit-list__item .table__item {
    display: flex;
    padding: 10px 0;
  }
  .p-recruit-list__item .table__ttl {
    width: 124px;
    margin-right: 20px;
  }
  .p-recruit-list__item .table__cont {
    width: 720px;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-list__item {
    margin-top: 21px;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.05);
    padding: 4.4643% 7.1429%;
  }
  .p-recruit-list__item .c-list-btn {
    margin-top: 10px;
  }
  .p-recruit-list__item .c-list-btn li {
    min-width: 320px;
  }
  .p-recruit-list__item .c-list-btn .more a:hover {
    background: #FFFFFF;
    color: #0c0d6a;
    border-color: #dfe6ea;
  }
}
@media screen and (max-width: 1026px) and (min-width: 768px) {
  .p-recruit-list .c-list-btn li {
    min-width: auto;
    width: calc(50% - 1.1574%);
    margin-right: 2.3148%;
  }
  .p-recruit-list .c-list-btn li:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-list__item {
    margin-top: 2.8vw;
    box-shadow: 0px 0px 2.6667vw 0px rgba(12, 13, 106, 0.05);
    padding: 10.6667vw 5.7333vw;
  }
  .p-recruit-list__item .c-list-btn {
    margin-top: 6.9333vw;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-anchor-nav
---------------------------------------------------------------------------*/
.p-recruit-anchor-nav {
  color: #0c0d6a;
}
.p-recruit-anchor-nav a {
  color: #0c0d6a;
}
.p-recruit-anchor-nav__title {
  font-weight: bold;
}
.p-recruit-anchor-nav__list {
  display: flex;
  flex-wrap: wrap;
}
.p-recruit-anchor-nav__list a {
  position: relative;
}
.p-recruit-anchor-nav__list a::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: url("../images/common/icon-anchor-arrow.svg") no-repeat 50% 50%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .p-recruit-anchor-nav {
    padding-bottom: 3.2vw;
    font-size: 3.4667vw;
  }
  .p-recruit-anchor-nav__title {
    font-size: 3.7333vw;
    margin-bottom: 2.6667vw;
  }
  .p-recruit-anchor-nav__list {
    margin-right: -6.4vw;
  }
  .p-recruit-anchor-nav__list li {
    margin-right: 6.4vw;
    padding-bottom: 1.3333vw;
  }
  .p-recruit-anchor-nav__list li a {
    padding-left: 4vw;
  }
  .p-recruit-anchor-nav__list li a::before {
    width: 2.6667vw;
    height: 4.2667vw;
    background-size: 2.6667vw auto;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-anchor-nav {
    padding-bottom: 14px;
    font-size: 0.875rem;
    display: flex;
  }
  .p-recruit-anchor-nav__title {
    width: 86px;
    margin-right: 14px;
  }
  .p-recruit-anchor-nav__list {
    width: calc(100% - 126px);
  }
  .p-recruit-anchor-nav__list li {
    margin-right: 24px;
    padding-bottom: 10px;
  }
  .p-recruit-anchor-nav__list li a {
    padding-left: 15px;
  }
  .p-recruit-anchor-nav__list li a::before {
    width: 10px;
    height: 16px;
    background-size: 10px auto;
  }
}

/*--------------------------------------------------------------------------
  p-app-section
---------------------------------------------------------------------------*/
.p-app-section .table {
  border-bottom: solid #0c0d6a;
}
.p-app-section .table__item {
  border-right: solid #0c0d6a;
}
.p-app-section .table__ttl, .p-app-section .table__cont {
  border-left: solid #0c0d6a;
}
.p-app-section .table__ttl {
  background: #f3f6f9;
  color: #0c0d6a;
  border-top: solid #0c0d6a;
}
.p-app-section .table__ttl .sub {
  display: block;
}
.p-app-section .table__cont {
  background: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .p-app-section {
    margin-top: 90px;
  }
  .p-app-section:first-child {
    margin-top: 0;
  }
  .p-app-section .txt {
    margin-top: 30px;
    line-height: 2;
    font-size: 1.0625rem;
  }
  .p-app-section .table {
    margin-top: 30px;
    border-bottom-width: 1px;
  }
  .p-app-section .table__item {
    display: flex;
    border-right-width: 1px;
    line-height: 2;
  }
  .p-app-section .table__ttl, .p-app-section .table__cont {
    padding: 30px 35px;
    border-left-width: 1px;
    border-top: solid #0c0d6a 1px;
  }
  .p-app-section .table__ttl {
    width: 28.4722%;
    font-size: 1.0625rem;
  }
  .p-app-section .table__ttl .sub {
    font-size: 0.75rem;
  }
  .p-app-section .table__cont {
    width: 71.5278%;
  }
  .p-app-section .table__cont .work-images {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .p-app-section .table__cont .work-images__item {
    width: 47.7%;
    margin-top: 30px;
  }
  .p-app-section .c-btn {
    margin-top: 90px;
  }
  .p-app-section .c-btn a {
    min-width: 320px;
  }
}
@media screen and (max-width: 767px) {
  .p-app-section {
    margin-top: 13.8667vw;
  }
  .p-app-section:first-child {
    margin-top: 0;
  }
  .p-app-section:last-child {
    margin-bottom: 10.6667vw;
  }
  .p-app-section .txt {
    margin-top: 5.0667vw;
    line-height: 2;
  }
  .p-app-section .table {
    margin: 6.9333vw -3.8667vw 0;
    border-bottom-width: 0.2667vw;
  }
  .p-app-section .table__item {
    border-right-width: 0.2667vw;
    line-height: 2;
  }
  .p-app-section .table__ttl, .p-app-section .table__cont {
    padding: 5.3333vw 5.6vw;
    border-top-width: 0.2667vw;
    border-left-width: 0.2667vw;
  }
  .p-app-section .table__ttl {
    line-height: 1.5;
  }
  .p-app-section .table__ttl .sub {
    font-size: 3.2vw;
  }
  .p-app-section .table__cont .work-images__item {
    margin-top: 2.6667vw;
  }
  .p-app-section .c-btn {
    margin-top: 13.8667vw;
  }
  .p-app-section .c-btn a {
    width: 100%;
  }
}

/*--------------------------------------------------------------------------
  p-floating-cv
---------------------------------------------------------------------------*/
.p-floating-cv {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(12, 13, 106, 0.2);
  transform: translateY(100%);
  transition: transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.p-floating-cv.is-fixed {
  transform: translateY(0);
}
@media screen and (max-width: 767px) {
  .p-floating-cv {
    padding: 4vw 0;
  }
  .p-floating-cv .c-btn a {
    width: 92vw;
    height: 12vw;
    line-height: 12vw;
  }
}
@media screen and (min-width: 768px) {
  .p-floating-cv {
    padding: 15px 0 17px;
  }
  .p-floating-cv .c-btn a {
    width: 493px;
    height: 56px;
  }
}

/*--------------------------------------------------------------------------
  p-faq-list
---------------------------------------------------------------------------*/
.p-faq-section .faq-list__item {
  overflow: hidden;
}
.p-faq-section .faq-list__item.is-active .ttl {
  background-color: #1d388f;
  color: #FFFFFF;
}
.p-faq-section .faq-list__item.is-active .ttl .label {
  color: #FFFFFF;
}
.p-faq-section .faq-list__item.is-active .ttl .icon {
  border-color: #FFFFFF;
}
.p-faq-section .faq-list__item.is-active .ttl .icon:before {
  background: #FFFFFF;
}
.p-faq-section .faq-list__item.is-active .ttl .icon:after {
  opacity: 0;
}
.p-faq-section .faq-list__item.is-active .cont {
  visibility: visible;
}
.p-faq-section .faq-list__item .ttl,
.p-faq-section .faq-list__item .cont {
  position: relative;
}
.p-faq-section .faq-list__item .ttl .label,
.p-faq-section .faq-list__item .cont .label {
  position: absolute;
  transform: translateY(-50%);
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  color: #0c0d6a;
}
.p-faq-section .faq-list__item .ttl {
  display: flex;
  align-items: center;
  background-color: #dfe6ea;
  color: #0c0d6a;
  top: 50%;
}
.p-faq-section .faq-list__item .ttl .label {
  top: 50%;
}
.p-faq-section .faq-list__item .ttl .icon {
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: solid #0c0d6a;
}
.p-faq-section .faq-list__item .ttl .icon:before, .p-faq-section .faq-list__item .ttl .icon:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  background: #0c0d6a;
}
.p-faq-section .faq-list__item .cont {
  display: none;
  visibility: hidden;
}
@media screen and (min-width: 768px) {
  .p-faq-section {
    margin-top: 90px;
  }
  .p-faq-section:first-child {
    margin-top: 0;
  }
  .p-faq-section .faq-list {
    margin-top: 30px;
  }
  .p-faq-section .faq-list__item {
    border-radius: 5px;
    margin-top: 10px;
    box-shadow: 0px 0px 20px 0px rgba(12, 13, 106, 0.07);
  }
  .p-faq-section .faq-list__item .ttl,
  .p-faq-section .faq-list__item .cont {
    padding: 41px 80px;
  }
  .p-faq-section .faq-list__item .ttl .label,
  .p-faq-section .faq-list__item .cont .label {
    left: 40px;
    font-size: 1.625rem;
    line-height: 1;
  }
  .p-faq-section .faq-list__item:not(.is-active) .ttl:hover {
    opacity: 0.8;
  }
  .p-faq-section .faq-list__item .ttl {
    cursor: pointer;
    font-size: 1.1875rem;
    transition: opacity 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .p-faq-section .faq-list__item .ttl .icon {
    right: 32px;
    width: 34px;
    height: 34px;
    border-width: 1px;
  }
  .p-faq-section .faq-list__item .ttl .icon:before, .p-faq-section .faq-list__item .ttl .icon:after {
    width: 16px;
    height: 2px;
  }
  .p-faq-section .faq-list__item .ttl .icon:before {
    transform: translate(-50%, -50%);
  }
  .p-faq-section .faq-list__item .ttl .icon:after {
    transform: rotate(90deg) translate(-1px, 8px);
  }
  .p-faq-section .faq-list__item .cont {
    line-height: 2;
  }
  .p-faq-section .faq-list__item .cont .label {
    top: 54px;
  }
  .p-faq-section .faq-list__item .cont p + p {
    margin-top: 15px;
  }
  .p-faq-section .faq-list__item .cont .u-link + .u-link {
    margin-top: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-faq-section {
    margin-top: 13.8667vw;
  }
  .p-faq-section:first-child {
    margin-top: 0;
  }
  .p-faq-section .faq-list {
    margin-top: 6.9333vw;
  }
  .p-faq-section .faq-list__item {
    border-radius: 1.3333vw;
    margin-top: 2.6667vw;
    box-shadow: 0px 0px 2.6667vw 0px rgba(12, 13, 106, 0.05);
  }
  .p-faq-section .faq-list__item .ttl .label,
  .p-faq-section .faq-list__item .cont .label {
    left: 3.7333vw;
    font-size: 5.0667vw;
    line-height: 5.0667vw;
  }
  .p-faq-section .faq-list__item .ttl {
    padding: 6.9333vw 11.3333vw;
    font-size: 3.4667vw;
  }
  .p-faq-section .faq-list__item .ttl .icon {
    right: 3.8667vw;
    width: 5.3333vw;
    height: 5.3333vw;
    border-width: 0.2667vw;
  }
  .p-faq-section .faq-list__item .ttl .icon:before, .p-faq-section .faq-list__item .ttl .icon:after {
    width: 2.6667vw;
    height: 0.2667vw;
  }
  .p-faq-section .faq-list__item .ttl .icon:before {
    transform: translate(-50%, -50%);
  }
  .p-faq-section .faq-list__item .ttl .icon:after {
    transform: rotate(90deg) translate(-0.1333vw, 1.3333vw);
  }
  .p-faq-section .faq-list__item .cont {
    padding: 6.9333vw 5.3333vw 6.9333vw 11.3333vw;
  }
  .p-faq-section .faq-list__item .cont .label {
    top: 10.1333vw;
  }
  .p-faq-section .faq-list__item .cont p + p {
    margin-top: 3.4667vw;
  }
  .p-faq-section .faq-list__item .cont .u-link + .u-link {
    margin-top: 1.6vw;
  }
}

/*--------------------------------------------------------------------------
 .p-modal
---------------------------------------------------------------------------*/
#p-modal {
  display: none;
  background: #000;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
}
#p-modal .wrap {
  position: relative;
  height: 100%;
  margin: 0 auto;
}
#p-modal .close {
  display: block;
  position: absolute;
  top: 0;
  right: 30px;
  z-index: 10;
  cursor: pointer;
}
#p-modal .close:before {
  position: absolute;
  top: 0;
  left: 0;
  color: #FFFFFF;
}
#p-modal .inner {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  height: 45vw;
  max-height: 90%;
}
#p-modal .inner iframe {
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  #p-modal .wrap {
    max-width: 1152px;
    width: 80vw;
  }
  #p-modal .close {
    right: -67px;
  }
  #p-modal .close:before {
    content: "\ea06";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 40px;
  }
  #p-modal .close:hover:before {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  #p-modal .inner {
    padding: 0 3.0667vw;
  }
  #p-modal .close {
    top: -12vw;
    right: 0;
  }
  #p-modal .close:before {
    color: #FFFFFF;
    content: "\ea06";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 9.3333vw;
    line-height: 9.3333vw;
  }
}

/*--------------------------------------------------------------------------
 .p-contact
---------------------------------------------------------------------------*/
.p-contact {
  background: #f3f6f9;
}
.p-contact input.text, .p-contact textarea {
  box-sizing: border-box;
  font-family: "YakuHanJP", "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: normal;
  background: #FFFFFF;
  color: #0a0a0a;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  overflow: auto;
}
@media screen and (max-width: 767px) {
  .p-contact input.text, .p-contact textarea {
    border-radius: 0.6667vw;
    font-size: 3.4667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-contact input.text, .p-contact textarea {
    border-radius: 5px;
    font-size: 0.9375rem;
  }
}
.p-contact input.text::placeholder, .p-contact textarea::placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.p-contact input.text::-ms-input-placeholder, .p-contact textarea::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.p-contact input.text :-ms-input-placeholder, .p-contact textarea :-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.p-contact input.text::-ms-clear, .p-contact textarea::-ms-clear {
  display: none;
}
.p-contact .is-error input.text, .p-contact .is-error textarea {
  background: #fdf5f5;
  border: solid 1px #d00101;
}
.p-contact input[type=checkbox] {
  background: #f3f6f9;
  border-radius: 0;
}
.p-contact input[type=checkbox]:not(:checked) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}
@media screen and (min-width: 768px) {
  .p-contact input[type=checkbox] {
    position: relative;
    top: 1px;
  }
}
.p-contact .is-error input[type=checkbox] {
  background: #fff0f0;
  border-color: #d00101;
}
.p-contact .c-btn {
  position: relative;
  text-align: center;
}
.p-contact .c-btn input[type=submit] {
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.p-contact .require {
  color: #d00101;
  font-weight: bold;
}
.p-contact__item h3 {
  font-weight: bold;
  color: #0c0d6a;
}
.p-contact__note {
  line-height: 1;
  text-align: right;
}
.p-contact__inputs > div > div {
  display: flex;
  align-items: center;
}
.p-contact .error {
  display: block;
  color: #d00101;
  margin-left: 0;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .p-contact .error {
    font-size: 3.2vw !important;
    margin-top: 2vw;
    margin-bottom: 0.6667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-contact .error {
    font-size: 0.8125rem !important;
    margin-top: 12px;
  }
}
.p-contact__consent .txt {
  text-align: center;
  line-height: 2;
}
.p-contact__consent .box a {
  color: #0c0d6a;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .p-contact__consent .box a:hover {
    text-decoration: none !important;
  }
}
.p-contact .mw_wp_form_input .c-btn-white {
  display: none;
}
.p-contact .mw_wp_form_confirm .p-contact__inputs > div > div label, .p-contact .mw_wp_form_confirm .p-contact__inputs > div > div br, .p-contact .mw_wp_form_confirm .p-contact__inputs > div > div p {
  display: none;
}
.p-contact .mw_wp_form_confirm .p-contact__notice, .p-contact .mw_wp_form_confirm .p-contact__consent {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-contact {
    border-radius: 0.6667vw;
    margin: 11.4667vw 3.3333vw 22.1333vw;
    padding: 8.8vw 5.3333vw 10.6667vw;
  }
  .p-contact__note {
    font-size: 3.4667vw;
  }
  .p-contact__item {
    margin-top: 6.9333vw;
  }
  .p-contact__item:first-child {
    margin-top: 9.0667vw;
  }
  .p-contact__item h3 {
    margin-bottom: 2.1333vw;
  }
  .p-contact__item h3 .require {
    padding-left: 0.8vw;
  }
  .p-contact__notice {
    font-size: 3.2vw;
    margin-top: 1.8667vw;
  }
  .p-contact__inputs > div label {
    margin-right: 1.3333vw;
  }
  .p-contact__inputs > div + div {
    margin-top: 1.4667vw;
  }
  .p-contact__inputs > div .error {
    padding-left: 5.3333vw;
  }
  .p-contact__inputs input.text {
    height: 10.6667vw;
    line-height: 10.6667vw;
    padding: 0 4vw;
    width: 100%;
  }
  .p-contact__inputs input.text.text-name {
    width: 76.5333vw;
  }
  .p-contact__inputs input.text.text-s {
    width: 41.3333vw;
  }
  .p-contact__inputs textarea {
    width: 100%;
    height: 59.2vw;
    padding: 2.6667vw 4vw;
  }
  .p-contact__consent .txt {
    margin: 8.2667vw 0 7.4667vw;
  }
  .p-contact__consent .box {
    width: 100%;
    height: 68.6667vw;
    overflow-y: scroll;
    border: solid 0.2667vw #777777;
    padding: 2.6667vw 4vw;
    font-size: 3.2vw;
    line-height: 1.8;
  }
  .p-contact__consent .box p + p {
    margin-top: 5.6vw;
  }
  .p-contact__consent .check {
    font-size: 3.4667vw;
    display: block;
    text-align: center;
    margin: 8.6667vw 0 10vw;
  }
  .p-contact__consent .check input {
    width: 4vw;
    height: 4vw;
    border: solid 0.2667vw #777777;
    margin-right: 3.2vw;
    vertical-align: middle;
    position: relative;
    top: -0.2667vw;
  }
  .p-contact__consent .check .require {
    padding-left: 0;
  }
  .p-contact .c-btn {
    width: 100%;
  }
  .p-contact .c-btn span, .p-contact .c-btn input[type=submit] {
    display: block;
    width: 100%;
  }
  .p-contact__btns {
    margin-top: 13.3333vw;
  }
  .p-contact__btns .c-btn:first-child {
    margin-bottom: 2.6667vw;
  }
  .p-contact .mw_wp_form_confirm .p-contact__inputs--name {
    display: flex;
    align-items: center;
  }
  .p-contact .mw_wp_form_confirm .p-contact__inputs--name div + div {
    margin-top: 0;
    margin-left: 1em;
  }
}
@media screen and (min-width: 768px) {
  .p-contact {
    width: 70.1389vw;
    max-width: 1010px;
    margin: 70px auto 121px;
    border-radius: 5px;
    padding: 78px 142px 75px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1439px) and (min-width: 768px) {
  .p-contact {
    padding-left: 9.8611vw;
    padding-right: 9.8611vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1010px) and (min-width: 768px) {
  .p-contact {
    width: 90%;
  }
}
@media screen and (min-width: 768px) {
  .p-contact__note {
    font-size: 0.8125rem;
  }
  .p-contact__item {
    margin-top: 34px;
  }
  .p-contact__item:first-child {
    margin-top: 38px;
  }
  .p-contact__item h3 {
    margin-bottom: 14px;
  }
  .p-contact__item h3 .require {
    padding-left: 3px;
  }
  .p-contact__notice {
    font-size: 0.8125rem;
    margin-top: 11px;
  }
  .p-contact__inputs--name {
    display: flex;
    align-items: flex-start;
  }
  .p-contact__inputs > div label {
    margin-right: 9px;
  }
  .p-contact__inputs > div + div {
    margin-left: 17px;
  }
  .p-contact__inputs > div .error {
    padding-left: 24px;
    min-width: 200px;
  }
  .p-contact__inputs input.text {
    height: 52px;
    line-height: 52px;
    padding: 0 21px;
    width: 35vw;
    max-width: 504px;
  }
  .p-contact__inputs input.text.text-name {
    width: 22.7778vw;
    max-width: 328px;
  }
  .p-contact__inputs input.text.text-s {
    width: 24.3056vw;
    max-width: 350px;
  }
  .p-contact__inputs textarea {
    width: 100%;
    height: 270px;
    padding: 21px;
  }
  .p-contact__consent .txt {
    margin: 60px 0 30px;
  }
  .p-contact__consent .box {
    width: 100%;
    height: 248px;
    overflow-y: scroll;
    border: solid 1px #777777;
    padding: 18px 22px;
    font-size: 0.75rem;
    line-height: 1.8;
  }
  .p-contact__consent .box p + p {
    margin-top: 22px;
  }
  .p-contact__consent .check {
    font-size: 1rem;
    display: block;
    text-align: center;
    margin: 28px 0 55px;
  }
  .p-contact__consent .check input {
    width: 18px;
    height: 18px;
    border: solid 1px #777777;
    margin-right: 14px;
    vertical-align: top;
  }
  .p-contact__consent .check .require {
    margin-left: -1px;
  }
  .p-contact__consent .check .error {
    margin-top: 10px;
    padding-bottom: 10px;
  }
  .p-contact__btns {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    margin-top: 60px;
  }
  .p-contact__btns .c-btn:first-child {
    margin-left: 20px;
  }
  .p-contact .mw_wp_form_confirm .p-contact__item {
    border-top: solid 1px #acacac;
    padding-top: 31px;
  }
  .p-contact .mw_wp_form_confirm .p-contact__item + .p-contact__item {
    margin-top: 15px;
  }
  .p-contact .mw_wp_form_confirm .p-contact__item:first-child {
    border-top: none !important;
    padding-top: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .p-contact-thanks .inner,
  .p-notfound .inner,
  .p-document .inner {
    padding: 13.8667vw 1.8667vw 23.2vw;
  }
  .p-contact-thanks__title,
  .p-notfound__title,
  .p-document__title {
    font-size: 5.8667vw;
    line-height: 1;
    margin-bottom: 6.4vw;
    font-weight: bold;
  }
  .p-contact-thanks__text,
  .p-notfound__text,
  .p-document__text {
    font-size: 3.4667vw;
    line-height: 2;
    margin-bottom: 7.4667vw;
  }
  .p-contact-thanks .c-btn a,
  .p-notfound .c-btn a,
  .p-document .c-btn a {
    width: 100%;
    text-align: left;
    padding-left: 6.9333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-contact-thanks .inner,
  .p-notfound .inner,
  .p-document .inner {
    padding: 70px 75px 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1439px) and (min-width: 768px) {
  .p-contact-thanks .inner,
  .p-notfound .inner,
  .p-document .inner {
    padding-left: 5.2083vw;
    padding-right: 5.2083vw;
  }
}
@media screen and (min-width: 768px) {
  .p-contact-thanks__title,
  .p-notfound__title,
  .p-document__title {
    font-size: 1.875rem;
    line-height: 1;
    margin-bottom: 36px;
    font-weight: bold;
  }
  .p-contact-thanks__text,
  .p-notfound__text,
  .p-document__text {
    font-size: 1.0625rem;
    line-height: 2;
    margin-bottom: 62px;
  }
  .p-contact-thanks .c-btn a,
  .p-notfound .c-btn a,
  .p-document .c-btn a {
    text-align: left;
    padding-left: 38px;
  }
}

@media screen and (min-width: 768px) {
  .p-document .inner {
    padding: 70px 150px 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1439px) and (min-width: 768px) {
  .p-document .inner {
    padding-left: 5.2083vw;
    padding-right: 5.2083vw;
  }
}
@media screen and (min-width: 768px) {
  .p-document__text {
    font-size: 0.9375rem;
    line-height: 2;
  }
  .p-document__text h3 {
    font-size: 1.0625rem;
    font-weight: bold;
    margin-top: 30px;
    margin-bottom: 5px;
  }
  .p-document__text strong {
    font-weight: bold;
    display: block;
  }
  .p-document__text p + p {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .p-document__text {
    font-size: 3.4667vw;
    line-height: 2;
  }
  .p-document__text h3 {
    font-size: 4vw;
    font-weight: bold;
    margin-top: 5.3333vw;
    margin-bottom: 0.8vw;
  }
  .p-document__text strong {
    font-weight: bold;
    display: block;
  }
  .p-document__text p + p {
    margin-top: 4vw;
  }
}

/*--------------------------------------------------------------------------
  p-training-section
---------------------------------------------------------------------------*/
.p-training-section:nth-of-type(even) {
  background: #f3f6f9;
}
@media screen and (min-width: 768px) {
  .p-training-section {
    padding: 120px 0;
  }
  .c-page-header + .p-training-section {
    padding-top: 70px;
  }
  .p-training-section .txt-wrap {
    width: 47.1813%;
  }
  .p-training-section .img {
    width: 48.222%;
    border-radius: 5px;
    overflow: hidden;
  }
  .p-training-section .txt {
    margin-top: 30px;
    line-height: 2;
  }
  .p-training-section .c-section-header--text .c-title-lv-2 {
    min-width: 256px;
  }
  .p-training-section .c-section-header--text .txt {
    margin-top: 0;
  }
  .p-training-section .p-training-sub-section {
    margin-top: 45px;
  }
  .p-training-section .p-training-sub-section + .p-training-sub-section {
    margin-top: 45px;
  }
  .p-training-section .p-training-sub-section .txt {
    margin-top: 15px;
  }
  .p-training-section .p-training-sub-section .txt-wrap {
    margin-top: 10px;
  }
  .p-training-section .p-training-dl {
    line-height: 2;
    margin-top: 17px;
  }
  .p-training-section .p-training-dl dt {
    font-weight: bold;
  }
  .p-training-section .p-training-dl dt:before {
    content: "・";
    display: inline-block;
    margin-right: 8px;
  }
  .p-training-section .p-training-dl dd {
    padding-left: 1em;
  }
  .p-training-section .p-training-dl dd p + p {
    margin-top: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section {
    padding: 11.7333vw 0 13.3333vw;
  }
  .p-training-section .c-section-header {
    margin-bottom: 4.8vw;
  }
  .p-training-section .txt {
    line-height: 2;
  }
  .p-training-section .txt + .txt {
    margin-top: 5.0667vw;
  }
  .p-training-section .p-training-sub-section {
    margin-top: 6.9333vw;
  }
  .p-training-section .p-training-sub-section .c-section-header {
    margin-bottom: 3.4667vw;
  }
  .p-training-section .p-training-sub-section .img {
    margin-top: 0;
  }
  .p-training-section .p-training-sub-section .txt-wrap {
    margin-top: 6.9333vw;
  }
  .p-training-section .p-training-dl {
    line-height: 2;
    margin-top: 3.4667vw;
  }
  .p-training-section .p-training-dl dt {
    font-weight: bold;
  }
  .p-training-section .p-training-dl dt:before {
    content: "・";
    display: inline-block;
    margin-right: 1.3333vw;
  }
  .p-training-section .p-training-dl dd {
    padding-left: 0.9em;
  }
  .p-training-section .p-training-dl dd p + p {
    margin-top: 1.3333vw;
  }
  .p-training-section .img {
    margin-top: 6.9333vw;
    border-radius: 0.6667vw;
    overflow: hidden;
  }
}
@media screen and (min-width: 768px) {
  .p-training-section .step-flow {
    margin-top: 52px;
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .step-flow {
    margin-top: 6.6667vw;
  }
}
.p-training-section .step-flow__item {
  background: #0c0d6a;
  color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .p-training-section .step-flow__item {
    width: 31.2229%;
    padding: 30px 3.1223%;
    border-radius: 5px;
  }
  .p-training-section .step-flow__item .heading {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
  }
  .p-training-section .step-flow__item .heading__step {
    margin-right: 12px;
    border-bottom: 2px solid #fff;
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-weight: 400;
    font-size: 0.9375rem;
    line-height: 1.5;
    text-wrap: nowrap;
  }
  .p-training-section .step-flow__item .heading__main {
    font-size: 1.3125rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .p-training-section .step-flow__item .txt {
    font-size: 0.875rem;
    line-height: 1.78;
    margin-top: 0;
  }
  .p-training-section .step-flow__item .note {
    font-size: 0.8125rem;
    line-height: 2;
    margin-top: 0;
  }
}
@media screen and (max-width: 1280px) and (min-width: 768px) {
  .p-training-section .step-flow__item .heading__step {
    font-size: 0.75rem;
    margin-right: 10px;
  }
  .p-training-section .step-flow__item .heading__main {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-training-section .step-flow__item .heading {
    display: block;
  }
  .p-training-section .step-flow__item .heading__main {
    display: block;
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .step-flow__item {
    margin-top: 2.6667vw;
    padding: 6.6667vw 5.0667vw 5.6vw;
    border-radius: 1.0667vw;
  }
  .p-training-section .step-flow__item .heading {
    display: flex;
    align-items: center;
    margin-bottom: 1.8667vw;
  }
  .p-training-section .step-flow__item .heading__step {
    margin-right: 6.4vw;
    padding-bottom: 0.8vw;
    border-bottom: 0.5333vw solid #FFFFFF;
    font-family: futura-pt, sans-serif;
    font-weight: 400;
    font-size: 4vw;
    line-height: 1;
    letter-spacing: 0.2vw;
  }
  .p-training-section .step-flow__item .heading__main {
    font-size: 4.5333vw;
    font-weight: bold;
    line-height: 1;
    position: relative;
    top: -0.5333vw;
  }
  .p-training-section .step-flow__item .txt {
    line-height: 1.8;
  }
  .p-training-section .step-flow__item .note {
    font-size: 0.8125rem;
    line-height: 2;
    margin-top: 0.8vw;
  }
}
.p-training-section .table-wrap {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 1px;
}
@media screen and (min-width: 768px) {
  .p-training-section .table-wrap {
    margin-top: 45px;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .table-wrap {
    margin-top: 8.5333vw;
  }
}
.p-training-section .table {
  background: #fff;
}
@media screen and (min-width: 768px) {
  .p-training-section .table {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .table {
    width: 166.6667vw;
  }
}
.p-training-section .table__heading, .p-training-section .table__cell {
  border: 1px solid #1d388f;
  vertical-align: middle;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-training-section .table__heading, .p-training-section .table__cell {
    padding: 15px 0;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .table__heading, .p-training-section .table__cell {
    padding: 2.4vw 0;
  }
}
.p-training-section .table__heading {
  background: #dfe6ea;
  color: #0c0d6a;
}
.p-training-section .table__heading--01 {
  vertical-align: bottom;
}
@media screen and (min-width: 768px) {
  .p-training-section .table__heading--01 {
    padding: 10px 0;
    width: 9.5403%;
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .table__heading--01 {
    width: 19.3333vw;
    font-size: 2.9333vw;
  }
}
.p-training-section .table__heading--02 {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-training-section .table__heading--02 {
    padding: 20px;
    font-size: 1.0625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .table__heading--02 {
    font-size: 3.4667vw;
  }
}
.p-training-section .table__heading--02 span {
  display: block;
  font-weight: normal;
  color: #0a0a0a;
}
@media screen and (min-width: 768px) {
  .p-training-section .table__heading--02 span {
    margin-top: 4px;
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .table__heading--02 span {
    margin-top: 1.0667vw;
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .p-training-section .table__heading--03 {
    font-size: 1.0625rem;
  }
}
.p-training-section .p-training-panel {
  margin-top: 30px;
  background-color: #f3f6f9;
  border-radius: 4px;
  padding: 16px 30px;
}
.p-training-section .p-training-panel + .p-training-panel {
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .p-training-section .p-training-panel {
    margin-top: 5.3333vw;
    border-radius: 1.0667vw;
    padding: 3.7333vw 5.0667vw;
  }
  .p-training-section .p-training-panel + .p-training-panel {
    margin-top: 1.3333vw;
  }
}
.p-training-section .p-training-panel .p-training-dl {
  margin-top: 0;
}
.p-training-section .p-training-panel .p-training-dl dt {
  line-height: 1.5;
}
.p-training-section .p-training-panel .p-training-dl dt::before {
  content: none;
}
.p-training-section .p-training-panel .p-training-dl dd {
  line-height: 1.75;
  font-size: 0.875rem;
  padding-left: 0;
  margin-top: 5px;
}
.p-training-section .p-training-panel .p-training-dl dd ul li {
  font-size: 0.9375rem;
  line-height: 2;
  text-indent: -0.4em;
  padding-left: 0.8em;
}
.p-training-section .p-training-panel .p-training-dl dd ul li::before {
  content: "・";
  display: inline-block;
  margin-right: 5px;
}
@media screen and (max-width: 767px) {
  .p-training-section .p-training-panel .p-training-dl dt {
    font-size: 4vw;
  }
}
.p-training-section .p-training-hierarchy {
  display: flex;
  position: relative;
}
.p-training-section .p-training-hierarchy::before {
  content: "";
  display: block;
  position: absolute;
  border-left: 1px solid;
  border-image: linear-gradient(to bottom, #0c0d6a 90%, #dbdde8) 1;
  width: 1px;
  height: 100%;
  top: 0;
}
@media screen and (min-width: 981px) {
  .p-training-section .p-training-hierarchy {
    margin-top: 15px;
    padding-bottom: 18px;
    text-align: center;
  }
  .p-training-section .p-training-hierarchy::before {
    left: 107px;
  }
}
@media screen and (max-width: 1280px) and (min-width: 981px) {
  .p-training-section .p-training-hierarchy::before {
    left: 86px;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-training-section .p-training-hierarchy {
    margin-top: 30px;
    padding-bottom: 12px;
  }
  .p-training-section .p-training-hierarchy::before {
    left: 50px;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .p-training-hierarchy {
    margin-top: 0;
    padding-bottom: 3.0667vw;
  }
  .p-training-section .p-training-hierarchy::before {
    left: 50px;
  }
}
.p-training-section .p-training-hierarchy .layer {
  background: #dfe6ea;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.p-training-section .p-training-hierarchy .layer::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  left: 0;
  border-bottom: 0;
}
.p-training-section .p-training-hierarchy .layer span {
  display: block;
  color: #0c0d6a;
  font-weight: bold;
  writing-mode: vertical-rl;
  text-orientation: upright;
  line-height: 1;
  letter-spacing: 0.25em;
}
@media screen and (min-width: 981px) {
  .p-training-section .p-training-hierarchy .layer {
    width: 5.5556vw;
    min-width: 64px;
    font-size: 1rem;
    padding: 23px 0 18px;
  }
  .p-training-section .p-training-hierarchy .layer::after {
    bottom: -18px;
    border-right: 32px solid transparent;
    border-left: 32px solid transparent;
    border-top: 18px solid #dfe6ea;
  }
}
@media screen and (max-width: 1280px) and (min-width: 981px) {
  .p-training-section .p-training-hierarchy .layer {
    width: 48px;
    min-width: 48px;
    font-size: 0.875rem;
  }
  .p-training-section .p-training-hierarchy .layer::after {
    border-right: 24px solid transparent;
    border-left: 24px solid transparent;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-training-section .p-training-hierarchy .layer {
    padding: 15px 0 112px;
    width: 34px;
    min-width: 34px;
    font-size: 0.875rem;
  }
  .p-training-section .p-training-hierarchy .layer::after {
    bottom: -12px;
    border-right: 17px solid transparent;
    border-left: 17px solid transparent;
    border-top: 12px solid #dfe6ea;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .p-training-hierarchy .layer {
    padding: 4vw 0 29.8667vw;
    width: 34px;
    min-width: 34px;
    font-size: 3.7333vw;
  }
  .p-training-section .p-training-hierarchy .layer::after {
    bottom: -12px;
    border-right: 17px solid transparent;
    border-left: 17px solid transparent;
    border-top: 12px solid #dfe6ea;
  }
}
@media screen and (min-width: 981px) {
  .p-training-section .p-training-hierarchy .hierarchy-list {
    margin-bottom: -18px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li {
    display: flex;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li + li {
    padding-top: 15px;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-training-section .p-training-hierarchy .hierarchy-list {
    margin-bottom: -14px;
    padding-top: 13px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li + li {
    padding-top: 32px;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .p-training-hierarchy .hierarchy-list {
    margin-bottom: -3.7333vw;
    padding-top: 3.36vw;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li + li {
    padding-top: 8.5333vw;
  }
}
.p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading {
  line-height: 1.5;
  font-weight: bold;
  color: #0c0d6a;
  text-align: left;
  position: relative;
}
.p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading::before {
  content: "";
  display: block;
  position: absolute;
  background: #0c0d6a;
  border-radius: 50%;
  width: 7px;
  height: 7px;
}
@media screen and (min-width: 981px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading {
    padding-top: 21px;
    width: 25.7813vw;
    max-width: 297px;
    font-size: 1.3125rem;
    padding-left: 87px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading::before {
    top: 34px;
    left: 40px;
  }
}
@media screen and (max-width: 1280px) and (min-width: 981px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading {
    padding-top: 24px;
    font-size: 1rem;
    padding-left: 70px;
    width: 247px;
    min-width: 247px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading::before {
    left: 35px;
    top: 34px;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading {
    font-size: 1.0625rem;
    padding-left: 35px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading::before {
    top: 10px;
    left: 13px;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading {
    font-size: 4.5333vw;
    padding-left: 35px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-heading::before {
    top: 2.6667vw;
    left: 13px;
  }
}
.p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl {
  text-align: left;
}
.p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl dt {
  font-weight: bold;
  background: #0c0d6a;
  color: #FFFFFF;
  line-height: 1.5;
}
.p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl dd {
  background: #FFFFFF;
  line-height: 2;
}
@media screen and (min-width: 981px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl {
    font-size: 0.9375rem;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div {
    display: flex;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div + div {
    margin-top: 4px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt {
    width: 24.9132vw;
    max-width: 287px;
    padding: 22px 30px 20px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dd {
    width: 43.75vw;
    max-width: 504px;
    padding: 15px 30px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
  }
}
@media screen and (max-width: 1280px) and (min-width: 981px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl {
    font-size: 0.8125rem;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt {
    width: 227px;
    min-width: 227px;
    max-width: none;
    padding: 24px 24px 24px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dd {
    width: auto;
    max-width: none;
    padding: 22px;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl {
    font-size: 0.8125rem;
    padding-left: 35px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div {
    margin-top: 13px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt {
    padding: 13px 13px 13px 19px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt br {
    display: none;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt .type1, .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt .type2 {
    padding-left: 9px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dd {
    padding: 13px 19px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
  }
}
@media screen and (max-width: 767px) {
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl {
    font-size: 3.4667vw;
    padding-left: 35px;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div {
    margin-top: 3.4667vw;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt {
    padding: 3.4667vw 3.4667vw 3.4667vw 5.0667vw;
    border-top-left-radius: 1.0667vw;
    border-top-right-radius: 1.0667vw;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dt .type1 {
    padding-left: 2.4vw;
  }
  .p-training-section .p-training-hierarchy .hierarchy-list li .hierarchy-dl div dd {
    padding: 3.4667vw 5.0667vw;
    border-bottom-left-radius: 1.0667vw;
    border-bottom-right-radius: 1.0667vw;
  }
}

/*--------------------------------------------------------------------------
  p-project-list
---------------------------------------------------------------------------*/
.p-project-list__parent li a {
  display: block;
  overflow: hidden;
  text-decoration: none;
  background-color: #FFFFFF;
  color: #0a0a0a;
}
.p-project-list__parent li .img {
  display: block;
}
.p-project-list__parent li .txt-wrap {
  background: #FFFFFF;
  line-height: 1.5;
}
.p-project-list__parent li .txt-wrap .label {
  line-height: 2;
}
.p-project-list__parent li .txt-wrap .catchcopy {
  color: #0c0d6a;
  font-weight: bold;
}
.p-project-list__parent li .txt-wrap .catchcopy br.detail {
  display: none !important;
}
.p-project-list__parent li .txt-wrap .profile {
  display: flex;
  flex-wrap: wrap;
}
.p-project-list__parent li .txt-wrap .profile .position {
  order: 2;
  width: 100%;
  color: #777777;
}
.p-project-list__parent li .txt-wrap .profile .name {
  order: 1;
  width: 100%;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-project-list {
    margin-top: 30px;
  }
  .p-project-list__parent {
    display: flex;
    gap: 21px;
  }
  .p-project-list__parent li {
    flex: 1 1;
  }
  .p-project-list__parent li a {
    border-radius: 5px;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.1);
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    height: 100%;
  }
  .p-project-list__parent li a:hover {
    box-shadow: 0px 0px 34px 0px rgba(62, 63, 119, 0.4);
    transform: translate(0, -6px);
  }
  .p-project-list__parent li a:hover .img:before {
    opacity: 1;
  }
  .p-project-list__parent li .img {
    position: relative;
  }
  .p-project-list__parent li .img:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(12, 13, 106, 0.4);
    opacity: 0;
    z-index: 1;
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-project-list__parent li .txt-wrap {
    padding: 32px 30px;
  }
  .p-project-list__parent li .txt-wrap .label {
    font-size: 0.8125rem;
    margin-bottom: 10px;
  }
  .p-project-list__parent li .txt-wrap .catchcopy {
    font-size: 1.1875rem;
  }
  .p-project-list__parent li .txt-wrap .profile {
    margin-top: 19px;
    gap: 4px;
  }
  .p-project-list__parent li .txt-wrap .profile .position {
    font-size: 0.9375rem;
  }
  .p-project-list__parent li .txt-wrap .profile .name {
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-project-list {
    margin-top: 5.0667vw;
  }
  .p-project-list__parent li + li {
    margin-top: 2.6667vw;
  }
  .p-project-list__parent li a {
    border-radius: 1.3333vw;
    box-shadow: 0px 0px 9.0667vw 0px rgba(12, 13, 106, 0.1);
  }
  .p-project-list__parent li .txt-wrap {
    padding: 6.9333vw 6.6667vw;
  }
  .p-project-list__parent li .txt-wrap .label {
    font-size: 3.4667vw;
    margin-bottom: 1.6vw;
  }
  .p-project-list__parent li .txt-wrap .catchcopy {
    font-size: 4.5333vw;
  }
  .p-project-list__parent li .txt-wrap .profile {
    margin-top: 3.4667vw;
    gap: 1.0667vw;
  }
  .p-project-list__parent li .txt-wrap .profile .position {
    font-size: 3.2vw;
  }
  .p-project-list__parent li .txt-wrap .profile .name {
    font-size: 3.7333vw;
  }
}

/*--------------------------------------------------------------------------
  p-project-detail
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-project-detail-content {
    padding-bottom: 105px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-content {
    padding-bottom: 17.3333vw;
  }
}

@media screen and (min-width: 768px) {
  .p-project-detail-section-wrap {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section-wrap {
    padding-top: 13.8667vw;
    padding-bottom: 13.8667vw;
  }
}

@media screen and (max-width: 767px) {
  .p-project-detail-profile .l-inner-m {
    padding-right: 1.8667vw;
    padding-left: 1.8667vw;
  }
}
.p-project-detail-profile__inner {
  background-color: #FFFFFF;
}
@media screen and (min-width: 768px) {
  .p-project-detail-profile__inner {
    display: flex;
    align-items: center;
    gap: min(4.3056vw, 62px);
    border-radius: 5px;
    padding: 30px min(5.0694vw, 73px);
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-profile__inner {
    border-radius: 1.3333vw;
    padding: 6.9333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-profile .img {
    flex: 0 0 clamp(120px, 12.5vw, 180px);
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-profile .img {
    width: 31.4667vw;
  }
}
.p-project-detail-profile .txt-wrap {
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-project-detail-profile .txt-wrap .profile-wrap {
    display: flex;
    align-items: center;
    gap: 5.0667vw;
    margin-bottom: 3.4667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-profile .txt-wrap .profile {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-profile .txt-wrap .profile {
    flex: 1;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-profile .txt-wrap .profile .position {
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-profile .txt-wrap .profile .position {
    display: block;
    font-size: 3.4667vw;
    margin-bottom: 1.6vw;
  }
}
.p-project-detail-profile .txt-wrap .profile .name {
  line-height: 1.5;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-project-detail-profile .txt-wrap .profile .name {
    font-size: 1.3125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-profile .txt-wrap .profile .name {
    display: block;
    font-size: 4.5333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-profile .txt-wrap .txt {
    font-size: 0.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-profile .txt-wrap .txt {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .p-project-detail-section {
    padding-top: 90px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section {
    padding-top: 13.8667vw;
  }
}
.p-project-detail-section__title {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-project-detail-section__title {
    margin-bottom: 45px;
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section__title {
    margin-bottom: 4vw;
    font-size: 5.0667vw;
  }
}
.p-project-detail-section .txt {
  line-height: 2;
}
.p-project-detail-section .txt strong {
  background: #f3f6f9;
  color: #0c0d6a;
  font-weight: bold;
  padding: 3px 4px;
}
@media screen and (min-width: 768px) {
  .p-project-detail-section .txt + .txt {
    margin-top: 24px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section .txt + .txt {
    margin-top: 4vw;
  }
}
.p-project-detail-section .note {
  line-height: 2;
  color: #777777;
  text-indent: -1.2em;
  padding-left: 1.2em;
}
@media screen and (min-width: 768px) {
  .p-project-detail-section .note {
    margin-top: 24px;
    font-size: 0.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section .note {
    margin-top: 4vw;
    font-size: 3.4667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-section .img {
    width: 38.3681%;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section .img {
    margin-top: 6.9333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-section .img img {
    border-radius: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section .img img {
    border-radius: 1.3333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-section .img img + img {
    margin-top: 9px;
  }
}
@media screen and (max-width: 767px) {
  .p-project-detail-section .img img + img {
    margin-top: 2.4vw;
  }
}
@media screen and (min-width: 768px) {
  .p-project-detail-section .txt-wrap {
    width: 56.0764%;
  }
}

/*--------------------------------------------------------------------------
p-interview-search-form
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .c-page-header + .p-interview-search-form {
    margin-top: 74px;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header + .p-interview-search-form {
    margin-top: 12vw;
  }
}

.p-interview-search-form__title {
  font-weight: bold;
}
.p-interview-search-form__content form .form-items .form-item dt {
  font-weight: bold;
  color: #0c0d6a;
}
.p-interview-search-form__content form .form-items .form-item select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: right center;
  background-color: #FFFFFF;
  border: solid 1px #cccccc;
  color: #cccccc;
  transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  transition-duration: 80ms;
  width: 100%;
}
.p-interview-search-form__content form .form-items .form-item select option {
  color: #0c0d6a;
}
.p-interview-search-form__content form .form-items .form-item select::-ms-expand {
  display: none;
}
.p-interview-search-form__content form .form-items .form-item select.is-selected {
  color: #0c0d6a;
  border-color: #0c0d6a;
}
.p-interview-search-form__content form .form-items .form-item .select-wrap {
  position: relative;
}
.p-interview-search-form__content form .form-items .form-item .select-wrap::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: url("../images/common/icon-select-arrow.svg") no-repeat 50% 50%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
.p-interview-search-form__content form .form-items .form-keywords {
  flex-wrap: wrap;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword {
  display: inline-block;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  position: absolute;
  opacity: 0;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword label {
  border: solid 1px #dfe6ea;
  color: #0c0d6a;
  cursor: pointer;
  display: inline-block;
  position: relative;
  transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword label::before, .p-interview-search-form__content form .form-items .form-keywords .keyword label::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  transition-duration: 80ms;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword label::before {
  background-image: url("../images/common/icon-check.svg");
}
.p-interview-search-form__content form .form-items .form-keywords .keyword label::after {
  background-image: url("../images/common/icon-check-on.svg");
  opacity: 0;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword input[type=checkbox]:focus + label {
  border-color: #0c0d6a;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword input[type=checkbox]:checked + label {
  border-color: #0c0d6a;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword input[type=checkbox]:checked + label::before {
  opacity: 0;
}
.p-interview-search-form__content form .form-items .form-keywords .keyword input[type=checkbox]:checked + label::after {
  opacity: 1;
}
.p-interview-search-form__content form .form-submit .c-btn.is-disable {
  cursor: not-allowed;
}
.p-interview-search-form__content form .form-submit .c-btn.is-disable span {
  color: #FFFFFF;
}
.p-interview-search-form__content form .form-submit .c-btn.is-disable span::before {
  color: #FFFFFF;
}
.p-interview-search-form__content form .form-submit .c-btn.is-disable input {
  pointer-events: none;
  background: #bbbbbb;
  color: #FFFFFF;
}
.p-interview-search-form__content form .form-submit input {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.p-interview-search-form__content form .form-submit .btn-reset {
  cursor: pointer;
}
.p-interview-search-form__content form .form-submit .btn-reset input {
  color: #777777;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  border: none;
}
.p-interview-search-form__content form .form-submit .btn-reset::before {
  color: #c4c4c4;
  display: inline-block;
  transform: scale(0.849);
}
@media screen and (min-width: 768px) {
  .p-interview-search-form__title {
    background: #f3f6f9;
    border-radius: 5px;
    font-size: 1.3125rem;
    padding: 17px 42px;
    margin-bottom: 30px;
    pointer-events: none;
  }
  .p-interview-search-form__content form {
    display: flex;
    justify-content: space-between;
  }
  .p-interview-search-form__content form .form-items {
    display: flex;
    flex-wrap: wrap;
  }
  .p-interview-search-form__content form .form-items .form-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .p-interview-search-form__content form .form-items .form-item + .form-item {
    padding-left: 90px;
  }
  .p-interview-search-form__content form .form-items .form-item dt {
    font-size: 0.875rem;
    word-break: keep-all;
    padding-right: 92px;
  }
  .p-interview-search-form__content form .form-items .form-item dd {
    font-size: 0.875rem;
    width: 259px;
  }
  .p-interview-search-form__content form .form-items .form-item dd select {
    font-size: 0.875rem;
    border-radius: 3px;
    padding: 15px 44px 12px 15px;
  }
  .p-interview-search-form__content form .form-items .form-item dd .select-wrap::after {
    right: 15px;
    width: 12px;
    height: 6px;
    background-size: 12px 6px;
  }
  .p-interview-search-form__content form .form-items .form-keywords {
    padding-left: 120px !important;
    margin-top: 7px;
    width: 100%;
    justify-content: flex-start;
    position: relative;
  }
  .p-interview-search-form__content form .form-items .form-keywords dt {
    margin-right: 29px;
    font-size: 1.0625rem;
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    letter-spacing: 0.04em;
    position: absolute;
    top: 13px;
    left: 0;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd {
    width: auto;
    max-width: 100%;
    margin-right: 5px;
    margin-top: 8px;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd .keyword label {
    border-radius: 24px;
    padding: 6px 15px 5px 32px;
    word-break: keep-all;
    display: flex;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd .keyword label span {
    padding-right: 3px;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd .keyword label:hover {
    border-color: #0c0d6a;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd .keyword label::before, .p-interview-search-form__content form .form-items .form-keywords dd .keyword label::after {
    top: 8px;
    left: 12px;
    width: 16px;
    height: 16px;
    background-size: 16px auto;
  }
  .p-interview-search-form__content form .form-submit {
    border-left: solid 1px #c4c4c4;
    padding-left: 58px;
    margin-left: 58px;
  }
  .p-interview-search-form__content form .form-submit .c-btn {
    cursor: pointer;
    display: block;
    margin-top: -1px;
  }
  .p-interview-search-form__content form .form-submit .c-btn input[type=submit] {
    min-width: auto;
    height: auto;
    font-size: 0.875rem;
    padding: 15px 38px 11px 20px;
  }
  .p-interview-search-form__content form .form-submit .c-btn span::before {
    right: 20px;
    margin-top: 0;
    transform: translateY(-50%);
  }
  .p-interview-search-form__content form .form-submit .btn-reset {
    margin-top: 14px;
    display: inline-block;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-interview-search-form__content form .form-submit .btn-reset:hover {
    opacity: 0.6;
  }
  .p-interview-search-form__content form .form-submit .btn-reset:before {
    content: "\ea05";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    margin-right: 2px;
  }
  .p-interview-search-form__content form .form-submit .btn-reset input {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 1264px) and (min-width: 768px) {
  .p-interview-search-form form .form-items .form-item {
    width: 50%;
  }
  .p-interview-search-form form .form-items .form-item + .form-item {
    padding-left: 45px;
  }
  .p-interview-search-form form .form-items .form-item dt {
    padding-right: 2em;
  }
  .p-interview-search-form form .form-items .form-item dd {
    width: 100%;
  }
  .p-interview-search-form form .form-items .form-keywords {
    width: 100%;
  }
  .p-interview-search-form form .form-items .form-keywords dd {
    width: auto;
  }
}
@media screen and (max-width: 980px) and (min-width: 768px) {
  .p-interview-search-form form {
    flex-wrap: wrap;
  }
  .p-interview-search-form form .form-submit {
    width: 100%;
    border-left: none;
    margin-left: 0;
    padding-left: 0;
    margin-top: 40px;
    display: flex;
  }
  .p-interview-search-form form .form-submit .c-btn {
    margin-right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-search-form {
    position: relative;
    z-index: 20;
  }
  .p-interview-search-form__inner {
    box-shadow: 0px 0px 5.3333vw rgba(12, 13, 106, 0.1);
    border-radius: 0.6667vw;
  }
  .p-interview-search-form__inner.is-active .p-interview-search-form__title {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  .p-interview-search-form__inner.is-active .p-interview-search-form__title .icon::before {
    transform: rotate(0deg);
  }
  .p-interview-search-form__title {
    cursor: pointer;
    border-radius: 0.6667vw;
    background: #dfe6ea;
    color: #0c0d6a;
    font-size: 3.7333vw;
    padding: 5.3333vw 5.6vw;
    position: relative;
  }
  .p-interview-search-form__title .icon {
    border: solid 1px #0c0d6a;
    border-radius: 50%;
    width: 5.6vw;
    height: 5.6vw;
    display: block;
    position: absolute;
    top: 50%;
    right: 5.6vw;
    transform: translateY(-50%);
  }
  .p-interview-search-form__title .icon::before, .p-interview-search-form__title .icon::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    width: 2.9333vw;
    height: 0.1333vw;
    border-top: solid 1px #0c0d6a;
    top: 2.4vw;
    left: 1.0667vw;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-interview-search-form__title .icon::before {
    transform: rotate(90deg);
  }
  .p-interview-search-form__content {
    display: none;
    padding: 6.9333vw 5.6vw 8.2667vw;
  }
  .p-interview-search-form__content form .form-items .form-item + .form-item {
    margin-top: 6.9333vw;
  }
  .p-interview-search-form__content form .form-items .form-item dt {
    font-size: 3.4667vw;
    margin-bottom: 1.6vw;
  }
  .p-interview-search-form__content form .form-items .form-item dd select {
    font-size: 3.4667vw;
    border-radius: 0.8vw;
    padding: 4.2667vw 12.2667vw 3.7333vw 4vw;
  }
  .p-interview-search-form__content form .form-items .form-item dd .select-wrap::after {
    right: 5.3333vw;
    width: 2.6667vw;
    height: 1.6vw;
    background-size: 2.6667vw 1.6vw;
  }
  .p-interview-search-form__content form .form-items .form-keywords {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .p-interview-search-form__content form .form-items .form-keywords dt {
    width: 100%;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd {
    margin-right: 1.0667vw;
    margin-top: 2.1333vw;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd .keyword label {
    border-radius: 5.3333vw;
    padding: 1.6vw 3.2vw 1.6vw 8vw;
  }
  .p-interview-search-form__content form .form-items .form-keywords dd .keyword label::before, .p-interview-search-form__content form .form-items .form-keywords dd .keyword label::after {
    top: 2.1333vw;
    left: 2.6667vw;
    width: 4.2667vw;
    height: 4.2667vw;
    background-size: 4.2667vw auto;
  }
  .p-interview-search-form__content form .form-submit {
    margin-top: 6.9333vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .p-interview-search-form__content form .form-submit .c-btn input[type=submit] {
    padding: 0 11.4667vw 0 6.9333vw;
    height: 16vw;
    line-height: 16vw;
  }
  .p-interview-search-form__content form .form-submit .btn-reset {
    margin-right: 4.4vw;
  }
  .p-interview-search-form__content form .form-submit .btn-reset input {
    font-size: 3.4667vw;
    padding: 0;
  }
  .p-interview-search-form__content form .form-submit .btn-reset:before {
    content: "\ea05";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
    margin-right: 2.1333vw;
  }
}

/*--------------------------------------------------------------------------
  p-interview-list
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-interview-search-form + .p-interview-list {
    margin-top: 25px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-search-form + .p-interview-list {
    margin-top: 2.6667vw;
  }
}

@media screen and (min-width: 768px) {
  .p-interview-list + .c-btn-all {
    margin-top: 85px;
    margin-bottom: 106px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-list + .c-btn-all {
    margin-top: 18.6667vw;
    margin-bottom: 17.3333vw;
  }
}

.p-interview-list__item a {
  overflow: hidden;
  display: block;
  background-color: #FFFFFF;
  text-decoration: none;
}
.p-interview-list__item .ttl {
  color: #0c0d6a;
  font-weight: bold;
}
.p-interview-list__item .name {
  font-weight: bold;
  color: #0a0a0a;
}
.p-interview-list__item .info {
  color: #777777;
}
@media screen and (min-width: 768px) {
  .p-interview-list.p-interview-list- {
    margin-bottom: 0;
  }
  .p-interview-list.p-interview-list--archive .img {
    height: 370px;
    overflow: hidden;
    display: flex;
    justify-content: center;
  }
  .p-interview-list.p-interview-list--archive .img img {
    height: 100%;
    width: auto;
    max-width: none;
  }
  .c-next-article .p-interview-list {
    margin-bottom: 0;
  }
  .c-next-article .p-interview-list .ttl {
    font-size: 1.1875rem;
  }
  .p-interview-list__inner {
    display: flex;
    flex-wrap: wrap;
    padding-right: 50px;
  }
  .p-interview-list__noresult {
    padding-top: 20px;
    margin-bottom: -3px;
  }
  .p-interview-list__noresult .ttl {
    font-size: 1.1875rem;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .p-interview-list__noresult .txt {
    font-size: 0.9375rem;
  }
  .p-interview-list__item {
    width: 33.333333%;
    padding: 20px 20px 0 0;
  }
  .p-interview-list__item a {
    border-radius: 5px;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.1);
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    height: 100%;
  }
  .p-interview-list__item a:hover {
    box-shadow: 0px 0px 34px 0px rgba(62, 63, 119, 0.4);
    transform: translate(0, -6px);
  }
  .p-interview-list__item a:hover .img:before {
    opacity: 1;
  }
  .p-interview-list__item .img {
    position: relative;
  }
  .p-interview-list__item .img:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(12, 13, 106, 0.4);
    opacity: 0;
    z-index: 1;
    transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-interview-list__item .txt-wrap {
    padding: 33px 25px 33px 27px;
  }
  .p-interview-list__item .ttl {
    font-size: 1.3125rem;
    line-height: 1.5;
  }
  .p-interview-list__item .name {
    margin-top: 21px;
    font-size: 0.9375rem;
  }
  .p-interview-list__item .info {
    margin-top: 6px;
    font-size: 0.9375rem;
  }
  .p-interview-list__item .c-keywords {
    margin-top: 18px;
  }
}
@media screen and (max-width: 960px) and (min-width: 768px) {
  .p-interview-list .p-interview-list__item {
    flex-basis: 50%;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-list.p-interview-list- {
    margin-bottom: 0;
  }
  .p-interview-list.p-interview-list--archive .img {
    height: 93.8667vw;
    overflow: hidden;
    display: flex;
    justify-content: center;
  }
  .p-interview-list.p-interview-list--archive .img img {
    height: 100%;
    width: auto;
    max-width: none;
  }
  .c-next-article .p-interview-list {
    margin-bottom: 0;
  }
  .p-interview-list__noresult {
    padding-top: 4.5333vw;
    padding-left: 3.8667vw;
    padding-right: 3.8667vw;
    margin-bottom: -6.9333vw;
  }
  .p-interview-list__noresult .ttl {
    font-size: 3.7333vw;
    font-weight: bold;
    margin-bottom: 1.6vw;
  }
  .p-interview-list__noresult .txt {
    font-size: 3.4667vw;
  }
  .p-interview-list__item {
    padding-top: 2.6667vw;
  }
  .p-interview-list__item a {
    box-shadow: 0px 0px 9.0667vw 0px rgba(12, 13, 106, 0.1);
    border-radius: 1.3333vw;
  }
  .p-interview-list__item .txt-wrap {
    padding: 6.6667vw 5.7333vw;
  }
  .p-interview-list__item .ttl {
    font-size: 4.5333vw;
    line-height: 1.5;
  }
  .p-interview-list__item .ttl br {
    display: none !important;
  }
  .p-interview-list__item .name {
    margin-top: 2.9333vw;
    font-size: 3.7333vw;
  }
  .p-interview-list__item .info {
    margin-top: 1.8667vw;
    font-size: 3.2vw;
  }
  .p-interview-list__item .c-keywords {
    margin-top: 5.0667vw;
  }
  .p-interview-list--slider-sp .p-interview-list__inner {
    display: flex;
    width: 257.6vw;
  }
  .p-interview-list--slider-sp .p-interview-list__inner .p-interview-list__item {
    width: 85.8667vw;
    padding-right: 2.6667vw;
  }
  .p-interview-list--slider-sp .p-interview-list__inner .p-interview-list__item a {
    height: 100%;
  }
}

/*--------------------------------------------------------------------------
  p-interview-detail
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-interview-detail-section {
    padding-top: 90px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section {
    padding-top: 13.8667vw;
  }
}
.p-interview-detail-section__title {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section__title {
    margin-bottom: 45px;
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section__title {
    margin-bottom: 4vw;
    font-size: 5.0667vw;
  }
}
.p-interview-detail-section .txt {
  line-height: 2;
}
.p-interview-detail-section .txt strong {
  background: #f3f6f9;
  color: #0c0d6a;
  font-weight: bold;
  padding: 3px 4px;
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section .txt + .txt {
    margin-top: 24px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section .txt + .txt {
    margin-top: 4vw;
  }
}
.p-interview-detail-section .note {
  line-height: 2;
  color: #777777;
  text-indent: -1.2em;
  padding-left: 1.2em;
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section .note {
    margin-top: 24px;
    font-size: 0.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section .note {
    margin-top: 4vw;
    font-size: 3.4667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section .img {
    width: 47.1813%;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section .img {
    margin-bottom: 6.9333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section .img img {
    border-radius: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section .img img {
    border-radius: 0.6667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section .img img + img {
    margin-top: 16px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section .img img + img {
    margin-top: 1.3333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section .txt-wrap {
    width: 47.1813%;
  }
}
.p-interview-detail-section .c-empathy {
  justify-content: flex-end;
}
@media screen and (min-width: 768px) {
  .p-interview-detail-section .c-empathy {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-section .c-empathy {
    margin-top: 2.6667vw;
  }
}

/*--------------------------------------------------------------------------
  p-interview-detail-keywords
---------------------------------------------------------------------------*/
.p-interview-detail-keywords {
  display: flex;
}
.p-interview-detail-keywords .label {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #777777;
}
@media screen and (min-width: 768px) {
  .p-interview-detail-keywords {
    margin-top: 30px;
    margin-bottom: 60px;
    align-items: center;
  }
  .p-interview-detail-keywords .label {
    font-size: 1.1875rem;
    margin-right: 20px;
    padding-right: 19px;
    padding-top: 1px;
    padding-bottom: 1px;
    border-right: solid 1px #cccccc;
  }
  .p-interview-detail-keywords .c-keywords {
    margin-bottom: -10px;
  }
  .p-interview-detail-keywords .c-keywords li {
    margin-right: 8px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  .p-interview-detail-keywords {
    margin-top: 9.8667vw;
    margin-bottom: 14.5333vw;
    align-items: flex-start;
  }
  .p-interview-detail-keywords .label {
    font-size: 4vw;
    margin-right: 4vw;
    padding-right: 4vw;
    padding-top: 0.2667vw;
    padding-bottom: 0.2667vw;
    border-right: solid 0.2667vw #cccccc;
  }
  .p-interview-detail-keywords .c-keywords {
    margin-bottom: -1.7333vw;
  }
  .p-interview-detail-keywords .c-keywords li {
    margin-right: 1.6vw;
    margin-bottom: 1.7333vw;
  }
}

/*--------------------------------------------------------------------------
  p-about-introduction
---------------------------------------------------------------------------*/
.p-about-intro {
  position: relative;
}
.p-about-intro .l-inner-m {
  position: relative;
  z-index: 10;
}
.p-about-intro__inner {
  text-align: center;
}
.p-about-intro .c-bg-font {
  top: 0;
  right: auto;
  left: 50%;
  transform: translateX(-50%);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-about-intro {
    padding: 11.2vw 0 13.8667vw;
  }
  .p-about-intro__inner {
    padding: 0;
  }
  .p-about-intro__title {
    margin: 0 auto;
    width: 86.6667vw;
  }
  .p-about-intro .p-about-img-txt {
    padding-top: 13.8667vw;
  }
  .p-about-intro .c-bg-font {
    top: -1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .p-about-intro {
    padding: 112px 0 120px;
  }
  .p-about-intro__title {
    margin: 0 auto;
    width: 579px;
  }
  .p-about-intro .p-about-img-txt {
    padding-top: 90px;
  }
  .p-about-intro .c-bg-font {
    top: -10px;
  }
}

/*--------------------------------------------------------------------------
  p-about-img-txt
---------------------------------------------------------------------------*/
.p-about-img-txt .txt-wrap .txt {
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-about-img-txt:first-of-type {
    margin-top: 0;
  }
  .p-about-img-txt .img {
    width: 47.0588%;
  }
  .p-about-img-txt .txt-wrap {
    max-width: 544px;
    width: 47.0588%;
  }
  .p-about-img-txt .txt-wrap .txt {
    margin-top: 30px;
  }
}
@media screen and (max-width: 900px) and (min-width: 768px) {
  .p-about-img-txt .c-img-txt {
    flex-wrap: wrap;
  }
  .p-about-img-txt .c-img-txt .img,
  .p-about-img-txt .c-img-txt .txt-wrap {
    width: 100%;
    max-width: none;
  }
  .p-about-img-txt .c-img-txt .txt-wrap {
    margin-top: 45px;
  }
}
@media screen and (max-width: 767px) {
  .p-about-img-txt .txt-wrap {
    margin-top: 6.6667vw;
  }
  .p-about-img-txt .txt-wrap .txt {
    margin-top: 5.0667vw;
  }
}

/*--------------------------------------------------------------------------
  p-about-business
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-about-business {
    padding-top: 114px;
  }
  .p-about-business .p-about-img-txt .img {
    padding-top: 6px;
  }
}
@media screen and (max-width: 767px) {
  .p-about-business {
    padding-top: 13.8667vw;
  }
}

/*--------------------------------------------------------------------------
  p-about-business__slider
---------------------------------------------------------------------------*/
.p-about-business__slider .list li .txt-wrap h3 {
  position: relative;
  display: inline-block;
}
.p-about-business__slider .list li .txt-wrap h3:before, .p-about-business__slider .list li .txt-wrap h3:after {
  content: "";
  display: block;
  position: absolute;
  color: #FFFFFF;
}
.p-about-business__slider .list li .txt-wrap h3:before {
  transform-origin: left top;
}
.p-about-business__slider .list li .txt-wrap h3:after {
  transform-origin: right top;
}
@media screen and (min-width: 768px) {
  .p-about-business__slider {
    margin-top: 60px;
  }
  .p-about-business__slider .inner {
    margin: 30px 0 0;
    padding-bottom: 120px;
    overflow: hidden;
    width: 100%;
    position: relative;
    height: 48.6111vw;
  }
  .p-about-business__slider .list {
    display: flex;
    align-items: flex-start;
    position: absolute;
    top: 0;
    width: 827.7778vw;
    left: calc(50vw - 1173px);
    height: 34.7222vw;
  }
  .p-about-business__slider .list li {
    position: relative;
    width: 596px;
    padding-right: 40px;
    opacity: 0.5;
    transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  }
  .p-about-business__slider .list li.is-current {
    opacity: 1;
  }
  .p-about-business__slider .list li.is-current .txt-wrap {
    opacity: 1;
  }
  .p-about-business__slider .list li img {
    max-width: none;
  }
  .p-about-business__slider .list li .txt-wrap {
    opacity: 0;
    transition: opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition-delay: 0.5s;
    margin-top: -32px;
    width: 100%;
    z-index: 1;
  }
  .p-about-business__slider .list li .txt-wrap h3 {
    border-radius: 0 5px 5px 0;
    padding: 15px 50px 0 0;
    min-width: 25.2101%;
    color: #0c0d6a;
    background: #FFFFFF;
  }
  .p-about-business__slider .list li .txt-wrap h3:before, .p-about-business__slider .list li .txt-wrap h3:after {
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 10px;
    transform: scale(0.5);
  }
  .p-about-business__slider .list li .txt-wrap h3:before {
    top: -5px;
  }
  .p-about-business__slider .list li .txt-wrap h3:after {
    right: -5px;
    top: 27px;
  }
  .p-about-business__slider .list li .txt-wrap p {
    margin-top: 15px;
    color: #0a0a0a;
    line-height: 1.8;
    font-size: 0.875rem;
  }
  .p-about-business__slider .prev, .p-about-business__slider .next {
    position: absolute;
    top: 185px;
    margin-top: -25px;
    z-index: 1;
  }
  .p-about-business__slider .prev a, .p-about-business__slider .next a {
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    text-decoration: none;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
    border-radius: 50%;
  }
  .p-about-business__slider .prev a:hover, .p-about-business__slider .next a:hover {
    background-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0px 0px 12px 0px rgba(12, 13, 106, 0.5);
  }
  .p-about-business__slider .prev a:before, .p-about-business__slider .next a:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "\ea02";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 50px;
    color: #0c0d6a;
  }
  .p-about-business__slider .prev {
    left: 5vw;
  }
  .p-about-business__slider .prev a {
    transform: rotate(-180deg);
  }
  .p-about-business__slider .next {
    right: 5vw;
  }
}
@media screen and (max-width: 1292px) and (min-width: 768px) {
  .p-about-business__slider .list {
    left: -452px;
    left: -31.3889vw;
  }
  .p-about-business__slider .list li {
    width: 41.3889vw;
    padding-right: 2.7778vw;
  }
  .p-about-business__slider .next, .p-about-business__slider .prev {
    top: 12.8472vw;
  }
}
@media screen and (max-width: 767px) {
  .p-about-business__slider {
    margin-top: 8.5333vw;
  }
  .p-about-business__slider .inner {
    margin-top: 5.8667vw;
    padding-bottom: 19.2vw;
    position: relative;
    overflow: hidden;
  }
  .p-about-business__slider .prev, .p-about-business__slider .next {
    position: absolute;
    top: 28.6667vw;
    margin-top: -3.3333vw;
    z-index: 1;
  }
  .p-about-business__slider .prev a, .p-about-business__slider .next a {
    display: block;
    position: relative;
    width: 6.6667vw;
    height: 6.6667vw;
    text-decoration: none;
  }
  .p-about-business__slider .prev a:before, .p-about-business__slider .next a:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "\ea02";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 6.6667vw;
    line-height: 6.6667vw;
    color: #0c0d6a;
  }
  .p-about-business__slider .prev {
    left: 2.9333vw;
  }
  .p-about-business__slider .prev a {
    transform: rotate(-180deg);
  }
  .p-about-business__slider .next {
    right: 4vw;
  }
  .p-about-business__slider .list {
    display: flex;
    align-items: flex-start;
    position: absolute;
    top: 0;
    left: -84vw;
  }
  .p-about-business__slider .list li {
    position: relative;
    width: 88.9333vw;
    padding: 0 1.3333vw;
    opacity: 0.5;
    transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  }
  .p-about-business__slider .list li.is-current {
    opacity: 1;
  }
  .p-about-business__slider .list li.is-current .txt-wrap {
    opacity: 1;
  }
  .p-about-business__slider .list li img {
    max-width: none;
  }
  .p-about-business__slider .list li .txt-wrap {
    opacity: 0;
    transition: opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition-delay: 0.5s;
    margin-top: -5.8667vw;
    width: 100%;
    z-index: 1;
  }
  .p-about-business__slider .list li .txt-wrap h3 {
    display: inline-block;
    border-radius: 0 0.6667vw 0.6667vw 0;
    padding: 1.3333vw 2.6667vw 1.3333vw 0;
    min-width: 23.6vw;
    color: #0c0d6a;
    background: #FFFFFF;
  }
  .p-about-business__slider .list li .txt-wrap h3:before, .p-about-business__slider .list li .txt-wrap h3:after {
    content: "\ea09";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    font-size: 2.6667vw;
    line-height: 2.6667vw;
    transform: scale(0.3);
  }
  .p-about-business__slider .list li .txt-wrap h3:before {
    top: -0.8vw;
    left: 0vw;
  }
  .p-about-business__slider .list li .txt-wrap h3:after {
    right: -0.8vw;
    bottom: 0vw;
  }
  .p-about-business__slider .list li .txt-wrap p {
    margin-top: 1.3333vw;
    color: #0a0a0a;
    line-height: 6.24vw;
  }
}

/*--------------------------------------------------------------------------
  p-about-case
---------------------------------------------------------------------------*/
.p-about-case__txt {
  line-height: 2;
}
.p-about-case__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.p-about-case__list-item a {
  background: #0c0d6a;
  color: #FFFFFF;
  line-height: 1.5;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
}
.p-about-case .c-section-header__title {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .p-about-case {
    padding: 120px 0 0;
  }
  .p-about-case__title {
    margin-bottom: 30px;
  }
  .p-about-case__txt {
    margin-bottom: 27px;
  }
  .p-about-case__list {
    margin-left: -17px;
  }
  .p-about-case__list-item {
    margin-left: 17px;
    margin-top: 18px;
  }
  .p-about-case__list-item a {
    font-size: 1.0625rem;
    width: 150px;
    height: 150px;
    border-radius: 5px;
    border: solid 1px #0c0d6a;
    transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
  }
  .p-about-case__list-item a:hover {
    text-decoration: none;
    background: #FFFFFF;
    color: #0c0d6a;
  }
  .p-about-case__list-item a::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    font-weight: normal;
    width: 10px;
    height: 10px;
    bottom: 11px;
    right: 13px;
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .p-about-case {
    padding: 13.8667vw 0 0;
  }
  .p-about-case__title {
    margin-bottom: 5.0667vw;
  }
  .p-about-case__txt {
    margin-bottom: 5.3333vw;
  }
  .p-about-case__list {
    margin-left: -1.3333vw;
  }
  .p-about-case__list-item {
    padding-left: 1.3333vw;
    margin-top: 1.6vw;
    width: 33.3333%;
  }
  .p-about-case__list-item a {
    font-size: 3.7333vw;
    width: 100%;
    height: 28vw;
    border-radius: 1.3333vw;
  }
  .p-about-case__list-item a::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    font-weight: normal;
    width: 3.2vw;
    height: 3.2vw;
    bottom: 1.6vw;
    right: 1.6vw;
    content: "\ea04";
    font-family: "myfont", sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 6px;
  }
}

/*--------------------------------------------------------------------------
  p-fulltime-employee
---------------------------------------------------------------------------*/
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion .c-img-txt {
    flex-direction: column;
  }
}
.p-fulltime-employee-promotion .c-img-txt .img {
  width: 47.77%;
  margin-left: auto;
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion .c-img-txt .img {
    width: 100%;
    margin-top: 13.3333vw;
  }
}
.p-fulltime-employee-promotion .c-img-txt .txt-wrap {
  width: 47.77%;
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion .c-img-txt .txt-wrap {
    width: 100%;
  }
}
.p-fulltime-employee-promotion .txt {
  margin-top: 30px;
  line-height: 2;
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion .txt {
    margin-top: 5.0667vw;
  }
}
.p-fulltime-employee-promotion__card {
  margin-top: 45px;
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion__card {
    margin-top: 6.9333vw;
  }
}
.p-fulltime-employee-promotion__card .item .link {
  display: flex;
  align-items: center;
  box-shadow: 0px 0px 32px rgba(12, 13, 106, 0.1);
  border-radius: 5px;
  overflow: hidden;
  transition: 100ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
}
@media screen and (min-width: 768px) {
  .p-fulltime-employee-promotion__card .item .link:hover {
    text-decoration: none;
    box-shadow: 0px 0px 34px 0px rgba(12, 13, 106, 0.4);
    transform: translate(0, -6px);
  }
  .p-fulltime-employee-promotion__card .item .link:hover .txt {
    color: black;
  }
}
.p-fulltime-employee-promotion__card .item .txt-wrap {
  width: 74.26%;
  padding: 0 24px;
  box-sizing: border-box;
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion__card .item .txt-wrap {
    width: 59.7333vw;
    padding: 0 4.8vw;
  }
}
.p-fulltime-employee-promotion__card .item .txt-wrap .txt {
  margin: 0;
}
.p-fulltime-employee-promotion__card .item .txt-wrap .link-txt {
  display: block;
  position: relative;
  margin-top: 10px;
  padding-left: 18px;
  color: #0c0d6a;
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion__card .item .txt-wrap .link-txt {
    margin-top: 2.6667vw;
    padding-left: 4vw;
  }
}
@media screen and (max-width: 767px) {
  .p-fulltime-employee-promotion__card .item .txt-wrap .link-txt {
    font-size: 3.2vw;
  }
}
.p-fulltime-employee-promotion__card .item .txt-wrap .link-txt:before {
  content: "\ea01";
  font-family: "myfont", sans-serif;
  font-weight: normal;
  line-height: 1;
  font-size: 13px;
  display: block;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  color: #0c0d6a;
  transition: 150ms cubic-bezier(0.47, 0, 0.745, 0.715) all;
}
.p-fulltime-employee-promotion__card .item .img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25.73%;
  text-align: right;
  overflow: hidden;
}
.p-fulltime-employee-promotion__card .item .img img {
  max-width: initial;
  width: auto;
  height: 100%;
  max-height: 142px;
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion__card .item .img img {
    max-width: 100%;
    width: 100%;
    height: auto;
    max-height: initial;
  }
}
@media screen and (max-width: 930px) {
  .p-fulltime-employee-promotion__card .item .img {
    width: 26.6667vw;
    margin-top: 0;
  }
}

.p-fulltime-employee-interview {
  padding: 120px 0 0;
}
@media screen and (max-width: 767px) {
  .p-fulltime-employee-interview {
    padding: 13.3333vw 0 0;
  }
}
.p-fulltime-employee-interview__txt {
  margin-top: 30px;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-fulltime-employee-interview__txt {
    margin-top: 5.3333vw;
  }
}

/*--------------------------------------------------------------------------
  p-top-message-section
---------------------------------------------------------------------------*/
.p-top-message-section {
  position: relative;
}
.p-top-message-section .c-bg-font span {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-top-message-section {
    padding-top: 90px;
  }
  .p-top-message-section .c-bg-font {
    top: -42px;
  }
}
@media screen and (max-width: 767px) {
  .p-top-message-section .c-bg-font {
    top: -4.5333vw;
  }
}

@media screen and (max-width: 767px) {
  .c-page-header + .p-top-message-section {
    margin-top: 0.8vw;
    padding-top: 13.8667vw;
  }
}

/*--------------------------------------------------------------------------
  p-top-message-head
---------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .p-top-message-head {
    padding: 0;
  }
}

.p-top-message-head .p-top-message-img-txt {
  position: relative;
  z-index: 10;
}
.p-top-message-head .p-top-message-img-txt .txt-wrap {
  background-color: #FFFFFF;
}
.p-top-message-head .p-top-message-img-txt .txt-wrap .copy {
  font-weight: bold;
  line-height: 1.5;
}
.p-top-message-head .p-top-message-img-txt .txt-wrap .txt {
  display: flex;
  align-items: center;
}
.p-top-message-head .p-top-message-img-txt .txt-wrap .txt .name {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-top-message-head .p-top-message-img-txt {
    margin-bottom: 145px;
  }
  .p-top-message-head .p-top-message-img-txt .img {
    max-width: 863px;
  }
  .p-top-message-head .p-top-message-img-txt .img img {
    border-radius: 5px;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap {
    max-width: 792px;
    border-radius: 5px;
    padding: 45px 61px;
    position: absolute;
    bottom: -145px;
    right: 0;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .copy {
    text-align: center;
    font-size: 2.125rem;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .txt {
    text-align: center;
    font-size: 0.9375rem;
    margin-top: 15px;
    justify-content: center;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .txt .name {
    font-size: 1.3125rem;
    margin-left: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
  .p-top-message-head .p-top-message-img-txt {
    margin-bottom: 135px;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap {
    bottom: -135px;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .copy {
    font-size: 1.875rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1062px) {
  .p-top-message-head .p-top-message-img-txt .txt-wrap {
    right: -35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 980px) {
  .p-top-message-head .p-top-message-img-txt {
    margin-bottom: 118px;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap {
    bottom: -118px;
    padding-top: 36px;
    padding-bottom: 36px;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .copy {
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-top-message-head .p-top-message-img-txt .img {
    margin-right: 3.46665vw;
  }
  .p-top-message-head .p-top-message-img-txt .img img {
    border-top-right-radius: 1.3333vw;
    border-bottom-right-radius: 1.3333vw;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap {
    margin-left: 3.46665vw;
    padding: 6.9333vw 6.6667vw 6.9333vw 4vw;
    border-top-left-radius: 1.3333vw;
    border-bottom-left-radius: 1.3333vw;
    position: relative;
    top: -8vw;
    margin-bottom: -8vw;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .copy {
    font-size: 5.6vw;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .txt {
    font-size: 3.4667vw;
    margin-top: 4vw;
  }
  .p-top-message-head .p-top-message-img-txt .txt-wrap .txt .name {
    font-size: 4.5333vw;
    font-weight: bold;
    line-height: 1.5;
    margin-left: 4.2667vw;
  }
}

/*--------------------------------------------------------------------------
  p-top-message-sub-section
---------------------------------------------------------------------------*/
.p-top-message-sub-section .txt {
  line-height: 2;
}
.p-top-message-sub-section .c-section-header__title {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .p-top-message-sub-section {
    padding-top: 90px;
    padding-left: 144px;
    padding-right: 144px;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  .p-top-message-sub-section .img-txt {
    display: flex;
    justify-content: space-between;
    padding-bottom: 90px;
  }
  .p-top-message-sub-section .img-txt .img {
    width: 33.3333%;
    max-width: 288px;
    margin-top: 30px;
  }
  .p-top-message-sub-section .img-txt .txt-wrap {
    width: 61.6898%;
    max-width: 533px;
  }
}
@media screen and (min-width: 768px) {
  .p-top-message-sub-section .txt {
    margin-top: 30px;
  }
  .p-top-message-sub-section .txt + .txt {
    margin-top: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
  .p-top-message-sub-section {
    padding-left: 72px;
    padding-right: 72px;
  }
}
@media screen and (min-width: 768px) and (max-width: 980px) {
  .p-top-message-sub-section {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-top-message-sub-section {
    padding-top: 13.8667vw;
  }
  .p-top-message-sub-section .txt {
    margin-top: 4vw;
  }
  .p-top-message-sub-section .img-txt {
    padding-bottom: 13.8667vw;
  }
  .p-top-message-sub-section .img-txt .img {
    margin-top: 4vw;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-message-section
---------------------------------------------------------------------------*/
.p-recruit-message-section {
  position: relative;
}
.p-recruit-message-section .c-bg-font {
  right: auto;
  left: 50%;
  transform: translateX(-50%);
}
.p-recruit-message-section .c-bg-font span {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-recruit-message-section {
    padding-top: 90px;
  }
  .p-recruit-message-section .c-bg-font {
    top: -4px;
  }
  .p-recruit-message-section .c-section-header + .txt {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-message-section .c-bg-font {
    top: -0.5333vw;
  }
  .p-recruit-message-section .c-section-header + .txt {
    margin-top: 4vw;
  }
}

@media screen and (max-width: 767px) {
  .c-page-header + .p-recruit-message-section {
    padding-top: 14.6667vw;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-message-head
---------------------------------------------------------------------------*/
.p-recruit-message-head {
  position: relative;
  z-index: 10;
}
.p-recruit-message-head .copy {
  font-weight: bold;
}
.p-recruit-message-head .txt {
  display: flex;
  align-items: center;
}
.p-recruit-message-head .txt .name {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-recruit-message-head {
    text-align: center;
  }
  .p-recruit-message-head .copy {
    font-size: 2.125rem;
  }
  .p-recruit-message-head .txt {
    margin-top: 15px;
    justify-content: center;
  }
  .p-recruit-message-head .txt .name {
    font-size: 1.3125rem;
    margin-left: 16px;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-message-head .copy {
    font-size: 5.6vw;
  }
  .p-recruit-message-head .txt {
    margin-top: 3.4667vw;
  }
  .p-recruit-message-head .txt .name {
    font-size: 4.5333vw;
    margin-left: 4.2667vw;
  }
}

/*--------------------------------------------------------------------------
  p-recruit-message-sub-section
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-recruit-message-sub-section {
    margin-top: 90px;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-message-sub-section {
    margin-top: 14.4vw;
  }
}
.p-recruit-message-sub-section__title {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-recruit-message-sub-section__title {
    margin-bottom: 45px;
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-message-sub-section__title {
    margin-bottom: 4vw;
    font-size: 5.0667vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-message-sub-section .img {
    width: 47.1813%;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-message-sub-section .img {
    margin-bottom: 6.9333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-message-sub-section .img img {
    border-radius: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-message-sub-section .img img {
    border-radius: 1.3333vw;
  }
}
@media screen and (min-width: 768px) {
  .p-recruit-message-sub-section .txt-wrap {
    width: 47.1813%;
  }
}
.p-recruit-message-sub-section .txt {
  line-height: 2;
}
.p-recruit-message-sub-section .txt strong {
  background: #f3f6f9;
  color: #0c0d6a;
  font-weight: bold;
  padding: 3px 4px;
}
@media screen and (min-width: 768px) {
  .p-recruit-message-sub-section .txt + .txt {
    margin-top: 24px;
  }
}
@media screen and (max-width: 767px) {
  .p-recruit-message-sub-section .txt + .txt {
    margin-top: 4vw;
  }
}

@media screen and (min-width: 768px) {
  .c-page-header + .p-recruit-message-section {
    padding-bottom: 90px;
  }
}
@media screen and (max-width: 767px) {
  .c-page-header + .p-recruit-message-section {
    padding-bottom: 13.8667vw;
  }
}

/*--------------------------------------------------------------------------
  p-message-images
---------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .p-message-images .img img,
  .p-message-image .img img {
    border-radius: 5px;
  }
}
@media screen and (max-width: 767px) {
  .p-message-images .img img,
  .p-message-image .img img {
    border-radius: 1.3333vw;
  }
}

@media screen and (min-width: 768px) {
  .p-message-images {
    margin-top: 90px;
    display: flex;
    justify-content: space-between;
    gap: 30px;
  }
}
@media screen and (max-width: 767px) {
  .p-message-images {
    margin-top: 13.8667vw;
  }
  .p-message-images .img + .img {
    margin-top: 2.4vw;
  }
}

@media screen and (max-width: 767px) {
  .p-message-image {
    margin-left: -6.9333vw;
    margin-right: -6.9333vw;
  }
  .p-message-image .img img {
    border-radius: 0;
  }
}
/*# sourceMappingURL=common.css.map */
