@charset "UTF-8";
/**
 * scss setting
 */
/* ==========================================================================
   #fanction
========================================================================== */
/* ==========================================================================
   #mixin
========================================================================== */
/* ==========================================================================
   #general
========================================================================== */
body {
  color: #000000;
  font-family: YakuHanJP, "Hiragino Sans", "Hiragino Kaku Gothic ProN", YuGothic, "Yu Gothic medium", Meiryo, "sans-serif";
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  animation: fadeIn 3s ease 0s 1 normal;
  -webkit-animation: fadeIn 3s ease 0s 1 normal; }

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

p, li, td, dt, dd, h1, h2, h3, h4, h5 {
  font-weight: 400;
  letter-spacing: .05em;
  line-height: 2; }

a {
  transition: opacity .25s; }
  a:hover {
    opacity: .7; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
/* font size */
html, body {
  font-size: .83333vw; }

/*
@media screen and (max-width: 1400px) {
	html, body {
		font-size: 1vw;
	}
}
*/
@media screen and (max-width: 960px) {
  html, body {
    font-size: 2.083333vw; } }
@media screen and (max-width: 580px) {
  html, body {
    font-size: 13.5px; } }
@media screen and (max-width: 320px) {
  html, body {
    font-size: 3.466666vw; } }
/**
 * common css
 */
/* ==========================================================================
   #common
========================================================================== */
._spBlock {
  display: none; }

._secTop {
  padding-top: 15rem; }

._secWrap {
  padding-left: 21.25rem;
  padding-right: 21.25rem; }

._secWrap2 {
  padding-left: 12.5rem;
  padding-right: 12.5rem; }

._secWrap3 {
  max-width: 59.375rem;
  margin: 0 auto;
  padding-left: 1.5625rem;
  padding-right: 1.5625rem; }

.c-front-cap h2 {
  font-family: "termina", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing: 0;
  color: #00A37A;
  font-size: 7.5rem;
  line-height: 1.2; }
.c-front-cap p {
  color: #00A37A;
  font-size: 1.25rem;
  font-weight: 600;
  margin-top: 1.875rem;
  margin-left: 0.3125rem; }

.c-front-link a {
  width: 15.625rem;
  height: 5.625rem;
  background: linear-gradient(to right, #00A37A, #1ACE5A);
  border-radius: 50%;
  color: #ffffff;
  font-weight: 600;
  padding: 0 2.1875rem 0 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .c-front-link a img {
    width: 1rem; }

.c-sub-hero {
  background: linear-gradient(to right, #00A37A, #1ACE5A);
  margin-top: 6.875rem;
  margin-bottom: 15rem;
  padding-top: 13.75rem;
  padding-bottom: 6.25rem; }
  .c-sub-hero p, .c-sub-hero h1 {
    color: #ffffff;
    text-align: right; }
  .c-sub-hero .hero__label {
    font-size: 1.5rem;
    font-weight: 600; }
  .c-sub-hero .hero__title {
    font-family: "termina", sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0;
    font-size: 7.5rem;
    line-height: 1.3; }

.c-sub-cap .cap__title {
  font-family: "termina", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing: 0;
  font-size: 3.5rem;
  line-height: 1.5; }
.c-sub-cap .cap__text {
  font-size: 0.875rem;
  font-weight: 600; }

.c-page-nav {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 0.625rem;
  grid-row-gap: 0.625rem;
  width: 100%;
  max-width: 52.8125rem;
  margin: 0 auto; }
  .c-page-nav .col__item a {
    width: 100%;
    height: 4rem;
    border: solid #000000 1px;
    border-radius: 2rem;
    padding: 0 1.5625rem 0 1.875rem;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .c-page-nav .col__item a span {
      font-size: 0.9375rem;
      font-weight: 600; }
    .c-page-nav .col__item a img {
      width: 0.875rem; }

.c-page-cat {
  border-bottom: solid #cccccc 1px;
  display: flex;
  justify-content: flex-end;
  padding-bottom: 2.5rem; }
  .c-page-cat li {
    margin-left: 2.1875rem;
    padding-left: 1.125rem;
    position: relative; }
    .c-page-cat li:nth-child(2)::before {
      background: #00A37A; }
    .c-page-cat li:nth-child(3)::before {
      background: #3DAFCB; }
    .c-page-cat li:nth-child(4)::before {
      background: #ec7c1a; }
    .c-page-cat li::before {
      position: absolute;
      content: '';
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 0.5rem;
      height: 0.5rem;
      background: #1ACE5A;
      border-radius: 100%; }
    .c-page-cat li a {
      font-weight: 600; }

.c-recruit-cap h2 {
  font-family: "termina", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing: 0;
  color: #1ACE5A;
  font-size: 5.625rem;
  line-height: 1.3; }
.c-recruit-cap p {
  color: #1ACE5A;
  font-size: 1.125rem;
  font-weight: 600; }

.c-topics-list .c-topics-item {
  display: flex;
  border-bottom: solid #cccccc 1px;
  padding: 1.875rem 0; }
  .c-topics-list .c-topics-item:first-child {
    padding-top: 0; }
  .c-topics-list .c-topics-item .c-topics-image {
    width: 27.5%; }
    .c-topics-list .c-topics-item .c-topics-image ._thumbnail {
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      padding-top: 62.5%;
      display: block; }
  .c-topics-list .c-topics-item .c-topics-note {
    flex: 1;
    margin-left: 3.125rem;
    padding-top: 1.875rem; }
    .c-topics-list .c-topics-item .c-topics-note .c-topics-term {
      display: flex;
      align-items: center; }
      .c-topics-list .c-topics-item .c-topics-note .c-topics-term .c-topics-date {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        font-size: 0.875rem;
        margin-right: 0.9375rem; }
      .c-topics-list .c-topics-item .c-topics-note .c-topics-term .c-topics-cat {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        color: #00A37A;
        position: relative;
        padding-left: 0.75rem;
        font-size: 0.875rem; }
        .c-topics-list .c-topics-item .c-topics-note .c-topics-term .c-topics-cat::before {
          position: absolute;
          content: '';
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          width: 0.375rem;
          height: 0.375rem;
          background: #00A37A;
          border-radius: 100%; }
    .c-topics-list .c-topics-item .c-topics-note .c-topics-title {
      margin-top: 0.625rem; }
      .c-topics-list .c-topics-item .c-topics-note .c-topics-title a {
        font-size: 1.125rem; }

.c-breadcrumbs {
  margin-top: 15rem; }
  .c-breadcrumbs p {
    font-size: 0.6875rem;
    text-align: right; }

.c-pager {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 7.5rem; }
  .c-pager .page-numbers {
    font-family: "termina", sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0;
    width: 3.75rem;
    height: 3.75rem;
    background: #f2f2f2;
    border-radius: 100%;
    font-size: 0.9375rem;
    margin: 0 0.3125rem;
    display: flex;
    align-items: center;
    justify-content: center; }
    .c-pager .page-numbers.current {
      background: #000000;
      color: #ffffff; }

@media screen and (max-width: 1400px) {
  ._secWrap {
    padding-left: 10rem;
    padding-right: 10rem; }

  ._secWrap2 {
    padding-left: 6.25rem;
    padding-right: 6.25rem; } }
@media screen and (max-width: 960px) {
  ._spBlock {
    display: block; }

  ._spNone {
    display: none; }

  ._secTop {
    padding-top: 5.3846153846rem; }

  ._secWrap,
  ._secWrap2 {
    padding-left: 1.9230769231rem;
    padding-right: 1.9230769231rem; }

  .c-front-cap h2 {
    font-size: 3.4615384615rem;
    line-height: 1.2; }
  .c-front-cap p {
    font-size: 1.0769230769rem;
    margin-top: 0.2307692308rem;
    margin-left: 0rem; }

  .c-front-link a {
    width: 13.8461538462rem;
    height: 4.6153846154rem;
    padding: 0 1.875rem; }
    .c-front-link a img {
      width: 1.0769230769rem; }

  .c-sub-hero {
    margin-top: 6.1538461538rem;
    margin-bottom: 5.3846153846rem;
    padding-top: 5.3846153846rem;
    padding-bottom: 2.3076923077rem; }
    .c-sub-hero p, .c-sub-hero h1 {
      text-align: left; }
    .c-sub-hero .hero__label {
      font-size: 1.1538461538rem; }
    .c-sub-hero .hero__title {
      font-size: 3.2307692308rem;
      line-height: 1.4; }

  .c-sub-cap .cap__title {
    font-size: 2.7692307692rem;
    line-height: 1.2; }
  .c-sub-cap .cap__text {
    font-size: 1rem;
    margin-top: 0.6153846154rem; }

  .c-page-nav {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 0.3846153846rem;
    grid-row-gap: 0.3846153846rem;
    max-width: 100%; }
    .c-page-nav .col__item a {
      height: 4.1538461538rem;
      border-radius: 2.0769230769rem;
      padding: 0 1.5384615385rem 0 1.5384615385rem; }
      .c-page-nav .col__item a span {
        font-size: 0.9230769231rem;
        line-height: 1.4; }
      .c-page-nav .col__item a img {
        width: 0.9230769231rem; }

  .c-page-cat {
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-bottom: 1.9230769231rem; }
    .c-page-cat li {
      margin-left: 0;
      margin-right: 1.5384615385rem;
      padding-left: 1.1538461538rem;
      line-height: 2.2; }
      .c-page-cat li:nth-child(1) {
        margin-left: 0; }
      .c-page-cat li::before {
        width: 0.4375rem;
        height: 0.4375rem; }
      .c-page-cat li a {
        font-size: 0.9230769231rem; }

  .c-recruit-cap h2 {
    font-size: 3.3846153846rem;
    line-height: 1.3; }
  .c-recruit-cap p {
    font-size: 1.0769230769rem; }

  .c-topics-list .c-topics-item {
    padding: 1.5384615385rem 0; }
    .c-topics-list .c-topics-item .c-topics-image ._thumbnail {
      padding-top: 100%; }
    .c-topics-list .c-topics-item .c-topics-note {
      margin-left: 1.5384615385rem;
      padding-top: 0.7692307692rem; }
      .c-topics-list .c-topics-item .c-topics-note .c-topics-term .c-topics-date {
        font-size: 0.7692307692rem;
        margin-right: 0.6153846154rem; }
      .c-topics-list .c-topics-item .c-topics-note .c-topics-term .c-topics-cat {
        padding-left: 0.7692307692rem;
        font-size: 0.7692307692rem; }
        .c-topics-list .c-topics-item .c-topics-note .c-topics-term .c-topics-cat::before {
          top: 45%;
          width: 0.3846153846rem;
          height: 0.3846153846rem; }
      .c-topics-list .c-topics-item .c-topics-note .c-topics-title {
        margin-top: 0.6153846154rem;
        line-height: 1.8; }
        .c-topics-list .c-topics-item .c-topics-note .c-topics-title a {
          font-size: 1rem; }

  .c-breadcrumbs {
    margin-top: 5.3846153846rem; }
    .c-breadcrumbs p {
      font-size: 0.7692307692rem; }

  .c-pager {
    margin-top: 5.3846153846rem; }
    .c-pager .page-numbers {
      width: 3.5384615385rem;
      height: 3.5384615385rem;
      font-size: 0.9230769231rem;
      margin: 0 0.2307692308rem; } }
/**
 * header css
 */
/* ==========================================================================
   #header
========================================================================== */
.l-pcHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 6.875rem;
  background: #ffffff;
  padding: 0 1.5625rem;
  display: flex;
  align-items: center;
  z-index: 100; }
  .l-pcHeader .header-logo {
    display: flex; }
    .l-pcHeader .header-logo .header-logo-img {
      width: 17.1875rem; }
      .l-pcHeader .header-logo .header-logo-img img {
        width: 100%; }
  .l-pcHeader .header-nav {
    flex: 1; }
    .l-pcHeader .header-nav .header-nav-inner .header-nav-list {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      column-gap: 1.875rem; }
      .l-pcHeader .header-nav .header-nav-inner .header-nav-list .header-nav-item a {
        font-weight: 600; }
  .l-pcHeader .header-btn {
    margin-left: 2.5rem; }
    .l-pcHeader .header-btn a {
      width: 12.5rem;
      height: 3.75rem;
      background: linear-gradient(to right, #00A37A, #1ACE5A);
      border-radius: 1.875rem;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: opacity .25s; }
      .l-pcHeader .header-btn a:hover {
        opacity: .8; }
      .l-pcHeader .header-btn a img {
        width: 2.125rem; }
      .l-pcHeader .header-btn a span {
        font-family: "termina", sans-serif;
        font-weight: 700;
        font-style: normal;
        letter-spacing: 0;
        color: #ffffff;
        font-size: 1.125rem;
        margin: 0 0.9375rem 0 0.625rem; }

.l-spHeader {
  display: none; }

@media screen and (max-width: 960px) {
  .l-pcHeader {
    display: none; }

  .l-spHeader {
    display: block; }
    .l-spHeader .header-logo {
      position: absolute;
      top: 1.3846153846rem;
      left: 0.9230769231rem;
      z-index: 10; }
      .l-spHeader .header-logo .header-logo-img a img {
        width: 14.2307692308rem; }
    .l-spHeader .header-nav {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #ffffff;
      padding: 6.1538461538rem 3.0769230769rem;
      z-index: 90; }
      .l-spHeader .header-nav .header-nav-inner {
        height: 100%;
        overflow-y: scroll; }
        .l-spHeader .header-nav .header-nav-inner .header-nav-list .header-nav-item a {
          font-size: 0.9230769231rem;
          font-weight: 600; }
          .l-spHeader .header-nav .header-nav-inner .header-nav-list .header-nav-item a span {
            font-family: "termina", sans-serif;
            font-weight: 600;
            font-style: normal;
            letter-spacing: 0;
            color: #00A37A;
            display: block;
            font-size: 1.8461538462rem;
            line-height: 1.1; }
        .l-spHeader .header-nav .header-nav-inner .header-nav-list .header-nav-item + .header-nav-item {
          margin-top: 1.5384615385rem; }
      .l-spHeader .header-nav .header-nav-copy {
        position: absolute;
        right: 1.1538461538rem;
        bottom: 1.1538461538rem;
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        color: #a8a8a8;
        font-size: 0.7692307692rem; }
    .l-spHeader .header-toggle {
      position: fixed;
      top: 1.3846153846rem;
      right: 0.9230769231rem;
      width: 3.6923076923rem;
      height: 3.6923076923rem;
      border-radius: 100%;
      z-index: 100;
      background: linear-gradient(to right, #00A37A, #1ACE5A);
      display: flex;
      align-items: center;
      justify-content: center; }
      .l-spHeader .header-toggle .header-toggle-inner {
        width: 1.2307692308rem;
        height: 7px;
        position: relative; }
        .l-spHeader .header-toggle .header-toggle-inner span {
          position: absolute;
          left: 0;
          width: 100%;
          height: 1px;
          background: #ffffff; }
          .l-spHeader .header-toggle .header-toggle-inner span:nth-child(1) {
            top: 0; }
          .l-spHeader .header-toggle .header-toggle-inner span:nth-child(2) {
            bottom: 0; }
    .l-spHeader .header-btn {
      position: fixed;
      right: 0.9230769231rem;
      bottom: 0.9230769231rem;
      z-index: 80; }
      .l-spHeader .header-btn a {
        width: 11.5384615385rem;
        height: 3.5384615385rem;
        background: linear-gradient(to right, #00A37A, #1ACE5A);
        border-radius: 1.7692307692rem;
        display: flex;
        align-items: center;
        justify-content: center; }
        .l-spHeader .header-btn a img {
          width: 1.8461538462rem; }
        .l-spHeader .header-btn a span {
          font-family: "termina", sans-serif;
          font-weight: 700;
          font-style: normal;
          letter-spacing: 0;
          color: #ffffff;
          margin: 0.1538461538rem 0.7692307692rem 0; } }
/**
 * footer css
 */
/* ==========================================================================
   #footer
========================================================================== */
.child-page .l-footer {
  margin-top: 2.5rem; }

.l-footer {
  margin-top: 15rem; }

.footer-contact {
  position: relative; }
  .footer-contact .footer-contact-image {
    width: 100%;
    height: 45rem;
    position: relative; }
    .footer-contact .footer-contact-image::before {
      position: absolute;
      content: '';
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(to right, #00A37A, #1ACE5A);
      opacity: .8; }
    .footer-contact .footer-contact-image img {
      object-fit: cover;
      object-position: 50% 50%;
      width: 100%;
      height: 100%; }
  .footer-contact .footer-contact-note {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    transform: translateY(-50%); }
    .footer-contact .footer-contact-note .c-front-cap h2, .footer-contact .footer-contact-note .c-front-cap p {
      color: #ffffff;
      text-align: center; }
    .footer-contact .footer-contact-note .c-front-cap p {
      margin-top: 0;
      margin-bottom: 0.9375rem; }
    .footer-contact .footer-contact-note .footer-contact-text {
      color: #ffffff;
      font-size: 1.375rem;
      font-weight: 600;
      margin-top: 0.625rem;
      text-align: center; }
    .footer-contact .footer-contact-note .footer-contact-link {
      margin-top: 4.375rem; }
      .footer-contact .footer-contact-note .footer-contact-link a {
        width: 31.25rem;
        height: 6.875rem;
        background: rgba(255, 255, 255, 0.2);
        border-radius: 3.4375rem;
        color: #ffffff;
        font-size: 0.9375rem;
        line-height: 1.3;
        margin: 0 auto;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center; }
        .footer-contact .footer-contact-note .footer-contact-link a .en {
          font-family: "termina", sans-serif;
          font-weight: 700;
          font-style: normal;
          letter-spacing: 0;
          font-size: 2rem;
          display: block; }

.footer-nav {
  background: #000000;
  display: flex;
  align-items: center;
  padding-top: 4.375rem;
  padding-bottom: 4.375rem; }
  .footer-nav .footer-nav-logo {
    flex: 1;
    margin-right: 1.25rem; }
    .footer-nav .footer-nav-logo img {
      width: 60%; }
  .footer-nav .footer-nav-inner {
    width: 50%; }
    .footer-nav .footer-nav-inner .footer-nav-list {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr 1fr;
      grid-row-gap: 0.625rem; }
      .footer-nav .footer-nav-inner .footer-nav-list .footer-nav-item a {
        color: #ffffff; }

.footer-access {
  margin-top: 7.5rem; }
  .footer-access .footer-access-caption {
    font-family: "termina", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
    font-size: 1.25rem;
    text-align: center; }
  .footer-access .footer-access-col {
    margin-top: 2.5rem;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 1.875rem; }
    .footer-access .footer-access-col .col__item {
      border: solid #cccccc 1px;
      padding: 1.875rem 1.25rem; }
      .footer-access .footer-access-col .col__item .col__item-title {
        font-weight: 600;
        text-align: center; }
      .footer-access .footer-access-col .col__item .col__item-note {
        font-size: 0.8125rem;
        line-height: 1.8;
        margin-top: 0.1875rem;
        text-align: center; }
      .footer-access .footer-access-col .col__item .col__item-link {
        margin-top: 0.3125rem;
        text-align: center; }
        .footer-access .footer-access-col .col__item .col__item-link a {
          font-family: "termina", sans-serif;
          font-weight: 700;
          font-style: normal;
          letter-spacing: 0;
          color: #00A37A;
          font-size: 0.75rem; }
          .footer-access .footer-access-col .col__item .col__item-link a img {
            width: 1.375rem; }

.footer-copy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 5rem;
  margin-bottom: 3.75rem; }
  .footer-copy .footer-copy-sns .footer-copy-list {
    display: flex; }
    .footer-copy .footer-copy-sns .footer-copy-list .footer-copy-item {
      margin-right: 0.5rem; }
      .footer-copy .footer-copy-sns .footer-copy-list .footer-copy-item a {
        width: 2.875rem;
        height: 2.875rem;
        background: #f2f2f2;
        border-radius: 100%;
        display: flex;
        align-items: center;
        justify-content: center; }
        .footer-copy .footer-copy-sns .footer-copy-list .footer-copy-item a img {
          width: 55%;
          opacity: .5; }
  .footer-copy .footer-copy-term {
    display: flex;
    align-items: center; }
    .footer-copy .footer-copy-term .footer-copy-policy a {
      font-family: "termina", sans-serif;
      font-weight: 500;
      font-style: normal;
      letter-spacing: 0;
      color: #a8a8a8;
      font-size: 0.75rem; }
    .footer-copy .footer-copy-term .footer-copy-text {
      font-family: "termina", sans-serif;
      font-weight: 500;
      font-style: normal;
      letter-spacing: 0;
      color: #a8a8a8;
      font-size: 0.75rem;
      margin-left: 1.875rem; }

@media screen and (max-width: 960px) {
  .child-page .l-footer {
    margin-top: 1.5384615385rem; }

  .l-footer {
    margin-top: 5.3846153846rem; }

  .footer-contact .footer-contact-image {
    height: 34.6153846154rem; }
  .footer-contact .footer-contact-note .c-front-cap p {
    margin-bottom: 0.3846153846rem; }
  .footer-contact .footer-contact-note .footer-contact-text {
    font-size: 1.1538461538rem;
    margin-top: 0.7692307692rem; }
  .footer-contact .footer-contact-note .footer-contact-link {
    margin-top: 1.9230769231rem; }
    .footer-contact .footer-contact-note .footer-contact-link a {
      width: 21.1538461538rem;
      height: 6.1538461538rem;
      border-radius: 3.0769230769rem;
      font-size: 0.8461538462rem;
      font-weight: 600;
      line-height: 1.4; }
      .footer-contact .footer-contact-note .footer-contact-link a .en {
        font-size: 1.5384615385rem; }

  .footer-nav {
    display: block;
    padding-top: 3.8461538462rem;
    padding-bottom: 3.8461538462rem; }
    .footer-nav .footer-nav-logo {
      margin-right: 0;
      text-align: center; }
      .footer-nav .footer-nav-logo img {
        width: 15.3846153846rem; }
    .footer-nav .footer-nav-inner {
      width: 100%;
      margin-top: 3.0769230769rem; }
      .footer-nav .footer-nav-inner .footer-nav-list {
        grid-template-columns: 1fr 1fr 1fr;
        grid-column-gap: 0.3846153846rem;
        grid-row-gap: 0.9230769231rem; }
        .footer-nav .footer-nav-inner .footer-nav-list .footer-nav-item {
          border-bottom: solid #333 1px; }
          .footer-nav .footer-nav-inner .footer-nav-list .footer-nav-item a {
            font-size: 0.9230769231rem;
            padding-bottom: 0.3846153846rem; }

  .footer-access {
    margin-top: 4.6153846154rem; }
    .footer-access .footer-access-caption {
      font-size: 1.2307692308rem; }
    .footer-access .footer-access-col {
      margin-top: 2.3076923077rem;
      grid-template-columns: 1fr;
      grid-column-gap: 0rem;
      grid-row-gap: 0.7692307692rem; }
      .footer-access .footer-access-col .col__item {
        padding: 2.3076923077rem 1.5384615385rem; }
        .footer-access .footer-access-col .col__item .col__item-title {
          font-size: 1.0769230769rem; }
        .footer-access .footer-access-col .col__item .col__item-note {
          font-size: 0.9230769231rem;
          margin-top: 0.2307692308rem; }
        .footer-access .footer-access-col .col__item .col__item-link {
          margin-top: 0.3846153846rem; }
          .footer-access .footer-access-col .col__item .col__item-link a {
            font-size: 0.9230769231rem; }
            .footer-access .footer-access-col .col__item .col__item-link a img {
              width: 1.3846153846rem; }

  .footer-copy {
    display: block;
    margin-top: 4.6153846154rem;
    margin-bottom: 6.1538461538rem; }
    .footer-copy .footer-copy-sns .footer-copy-list {
      column-gap: 0.6153846154rem;
      justify-content: center; }
      .footer-copy .footer-copy-sns .footer-copy-list .footer-copy-item {
        margin-right: 0; }
        .footer-copy .footer-copy-sns .footer-copy-list .footer-copy-item a {
          width: 3.0769230769rem;
          height: 3.0769230769rem; }
    .footer-copy .footer-copy-term {
      display: block; }
      .footer-copy .footer-copy-term .footer-copy-policy {
        margin-top: 2.3076923077rem;
        text-align: center; }
        .footer-copy .footer-copy-term .footer-copy-policy a {
          font-size: 0.7692307692rem; }
      .footer-copy .footer-copy-term .footer-copy-text {
        font-size: 0.7692307692rem;
        margin-top: 3.8461538462rem;
        margin-left: 0;
        text-align: center; } }
/**
 * index css
 */
/* ==========================================================================
   #index
========================================================================== */
.p-index-hero {
  width: 100vw;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  padding: 6.875rem 0 5rem;
  position: relative; }
  .p-index-hero .hero-image {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: -2; }
    .p-index-hero .hero-image img {
      object-fit: cover;
      object-position: 50% 50%;
      width: 100%;
      height: 100%; }
  .p-index-hero .hero-sns {
    position: absolute;
    right: 5rem;
    bottom: 1.375rem;
    display: flex;
    align-items: center;
    z-index: 1; }
    .p-index-hero .hero-sns .hero-sns-label p {
      font-family: "termina", sans-serif;
      font-weight: 700;
      font-style: normal;
      letter-spacing: 0;
      color: #00A37A;
      font-size: 1.125rem; }
    .p-index-hero .hero-sns .hero-sns-list {
      display: flex;
      column-gap: 0.9375rem;
      margin-left: 2.5rem; }
      .p-index-hero .hero-sns .hero-sns-list .hero-sns-item a img {
        width: 2.125rem; }

.p-index-about {
  margin-top: -18.75rem; }
  .p-index-about .about-head {
    position: relative;
    z-index: -1; }
    .p-index-about .about-head .c-front-cap h2 {
      font-weight: 700; }
  .p-index-about .about-body {
    margin-top: 10rem; }
    .p-index-about .about-body .about-body-col {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-column-gap: 1.875rem;
      grid-row-gap: 7.5rem;
      padding: 0 5rem; }
      .p-index-about .about-body .about-body-col .col__item {
        text-align: center; }
        .p-index-about .about-body .about-body-col .col__item img {
          width: 12.5rem; }
        .p-index-about .about-body .about-body-col .col__item h2 {
          font-family: "termina", sans-serif;
          font-weight: 700;
          font-style: normal;
          letter-spacing: 0;
          color: #00A37A;
          font-size: 2.625rem;
          line-height: 1.5;
          margin-top: 3.125rem;
          text-align: center; }
        .p-index-about .about-body .about-body-col .col__item p {
          font-size: 1.125rem;
          font-weight: 600;
          text-align: center; }
        .p-index-about .about-body .about-body-col .col__item a {
          width: 15.625rem;
          height: 3.75rem;
          background: linear-gradient(to right, #00A37A, #1ACE5A);
          border-radius: 1.875rem;
          color: #ffffff;
          font-weight: 600;
          margin: 3.125rem auto 0;
          padding: 0 1.875rem 0 2.5rem;
          display: flex;
          align-items: center;
          justify-content: space-between; }
          .p-index-about .about-body .about-body-col .col__item a img {
            width: 1rem; }

.p-index-pickup .pickup-body {
  margin-top: 0rem;
  overflow: hidden; }
  .p-index-pickup .pickup-body .swiper {
    padding-top: 10rem;
    overflow: visible; }
    .p-index-pickup .pickup-body .swiper .swiper-wrapper .swiper-slide {
      width: 45%; }
    .p-index-pickup .pickup-body .swiper .swiper-controller {
      position: absolute;
      top: 0;
      right: 0;
      width: 10.625rem;
      height: 3.75rem; }
      .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-prev,
      .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-next {
        width: 5rem;
        height: 5rem;
        background: linear-gradient(to right, #00A37A, #1ACE5A);
        border-radius: 100%;
        top: 0;
        margin-top: 0; }
        .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-prev::after,
        .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-next::after {
          color: #ffffff;
          font-size: 0.9375rem;
          font-weight: 600; }
      .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-prev {
        left: 0; }
      .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-next {
        right: 0; }

.p-index-topics .topics-body {
  display: flex;
  padding-top: 10rem;
  position: relative; }
  .p-index-topics .topics-body .topics-body-cat {
    width: 17.5rem; }
    .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list .cat-item a {
      font-family: "termina", sans-serif;
      font-weight: 600;
      font-style: normal;
      letter-spacing: 0;
      color: #a8a8a8; }
    .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list .cat-item.current {
      position: relative; }
      .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list .cat-item.current::before {
        position: absolute;
        content: '';
        top: 50%;
        left: -0.9375rem;
        transform: translateY(-50%);
        width: 0.5rem;
        height: 0.5rem;
        background: #00A37A;
        border-radius: 100%; }
  .p-index-topics .topics-body .topics-body-list {
    flex: 1;
    margin-left: 2.5rem; }
  .p-index-topics .topics-body .topics-body-link {
    position: absolute;
    top: 0;
    right: 0; }

.p-index-maker .maker-body {
  padding-top: 10rem;
  position: relative; }
  .p-index-maker .maker-body .maker-body-list .swiper .swiper-wrapper {
    -webkit-transition-timing-function: linear !important;
    transition-timing-function: linear !important; }
    .p-index-maker .maker-body .maker-body-list .swiper .swiper-wrapper .swiper-slide {
      width: 15%;
      background: #f2f2f2;
      border-radius: 0.625rem; }
      .p-index-maker .maker-body .maker-body-list .swiper .swiper-wrapper .swiper-slide:nth-child(2n) {
        margin-top: 1.875rem; }
      .p-index-maker .maker-body .maker-body-list .swiper .swiper-wrapper .swiper-slide img {
        mix-blend-mode: multiply; }
  .p-index-maker .maker-body .maker-body-link {
    position: absolute;
    top: 0;
    right: 0; }

.p-index-voice .voice-body {
  margin-top: 7.5rem; }
  .p-index-voice .voice-body .voice-body-col {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 1.25rem; }

@media screen and (max-width: 960px) {
  .p-index-hero {
    padding: 6.1538461538rem 0 6.9230769231rem; }
    .p-index-hero .hero-image img {
      object-fit: cover;
      object-position: 52.5% 50%; }
    .p-index-hero .hero-sns {
      right: 0.7692307692rem;
      bottom: 12.3076923077rem;
      display: block;
      text-align: center; }
      .p-index-hero .hero-sns .hero-sns-label p {
        font-size: 1rem;
        writing-mode: vertical-rl; }
      .p-index-hero .hero-sns .hero-sns-list {
        display: block;
        column-gap: 0;
        margin-top: 1.5384615385rem;
        margin-left: 0; }
        .p-index-hero .hero-sns .hero-sns-list .hero-sns-item {
          margin-top: 0.7692307692rem; }
          .p-index-hero .hero-sns .hero-sns-list .hero-sns-item a img {
            width: 1.6923076923rem; }

  .p-index-about {
    position: relative;
    z-index: 1;
    margin-top: -12.3076923077rem; }
    .p-index-about .about-body {
      margin-top: 4.6153846154rem; }
      .p-index-about .about-body .about-body-col {
        grid-template-columns: 1fr;
        grid-column-gap: 0;
        grid-row-gap: 0.9230769231rem;
        padding: 0; }
        .p-index-about .about-body .about-body-col .col__item {
          border: solid #cccccc 1px;
          padding: 1.9230769231rem 0 2.6923076923rem; }
          .p-index-about .about-body .about-body-col .col__item img {
            width: 7.6923076923rem; }
          .p-index-about .about-body .about-body-col .col__item h2 {
            font-size: 2.3076923077rem;
            margin-top: 0.7692307692rem; }
          .p-index-about .about-body .about-body-col .col__item p {
            font-size: 1.0769230769rem; }
          .p-index-about .about-body .about-body-col .col__item a {
            width: 15.3846153846rem;
            height: 3.5384615385rem;
            border-radius: 1.7692307692rem;
            margin: 1.9230769231rem auto 0;
            padding: 0 2.3076923077rem; }
            .p-index-about .about-body .about-body-col .col__item a img {
              width: 1.0769230769rem; }

  .p-index-pickup .pickup-body {
    margin-top: 1.5384615385rem; }
    .p-index-pickup .pickup-body .swiper {
      padding-top: 5.3846153846rem; }
      .p-index-pickup .pickup-body .swiper .swiper-wrapper .swiper-slide {
        width: 95%; }
      .p-index-pickup .pickup-body .swiper .swiper-controller {
        width: 7.8461538462rem;
        height: 3.0769230769rem; }
        .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-prev,
        .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-next {
          width: 3.5384615385rem;
          height: 3.5384615385rem; }
          .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-prev::after,
          .p-index-pickup .pickup-body .swiper .swiper-controller .swiper-button-next::after {
            font-size: 0.9230769231rem; }

  .p-index-topics .topics-body {
    display: block;
    padding-top: 2.3076923077rem; }
    .p-index-topics .topics-body .topics-body-cat {
      width: 100%; }
      .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list {
        display: flex;
        flex-wrap: wrap; }
        .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list .cat-item {
          margin-right: 0.9230769231rem; }
          .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list .cat-item a {
            font-size: 0.8461538462rem; }
          .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list .cat-item.current {
            padding-left: 0.9230769231rem; }
            .p-index-topics .topics-body .topics-body-cat .topics-body-cat-list .cat-item.current::before {
              left: 0;
              width: 0.3846153846rem;
              height: 0.3846153846rem; }
    .p-index-topics .topics-body .topics-body-list {
      margin-top: 2.3076923077rem;
      margin-left: 0; }
      .p-index-topics .topics-body .topics-body-list .c-topics-list .c-topics-item:nth-child(1) {
        padding-top: 1.5384615385rem;
        border-top: solid #cccccc 1px; }
    .p-index-topics .topics-body .topics-body-link {
      position: relative;
      top: auto;
      right: auto;
      margin-top: 2.6923076923rem;
      padding: 0; }
      .p-index-topics .topics-body .topics-body-link .c-front-link a {
        margin-left: auto; }

  .p-index-maker .maker-body {
    padding-top: 3.0769230769rem; }
    .p-index-maker .maker-body .maker-body-list .swiper .swiper-wrapper .swiper-slide {
      width: 40%;
      border-radius: 0.3846153846rem; }
      .p-index-maker .maker-body .maker-body-list .swiper .swiper-wrapper .swiper-slide:nth-child(2n) {
        margin-top: 2.3076923077rem; }
    .p-index-maker .maker-body .maker-body-link {
      position: relative;
      top: auto;
      right: auto;
      margin-top: 2.6923076923rem; }
      .p-index-maker .maker-body .maker-body-link .c-front-link a {
        margin-left: auto; }

  .p-index-voice .voice-body {
    margin-top: 3.0769230769rem; }
    .p-index-voice .voice-body .voice-body-col {
      display: grid;
      grid-template-columns: 1fr;
      grid-column-gap: 0; }
      .p-index-voice .voice-body .voice-body-col .col__item:nth-child(2), .p-index-voice .voice-body .voice-body-col .col__item:nth-child(3) {
        display: none; } }
/**
 * about css
 */
/* ==========================================================================
   #about
========================================================================== */
.p-about-work .work-head .work-head-cap h2 {
  font-size: 2.875rem;
  line-height: 1.6;
  font-weight: 700; }
.p-about-work .work-head .work-head-cap p {
  margin-top: 2.1875rem; }
.p-about-work .work-head .work-head-link {
  margin-top: 3.125rem;
  display: flex; }
  .p-about-work .work-head .work-head-link a {
    width: 15.625rem;
    height: 3.75rem;
    border: solid #000000 1px;
    border-radius: 1.875rem;
    font-size: 0.9375rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1.25rem 0 1.875rem;
    margin-right: 0.5rem; }
    .p-about-work .work-head .work-head-link a:nth-child(2) {
      background: #1ACE5A;
      border-color: #1ACE5A;
      color: #ffffff; }
    .p-about-work .work-head .work-head-link a img {
      width: 1rem; }
.p-about-work .work-body {
  display: flex;
  margin-top: 13.75rem; }
  .p-about-work .work-body._rev {
    flex-direction: row-reverse; }
    .p-about-work .work-body._rev .col__note {
      padding-left: 21.25rem;
      padding-right: 6.25rem; }
  .p-about-work .work-body .col__image {
    width: 50%; }
    .p-about-work .work-body .col__image .col__image-inner {
      position: sticky;
      top: 7.5rem;
      padding-top: 80%; }
      .p-about-work .work-body .col__image .col__image-inner img {
        object-fit: cover;
        object-position: 50% 50%;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0; }
  .p-about-work .work-body .col__note {
    flex: 1;
    padding-left: 6.25rem; }
    .p-about-work .work-body .col__note .col__note-list {
      margin-top: 7.5rem; }
      .p-about-work .work-body .col__note .col__note-list .col__note-item {
        border-top: solid #cccccc 1px;
        padding: 1.875rem 0 6.25rem; }
        .p-about-work .work-body .col__note .col__note-list .col__note-item:last-child {
          border-bottom: solid #cccccc 1px; }
        .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-label .col__note-en {
          font-family: "termina", sans-serif;
          font-weight: 600;
          font-style: normal;
          letter-spacing: 0;
          color: #1ACE5A;
          font-size: 2.25rem;
          line-height: 1.6;
          text-align: right; }
        .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-label p {
          font-size: 1.0625rem;
          font-weight: 600;
          text-align: right; }
        .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner {
          margin-top: 1.875rem; }
          .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner li {
            padding-left: 1.125rem;
            position: relative; }
            .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner li::before {
              position: absolute;
              content: '●';
              top: 50%;
              left: 0;
              transform: translateY(-50%);
              font-size: 0.625rem;
              color: #1ACE5A; }
          .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner h4 {
            font-size: 1.625rem;
            font-weight: 600;
            margin-bottom: 0.625rem; }

.p-about-connect .connect-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 1.875rem; }
  .p-about-connect .connect-list .col__item {
    background: #f2f2f2; }
    .p-about-connect .connect-list .col__item a {
      display: block;
      padding: 4.375rem 0.625rem 4.375rem;
      text-align: center; }
      .p-about-connect .connect-list .col__item a span {
        display: block;
        text-align: center; }
      .p-about-connect .connect-list .col__item a .col__item-icon {
        width: 9.375rem; }
      .p-about-connect .connect-list .col__item a .col__item-label {
        font-family: "termina", sans-serif;
        font-weight: 700;
        font-style: normal;
        letter-spacing: 0;
        color: #1ACE5A;
        font-size: 2.25rem;
        margin-top: 1.25rem; }
      .p-about-connect .connect-list .col__item a .col__item-text {
        font-size: 0.875rem;
        font-weight: 600;
        margin-top: 0.625rem; }
      .p-about-connect .connect-list .col__item a .col__item-nav {
        width: 1rem;
        margin-top: 1.875rem; }

@media screen and (max-width: 960px) {
  .p-about-work .work-head .work-head-cap h2 {
    font-size: 2.1538461538rem;
    line-height: 1.6;
    font-feature-settings: "palt";
    text-align: justify;
    text-justify: inter-ideograph; }
  .p-about-work .work-head .work-head-cap p {
    margin-top: 1.5384615385rem;
    font-feature-settings: "palt";
    text-align: justify;
    text-justify: inter-ideograph; }
  .p-about-work .work-head .work-head-link {
    margin-top: 2.3076923077rem;
    display: block; }
    .p-about-work .work-head .work-head-link a {
      width: 17.3076923077rem;
      height: 3.8461538462rem;
      border-radius: 1.9230769231rem;
      font-size: 1rem;
      padding: 0 1.5384615385rem 0 2.3076923077rem;
      margin-top: 0.3846153846rem;
      margin-right: 0; }
      .p-about-work .work-head .work-head-link a img {
        width: 1.0769230769rem; }
  .p-about-work .work-body {
    display: block;
    margin-top: 4.6153846154rem; }
    .p-about-work .work-body._rev .col__note {
      padding-left: 1.9230769231rem;
      padding-right: 1.9230769231rem; }
    .p-about-work .work-body .col__image {
      width: 100%;
      padding-right: 1.9230769231rem; }
      .p-about-work .work-body .col__image .col__image-inner {
        position: relative;
        top: auto;
        padding-top: 62.5%; }
    .p-about-work .work-body .col__note {
      padding-right: 1.9230769231rem;
      padding-left: 1.9230769231rem; }
      .p-about-work .work-body .col__note .c-sub-cap {
        margin-top: 3.8461538462rem; }
      .p-about-work .work-body .col__note .col__note-list {
        margin-top: 2.3076923077rem; }
        .p-about-work .work-body .col__note .col__note-list .col__note-item {
          padding: 1.5384615385rem 0 2.3076923077rem; }
          .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-label .col__note-en {
            font-size: 2rem; }
          .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-label p {
            font-size: 1rem; }
          .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner {
            margin-top: 1.1538461538rem; }
            .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner li {
              padding-left: 1.0769230769rem; }
              .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner li::before {
                font-size: 0.6153846154rem; }
            .p-about-work .work-body .col__note .col__note-list .col__note-item .col__note-inner h4 {
              font-size: 1.3846153846rem;
              margin-bottom: 1.1538461538rem;
              line-height: 1; }

  #work2 .work-head .work-head-cap h2 {
    font-size: 1.8461538462rem; }

  .p-about-connect .connect-list {
    grid-template-columns: 1fr;
    grid-column-gap: 0;
    grid-row-gap: 0.6153846154rem; }
    .p-about-connect .connect-list .col__item a {
      padding: 1.9230769231rem 0.7692307692rem; }
      .p-about-connect .connect-list .col__item a .col__item-icon {
        width: 6.1538461538rem; }
      .p-about-connect .connect-list .col__item a .col__item-label {
        font-size: 2rem;
        margin-top: 0.7692307692rem; }
      .p-about-connect .connect-list .col__item a .col__item-text {
        font-size: 1rem;
        margin-top: 0.7692307692rem; }
      .p-about-connect .connect-list .col__item a .col__item-nav {
        width: 1.0769230769rem;
        margin-top: 1.5384615385rem; } }
/**
 * strengths css
 */
/* ==========================================================================
   #strengths
========================================================================== */
.p-strengths-content .content-body {
  margin-top: 10rem; }
  .p-strengths-content .content-body .content-body-block .block__image .block__image-inner {
    position: relative;
    padding-top: 45%; }
    .p-strengths-content .content-body .content-body-block .block__image .block__image-inner img {
      object-fit: cover;
      object-position: 50% 50%;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0; }
  .p-strengths-content .content-body .content-body-block .block__note .block__note-label {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    border-top: solid #a8a8a8 1px;
    margin-top: 8.75rem;
    padding-top: 3.75rem; }
    .p-strengths-content .content-body .content-body-block .block__note .block__note-label .block__note-en {
      font-family: "termina", sans-serif;
      font-weight: 600;
      font-style: normal;
      letter-spacing: 0;
      color: #a8a8a8;
      position: relative; }
      .p-strengths-content .content-body .content-body-block .block__note .block__note-label .block__note-en::before {
        position: absolute;
        content: '';
        top: 50%;
        left: -0.75rem;
        transform: translateY(-50%);
        width: 0.625rem;
        height: 0.625rem;
        border-radius: 100%;
        background: #1ACE5A; }
    .p-strengths-content .content-body .content-body-block .block__note .block__note-label .block__note-jp {
      font-size: 1.5rem;
      font-weight: 600;
      margin-left: 1.875rem; }
  .p-strengths-content .content-body .content-body-block .block__note .block__note-text {
    display: flex;
    margin-top: 5rem; }
    .p-strengths-content .content-body .content-body-block .block__note .block__note-text h2 {
      flex: 1;
      margin-right: 1.25rem;
      font-size: 1.875rem;
      font-weight: 600; }
    .p-strengths-content .content-body .content-body-block .block__note .block__note-text p {
      width: 50%;
      margin-top: 0.625rem; }
  .p-strengths-content .content-body .content-body-block + .content-body-block {
    margin-top: 15rem; }

@media screen and (max-width: 960px) {
  .p-strengths-content .content-body {
    margin-top: 4.6153846154rem; }
    .p-strengths-content .content-body .content-body-block .block__image {
      padding-left: 0; }
      .p-strengths-content .content-body .content-body-block .block__image .block__image-inner {
        padding-top: 62.5%; }
    .p-strengths-content .content-body .content-body-block .block__note .block__note-label {
      margin-top: 3.8461538462rem;
      padding-top: 1.5384615385rem; }
      .p-strengths-content .content-body .content-body-block .block__note .block__note-label .block__note-en::before {
        left: -0.875rem;
        width: 0.4615384615rem;
        height: 0.4615384615rem; }
      .p-strengths-content .content-body .content-body-block .block__note .block__note-label .block__note-jp {
        font-size: 1.1538461538rem;
        margin-left: 1.1538461538rem; }
    .p-strengths-content .content-body .content-body-block .block__note .block__note-text {
      display: block;
      margin-top: 2.3076923077rem; }
      .p-strengths-content .content-body .content-body-block .block__note .block__note-text h2 {
        margin-right: 0;
        font-size: 1.6923076923rem;
        line-height: 1.8; }
      .p-strengths-content .content-body .content-body-block .block__note .block__note-text p {
        width: 100%;
        margin-top: 1.1538461538rem;
        font-feature-settings: "palt";
        text-align: justify;
        text-justify: inter-ideograph; }
    .p-strengths-content .content-body .content-body-block + .content-body-block {
      margin-top: 5.3846153846rem; } }
/**
 * member css
 */
/* ==========================================================================
   #member / archive
========================================================================== */
.p-member-content .content-body {
  margin-top: 11.25rem; }
  .p-member-content .content-body .content-body-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-column-gap: 3.75rem;
    grid-row-gap: 5rem; }
    .p-member-content .content-body .content-body-list .col__item .col__item-image a {
      position: relative;
      padding-top: 137.5%;
      display: block; }
      .p-member-content .content-body .content-body-list .col__item .col__item-image a img {
        object-fit: cover;
        object-position: 50% 50%;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
    .p-member-content .content-body .content-body-list .col__item .col__item-note {
      margin-top: 1.5625rem; }
      .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-title {
        font-size: 1.125rem; }
      .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 0.3125rem; }
        .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term li {
          font-size: 0.875rem;
          line-height: 1.4; }
        .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term .col__item-note-cat {
          position: relative;
          display: flex;
          align-items: center; }
          .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term .col__item-note-cat span {
            display: block;
            width: 0.5rem;
            height: 0.5rem;
            background: #1ACE5A;
            border-radius: 100%;
            margin-right: 0.5rem; }
        .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term .col__item-note-dep {
          flex: 1;
          padding-left: 1.375rem;
          position: relative; }
          .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term .col__item-note-dep::before {
            position: absolute;
            content: '';
            top: 50%;
            left: 0.4375rem;
            width: 0.5rem;
            height: 1px;
            background: #000000; }

@media screen and (max-width: 960px) {
  .p-member-content .content-body {
    margin-top: 3.8461538462rem; }
    .p-member-content .content-body .content-body-list {
      grid-template-columns: 1fr 1fr;
      grid-column-gap: 1.1538461538rem;
      grid-row-gap: 3.0769230769rem; }
      .p-member-content .content-body .content-body-list .col__item .col__item-note {
        margin-top: 1.1538461538rem; }
        .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-title {
          font-size: 1.0769230769rem; }
        .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term {
          margin-top: 0.3846153846rem; }
          .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term li {
            font-size: 0.8461538462rem; }
          .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term .col__item-note-cat span {
            width: 0.4615384615rem;
            height: 0.4615384615rem;
            margin-right: 0.4615384615rem; }
          .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term .col__item-note-dep {
            padding-left: 1.3846153846rem; }
            .p-member-content .content-body .content-body-list .col__item .col__item-note .col__item-note-term .col__item-note-dep::before {
              left: 0.4615384615rem;
              width: 0.3846153846rem; } }
/* ==========================================================================
   #member / single
========================================================================== */
.p-memberSingle-content {
  display: flex; }
  .p-memberSingle-content .content-image {
    width: 50%; }
    .p-memberSingle-content .content-image .content-image-inner {
      height: calc(100vh - 6.875rem);
      margin-top: 6.875rem;
      position: sticky;
      top: 6.875rem;
      width: 75%;
      margin-left: auto;
      margin-right: auto; }
      .p-memberSingle-content .content-image .content-image-inner img {
        object-fit: cover;
        object-position: 50% 50%;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0; }
  .p-memberSingle-content .content-note {
    flex: 1;
    margin-top: 20rem;
    margin-left: 8.75rem;
    margin-bottom: 12.5rem;
    padding-left: 0; }
    .p-memberSingle-content .content-note .content-note-block .block__cap {
      margin-bottom: 1.875rem; }
      .p-memberSingle-content .content-note .content-note-block .block__cap h2 {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        color: #1ACE5A;
        font-size: 2.25rem; }
    .p-memberSingle-content .content-note .content-note-block .block__list dl {
      border-bottom: solid #cccccc 1px;
      display: flex;
      margin-top: 1.875rem;
      padding-bottom: 0.625rem; }
      .p-memberSingle-content .content-note .content-note-block .block__list dl dt {
        width: 9.375rem;
        font-weight: 600;
        padding-left: 1.25rem;
        position: relative; }
        .p-memberSingle-content .content-note .content-note-block .block__list dl dt::before {
          position: absolute;
          content: '';
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          width: 0.5rem;
          height: 0.5rem;
          background: #1ACE5A;
          border-radius: 100%; }
      .p-memberSingle-content .content-note .content-note-block .block__list dl dd {
        flex: 1; }
    .p-memberSingle-content .content-note .content-note-block .block__sns {
      display: flex;
      align-items: center;
      margin-top: 3.75rem; }
      .p-memberSingle-content .content-note .content-note-block .block__sns p {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        font-size: 1.25rem; }
      .p-memberSingle-content .content-note .content-note-block .block__sns ul {
        display: flex;
        column-gap: 0.9375rem;
        margin-left: 2.1875rem; }
        .p-memberSingle-content .content-note .content-note-block .block__sns ul li {
          width: 2.75rem;
          height: 2.75rem;
          background: #E5E5E5;
          border-radius: 100%;
          display: flex;
          align-items: center;
          justify-content: center; }
          .p-memberSingle-content .content-note .content-note-block .block__sns ul li a {
            background: #1ACE5A;
            width: 2.75rem;
            height: 2.75rem;
            border-radius: 100%;
            display: flex;
            align-items: center;
            justify-content: center; }
          .p-memberSingle-content .content-note .content-note-block .block__sns ul li img {
            width: 60%; }
    .p-memberSingle-content .content-note .content-note-block + .content-note-block {
      margin-top: 7.5rem; }

@media screen and (max-width: 960px) {
  .p-memberSingle-content {
    display: block;
    padding-top: 6.1538461538rem; }
    .p-memberSingle-content .content-image {
      width: 70%;
      margin-left: auto;
      margin-right: auto; }
      .p-memberSingle-content .content-image .content-image-inner {
        height: auto;
        margin-top: 0;
        position: relative;
        top: auto;
        padding-top: 125%;
        width: 100%; }
    .p-memberSingle-content .content-note {
      margin-top: 3.8461538462rem;
      margin-left: 0;
      margin-bottom: 0;
      padding-left: 1.9230769231rem; }
      .p-memberSingle-content .content-note .content-note-block .block__cap {
        margin-bottom: 1.5384615385rem; }
        .p-memberSingle-content .content-note .content-note-block .block__cap h2 {
          font-size: 2.1538461538rem; }
      .p-memberSingle-content .content-note .content-note-block .block__list dl {
        margin-top: 1.5384615385rem;
        padding-bottom: 0.6153846154rem; }
        .p-memberSingle-content .content-note .content-note-block .block__list dl dt {
          width: 6.9230769231rem;
          padding-left: 1.1538461538rem; }
          .p-memberSingle-content .content-note .content-note-block .block__list dl dt::before {
            width: 0.4375rem;
            height: 0.4375rem; }
      .p-memberSingle-content .content-note .content-note-block .block__sns {
        margin-top: 3.0769230769rem; }
        .p-memberSingle-content .content-note .content-note-block .block__sns p {
          font-size: 1.1538461538rem; }
        .p-memberSingle-content .content-note .content-note-block .block__sns ul {
          column-gap: 0.6153846154rem;
          margin-left: 1.9230769231rem; }
          .p-memberSingle-content .content-note .content-note-block .block__sns ul li {
            width: 2.6153846154rem;
            height: 2.6153846154rem; }
            .p-memberSingle-content .content-note .content-note-block .block__sns ul li a {
              width: 2.6153846154rem;
              height: 2.6153846154rem; }
            .p-memberSingle-content .content-note .content-note-block .block__sns ul li img {
              width: 55%; }
      .p-memberSingle-content .content-note .content-note-block .block__comment p {
        font-feature-settings: "palt";
        text-align: justify;
        text-justify: inter-ideograph; }
      .p-memberSingle-content .content-note .content-note-block + .content-note-block {
        margin-top: 3.8461538462rem; } }
@media screen and (max-width: 580px) {
  .p-memberSingle-content .content-image {
    width: 100%; } }
/**
 * voice css
 */
/* ==========================================================================
   #voice archive
========================================================================== */
.p-voice-content .content-body {
  margin-top: 10rem; }
  .p-voice-content .content-body .content-body-block .block__image .block__image-inner {
    position: relative;
    padding-top: 45%; }
    .p-voice-content .content-body .content-body-block .block__image .block__image-inner img {
      object-fit: cover;
      object-position: 50% 50%;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0; }
  .p-voice-content .content-body .content-body-block .block__note .block__note-label {
    border-top: solid #a8a8a8 1px;
    margin-top: 8.75rem;
    padding-top: 3.75rem;
    text-align: right; }
    .p-voice-content .content-body .content-body-block .block__note .block__note-label .block__note-en {
      font-family: "termina", sans-serif;
      font-weight: 600;
      font-style: normal;
      letter-spacing: 0;
      color: #a8a8a8;
      display: inline-block;
      position: relative; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-label .block__note-en::before {
        position: absolute;
        content: '';
        top: 50%;
        left: -1rem;
        transform: translateY(-50%);
        width: 0.5rem;
        height: 0.5rem;
        border-radius: 100%;
        background: #1ACE5A; }
    .p-voice-content .content-body .content-body-block .block__note .block__note-label .block__note-jp {
      font-size: 1.375rem;
      font-weight: 600;
      text-align: right; }
  .p-voice-content .content-body .content-body-block .block__note .block__note-text {
    display: flex;
    margin-top: 5rem; }
    .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__title {
      flex: 1;
      margin-right: 1.25rem; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__title h2 {
        font-size: 1.875rem;
        font-weight: 600; }
    .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner {
      width: 50%;
      margin-top: 0.625rem; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-text .col__inner-text-box h3 {
        font-size: 1rem;
        font-weight: 600; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-text .col__inner-text-box p {
        font-feature-settings: "palt";
        text-align: justify;
        text-justify: inter-ideograph;
        margin-top: 0.3125rem; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-text .col__inner-text-box + .col__inner-text-box {
        margin-top: 1.25rem; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info {
        background: #f2f2f2;
        display: flex;
        align-items: center;
        margin-top: 5rem;
        padding: 1.875rem 2.5rem; }
        .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-image {
          width: 10.625rem; }
          .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-image img {
            border-radius: 100%; }
        .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-name {
          flex: 1;
          margin-left: 3.125rem; }
          .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-name p {
            font-size: 0.9375rem;
            line-height: 1.8; }
          .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-name .strong {
            font-size: 1rem;
            font-weight: 600;
            margin-bottom: 0.3125rem; }
  .p-voice-content .content-body .content-body-block .block__gallery {
    margin-top: 8.75rem; }
    .p-voice-content .content-body .content-body-block .block__gallery .block__gallery-col {
      display: grid;
      grid-template-columns: 1fr 1fr; }
  .p-voice-content .content-body .content-body-block + .content-body-block {
    margin-top: 15rem; }

@media screen and (max-width: 960px) {
  .p-voice-content .content-body {
    margin-top: 4.6153846154rem; }
    .p-voice-content .content-body .content-body-block .block__image {
      padding-left: 0; }
      .p-voice-content .content-body .content-body-block .block__image .block__image-inner {
        padding-top: 62.5%; }
    .p-voice-content .content-body .content-body-block .block__note .block__note-label {
      margin-top: 3.8461538462rem;
      padding-top: 1.5384615385rem; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-label .block__note-en::before {
        left: -1.0769230769rem;
        width: 0.5384615385rem;
        height: 0.5384615385rem; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-label .block__note-jp {
        font-size: 1.2307692308rem; }
    .p-voice-content .content-body .content-body-block .block__note .block__note-text {
      display: block;
      margin-top: 3.0769230769rem; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__title {
        margin-right: 0; }
        .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__title h2 {
          font-size: 1.6923076923rem;
          line-height: 1.8; }
      .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner {
        width: 100%;
        margin-top: 1.5384615385rem; }
        .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-text p + p {
          margin-top: 0.7692307692rem; }
        .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info {
          align-items: flex-start;
          margin-top: 3.0769230769rem;
          padding: 1.9230769231rem 1.5384615385rem; }
          .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-image {
            width: 5.6923076923rem;
            margin-left: auto; }
          .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-name {
            margin-left: 1.5384615385rem; }
            .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-name p {
              font-size: 0.8461538462rem; }
            .p-voice-content .content-body .content-body-block .block__note .block__note-text .col__inner .col__inner-info .col__inner-info-name .strong {
              font-size: 1rem;
              margin-bottom: 0.3846153846rem; }
    .p-voice-content .content-body .content-body-block .block__gallery {
      margin-top: 3.8461538462rem; }
      .p-voice-content .content-body .content-body-block .block__gallery .block__gallery-col {
        display: grid;
        grid-template-columns: 1fr; }
    .p-voice-content .content-body .content-body-block + .content-body-block {
      margin-top: 5.3846153846rem; } }
/**
 * topics css
 */
/* ==========================================================================
   #topics / archive
========================================================================== */
.p-topics-content .content-head .c-page-cat li {
  padding-left: 0; }
  .p-topics-content .content-head .c-page-cat li.current-cat {
    padding-left: 1.125rem; }
    .p-topics-content .content-head .c-page-cat li.current-cat::before {
      display: block; }
    .p-topics-content .content-head .c-page-cat li.current-cat a {
      color: #000000; }
  .p-topics-content .content-head .c-page-cat li::before {
    display: none; }
  .p-topics-content .content-head .c-page-cat li a {
    font-family: "termina", sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0;
    color: #a8a8a8; }
.p-topics-content .content-body {
  margin-top: 11.25rem; }
  .p-topics-content .content-body .c-topics-list .c-topics-item .c-topics-note {
    margin-left: 5rem; }
    .p-topics-content .content-body .c-topics-list .c-topics-item .c-topics-note .c-topics-title {
      margin-top: 1.25rem; }
      .p-topics-content .content-body .c-topics-list .c-topics-item .c-topics-note .c-topics-title a {
        font-size: 1.25rem; }

@media screen and (max-width: 960px) {
  .p-topics-content .content-head .c-page-cat li {
    padding-left: 0; }
    .p-topics-content .content-head .c-page-cat li.current-cat {
      padding-left: 0.9230769231rem; }
  .p-topics-content .content-body {
    margin-top: 3.0769230769rem; }
    .p-topics-content .content-body .c-topics-list .c-topics-item .c-topics-note {
      margin-left: 1.5384615385rem; }
      .p-topics-content .content-body .c-topics-list .c-topics-item .c-topics-note .c-topics-title {
        margin-top: 0.6153846154rem; }
        .p-topics-content .content-body .c-topics-list .c-topics-item .c-topics-note .c-topics-title a {
          font-size: 1rem; } }
/* ==========================================================================
   #topics / single
========================================================================== */
.p-topicsSingle-content {
  margin-top: 22.5rem; }
  .p-topicsSingle-content .content-head .content-head-term {
    display: flex; }
    .p-topicsSingle-content .content-head .content-head-term .term__date {
      font-family: "termina", sans-serif;
      font-weight: 600;
      font-style: normal;
      letter-spacing: 0; }
    .p-topicsSingle-content .content-head .content-head-term .term__cat {
      font-family: "termina", sans-serif;
      font-weight: 600;
      font-style: normal;
      letter-spacing: 0;
      color: #1ACE5A;
      margin-left: 2.1875rem;
      padding-left: 1.25rem;
      position: relative; }
      .p-topicsSingle-content .content-head .content-head-term .term__cat::before {
        position: absolute;
        content: '';
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        width: 0.5rem;
        height: 0.5rem;
        background: #1ACE5A;
        border-radius: 100%; }
  .p-topicsSingle-content .content-head .content-head-title {
    margin-top: 1.25rem; }
    .p-topicsSingle-content .content-head .content-head-title h1 {
      font-size: 2.125rem;
      font-weight: 600;
      line-height: 1.6; }
  .p-topicsSingle-content .content-body {
    margin-top: 4.375rem; }
    .p-topicsSingle-content .content-body .content-body-editor p {
      font-feature-settings: "palt";
      text-align: justify;
      text-justify: inter-ideograph; }
    .p-topicsSingle-content .content-body .content-body-editor h3 {
      font-size: 1.25rem;
      font-weight: 700;
      line-height: 1.8;
      padding-bottom: 0.625rem;
      position: relative;
      margin-bottom: 0.625rem; }
      .p-topicsSingle-content .content-body .content-body-editor h3::before, .p-topicsSingle-content .content-body .content-body-editor h3::after {
        position: absolute;
        content: '';
        left: 0;
        bottom: 0;
        height: 2px; }
      .p-topicsSingle-content .content-body .content-body-editor h3::before {
        width: 100%;
        background: #DCDCDC; }
      .p-topicsSingle-content .content-body .content-body-editor h3::after {
        width: 30%;
        background: #00A37A; }
    .p-topicsSingle-content .content-body .content-body-editor h4 {
      font-size: 1.125rem;
      font-weight: 700;
      line-height: 1.8;
      padding-left: 0.9375rem;
      position: relative;
      margin-bottom: 0.3125rem; }
      .p-topicsSingle-content .content-body .content-body-editor h4::before {
        position: absolute;
        content: '';
        top: 2px;
        left: 0;
        width: 5px;
        height: 90%;
        background: #00A37A; }
    .p-topicsSingle-content .content-body .content-body-editor h5 {
      font-size: 1.0625rem;
      font-weight: 700;
      padding-left: 1.25rem;
      position: relative;
      margin-bottom: 0.3125rem; }
      .p-topicsSingle-content .content-body .content-body-editor h5::before {
        position: absolute;
        content: '●';
        top: 0;
        left: 0;
        color: #B3B3B3; }
    .p-topicsSingle-content .content-body .content-body-editor strong {
      font-weight: 700; }
    .p-topicsSingle-content .content-body .content-body-editor em {
      font-style: italic; }
    .p-topicsSingle-content .content-body .content-body-editor a {
      display: inline-block;
      text-decoration: underline;
      color: #551a8b; }
    .p-topicsSingle-content .content-body .content-body-editor hr {
      margin: 0.9375rem 0; }
  .p-topicsSingle-content .content-foot .content-foot-block {
    margin-top: 10rem; }
    .p-topicsSingle-content .content-foot .content-foot-block .block__cap {
      margin-bottom: 4.375rem; }
      .p-topicsSingle-content .content-foot .content-foot-block .block__cap h3 {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        color: #1ACE5A;
        font-size: 2.25rem; }
    .p-topicsSingle-content .content-foot .content-foot-block .block__nav {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-column-gap: 0.9375rem; }
      .p-topicsSingle-content .content-foot .content-foot-block .block__nav .block__nav-item a {
        background: #f2f2f2;
        display: block;
        padding: 3.75rem 1.875rem 1.875rem;
        text-align: center; }
        .p-topicsSingle-content .content-foot .content-foot-block .block__nav .block__nav-item a img {
          width: 1.875rem; }
        .p-topicsSingle-content .content-foot .content-foot-block .block__nav .block__nav-item a span {
          display: block;
          margin-top: 2.1875rem;
          text-align: center; }

@media screen and (max-width: 960px) {
  .p-topicsSingle-content {
    margin-top: 13.8461538462rem; }
    .p-topicsSingle-content .content-head .content-head-term .term__cat {
      margin-left: 1.5384615385rem;
      padding-left: 1.0769230769rem; }
      .p-topicsSingle-content .content-head .content-head-term .term__cat::before {
        width: 0.5384615385rem;
        height: 0.5384615385rem; }
    .p-topicsSingle-content .content-head .content-head-title {
      margin-top: 1.5384615385rem; }
      .p-topicsSingle-content .content-head .content-head-title h1 {
        font-size: 1.8461538462rem; }
    .p-topicsSingle-content .content-body {
      margin-top: 3.8461538462rem; }
      .p-topicsSingle-content .content-body .content-body-editor h3 {
        font-size: 1.3076923077rem;
        padding-bottom: 0.9230769231rem;
        margin-bottom: 0.9230769231rem; }
      .p-topicsSingle-content .content-body .content-body-editor h4 {
        font-size: 1.2307692308rem;
        padding-left: 1.1538461538rem;
        margin-bottom: 0.3846153846rem; }
        .p-topicsSingle-content .content-body .content-body-editor h4::before {
          width: 4px; }
      .p-topicsSingle-content .content-body .content-body-editor h5 {
        font-size: 1.1538461538rem;
        padding-left: 1.5384615385rem;
        margin-bottom: 0.3846153846rem; }
      .p-topicsSingle-content .content-body .content-body-editor hr {
        margin: 0.9230769231rem 0; }
    .p-topicsSingle-content .content-foot .content-foot-block {
      margin-top: 4.6153846154rem; }
      .p-topicsSingle-content .content-foot .content-foot-block .block__cap {
        margin-bottom: 2.3076923077rem; }
        .p-topicsSingle-content .content-foot .content-foot-block .block__cap h3 {
          font-size: 1.6923076923rem; }
      .p-topicsSingle-content .content-foot .content-foot-block .block__nav {
        grid-column-gap: 0.4615384615rem; }
        .p-topicsSingle-content .content-foot .content-foot-block .block__nav .block__nav-item a {
          padding: 3.0769230769rem 0.3846153846rem 2.3076923077rem; }
          .p-topicsSingle-content .content-foot .content-foot-block .block__nav .block__nav-item a img {
            width: 1.5384615385rem; }
          .p-topicsSingle-content .content-foot .content-foot-block .block__nav .block__nav-item a span {
            margin-top: 2.3076923077rem; } }
/**
 * maker css
 */
/* ==========================================================================
   #maker 
========================================================================== */
.p-maker-content .content-head .c-page-cat .col__item {
  padding-left: 0; }
  .p-maker-content .content-head .c-page-cat .col__item.current-cat {
    padding-left: 1.125rem; }
    .p-maker-content .content-head .c-page-cat .col__item.current-cat::before {
      display: block; }
    .p-maker-content .content-head .c-page-cat .col__item.current-cat a {
      color: #000000; }
  .p-maker-content .content-head .c-page-cat .col__item::before {
    display: none; }
  .p-maker-content .content-head .c-page-cat .col__item a {
    font-family: "termina", sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0;
    color: #a8a8a8; }
.p-maker-content .content-body {
  padding-top: 11.25rem; }
  .p-maker-content .content-body .content-body-block .c-sub-cap .cap__title {
    color: #1ACE5A; }
  .p-maker-content .content-body .content-body-block .block__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-column-gap: 1.875rem;
    grid-row-gap: 1.875rem;
    margin-top: 5rem; }
    .p-maker-content .content-body .content-body-block .block__list .block__list-item {
      border: solid #cccccc 1px; }
      .p-maker-content .content-body .content-body-block .block__list .block__list-item a {
        display: flex;
        align-items: center;
        justify-content: center; }
  .p-maker-content .content-body .content-body-block + .content-body-block {
    margin-top: 10rem; }

@media screen and (max-width: 960px) {
  .p-maker-content .content-head .c-page-cat .col__item {
    padding-left: 0; }
  .p-maker-content .content-body {
    padding-top: 3.8461538462rem; }
    .p-maker-content .content-body .content-body-block .block__list {
      grid-template-columns: 1fr 1fr;
      grid-column-gap: 0.6153846154rem;
      grid-row-gap: 0.6153846154rem;
      margin-top: 2.5rem; }
    .p-maker-content .content-body .content-body-block + .content-body-block {
      margin-top: 5.3846153846rem; } }
/**
 * company css
 */
/* ==========================================================================
   #company 
========================================================================== */
.p-company-outline .outline-body {
  margin-top: 6.25rem; }
  .p-company-outline .outline-body .outline-body-card {
    padding-left: 18.75rem; }
    .p-company-outline .outline-body .outline-body-card .card__block {
      background: #f2f2f2;
      padding: 1.875rem 1.875rem 3.125rem 6.25rem; }
      .p-company-outline .outline-body .outline-body-card .card__block .card__block-label {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        font-size: 0.875rem;
        color: #a8a8a8;
        text-align: right; }
      .p-company-outline .outline-body .outline-body-card .card__block .card__block-cap {
        font-size: 1.5rem;
        font-weight: 600;
        position: relative; }
        .p-company-outline .outline-body .outline-body-card .card__block .card__block-cap::before {
          position: absolute;
          content: '';
          top: 50%;
          left: -1.5625rem;
          transform: translateY(-50%);
          width: 0.625rem;
          height: 0.625rem;
          background: #1ACE5A;
          border-radius: 100%; }
      .p-company-outline .outline-body .outline-body-card .card__block .card__block-text {
        margin-top: 0.3125rem; }
    .p-company-outline .outline-body .outline-body-card .card__block + .card__block {
      margin-top: 0.625rem; }
  .p-company-outline .outline-body .outline-body-table {
    margin-top: 7.5rem;
    padding-left: 18.75rem; }
    .p-company-outline .outline-body .outline-body-table .table__inner {
      display: flex;
      border-top: solid #cccccc 1px;
      padding: 2.5rem 0; }
      .p-company-outline .outline-body .outline-body-table .table__inner:last-child {
        border-bottom: solid #cccccc 1px; }
      .p-company-outline .outline-body .outline-body-table .table__inner .table__inner-cap {
        width: 14.0625rem;
        font-size: 1.125rem;
        font-weight: 600;
        line-height: 1.8; }
      .p-company-outline .outline-body .outline-body-table .table__inner .table__inner-text {
        flex: 1;
        margin-left: 1.25rem;
        line-height: 1.8; }
        .p-company-outline .outline-body .outline-body-table .table__inner .table__inner-text span {
          display: block; }
        .p-company-outline .outline-body .outline-body-table .table__inner .table__inner-text span + span {
          margin-top: 0.625rem; }

.p-company-office .office-body {
  margin-top: 6.25rem; }
  .p-company-office .office-body .office-body-list {
    padding-left: 18.75rem; }
    .p-company-office .office-body .office-body-list .list__item .list__item-cap {
      display: flex;
      align-items: baseline; }
      .p-company-office .office-body .office-body-list .list__item .list__item-cap .list__item-cap-en {
        font-family: "termina", sans-serif;
        font-weight: 700;
        font-style: normal;
        letter-spacing: 0;
        font-size: 2.25rem; }
      .p-company-office .office-body .office-body-list .list__item .list__item-cap .list__item-cap-jp {
        font-size: 1.125rem;
        font-weight: 600;
        margin-left: 4.375rem;
        position: relative; }
        .p-company-office .office-body .office-body-list .list__item .list__item-cap .list__item-cap-jp::before {
          position: absolute;
          content: '';
          top: 50%;
          left: -1.5625rem;
          transform: translateY(-50%);
          width: 0.625rem;
          height: 0.625rem;
          background: #1ACE5A;
          border-radius: 100%; }
    .p-company-office .office-body .office-body-list .list__item .list__item-map {
      margin-top: 1.875rem; }
      .p-company-office .office-body .office-body-list .list__item .list__item-map iframe {
        width: 100% !important;
        height: 28.125rem; }
    .p-company-office .office-body .office-body-list .list__item .list__item-info {
      margin-top: 2.5rem; }
      .p-company-office .office-body .office-body-list .list__item .list__item-info .list__item-info-tel {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        font-size: 1.5rem; }
    .p-company-office .office-body .office-body-list .list__item + .list__item {
      margin-top: 7.5rem; }

@media screen and (max-width: 960px) {
  .p-company-outline .outline-body {
    margin-top: 3.0769230769rem;
    padding-left: 0; }
    .p-company-outline .outline-body .outline-body-card {
      padding-left: 0; }
      .p-company-outline .outline-body .outline-body-card .card__block {
        padding: 1.1538461538rem 1.9230769231rem 3.0769230769rem 3.4615384615rem; }
        .p-company-outline .outline-body .outline-body-card .card__block .card__block-label {
          font-size: 0.8461538462rem; }
        .p-company-outline .outline-body .outline-body-card .card__block .card__block-cap {
          font-size: 1.3076923077rem;
          margin-top: 1.9230769231rem; }
          .p-company-outline .outline-body .outline-body-card .card__block .card__block-cap::before {
            left: -1.3846153846rem;
            width: 0.6153846154rem;
            height: 0.6153846154rem; }
        .p-company-outline .outline-body .outline-body-card .card__block .card__block-text {
          margin-top: 0.6153846154rem;
          line-height: 1.8; }
      .p-company-outline .outline-body .outline-body-card .card__block + .card__block {
        margin-top: 0.7692307692rem; }
    .p-company-outline .outline-body .outline-body-table {
      margin-top: 4.6153846154rem;
      padding-left: 0;
      padding-left: 1.9230769231rem; }
      .p-company-outline .outline-body .outline-body-table .table__inner {
        padding: 2.3076923077rem 0; }
        .p-company-outline .outline-body .outline-body-table .table__inner .table__inner-cap {
          width: 6.9230769231rem;
          font-size: 1.0769230769rem; }
        .p-company-outline .outline-body .outline-body-table .table__inner .table__inner-text {
          margin-left: 1.1538461538rem; }
          .p-company-outline .outline-body .outline-body-table .table__inner .table__inner-text span + span {
            margin-top: 0.7692307692rem; }

  .p-company-office .office-body {
    margin-top: 3.0769230769rem; }
    .p-company-office .office-body .office-body-list {
      padding-left: 0; }
      .p-company-office .office-body .office-body-list .list__item .list__item-cap .list__item-cap-en {
        font-size: 1.8461538462rem; }
      .p-company-office .office-body .office-body-list .list__item .list__item-cap .list__item-cap-jp {
        font-size: 1.0769230769rem;
        margin-left: 3.0769230769rem; }
        .p-company-office .office-body .office-body-list .list__item .list__item-cap .list__item-cap-jp::before {
          left: -1.3846153846rem;
          width: 0.6153846154rem;
          height: 0.6153846154rem; }
      .p-company-office .office-body .office-body-list .list__item .list__item-map {
        margin-top: 2.3076923077rem; }
        .p-company-office .office-body .office-body-list .list__item .list__item-map iframe {
          height: 26.9230769231rem; }
      .p-company-office .office-body .office-body-list .list__item .list__item-info {
        margin-top: 2.3076923077rem; }
        .p-company-office .office-body .office-body-list .list__item .list__item-info .list__item-info-tel {
          font-size: 1.3846153846rem;
          line-height: 1.6;
          margin-bottom: 0.7692307692rem; }
        .p-company-office .office-body .office-body-list .list__item .list__item-info .list__item-info-add {
          font-size: 0.9230769231rem; }
      .p-company-office .office-body .office-body-list .list__item + .list__item {
        margin-top: 5.3846153846rem; } }
/**
 * recruit css
 */
/* ==========================================================================
   #recruit 
========================================================================== */
.p-recruit-nav .nav-body {
  margin-top: 10rem; }
  .p-recruit-nav .nav-body .nav-body-image {
    padding-right: 0; }
    .p-recruit-nav .nav-body .nav-body-image .nav-body-bg {
      position: relative;
      padding-top: 43.5%; }
      .p-recruit-nav .nav-body .nav-body-image .nav-body-bg img {
        object-fit: cover;
        object-position: 50% 50%;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
  .p-recruit-nav .nav-body .nav-body-note {
    width: 65%;
    margin-top: -8.75rem;
    position: relative;
    z-index: 1; }
    .p-recruit-nav .nav-body .nav-body-note .nav-body-txt {
      background: #ffffff;
      padding: 8.75rem 8.75rem 0; }
      .p-recruit-nav .nav-body .nav-body-note .nav-body-txt h2 {
        font-size: 2.875rem;
        font-weight: 700;
        line-height: 1.6; }
      .p-recruit-nav .nav-body .nav-body-note .nav-body-txt p {
        font-feature-settings: "palt";
        text-align: justify;
        text-justify: inter-ideograph;
        margin-top: 2.5rem; }

.p-recruit-work .work-body {
  margin-top: 7.5rem; }
  .p-recruit-work .work-body .work-body-card {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem; }
    .p-recruit-work .work-body .work-body-card .card__item {
      background: #f2f2f2;
      border-radius: 0.625rem;
      padding: 3.75rem 3.75rem 3.125rem; }
      .p-recruit-work .work-body .work-body-card .card__item .card__item-img {
        width: 9.375rem;
        height: 9.375rem;
        background: #ffffff;
        border-radius: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-left: auto; }
        .p-recruit-work .work-body .work-body-card .card__item .card__item-img img {
          width: 7.5rem; }
      .p-recruit-work .work-body .work-body-card .card__item .card__item-lab {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        color: #a8a8a8;
        margin-top: -2.5rem;
        position: relative;
        padding-left: 0.9375rem; }
        .p-recruit-work .work-body .work-body-card .card__item .card__item-lab::before {
          position: absolute;
          content: '';
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          width: 0.5rem;
          height: 0.5rem;
          background: #1ACE5A;
          border-radius: 100%; }
      .p-recruit-work .work-body .work-body-card .card__item .card__item-cap {
        font-size: 1.375rem;
        font-weight: 600; }
      .p-recruit-work .work-body .work-body-card .card__item .card__item-txt {
        line-height: 1.8;
        margin-top: 0.9375rem; }

.p-recruit-message .message-head {
  position: relative;
  padding-bottom: 5rem; }
  .p-recruit-message .message-head .message-head-image {
    width: 62.5%;
    border: solid #ccc 1px; }
  .p-recruit-message .message-head .message-head-copy {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50%;
    padding-left: 3.75rem; }
    .p-recruit-message .message-head .message-head-copy h3 {
      font-size: 1.625rem;
      font-weight: 700;
      margin-top: 5.625rem;
      letter-spacing: .1em; }
.p-recruit-message .message-body {
  margin-top: 10rem; }
  .p-recruit-message .message-body .message-body-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 7.5rem; }
    .p-recruit-message .message-body .message-body-col .col__item p {
      font-feature-settings: "palt";
      text-align: justify;
      text-justify: inter-ideograph; }
    .p-recruit-message .message-body .message-body-col .col__item p + p {
      margin-top: 1.25rem; }
    .p-recruit-message .message-body .message-body-col .col__item ._bold {
      font-weight: 600; }
    .p-recruit-message .message-body .message-body-col .col__item ._name {
      margin-top: 3.75rem;
      text-align: right; }

.p-recruit-number .number-body {
  margin-top: 7.5rem; }
  .p-recruit-number .number-body .number-body-card {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 0.9375rem;
    grid-row-gap: 0.9375rem; }
    .p-recruit-number .number-body .number-body-card .card__item {
      background: #f2f2f2;
      border-radius: 0.625rem;
      height: 16.25rem;
      padding: 1.875rem;
      position: relative; }
      .p-recruit-number .number-body .number-body-card .card__item:nth-child(2) {
        grid-column-start: 2;
        grid-column-end: 4; }
      .p-recruit-number .number-body .number-body-card .card__item:nth-child(3) {
        grid-column-start: 1;
        grid-column-end: 3; }
      .p-recruit-number .number-body .number-body-card .card__item:nth-child(6) {
        grid-column-start: 2;
        grid-column-end: 4; }
      .p-recruit-number .number-body .number-body-card .card__item .card__item-label p {
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        color: #828282;
        font-size: 0.8125rem; }
      .p-recruit-number .number-body .number-body-card .card__item .card__item-label h3 {
        color: #828282;
        font-size: 1.25rem;
        font-weight: 700; }
      .p-recruit-number .number-body .number-body-card .card__item .card__item-num {
        position: absolute;
        right: 1.875rem;
        bottom: 0.9375rem; }
        .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter {
          text-align: right; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .number {
            font-family: "termina", sans-serif;
            font-weight: 600;
            font-style: normal;
            letter-spacing: 0;
            color: #1ACE5A;
            font-size: 5rem; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .txt {
            font-size: 1.375rem;
            font-weight: 600;
            margin-left: 0.3125rem; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .txt1,
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .txt2 {
            font-size: 1.375rem;
            font-weight: 600; }
        .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .notice {
          color: #a8a8a8;
          font-size: 0.875rem;
          text-align: right;
          margin-bottom: 0.625rem; }
        .p-recruit-number .number-body .number-body-card .card__item .card__item-num.col {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          grid-column-gap: 1.875rem;
          width: 85%; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num.col .item .counter {
            display: flex;
            align-items: baseline;
            justify-content: space-between; }

.p-recruit-interview .interview-body {
  margin-top: 7.5rem; }
  .p-recruit-interview .interview-body .interview-body-block {
    display: flex;
    column-gap: 7.5rem; }
    .p-recruit-interview .interview-body .interview-body-block .block__card {
      width: 50%; }
      .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner {
        position: sticky;
        top: 11.25rem; }
        .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-label {
          font-family: "termina", sans-serif;
          font-weight: 600;
          font-style: normal;
          letter-spacing: 0;
          color: #a8a8a8;
          position: relative;
          padding-left: 1.25rem; }
          .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-label::before {
            position: absolute;
            content: '';
            top: 50%;
            left: 0;
            transform: translateY(-50%);
            width: 0.5rem;
            height: 0.5rem;
            background: #1ACE5A;
            border-radius: 100%; }
        .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info {
          background: #f2f2f2;
          border-radius: 0.625rem;
          display: flex;
          align-items: center;
          margin-top: 1.25rem;
          padding: 3.125rem 2.5rem;
          position: relative; }
          .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__image {
            width: 11.25rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__image img {
              border-radius: 100%; }
          .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text {
            flex: 1;
            margin-left: 3.125rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text p {
              line-height: 1.8; }
            .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text h4 {
              font-size: 1.375rem;
              font-weight: 600;
              margin-top: 0.625rem;
              margin-bottom: 0.3125rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text ._bg {
              position: absolute;
              top: 1.25rem;
              right: 1.25rem;
              background: #ffffff;
              display: inline-block;
              line-height: 1.8;
              font-size: 0.9375rem;
              padding: 0 0.3125rem; }
    .p-recruit-interview .interview-body .interview-body-block .block__note {
      width: 50%; }
      .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-comment h3 {
        font-size: 1.625rem;
        font-weight: 700;
        margin-bottom: 1.25rem; }
      .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-comment p {
        font-feature-settings: "palt";
        text-align: justify;
        text-justify: inter-ideograph;
        margin-top: 0.9375rem; }
      .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule {
        margin-top: 5rem; }
        .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-label {
          font-size: 0.875rem;
          font-weight: 600; }
          .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-label span {
            font-family: "termina", sans-serif;
            font-weight: 600;
            font-style: normal;
            letter-spacing: 0;
            font-size: 2.125rem;
            margin-right: 1.5625rem; }
        .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list {
          position: relative; }
          .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list::before {
            position: absolute;
            content: '';
            top: 50%;
            left: 2.5rem;
            transform: translateY(-50%);
            width: 1px;
            height: 90%;
            background: #1ACE5A;
            z-index: -1; }
          .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item {
            margin-top: 3.125rem;
            display: flex;
            align-items: center; }
            .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__time {
              font-family: "termina", sans-serif;
              font-weight: 600;
              font-style: normal;
              letter-spacing: 0;
              width: 5rem;
              height: 5rem;
              background: #1ACE5A;
              border-radius: 100%;
              color: #ffffff;
              padding-top: 2rem;
              text-align: center; }
            .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__move {
              flex: 1;
              margin-left: 1.875rem; }
              .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__move ._bold {
                color: #1ACE5A;
                font-size: 1.125rem;
                font-weight: 700; }
              .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__move p {
                font-feature-settings: "palt";
                text-align: justify;
                text-justify: inter-ideograph;
                font-size: 0.9375rem; }
  .p-recruit-interview .interview-body .interview-body-block + .interview-body-block {
    margin-top: 10rem; }

.p-recruit-job .job-body {
  margin-top: 7.5rem; }
  .p-recruit-job .job-body .job-body-list {
    padding-left: 18.75rem; }
    .p-recruit-job .job-body .job-body-list .job-body-item {
      display: flex;
      border-top: solid #cccccc 1px;
      padding: 2.5rem 0; }
      .p-recruit-job .job-body .job-body-list .job-body-item:last-child {
        border-bottom: solid #cccccc 1px; }
      .p-recruit-job .job-body .job-body-list .job-body-item dt {
        width: 13.75rem;
        font-weight: 600; }
      .p-recruit-job .job-body .job-body-list .job-body-item dd {
        flex: 1; }

.p-recruit-flow .flow-body {
  margin-top: 7.5rem; }
  .p-recruit-flow .flow-body .flow-body-card {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 3.125rem;
    grid-row-gap: 2.5rem; }
    .p-recruit-flow .flow-body .flow-body-card .card__item {
      border: solid #1ACE5A 1px;
      height: 15rem;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center; }
      .p-recruit-flow .flow-body .flow-body-card .card__item:last-child::before {
        display: none; }
      .p-recruit-flow .flow-body .flow-body-card .card__item::before {
        position: absolute;
        content: '';
        top: 50%;
        right: -2.0625rem;
        transform: translateY(-50%);
        height: 1.875rem;
        width: 0.9375rem;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
        background: #1ACE5A; }
      .p-recruit-flow .flow-body .flow-body-card .card__item .card__item-label {
        position: absolute;
        top: 0.625rem;
        right: 1.25rem;
        font-family: "termina", sans-serif;
        font-weight: 600;
        font-style: normal;
        letter-spacing: 0;
        color: #a8a8a8;
        font-size: 0.875rem;
        padding-left: 0.9375rem; }
        .p-recruit-flow .flow-body .flow-body-card .card__item .card__item-label::before {
          position: absolute;
          content: '';
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          width: 0.375rem;
          height: 0.375rem;
          background: #1ACE5A;
          border-radius: 100%; }
      .p-recruit-flow .flow-body .flow-body-card .card__item .card__item-txt {
        color: #1ACE5A;
        font-size: 1.125rem;
        font-weight: 700;
        text-align: center; }

@media screen and (max-width: 960px) {
  .p-recruit-nav .nav-body {
    margin-top: 4.6153846154rem; }
    .p-recruit-nav .nav-body .nav-body-image .nav-body-bg {
      padding-top: 62.5%; }
    .p-recruit-nav .nav-body .nav-body-note {
      width: 100%;
      margin-top: -2.3076923077rem; }
      .p-recruit-nav .nav-body .nav-body-note .nav-body-txt {
        padding: 3.8461538462rem 1.9230769231rem 0 1.1538461538rem; }
        .p-recruit-nav .nav-body .nav-body-note .nav-body-txt h2 {
          font-size: 1.8461538462rem;
          line-height: 1.8; }
        .p-recruit-nav .nav-body .nav-body-note .nav-body-txt p {
          margin-top: 1.1538461538rem; }

  .p-recruit-work .work-body {
    margin-top: 3.0769230769rem; }
    .p-recruit-work .work-body .work-body-card {
      grid-template-columns: 1fr;
      grid-column-gap: 0;
      grid-row-gap: 0.7692307692rem; }
      .p-recruit-work .work-body .work-body-card .card__item {
        border-radius: 0.3846153846rem;
        padding: 2.3076923077rem 1.9230769231rem 2.3076923077rem; }
        .p-recruit-work .work-body .work-body-card .card__item .card__item-img {
          width: 7.6923076923rem;
          height: 7.6923076923rem; }
          .p-recruit-work .work-body .work-body-card .card__item .card__item-img img {
            width: 5.3846153846rem; }
        .p-recruit-work .work-body .work-body-card .card__item .card__item-lab {
          margin-top: -1.1538461538rem;
          padding-left: 0.9230769231rem; }
          .p-recruit-work .work-body .work-body-card .card__item .card__item-lab::before {
            width: 0.5384615385rem;
            height: 0.5384615385rem; }
        .p-recruit-work .work-body .work-body-card .card__item .card__item-cap {
          font-size: 1.3076923077rem; }
        .p-recruit-work .work-body .work-body-card .card__item .card__item-txt {
          margin-top: 0.7692307692rem; }

  .p-recruit-message .message-head {
    padding-bottom: 0;
    padding-right: 0; }
    .p-recruit-message .message-head .message-head-image {
      width: 100%; }
      .p-recruit-message .message-head .message-head-image img {
        object-fit: cover;
        object-position: 50% 50%;
        height: 21.5384615385rem; }
    .p-recruit-message .message-head .message-head-copy {
      position: relative;
      right: auto;
      bottom: auto;
      width: 100%;
      padding-right: 1.9230769231rem;
      padding-left: 0;
      text-align: right;
      margin-top: -2.6923076923rem; }
      .p-recruit-message .message-head .message-head-copy h3 {
        font-size: 1.5384615385rem;
        margin-top: 2.3076923077rem;
        text-align: left; }
  .p-recruit-message .message-body {
    margin-top: 2.3076923077rem; }
    .p-recruit-message .message-body .message-body-col {
      grid-template-columns: 1fr;
      grid-column-gap: 0;
      grid-row-gap: 0.7692307692rem; }
      .p-recruit-message .message-body .message-body-col .col__item p + p {
        margin-top: 0.7692307692rem; }
      .p-recruit-message .message-body .message-body-col .col__item ._name {
        margin-top: 2.3076923077rem; }

  .p-recruit-number .number-body {
    margin-top: 3.0769230769rem; }
    .p-recruit-number .number-body .number-body-card {
      grid-template-columns: 1fr;
      grid-column-gap: 0;
      grid-row-gap: 0.7692307692rem; }
      .p-recruit-number .number-body .number-body-card .card__item {
        border-radius: 0.3846153846rem;
        height: 13.0769230769rem;
        padding: 1.9230769231rem; }
        .p-recruit-number .number-body .number-body-card .card__item:nth-child(2) {
          grid-column-start: 1;
          grid-column-end: 2; }
        .p-recruit-number .number-body .number-body-card .card__item:nth-child(3) {
          grid-column-start: 1;
          grid-column-end: 2; }
        .p-recruit-number .number-body .number-body-card .card__item:nth-child(6) {
          grid-column-start: 1;
          grid-column-end: 2; }
        .p-recruit-number .number-body .number-body-card .card__item._he2 {
          height: 16.1538461538rem; }
        .p-recruit-number .number-body .number-body-card .card__item._he3 {
          height: 21.5384615385rem; }
        .p-recruit-number .number-body .number-body-card .card__item .card__item-label p {
          font-size: 0.9230769231rem; }
        .p-recruit-number .number-body .number-body-card .card__item .card__item-label h3 {
          font-size: 1.2307692308rem; }
        .p-recruit-number .number-body .number-body-card .card__item .card__item-num {
          right: 1.9230769231rem;
          bottom: 1.1538461538rem; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .number {
            font-size: 3.5384615385rem; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .txt {
            font-size: 1rem;
            margin-left: 0.2307692308rem; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .txt1,
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .counter .txt2 {
            font-size: 1rem; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num .item .notice {
            font-size: 0.8461538462rem;
            margin-bottom: 0.7692307692rem; }
          .p-recruit-number .number-body .number-body-card .card__item .card__item-num.col {
            grid-template-columns: repeat(2, 1fr);
            grid-column-gap: 0.7692307692rem;
            width: 85%; }

  .p-recruit-interview .interview-body {
    margin-top: 3.0769230769rem;
    padding-left: 0; }
    .p-recruit-interview .interview-body .interview-body-block {
      display: block;
      column-gap: 0; }
      .p-recruit-interview .interview-body .interview-body-block .block__card {
        width: 100%; }
        .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner {
          position: relative;
          top: auto; }
          .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-label {
            padding-left: 1.0769230769rem;
            margin-left: 1.5625rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-label::before {
              width: 0.5384615385rem;
              height: 0.5384615385rem; }
          .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info {
            border-radius: 0 0.3846153846rem 0.3846153846rem 0;
            margin-top: 1.5384615385rem;
            padding: 2.6923076923rem 1.9230769231rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__image {
              width: 7.6923076923rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text {
              margin-left: 1.9230769231rem; }
              .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text p {
                font-size: 0.9615384615rem; }
              .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text h4 {
                font-size: 1.3076923077rem;
                margin-top: 0.6153846154rem;
                margin-bottom: 0; }
              .p-recruit-interview .interview-body .interview-body-block .block__card .block__card-inner .block__card-info .info__text ._bg {
                top: 0.7692307692rem;
                right: 0.7692307692rem;
                font-size: 0.9615384615rem;
                padding: 0 0.3846153846rem; }
      .p-recruit-interview .interview-body .interview-body-block .block__note {
        width: 100%;
        margin-top: 3.4615384615rem;
        padding-left: 1.9230769231rem; }
        .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-comment h3 {
          font-size: 1.5384615385rem;
          margin-bottom: 1.5384615385rem; }
        .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-comment p {
          margin-top: 0.7692307692rem; }
        .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule {
          margin-top: 3.8461538462rem; }
          .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-label {
            font-size: 1rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-label span {
              font-size: 2rem;
              margin-right: 1.5384615385rem; }
          .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list::before {
            top: 50%;
            left: 2.5384615385rem;
            transform: translateY(-50%);
            height: 95%; }
          .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item {
            margin-top: 3.0769230769rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__time {
              width: 5.0769230769rem;
              height: 5.0769230769rem; }
            .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__move {
              margin-left: 1.9230769231rem; }
              .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__move ._bold {
                font-size: 1.0769230769rem; }
              .p-recruit-interview .interview-body .interview-body-block .block__note .block__note-schedule .block__note-schedule-list .block__note-schedule-item .item__move p {
                font-size: 0.9230769231rem;
                line-height: 1.8; }
    .p-recruit-interview .interview-body .interview-body-block + .interview-body-block {
      margin-top: 4.6153846154rem; }

  .p-recruit-job .job-body {
    margin-top: 3.0769230769rem; }
    .p-recruit-job .job-body .job-body-list {
      padding-left: 0; }
      .p-recruit-job .job-body .job-body-list .job-body-item {
        padding: 2.3076923077rem 0; }
        .p-recruit-job .job-body .job-body-list .job-body-item dt {
          width: 6.9230769231rem; }

  .p-recruit-flow .flow-body {
    margin-top: 3.0769230769rem; }
    .p-recruit-flow .flow-body .flow-body-card {
      grid-template-columns: repeat(1, 1fr);
      grid-column-gap: 0rem;
      grid-row-gap: 3.0769230769rem; }
      .p-recruit-flow .flow-body .flow-body-card .card__item {
        height: 11.5384615385rem; }
        .p-recruit-flow .flow-body .flow-body-card .card__item::before {
          top: auto;
          bottom: -2.3076923077rem;
          right: 50%;
          transform: translateX(50%);
          height: 1.1538461538rem;
          width: 2.3076923077rem;
          clip-path: polygon(0 0, 100% 0, 50% 100%); }
        .p-recruit-flow .flow-body .flow-body-card .card__item .card__item-label {
          top: 0.3846153846rem;
          right: 1.1538461538rem;
          font-size: 0.9230769231rem;
          padding-left: 1.1538461538rem; }
          .p-recruit-flow .flow-body .flow-body-card .card__item .card__item-label::before {
            width: 0.4615384615rem;
            height: 0.4615384615rem; }
        .p-recruit-flow .flow-body .flow-body-card .card__item .card__item-txt {
          font-size: 1.2307692308rem;
          line-height: 1.8; } }
/**
 * contact css
 */
/* ==========================================================================
   #contact 
========================================================================== */
.p-contact-content .content-head .content-head-cap {
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.8; }
.p-contact-content .content-head .content-head-text {
  margin-top: 2.5rem; }
.p-contact-content .content-body {
  margin-top: 7.5rem; }
  .p-contact-content .content-body .content-body-form .form__list .form__list-item {
    margin-top: 3.125rem; }
    .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-cap {
      font-size: 1.125rem;
      font-weight: 600; }
      .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-cap span {
        color: red;
        font-size: 0.875rem;
        font-weight: 400;
        margin-left: 0.9375rem; }
    .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-input {
      margin-top: 0.9375rem; }
      .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-input._col {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-column-gap: 0.625rem; }
  .p-contact-content .content-body .content-body-form .form__check {
    margin-top: 5rem; }
    .p-contact-content .content-body .content-body-form .form__check .form__check-cap {
      font-size: 1.125rem;
      font-weight: 600;
      padding-left: 1.5625rem;
      position: relative; }
      .p-contact-content .content-body .content-body-form .form__check .form__check-cap::before {
        position: absolute;
        content: '';
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        width: 0.625rem;
        height: 0.625rem;
        background: #1ACE5A;
        border-radius: 100%; }
    .p-contact-content .content-body .content-body-form .form__check .form__check-txt {
      margin-top: 0.3125rem; }
      .p-contact-content .content-body .content-body-form .form__check .form__check-txt a {
        color: #a8a8a8;
        text-decoration: underline; }
  .p-contact-content .content-body .content-body-form .form__btn {
    margin-top: 3.75rem; }
    .p-contact-content .content-body .content-body-form .form__btn .form__btn-txt {
      font-size: 0.875rem;
      margin-top: 1.25rem; }
  .p-contact-content .content-body .content-body-recaptcha {
    margin-top: 6.25rem; }
    .p-contact-content .content-body .content-body-recaptcha p {
      color: #a8a8a8;
      font-size: 0.75rem;
      text-align: right; }
  .p-contact-content .content-body .wpcf7-not-valid-tip {
    font-size: 0.75rem;
    margin-top: 0.625rem; }
  .p-contact-content .content-body .wpcf7 form .wpcf7-response-output {
    margin: 2.5rem 0;
    padding: 1.25rem 1.5625rem;
    border-width: 1px;
    line-height: 1.6; }

form input[type="text"],
form input[type="email"],
form select,
form textarea {
  border: solid #cccccc 1px;
  border-radius: 0.1875rem;
  font-size: 1rem;
  line-height: 1.8;
  letter-spacing: .025em;
  padding: 1.25rem 1.875rem;
  width: 100%; }
  form input[type="text"]::placeholder,
  form input[type="email"]::placeholder,
  form select::placeholder,
  form textarea::placeholder {
    color: #cccccc; }
form input[type="submit"] {
  width: 17.1875rem;
  height: 4.125rem;
  background: #1ACE5A;
  border-radius: 2.0625rem;
  color: #ffffff;
  font-weight: 600;
  letter-spacing: .025em;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center; }

@media screen and (max-width: 960px) {
  .p-contact-content .content-head .content-head-cap {
    font-size: 1.5384615385rem;
    font-feature-settings: "palt";
    text-align: justify;
    text-justify: inter-ideograph; }
  .p-contact-content .content-head .content-head-text {
    margin-top: 1.9230769231rem;
    font-size: 0.9615384615rem; }
  .p-contact-content .content-body {
    margin-top: 4.6153846154rem; }
    .p-contact-content .content-body .content-body-form .form__list .form__list-item {
      margin-top: 2.3076923077rem; }
      .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-cap {
        font-size: 1.0769230769rem; }
        .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-cap span {
          font-size: 0.9230769231rem;
          margin-left: 1.1538461538rem; }
      .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-input {
        margin-top: 1.1538461538rem; }
        .p-contact-content .content-body .content-body-form .form__list .form__list-item .form__list-item-input._col {
          grid-column-gap: 0.3846153846rem; }
    .p-contact-content .content-body .content-body-form .form__check {
      margin-top: 3.8461538462rem; }
      .p-contact-content .content-body .content-body-form .form__check .form__check-cap {
        font-size: 1.1538461538rem;
        padding-left: 1.1538461538rem; }
        .p-contact-content .content-body .content-body-form .form__check .form__check-cap::before {
          width: 0.5384615385rem;
          height: 0.5384615385rem; }
      .p-contact-content .content-body .content-body-form .form__check .form__check-txt {
        font-feature-settings: "palt";
        text-align: justify;
        text-justify: inter-ideograph;
        margin-top: 0.3846153846rem; }
    .p-contact-content .content-body .content-body-form .form__btn {
      margin-top: 2.6923076923rem; }
      .p-contact-content .content-body .content-body-form .form__btn .form__btn-txt {
        font-size: 0.8461538462rem;
        margin-top: 0.3846153846rem; }
    .p-contact-content .content-body .content-body-recaptcha {
      margin-top: 3.8461538462rem; }
      .p-contact-content .content-body .content-body-recaptcha p {
        font-size: 0.8461538462rem; }
    .p-contact-content .content-body .wpcf7-not-valid-tip {
      font-size: 0.8461538462rem;
      margin-top: 0.6153846154rem; }
    .p-contact-content .content-body .wpcf7 form .wpcf7-response-output {
      margin: 2.3076923077rem 0;
      padding: 1.1538461538rem 1.5384615385rem; }

  form input[type="text"],
  form input[type="email"],
  form select,
  form textarea {
    border-radius: 0.2307692308rem;
    padding: 1.1538461538rem 1.5384615385rem; }
  form input[type="submit"] {
    width: 15.3846153846rem;
    height: 4rem;
    border-radius: 2rem; } }
/**
 * policy css
 */
/* ==========================================================================
   #policy 
========================================================================== */
.p-policy-hero {
  margin-top: 22.5rem; }
  .p-policy-hero .hero-inner .hero-inner-label {
    font-family: "termina", sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0;
    padding-left: 1.5625rem;
    position: relative; }
    .p-policy-hero .hero-inner .hero-inner-label::before {
      position: absolute;
      content: '';
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 0.625rem;
      height: 0.625rem;
      background: #1ACE5A;
      border-radius: 100%; }
  .p-policy-hero .hero-inner .hero-inner-title {
    font-size: 2.25rem;
    font-weight: 600;
    margin-top: 0.625rem; }

.p-policy-content {
  margin-top: 7.5rem; }
  .p-policy-content .content-body {
    margin-top: 5rem; }
    .p-policy-content .content-body .content-body-list .list__item .list__item-cap {
      font-size: 1.25rem;
      font-weight: 600; }
    .p-policy-content .content-body .content-body-list .list__item .list__item-txt {
      font-feature-settings: "palt";
      text-align: justify;
      text-justify: inter-ideograph;
      margin-top: 0.625rem; }
    .p-policy-content .content-body .content-body-list .list__item ul {
      margin-top: 0.625rem; }
      .p-policy-content .content-body .content-body-list .list__item ul li {
        padding-left: 0.9375rem;
        position: relative; }
        .p-policy-content .content-body .content-body-list .list__item ul li::before {
          position: absolute;
          content: '・';
          top: 0;
          left: 0; }
    .p-policy-content .content-body .content-body-list .list__item + .list__item {
      margin-top: 4.375rem; }

@media screen and (max-width: 960px) {
  .p-policy-hero {
    margin-top: 13.8461538462rem; }
    .p-policy-hero .hero-inner .hero-inner-label {
      padding-left: 1.5384615385rem; }
      .p-policy-hero .hero-inner .hero-inner-label::before {
        width: 0.5384615385rem;
        height: 0.5384615385rem; }
    .p-policy-hero .hero-inner .hero-inner-title {
      font-size: 2rem;
      margin-top: 0.7692307692rem; }

  .p-policy-content {
    margin-top: 4.6153846154rem; }
    .p-policy-content .content-body {
      margin-top: 3.0769230769rem; }
      .p-policy-content .content-body .content-body-list .list__item .list__item-cap {
        font-size: 1.1538461538rem; }
      .p-policy-content .content-body .content-body-list .list__item .list__item-txt {
        margin-top: 0.7692307692rem; }
      .p-policy-content .content-body .content-body-list .list__item ul {
        margin-top: 0.7692307692rem; }
        .p-policy-content .content-body .content-body-list .list__item ul li {
          padding-left: 0.9230769231rem; }
      .p-policy-content .content-body .content-body-list .list__item + .list__item {
        margin-top: 2.3076923077rem; } }
/**
 * animation css
 */
/* ==========================================================================
   animation
========================================================================== */
/* オープニングアニメーション */
.p-index-hero .hero-image {
  overflow: hidden; }
  .p-index-hero .hero-image img {
    transform: scale(1.2);
    transition-property: transform;
    transition-duration: 2s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .p-index-hero .hero-image.js-appear img {
    transform: scale(1); }

.c-sub-hero .hero__label,
.c-sub-hero .hero__title {
  transform: translateY(30px);
  opacity: 0;
  transition-property: transform, opacity;
  transition-duration: 1.5s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
.c-sub-hero .hero__label {
  transition-delay: .5s; }
.c-sub-hero .hero__title {
  transition-delay: 1s; }
.c-sub-hero.js-appear .hero__label,
.c-sub-hero.js-appear .hero__title {
  transform: translateY(0);
  opacity: 1; }

/* メニューアニメーション */
.l-spHeader .header-nav {
  opacity: 0;
  visibility: hidden;
  transition-property: opacity, visibility;
  transition-duration: .5s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .l-spHeader .header-nav ul li {
    transform: translate(0, 10px);
    opacity: 0;
    transition-property: transform, opacity;
    transition-duration: 1s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
    .l-spHeader .header-nav ul li:nth-child(2) {
      transition-delay: 0.15s; }
    .l-spHeader .header-nav ul li:nth-child(3) {
      transition-delay: 0.3s; }
    .l-spHeader .header-nav ul li:nth-child(4) {
      transition-delay: 0.45s; }
    .l-spHeader .header-nav ul li:nth-child(5) {
      transition-delay: 0.6s; }
    .l-spHeader .header-nav ul li:nth-child(6) {
      transition-delay: 0.75s; }
    .l-spHeader .header-nav ul li:nth-child(7) {
      transition-delay: 0.9s; }
    .l-spHeader .header-nav ul li:nth-child(8) {
      transition-delay: 1.05s; }
    .l-spHeader .header-nav ul li:nth-child(9) {
      transition-delay: 1.2s; }
    .l-spHeader .header-nav ul li:nth-child(10) {
      transition-delay: 1.35s; }
    .l-spHeader .header-nav ul li:nth-child(11) {
      transition-delay: 1.5s; }
  .l-spHeader .header-nav.js-active {
    opacity: 1;
    visibility: visible; }
    .l-spHeader .header-nav.js-active ul li {
      transform: translate(0, 0);
      opacity: 1; }

.header-toggle .header-toggle-inner span {
  transition-property: top, bottom, opacity, transform;
  transition-duration: .25s;
  transition-timing-function: ease; }
.header-toggle.js-active .header-toggle-inner span:nth-child(1) {
  top: 3px;
  transform: rotate(45deg); }
.header-toggle.js-active .header-toggle-inner span:nth-child(2) {
  bottom: 3px;
  transform: rotate(-45deg); }

/*スクロールアニメーション*/
.l-pcHeader {
  transition: height .5s; }
  .l-pcHeader.js-fixed {
    height: 5.375rem;
    border-bottom: solid #f2f2f2 1px; }

.l-spHeader .header-btn {
  opacity: 0;
  visibility: hidden; }
.l-spHeader.js-fixed .header-btn {
  opacity: 1;
  visibility: visible;
  transition: opacity .5s; }

.header-btn {
  opacity: 1;
  visibility: visible;
  transition-property: opacity, visibility;
  transition-duration: .25s;
  transition-timing-function: ease; }
  .header-btn.js-hidden {
    opacity: 0;
    visibility: hidden; }

.fade {
  transform: translateY(30px);
  opacity: 0;
  transition-property: transform, opacity;
  transition-duration: 1s;
  transition-timing-function: ease; }
  .fade.js-appear {
    transform: translateY(0);
    opacity: 1; }
