@charset "UTF-8";
@media screen and (min-width: 769px), print {
  a[href^="tel"] {
    pointer-events: none;
    text-decoration: none;
    cursor: default !important;
  }
  .show_sp {
    display: none !important;
  }
  .container {
    overflow: hidden;
  }
  .row {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .row {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
  .hvr-pop {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(0.1rem) translateZ(0);
    -moz-transform: perspective(0.1rem) translateZ(0);
    transform: perspective(0.1rem) translateZ(0);
    -moz-box-shadow: 0 0 0.1rem rgba(0, 0, 0, 0);
    box-shadow: 0 0 0.1rem rgba(0, 0, 0, 0);
  }
  .hvr-pop:hover,
  .hvr-pop:focus,
  .hvr-pop:active {
    -webkit-animation-name: hvr-pop;
    -moz-animation-name: hvr-pop;
    animation-name: hvr-pop;
    -webkit-animation-duration: 0.3s;
    -moz-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    animation-iteration-count: 1;
  }
  .hvz {
    overflow: hidden;
  }
  .hvz figure {
    overflow: hidden;
  }
  .hvz img {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    -moz-transition: transform 0.3s, -moz-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s, -moz-transform 0.3s;
  }
  .hvz:hover {
    opacity: 1;
  }
  .hvz:hover img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 1;
  }
  body {
    padding-top: 84px;
  }
  .text_cm {
    font-size: 18px;
    line-height: 180%;
  }
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    background: rgba(255, 255, 255, 0.24);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 84px;
    padding: 0 100px 0 50px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .header {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .header_l {
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .header_l h1 {
    font-size: 0;
    line-height: 0;
  }
  .header_l h1 a {
    display: block;
    width: 265px;
    max-width: 25vw;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .header_l h1 a:hover {
    opacity: 0.8;
  }
  .header_l h1 a:hover img {
    opacity: 0.8;
  }
  .header_r .header_nav > ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .header_r .header_nav > ul li:not(:last-child) {
    margin-right: 34px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .header_r .header_nav > ul li:not(:last-child) {
    margin-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .header_r .header_nav > ul li a {
    white-space: nowrap;
    font-weight: 700;
    font-size: 14px;
    line-height: 160%;
    letter-spacing: 0.04em;
    color: #382e2e;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    display: inline-block;
    position: relative;
  }
  .header_r .header_nav > ul li a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #0270aa;
    display: block;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
  }
  .header_r .header_nav > ul li a:hover {
    opacity: 1;
    color: #0270aa;
  }
  .header_r .header_nav > ul li a:hover::after {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
  }
  .footer {
    padding-top: 37px;
    background-color: #fff;
  }
  .footer_main {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 131px;
  }
  .footer_copyright {
    width: 100%;
    text-align: center;
    background-color: #382e2e;
    padding: 14px;
    font-weight: 400;
    font-size: 12px;
    line-height: 100%;
    color: #ffffff;
  }
  /* .footer_sites {
    text-align: right;
    margin-top: 187px;
  } */
  /* .footer_sites a {
    position: relative;
    font-weight: 500;
    font-size: 13px;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #382e2e;
    padding-right: 18px;
  }
  .footer_sites a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    background: url(../img/ic_link.svg) center/100% 100% no-repeat;
    display: block;
  } */
  .footer_l a {
    display: inline-block;
    width: 265px;
    margin-bottom: 10px;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .footer_l p {
    font-weight: 400;
    font-size: 13px;
    line-height: 1.92308;
    letter-spacing: 0.04em;
    color: #000000;
  }
  .footer_l p span {
    font-weight: 500;
  }
  .footer_r {
    padding-top: 13px;
  }
  .footer_r ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .footer_r ul li:not(:last-child) {
    margin-right: 34px;
  }
  .footer_r ul li a {
    font-weight: 500;
    font-size: 14px;
    line-height: 160%;
    letter-spacing: 0.04em;
    color: #382e2e;
    opacity: 1;
    position: relative;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
  }
  .footer_r ul li a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #0270aa;
    display: block;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
  }
  .footer_r ul li a:hover {
    opacity: 1;
    color: #0270aa;
  }
  .footer_r ul li a:hover::after {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
  }
  .ttl {
    padding-top: 256px;
  }
  .ttl h2 small {
    font-weight: 500;
    font-size: 21px;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #9b9b9b;
    display: block;
    margin-top: 8px;
  }
  .ttl h2 span {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 94px;
    line-height: 100%;
    color: #382e2e;
    display: block;
  }
  .breadcrumb {
    padding-bottom: 100px;
  }
  .breadcrumb .row {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .breadcrumb .row::after {
    content: "";
    position: absolute;
    top: -250px;
    right: -100px;
    width: 635px;
    height: 448px;
    background: conic-gradient(
      from 100.21deg at 50% 50%,
      #e6ffe2 -89.91deg,
      #cfeeff 43.2deg,
      #ffedd3 150.55deg,
      #cfeeff 197.26deg,
      #e6ffe2 270.09deg,
      #cfeeff 403.2deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(-150.54deg);
    -moz-transform: rotate(-150.54deg);
    -ms-transform: rotate(-150.54deg);
    transform: rotate(-150.54deg);
    display: block;
    opacity: 0.3;
    z-index: -1;
  }
  .breadcrumb ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .breadcrumb ul li {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    text-align: right;
    letter-spacing: 0.04em;
    color: #0270aa;
  }
  .breadcrumb ul li:not(:last-child) {
    position: relative;
    margin-right: 21px;
  }
  .breadcrumb ul li:not(:last-child):after {
    content: "/";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -15px;
    color: #62afdb;
  }
  .breadcrumb ul li a {
    color: #62afdb;
  }
  .breadcrumb ul li a:visited {
    text-decoration: underline;
  }
  .mvTop {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .t_ttl {
    margin-bottom: 40px;
  }
  .t_ttl.st2 small {
    color: #d9d9d9;
  }
  .t_ttl.st2 span {
    color: #f8f6f6;
  }
  .t_ttl small {
    display: block;
    /* font-weight: 700; */
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #b5b5b5;
  }
  .t_ttl span {
    display: block;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 56px;
    line-height: 100%;
    color: #382e2e;
    margin-top: 8px;
  }
  .t_ttl span.cusMar {
    margin-top: 4px;
  }
  .t_ttl3 {
    margin-bottom: 20px;
    font-weight: 500;
    font-size: 26px;
    line-height: 100%;
    letter-spacing: 0.02em;
  }
  .btnWr {
    text-align: right;
  }
  a.btn,
  button.btn {
    position: relative;
    padding-right: 62px;
    margin-top: 48px;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    color: #382e2e;
    min-height: 48px;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  a.btn .split,
  button.btn .split {
    font-style: normal;
    display: inline-block;
    color: #382e2e;
    background-image: -webkit-linear-gradient(
      0.51deg,
      rgba(217, 217, 217, 0) 13.1%,
      #d9d9d9 37.31%,
      #d9d9d9 62.61%,
      rgba(217, 217, 217, 0) 85.37%
    );
    background-image: -moz-
      oldlinear-gradient(
        0.51deg,
        rgba(217, 217, 217, 0) 13.1%,
        #d9d9d9 37.31%,
        #d9d9d9 62.61%,
        rgba(217, 217, 217, 0) 85.37%
      );
    background-image: linear-gradient(
      89.49deg,
      rgba(217, 217, 217, 0) 13.1%,
      #d9d9d9 37.31%,
      #d9d9d9 62.61%,
      rgba(217, 217, 217, 0) 85.37%
    );
    -moz-background-size: 54.64px 43.8px;
    background-size: 54.64px 43.8px;
    background-repeat: no-repeat;
    background-color: #382e2e;
    -moz-background-clip: text;
    background-clip: text;
    -webkit-background-clip: text;
  }
  /* a.btn .split .lightText, button.btn .split .lightText {
    -webkit-animation-duration: 0.15s;
       -moz-animation-duration: 0.15s;
            animation-duration: 0.15s;
    -webkit-animation-iteration-count: 1;
       -moz-animation-iteration-count: 1;
            animation-iteration-count: 1;
  } */
  a.btn .icon,
  button.btn .icon {
    width: 48px;
    height: 48px;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  a.btn .icon:before,
  button.btn .icon:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    background-color: #382e2e;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
  }
  a.btn .icon::after,
  button.btn .icon::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-image: url(../img/btn_ar.svg);
    background-position: center;
    display: block;
    -moz-background-size: 13px 9px;
    background-size: 13px 9px;
    display: block;
  }
  a.btn:hover,
  button.btn:hover {
    opacity: 1;
  }
  /* a.btn:hover .split .lightText, button.btn:hover .split .lightText {
    -webkit-animation-name: LightText;
       -moz-animation-name: LightText;
            animation-name: LightText;
    -webkit-animation-timing-function: ease;
       -moz-animation-timing-function: ease;
            animation-timing-function: ease;
  } */
  a.btn:hover .split,
  button.btn:hover .split {
    color: rgba(56, 46, 46, 0);
    -webkit-animation: LightText2 0.5s ease-in-out 1 forwards;
    -moz-animation: LightText2 0.5s ease-in-out 1 forwards;
    animation: LightText2 0.5s ease-in-out 1 forwards;
  }
  a.btn:hover .icon:before,
  button.btn:hover .icon:before {
    -webkit-transform: translateY(-50%) scale(1.083);
    -moz-transform: translateY(-50%) scale(1.083);
    -ms-transform: translateY(-50%) scale(1.083);
    transform: translateY(-50%) scale(1.083);
    background-color: #0270aa;
  }
  a.btn.st2 .split,
  button.btn.st2 .split {
    color: white;
    background-image: -webkit-linear-gradient(
      0.51deg,
      rgba(217, 217, 217, 0) 13.1%,
      /* #0270aa 37.31%,
      #0270aa 62.61%, */ #d9d9d9 37.31%,
      #d9d9d9 62.61%,
      rgba(217, 217, 217, 0) 85.37%
    );
    background-image: -moz-
      oldlinear-gradient(
        0.51deg,
        rgba(217, 217, 217, 0) 13.1%,
        #d9d9d9 37.31%,
        #d9d9d9 62.61%,
        rgba(217, 217, 217, 0) 85.37%
      );
    background-image: linear-gradient(
      89.49deg,
      rgba(217, 217, 217, 0) 13.1%,
      #d9d9d9 37.31%,
      #d9d9d9 62.61%,
      rgba(217, 217, 217, 0) 85.37%
    );
    background-color: #fff;
  }
  a.btn.st2 .icon:before,
  button.btn.st2 .icon:before {
    background-color: #fff;
  }
  a.btn.st2 .icon:after,
  button.btn.st2 .icon:after {
    background-image: url(../img/btn_ar2.svg);
  }
  a.btn.st2:hover .split,
  button.btn.st2:hover .split {
    color: rgba(255, 255, 255, 0);
  }
  .p_top .header {
    background-color: transparent;
  }
  .p_top .mv {
    position: relative;
    padding-top: 20px;
    position: relative;
    background: -webkit-linear-gradient(
      273.86deg,
      rgba(248, 246, 246, 0.12) 23.06%,
      rgba(238, 234, 233, 0.6) 58.16%,
      #f8f6f6 90.37%
    );
    background: -moz-
      oldlinear-gradient(
        273.86deg,
        rgba(248, 246, 246, 0.12) 23.06%,
        rgba(238, 234, 233, 0.6) 58.16%,
        #f8f6f6 90.37%
      );
    background: linear-gradient(
      176.14deg,
      rgba(248, 246, 246, 0.12) 23.06%,
      rgba(238, 234, 233, 0.6) 58.16%,
      #f8f6f6 90.37%
    );
    /* height: calc(100vh - 84px);
    height: -webkit-calc(100vh - 84px); */
  }
  .p_top .mv .mv_imgArea {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p_top .mv .mv_imgArea .row {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .p_top .mv .mv_imgArea .mv_img {
    position: absolute;
  }
  .p_top .mv .mv_imgArea .mv_img img {
    -moz-border-radius: 40px;
    border-radius: 40px;
    overflow: hidden;
  }
  .p_top .mv .mv_imgArea .mv_img1 {
    width: 384px;
    left: -350px;
    /* top: 0; */
    top: -20px;
  }
  .p_top .mv .mv_imgArea .mv_img2 {
    bottom: 0;
    left: -250px;
    width: 418px;
  }
  .p_top .mv .mv_imgArea .mv_img3 {
    top: 320px;
    right: -143px;
    width: 143px;
  }
  .p_top .mv .mv_imgArea .mv_img3 img {
    -moz-border-radius: 25px;
    border-radius: 25px;
  }
  .p_top .mv .mv_imgArea .mv_img4 {
    top: 100px;
    left: 160px;
    width: 204px;
  }
  .p_top .mv .mv_imgArea .mv_img4 img {
    -moz-border-radius: 25px;
    border-radius: 25px;
  }
  .p_top .mv::before {
    content: "";
    position: absolute;
    left: 50%;
    top: -84px;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 1894px;
    height: 2148px;
    background: url(../img/mv_bg1.png) center/100% 100% no-repeat;
    display: block;
  }
  .p_top .mv_top {
    position: relative;
    min-height: 790px;
  }
  .p_top .mv_top .row {
    position: relative;
  }
  .p_top .mv_top .mv_sliderArea {
    width: 653px;
    margin-left: auto;
    position: relative;
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    /* max-width: 40vw; */
  }
  .p_top .mv_top .mv_sliderArea.show {
    opacity: 1;
  }
  .p_top .mv_top .mv_sliderArea::after {
    content: "";
    position: absolute;
    right: -46px;
    /* bottom: -25px; */
    top: 25px;
    width: 100%;
    height: 105%;
    background: url(../img/mv_mask.png) center/100% 100% no-repeat;
    display: block;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_top .mv_top .mv_sliderArea::after {
    right: -15px;
    bottom: -15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_top .mv_top .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    /* -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center; */
    padding-top: 283px;
    z-index: 2;
  }
  .p_top .mv_top .txt h2 {
    -webkit-transform: matrix(1, -0.02, -0.17, 0.98, 0, 0) translateZ(0);
    -moz-transform: matrix(1, -0.02, -0.17, 0.98, 0, 0) translateZ(0);
    transform: matrix(1, -0.02, -0.17, 0.98, 0, 0) translateZ(0);
    font-family: "Zen Kurenaido", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 56px;
    line-height: 150%;
    letter-spacing: 0.06em;
    color: #382e2e;
    position: relative;
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_top .mv_top .txt h2 {
    font-size: 40px;
  }
}

@media screen and (min-width: 769px), print {
  .p_top .mv_top .txt h2.show {
    opacity: 1;
  }
  .p_top .mv_top .txt h2::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 732px;
    height: 471px;
    background: url(../img/mv_bg2.png) center/100% 100% no-repeat;
    display: block;
    z-index: -2;
  }
  .p_top .mv_top .txt h2::before {
    content: "";
    position: absolute;
    top: 50px;
    left: 0;
    width: 460px;
    height: 39px;
    background: url(../img/mv_line.png) center/100% 100% no-repeat;
    display: block;
    z-index: -1;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_top .mv_top .txt h2::before {
    width: 340px;
  }
}

@media screen and (min-width: 769px), print {
  .p_top .mv .mv_bot {
    padding: 120px 0;
  }
  .p_top .mv .mv_bot .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p_top .mv .mv_bot_l {
    width: 50%;
    padding-right: 110px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_top .mv .mv_bot_l::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 753px;
    height: 831px;
    background: url(../img/mv_bg3.png) center/100% 100% no-repeat;
    display: block;
    z-index: -1;
  }
  .p_top .mv .mv_bot_l h3 {
    font-weight: 500;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0.02em;
    margin-bottom: 31px;
  }
  .p_top .mv .mv_bot_l p + p {
    margin-top: 30px;
  }
  .p_top .mv .mv_bot_r {
    width: 50%;
    position: relative;
  }
  .p_top .mv .mv_bot_r ul li {
    margin-left: auto;
    width: 400px;
    -webkit-filter: drop-shadow(4px 8px 24px rgba(5, 45, 67, 0.08));
    filter: drop-shadow(4px 8px 24px rgba(5, 45, 67, 0.08));
  }
  .p_top .mv .mv_bot_r ul li:nth-of-type(1) {
    margin-right: 18px;
  }
  .p_top .mv .mv_bot_r ul li img {
    -moz-border-radius: 40px;
    border-radius: 40px;
    overflow: hidden;
  }
  .p_top .mv .mv_bot_r ul li + li {
    margin-top: 40px;
  }
  .p_top .mv .mv_bot_r ul li.st2 {
    width: 326px;
    margin-left: 0;
  }
  .p_top .mv .mv_bot_r ul li.st3 {
    width: 280px;
    margin-top: 33px;
  }
  .p_top .mv .mv_bot_r ul li.st3 img {
    -moz-border-radius: 30px;
    border-radius: 30px;
  }
  .p_top .about_service {
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      color-stop(32%, #ffffff),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(top, #ffffff 32%, #f2efef 100%);
    background: -moz- oldlinear-gradient(top, #ffffff 32%, #f2efef 100%);
    background: linear-gradient(180deg, #ffffff 32%, #f2efef 100%);
  }
  .p_top .about {
    padding: 100px 0 126px;
  }
  .p_top .about .t_ttl {
    text-align: center;
  }
  .p_top .about_main {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p_top .about_l {
    width: -webkit-calc(50% + 70px);
    width: -moz-calc(50% + 70px);
    width: calc(50% + 70px);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-left: -70px;
  }
  .p_top .about_l figure,
  .p_top .about_l picture {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_top .about_l figure::after,
  .p_top .about_l picture::after {
    content: "";
    position: absolute;
    bottom: -130px;
    right: -330px;
    width: 690px;
    height: 670px;
    background: url(../img/about_bg.png) center/100% 100% no-repeat;
    display: block;
    z-index: -1;
  }
  .p_top .about_r {
    width: 50%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding-left: 7.40741%;
    position: relative;
    z-index: 2;
  }
  .p_top .about_r p + p {
    margin-top: 30px;
  }
  .p_top .service {
    position: relative;
    z-index: 2;
    padding-bottom: 530px;
    margin-bottom: -360px;
  }
  .p_top .service .row {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_top .service .row::after {
    content: "";
    position: absolute;
    left: -110px;
    bottom: -270px;
    width: 344px;
    height: 439px;
    background: conic-gradient(
      from 44.43deg at 38.69% 64.24%,
      #f4dcff 0deg,
      #fffacc 28.8deg,
      #d4fff5 158.4deg,
      #ffede0 360deg,
      #f4dcff 360deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(-18.24deg);
    -moz-transform: rotate(-18.24deg);
    -ms-transform: rotate(-18.24deg);
    transform: rotate(-18.24deg);
    display: block;
    z-index: -1;
    opacity: 0.3;
  }
  .p_top .service_main {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_top .service_main::before {
    content: "";
    position: absolute;
    top: -230px;
    right: -220px;
    width: 343px;
    height: 439px;
    background: conic-gradient(
      from 162.45deg at 38.69% 64.24%,
      #eff8ff -14.4deg,
      #eff8ff 102.6deg,
      #ffe0f1 196.2deg,
      #fff1e0 279deg,
      #eff8ff 345.6deg,
      #eff8ff 462.6deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(136.47deg);
    -moz-transform: rotate(136.47deg);
    -ms-transform: rotate(136.47deg);
    transform: rotate(136.47deg);
    display: block;
    opacity: 0.4;
    pointer-events: none;
  }
  .p_top .service_main::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: -webkit-calc(100% + ((100vw - 1080px)/ 2));
    width: -moz-calc(100% + ((100vw - 1080px)/ 2));
    width: calc(100% + ((100vw - 1080px) / 2));
    height: 100%;
    background: url(../img/service_img_pc.jpg) center bottom no-repeat;
    -moz-background-size: cover;
    background-size: cover;
    display: block;
    z-index: -1;
    -moz-border-radius: 120px 0px 0px 120px;
    border-radius: 120px 0px 0px 120px;
    -webkit-filter: drop-shadow(20px 12px 60px rgba(5, 45, 67, 0.2));
    filter: drop-shadow(20px 12px 60px rgba(5, 45, 67, 0.2));
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_top .service_main::after {
    width: 100%;
  }
}

@media screen and (min-width: 769px), print {
  .p_top .service_main .txt {
    width: 655px;
    max-width: 100%;
    background: rgba(2, 112, 170, 0.9);
    -moz-border-radius: 120px 0px 0px 120px;
    border-radius: 120px 0px 0px 120px;
    padding: 120px 100px 120px 120px;
    color: #fff;
  }
  .p_top .interview {
    padding: 120px 0 60px;
    background: #ffffff;
    -moz-box-shadow: 0px 0px 36px rgba(5, 45, 67, 0.01);
    box-shadow: 0px 0px 36px rgba(5, 45, 67, 0.01);
    -moz-border-radius: 0px 160px 0px 0px;
    border-radius: 0px 160px 0px 0px;
    position: relative;
    z-index: 2;
  }
  .p_top .interview_btn {
    position: absolute;
    margin-top: 0;
    top: 11px;
    right: 0;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_top .interview_btn {
    right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_top .interview .row {
    position: relative;
  }
  .p_top .interview .row::before {
    content: "";
    position: absolute;
    bottom: -600px;
    left: 0;
    width: 551px;
    height: 721px;
    background: conic-gradient(
      from 180deg at 50% 50%,
      #e3ffde 0deg,
      #eff8ff 165.6deg,
      #fff2c4 360deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(116.76deg);
    -moz-transform: rotate(116.76deg);
    -ms-transform: rotate(116.76deg);
    transform: rotate(116.76deg);
    opacity: 0.3;
    display: block;
    z-index: 3;
  }
  .p_top .interview_head {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-bottom: 40px;
  }
  .p_top .interview_head .t_ttl {
    margin-bottom: 0;
  }
  .p_top .interview .interview_sliderArea {
    position: relative;
    padding-top: 93px;
    z-index: 3;
  }
  .p_top .interview .interview_sliderArea .interview_sliderCtr {
    position: absolute;
    top: 18px;
    right: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-prev,
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-next {
    margin: 0;
    position: static;
    width: 57px;
    height: 57px;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    border: 1px solid #382e2e;
    background-image: url(../img/slider_prev.svg);
    background-repeat: no-repeat;
    -moz-background-size: 7px 12px;
    background-size: 7px 12px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-prev:hover,
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-next:hover {
    opacity: 1;
    background-color: #f2efef;
  }
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-next {
    margin-left: 14px;
    background-image: url(../img/slider_next.svg);
  }
  .p_top .interview_slider {
    overflow: initial;
  }
  .p_top .work {
    padding: 127px 0 160px;
  }
  .p_top .work_main {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p_top .work_l {
    margin-left: -100px;
    width: -webkit-calc(50% + 100px);
    width: -moz-calc(50% + 100px);
    width: calc(50% + 100px);
    padding-right: 80px;
    position: relative;
    z-index: 3;
  }
  .p_top .work_l img {
    -moz-border-radius: 0px 100px 100px 0px;
    border-radius: 0px 100px 100px 0px;
    overflow: hidden;
  }
  .p_top .work_r {
    width: 50%;
    position: relative;
    z-index: 3;
    padding-left: 30px;
  }
  .p_top .recruit {
    position: relative;
    background: url(../img/recruit_img_pc.jpg) center top no-repeat;
    -moz-background-size: cover;
    background-size: cover;
    min-height: 624px;
  }
  .p_top .recruit .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    padding: 42px;
  }
  .p_top .recruit .txt .txt_inner {
    height: 100%;
    max-width: 1160px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.12);
    background-blend-mode: screen;
    -moz-border-radius: 18px;
    border-radius: 18px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
  }
  .p_top .recruit .txt .blockTxt {
    width: 375px;
  }
  .p_top .news {
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(top, rgba(242, 239, 239, 0.2) 32%, #f2efef 100%);
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    padding: 110px 0;
  }
  .p_top .news_main {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    padding: 120px 0;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_top .news_main {
    padding-left: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_top .news_main::after {
    content: "";
    position: absolute;
    top: 0;
    right: -40px;
    width: 100vw;
    height: 100%;
    background: #ffffff;
    -moz-box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    -moz-border-radius: 0px 60px 60px 0px;
    border-radius: 0px 60px 60px 0px;
    display: block;
    z-index: -1;
  }
  .p_top .news_main .btn {
    position: absolute;
    bottom: 120px;
    left: 0;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_top .news_main .btn {
    left: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_top .news_l {
    width: 320px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding-right: 15px;
  }
  .p_top .news_r {
    width: 100%;
    padding-right: 60px;
  }
  .news_list.st2 li a {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .news_list.st2 li a h4 {
    width: 100%;
    font-weight: 500;
    line-height: 1.75;
    font-size: 16px;
    margin: 16px 0 6px;
  }
  .news_list.st2 li a p {
    font-size: 14px;
    line-height: 1.6;
    padding-left: 0;
  }
  .news_list li:nth-of-type(1) a {
    padding-top: 0;
  }
  .news_list li a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 28px 0;
    border-bottom: 1px solid #d9d9d9;
  }
  .news_list li a:hover {
    opacity: 1;
  }
  .news_list li a:hover time {
    background-color: #f2efef;
  }
  .news_list li a time {
    border: 1px solid #000;
    width: 136px;
    height: 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .news_list li a p {
    width: 100%;
    padding-left: 28px;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    color: #000000;
  }
  .interview_it {
    position: relative;
    width: 280px;
    margin: 0 25px;
  }
  .interview_it:nth-child(even) {
    margin-top: 40px;
  }
  .interview_it p {
    text-align: right;
    position: absolute;
    bottom: 20px;
    right: 16px;
    font-weight: 700;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0.04em;
    color: #ffffff;
  }
  .interview_it p span {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 27px;
    line-height: 100%;
    /* margin-left: 11px; */
    position: absolute;
    top: -40px;
    right: 0;
  }
  .interview_it figure {
    height: 380px;
    -moz-border-radius: 18px;
    border-radius: 18px;
    overflow: hidden;
  }
  .interview_it figure img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-border-radius: 18px;
    border-radius: 18px;
    overflow: hidden;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .interview_it a {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .interview_it a:hover {
    opacity: 1;
  }
  .interview_it a:hover figure img {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
  }
  .p_interview {
    background-color: #f2efef;
  }
  .p_interview .interview {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_interview .interview::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: #ffffff;
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    display: block;
    z-index: -1;
  }
  .p_interview .interview::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100vw;
    height: 240px;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
  }
  .p_interview .interview .row {
    padding-bottom: 80px;
    padding-top: 104px;
    max-width: 960px;
  }
  .p_interview .interview_intro {
    padding-left: 27px;
    border-left: 5px solid #382e2e;
    margin-bottom: 100px;
  }
  .p_interview .interview_intro h2 {
    font-weight: 500;
    font-size: 26px;
    letter-spacing: 0.02em;
    color: #382e2e;
    position: relative;
  }
  .p_interview .interview_intro h2::before {
    content: "";
    position: absolute;
    top: 0;
    left: -32px;
    width: 5px;
    height: 100%;
    background: #0270aa;
    display: block;
  }
  .p_interview .interview_intro p {
    line-height: 2;
  }
  .p_interview .interview .row {
    position: relative;
  }
  .p_interview .interview_list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
  }
  .p_interview .interview_list::after {
    content: "";
    position: absolute;
    top: 70px;
    right: -50px;
    width: 551px;
    height: 721px;
    background: conic-gradient(
      from 180deg at 50% 50%,
      #e3ffde 0deg,
      #eff8ff 165.6deg,
      #fff2c4 360deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(116.76deg);
    -moz-transform: rotate(116.76deg);
    -ms-transform: rotate(116.76deg);
    transform: rotate(116.76deg);
    display: block;
    opacity: 0.4;
  }
  .p_interview .interview_list .interview_it {
    width: -webkit-calc((100% - 120px) / 3);
    width: -moz-calc((100% - 120px) / 3);
    width: calc((100% - 120px) / 3);
    margin: 0;
    position: relative;
    z-index: 2;
    margin-bottom: 80px;
  }
  .p_interview .interview_list .interview_it a {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_interview .interview_list .interview_it a figure {
    overflow: hidden;
  }
  .p_interview .interview_list .interview_it a figure img {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_interview .interview_list .interview_it a:hover {
    opacity: 1;
  }
  .p_interview .interview_list .interview_it a:hover figure img {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
  }
  .p_interview .interview_list .interview_it:not(:nth-of-type(3n)) {
    margin-right: 60px;
  }
  .p_interview .interview_dt_mv {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    position: relative;
    margin-bottom: 148px;
  }
  .p_interview .interview_dt_mv h2 {
    position: absolute;
    right: 30px;
    bottom: -86px;
    line-height: 1;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 172px;
    color: rgba(227, 224, 224, 0.3);
  }
  .p_interview .interview_dt_mv .txt {
    padding: 54px 208px 84px 100px;
    background: #ffffff;
    -moz-border-radius: 30px 0 0 30px;
    border-radius: 30px 0 0 30px;
    width: -webkit-calc(51.8% + 120px);
    width: -moz-calc(51.8% + 120px);
    width: calc(51.8% + 120px);
    margin-right: -120px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_interview .interview_dt_mv .txt {
    padding-left: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_interview .interview_dt_mv .txt h3 {
    font-weight: 500;
    font-size: 36px;
    line-height: 160%;
    letter-spacing: 0.02em;
    padding-bottom: 40px;
    margin-bottom: 30px;
    border-bottom: 1px solid #e0e0e0;
  }
  .p_interview .interview_dt_mv .txt p {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.46667;
    letter-spacing: 0.04em;
  }
  .p_interview .interview_dt_mv .txt p small {
    font-size: 18px;
    display: block;
  }
  .p_interview .interview_dt_mv .txt p em {
    font-style: normal;
    font-weight: 600;
    font-size: 38px;
    font-family: "Montserrat", sans-serif;
    display: block;
  }
  .p_interview .interview_dt_mv figure {
    width: 49.2%;
    overflow: hidden;
    -moz-border-radius: 12px 12px 12px 80px;
    border-radius: 12px 12px 12px 80px;
  }
  .p_interview .interview_dt_mv figure img {
    -moz-border-radius: 0px 0px 0px 120px;
    border-radius: 0px 0px 0px 120px;
    overflow: hidden;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_interview .interview_dt_main {
    background-color: #fff;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding: 40px 0 60px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_interview .interview_dt_main {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_interview .interview_dt_main ul {
    width: 800px;
    max-width: 100%;
    margin: 0 auto;
  }
  .p_interview .interview_dt_main ul li {
    padding: 40px 0;
  }
  .p_interview .interview_dt_main ul li:not(:last-child) {
    border-bottom: 1px solid #e0e0e0;
  }
  .p_interview .interview_dt_main ul li h3 {
    font-weight: 500;
    font-size: 26px;
    line-height: 140%;
    letter-spacing: 0.02em;
    margin-bottom: 10px;
  }
  .p_interview .interview_dt_main ul li h3 span {
    display: block;
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.02em;
    color: #0270aa;
  }
  .p_interview .interview_dt_main ul li p {
    font-size: 14px;
    line-height: 180%;
  }
  .p_interview .other_interview {
    padding: 120px 0 160px;
    background: #ffffff;
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    margin-top: 80px;
    position: relative;
  }
  .p_interview .other_interview .row {
    max-width: 1020px;
  }
  .p_interview .other_interview::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 240px;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
  }
  .p_interview .other_interview .t_ttl {
    text-align: center;
    margin-bottom: 80px;
  }
  .p_interview .other_interview .interview_list {
    padding-right: 60px;
  }
  .p_interview .other_interview .interview_list:after {
    display: none;
  }
  .p_interview .other_interview .btn {
    margin-top: 10px;
    position: relative;
    z-index: 2;
  }
  .p_recruit .recruit .intro {
    position: relative;
    z-index: 2;
    position: relative;
  }
  .p_recruit .recruit .intro figure,
  .p_recruit .recruit .intro picture {
    height: 624px;
  }
  .p_recruit .recruit .intro figure img,
  .p_recruit .recruit .intro picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_recruit .recruit .intro::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-linear-gradient(
        269.45deg,
        rgba(2, 112, 170, 0.9) 20.07%,
        rgba(145, 194, 222, 0.9) 81.11%,
        rgba(245, 244, 240, 0.9) 101.98%,
        rgba(245, 244, 240, 0.9) 101.98%
      ),
      -webkit-linear-gradient(bottom, #ffffff 32%, #f2efef 100%);
    background: -moz-
        oldlinear-gradient(
          269.45deg,
          rgba(2, 112, 170, 0.9) 20.07%,
          rgba(145, 194, 222, 0.9) 81.11%,
          rgba(245, 244, 240, 0.9) 101.98%,
          rgba(245, 244, 240, 0.9) 101.98%
        ),
      -moz- oldlinear-gradient(bottom, #ffffff 32%, #f2efef 100%);
    background: linear-gradient(
        180.55deg,
        rgba(2, 112, 170, 0.9) 20.07%,
        rgba(145, 194, 222, 0.9) 81.11%,
        rgba(245, 244, 240, 0.9) 101.98%,
        rgba(245, 244, 240, 0.9) 101.98%
      ),
      linear-gradient(0deg, #ffffff 32%, #f2efef 100%);
    display: block;
    opacity: 0.9;
  }
  .p_recruit .recruit .intro .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    z-index: 2;
  }
  .p_recruit .recruit .intro .txt h2 {
    font-weight: 500;
    font-size: 40px;
    line-height: 160%;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 36px;
  }
  .p_recruit .recruit .intro .txt p {
    font-weight: 500;
    font-size: 18px;
    line-height: 180%;
    text-align: center;
    color: #ffffff;
  }
  .p_recruit .recruit .intro .txt p + p {
    margin-top: 30px;
  }
  .p_recruit .recruit .requirements {
    padding-top: 80px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_recruit .recruit .requirements::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 500px;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      color-stop(52.62%, #f2efef),
      color-stop(93.12%, #dadada)
    );
    background: -webkit-linear-gradient(top, #f2efef 52.62%, #dadada 93.12%);
    background: -moz- oldlinear-gradient(top, #f2efef 52.62%, #dadada 93.12%);
    background: linear-gradient(180deg, #f2efef 52.62%, #dadada 93.12%);
    display: block;
    z-index: -1;
  }
  .p_recruit .recruit .requirements .tab_content {
    display: none;
  }
  .p_recruit .recruit .requirements .tab_content.active {
    display: block;
  }
  .p_recruit .recruit .requirements .tabs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .p_recruit .recruit .requirements .tabs li:not(:last-child) {
    margin-right: 12px;
  }
  .p_recruit .recruit .requirements .tabs li a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 14px 28px;
    background: #c5c5c5;
    -moz-border-radius: 12px 12px 0px 0px;
    border-radius: 12px 12px 0px 0px;
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
    text-align: center;
    letter-spacing: 0.02em;
    color: #ffffff;
    height: 100%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_recruit .recruit .requirements .tabs li a.active,
  .p_recruit .recruit .requirements .tabs li a:hover {
    background-color: #fff;
    color: #0270aa;
    opacity: 1;
  }
  .p_recruit .recruit .requirements .tabCtn {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    padding: 100px 0 122px;
  }
  .p_recruit .recruit .requirements .tabCtn::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background: #ffffff;
    -moz-border-radius: 0px 160px 0px 0px;
    border-radius: 0px 160px 0px 0px;
    display: block;
    z-index: -1;
  }
  .p_recruit .recruit .requirements .tabCtn h3 {
    margin-bottom: 56px;
    font-weight: 500;
    font-size: 22px;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #000000;
  }
  .p_recruit .recruit .entry {
    padding: 100px 0 120px;
    background: #f2efef;
  }
  .p_recruit .recruit .entry_main {
    background: #ffffff;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding: 60px 0 90px;
  }
  .p_recruit .recruit .entry_main .form {
    width: 700px;
    margin: 0 auto;
  }
  .p_recruit .recruit .entry .t_ttl {
    text-align: center;
  }
  .form.st2 {
    width: 760px;
  }
  .form .f_completed {
    text-align: center;
  }
  .form .f_completed_btn {
    margin: 0 auto;
    width: 236px;
    height: 64px;
    background: #f4f9fb;
    border: 1px solid #0270aa;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.04em;
    color: #185984;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .form .f_completed_btn:hover {
    opacity: 1;
    background-color: #0270aa;
    border-color: #0270aa;
    color: #fff;
  }
  .form .f_completed h3 {
    font-weight: 500;
    font-size: 26px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
  }
  .form .f_completed p {
    font-size: 16px;
    line-height: 180%;
    letter-spacing: 0.02em;
  }
  .form .f_completed .c_red {
    font-weight: 500;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #ca1e1e;
    margin: 40px 0 80px;
  }
  .form .f_completed .box {
    margin: 40px 0;
    padding: 50px 0;
    background: #fcfcfc;
    border: 1px solid #d9d9d9;
    -moz-border-radius: 18px;
    border-radius: 18px;
  }
  .form .f_completed .box h4 {
    font-weight: 500;
    font-size: 18px;
    letter-spacing: 0.08em;
    margin-bottom: 30px;
    text-align: center;
  }
  .form .f_completed .box ul {
    padding-left: 80px;
  }
  .form .f_completed .box ul li {
    position: relative;
    text-align: left;
    font-size: 16px;
    line-height: 160%;
    letter-spacing: 0.04em;
    padding-left: 18px;
  }
  .form .f_completed .box ul li + li {
    margin-top: 10px;
  }
  .form .f_completed .box ul li span {
    color: #0270aa;
  }
  .form .f_completed .box ul li::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    width: 8px;
    height: 8px;
    background: #0270aa;
    display: block;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
  }
  .form.st2 dl {
    padding: 32px 0;
    border-bottom: 1px solid #e0e0e0;
  }
  .form.st2 dl + dl {
    margin-top: 0;
  }
  .form.st2 dl:nth-of-type(1) {
    border-top: 1px solid #e0e0e0;
  }
  .form.st2 .f_btn:hover {
    opacity: 1;
    background-color: #0270aa;
    border-color: #0270aa;
  }
  .form .filepond--drop-label {
    color: #4c4e53;
  }
  .form .filepond--label-action {
    -webkit-text-decoration-color: #babdc0;
    -moz-text-decoration-color: #babdc0;
    text-decoration-color: #babdc0;
  }
  .form .filepond--panel-root {
    -moz-border-radius: 2em;
    border-radius: 2em;
    background-color: #edf0f4;
    height: 1em;
  }
  .form .filepond--item-panel {
    background-color: #595e68;
  }
  .form .filepond--drip-blob {
    background-color: #7f8a9a;
  }
  .form .filepond--credits {
    display: none;
  }
  .form .filepond--panel-root {
    background: none !important;
  }
  .form .filepond--browser.filepond--browser {
    display: none;
  }
  .form .filepond--root {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .form .filepond--item-panel {
    background-color: transparent !important;
  }
  .form .filepond--file-wrapper.filepond--file-wrapper > legend {
    display: none;
    width: 0;
  }
  .form .filepond--file-info .filepond--file-info-main {
    font-size: 14px;
    font-weight: 500;
    color: #382e2e;
  }
  .form .filepond--file-info {
    -webkit-box-flex: initial !important;
    -moz-box-flex: initial !important;
    -ms-flex: initial !important;
    flex: initial !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
  }
  .form .filepond--file {
    font-size: 14px;
    font-weight: 500;
    color: #382e2e;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -moz-box-orient: horizontal;
    -moz-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
  .form .filepond--item > .filepond--panel .filepond--panel-bottom {
    -moz-box-shadow: none;
    box-shadow: none;
  }
  .form .filepond--file-info .filepond--file-info-sub {
    display: none;
  }
  .form .filepond--file {
    padding-top: 0;
  }
  .form .filepond--file button {
    display: none;
  }
  .form .filepond--file .filepond--file-status {
    display: none !important;
  }
  .form .filepond--action-remove-item {
    right: 0.5625em;
    left: initial;
    position: static;
    display: block !important;
    text-indent: -9999px;
    width: 23px;
    height: 23px;
    background: url(../img/ic_close.svg) center/100% 100% no-repeat;
    cursor: pointer;
  }
  .form .filepond--action-remove-item:hover {
    opacity: 0.7;
    background-color: transparent;
  }
  .form .filepond--drop-label {
    width: 152px;
    height: 33px;
    background: #f2efef;
    border: 1px solid #c2c2c2;
    -moz-border-radius: 4px;
    border-radius: 4px;
    text-indent: -9999px;
    position: relative;
    cursor: pointer;
  }
  .form .filepond--drop-label.hide::before {
    display: none;
  }
  .form .filepond--drop-label::before {
    content: "選択されていません";
    position: absolute;
    top: 50%;
    right: -150px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.02em;
    color: #9b9b9b;
    white-space: nowrap;
    text-indent: 0;
  }
  .form .filepond--drop-label::after {
    content: "ファイルを選択";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.02em;
    color: #9b9b9b;
    display: block;
    white-space: nowrap;
    text-indent: 0;
  }
  .form .filepond--progress-indicator {
    display: none;
  }
  .form .filepond--root .filepond--drop-label {
    min-height: initial;
  }
  .form .filepond--list-scroller {
    position: static;
    width: -webkit-calc(100% - 152px);
    width: -moz-calc(100% - 152px);
    width: calc(100% - 152px);
    padding-left: 20px;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: none !important;
    -moz-transition: none !important;
    transition: none !important;
    margin-top: 0 !important;
  }
  .form .filepondDesc {
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0.02em;
    color: #382e2e;
  }
  .form .f_txtError {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #f44848;
    margin-top: 8px;
    padding-left: 26px;
  }
  .form .TxtAfterConfirm {
    font-size: 14px;
    line-height: 100%;
    text-align: center;
    margin-top: 56px;
    margin-bottom: 18px;
  }
  .form .f_btn {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    cursor: pointer;
    margin: 0 auto;
    max-width: 100%;
    width: 236px;
    height: 64px;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    background: #62afdb;
    border-color: #62afdb;
    color: #ffffff;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .form .f_btn:disabled {
    color: #91c2de;
    background: #ffffff;
    border: 1px solid #91c2de;
    pointer-events: none;
  }
  .form .f_btn:hover {
    opacity: 1;
    background-color: #62afdb;
    color: #fff;
  }
  .form .f_privacy {
    width: 480px;
    margin: 60px auto 30px;
  }
  .form .f_privacy h3 {
    text-align: center;
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0.1em;
    color: #000000;
    margin-bottom: 12px;
  }
  .form .f_privacy .box {
    overflow-y: auto;
    padding: 12px 26px;
    height: 120px;
    background: #f0f0f0;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 160%;
    letter-spacing: 0.1em;
  }
  .form .checkboxWr {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 56px;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .form .checkboxWr div,
  .form .checkboxWr .mwform-checkbox-field {
    display: inline-block;
  }
  .form .checkboxWr label {
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: inline-block;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.02em;
  }
  .form .checkboxWr label input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
  }
  .form .checkboxWr label span {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    display: inline-block;
    padding: 0 0 0 22px;
  }
  .form .checkboxWr label span::before {
    position: absolute;
    content: "";
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    width: 14px;
    height: 14px;
    /* background: #D9D9D9; */
    background: url("../img/recruit/iconCheck.png") 0 0 no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
  }
  /* .form .checkboxWr label span::after {
    left: 5px;
    top: 4px;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    content: "";
    position: absolute;
  } */
  .form .checkboxWr label input:checked ~ span:before {
    /* background-color: #0270AA; */
    background: url("../img/recruit/iconChecked.png") 0 0 no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
  }
  .form dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .form dl + dl {
    margin-top: 34px;
  }
  .form dl.ait {
    -webkit-box-align: start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .form dl.ait dt {
    padding-top: 18px;
  }
  .form dl dt {
    width: 260px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: 500;
    font-size: 15px;
    line-height: 100%;
    letter-spacing: 0.06em;
    color: #000000;
  }
  .form dl dt span {
    margin-right: 9px;
    width: 38px;
    height: 18px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #ca1e1e;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    font-weight: 700;
    font-size: 10px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.06em;
    color: #ffffff;
  }
  .form dl dd {
    width: -webkit-calc(100% - 260px);
    width: -moz-calc(100% - 260px);
    width: calc(100% - 260px);
  }
  .form dl dd input {
    width: 100%;
    padding: 0 26px;
    outline: none;
    font-size: 14px;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 55px;
    background: #fcfcfc;
    border: 1px solid #ededed;
    -moz-box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.08);
    box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.08);
    -moz-border-radius: 2px;
    border-radius: 2px;
  }
  .form dl dd input::-webkit-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input::-moz-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input:-ms-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input::placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input.error {
    border: 1px solid #f44848;
  }
  .form dl dd textarea {
    width: 100%;
    padding: 10px 26px;
    outline: none;
    font-size: 14px;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 110px;
    background: #fcfcfc;
    border: 1px solid #ededed;
    -moz-box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.08);
    box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.08);
    -moz-border-radius: 2px;
    border-radius: 2px;
  }
  .form dl dd textarea::-webkit-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea::-moz-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea:-ms-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea::placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea.error {
    border: 1px solid #f44848;
  }
  .form dl dd .select label {
    display: block;
    position: relative;
    -webkit-perspective: 1px;
    -moz-perspective: 1px;
    perspective: 1px;
    height: 55px;
    background: #fcfcfc;
    border: 1px solid #ededed;
    -moz-box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.08);
    box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.08);
    -moz-border-radius: 2px;
    border-radius: 2px;
  }
  .form dl dd .select label select {
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    border: none;
    padding: 0 26px;
    background: transparent;
    font-size: 14px;
    /* color: #BEBEBE; */
    cursor: pointer;
    position: relative;
    z-index: 3;
  }
  .form dl dd .select label select::-ms-expand {
    display: none;
  }
  .f_step {
    margin-bottom: 72px;
  }
  .f_step ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    counter-reset: div;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .f_step ul li {
    position: relative;
    padding-top: 54px;
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    color: #000000;
  }
  .f_step ul li.active:before {
    background-color: #0270aa;
  }
  .f_step ul li:before {
    counter-increment: div;
    content: counter(div);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    width: 36px;
    height: 36px;
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #b5b5b5;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    color: #ffffff;
  }
  .f_step ul li:not(:last-child) {
    position: relative;
    margin-right: 88px;
  }
  .f_step ul li:not(:last-child):after {
    content: "";
    position: absolute;
    top: 20px;
    right: -62px;
    width: 40px;
    height: 1px;
    background: #d9d9d9;
    display: block;
  }
  .dlist.st2 dl:last-child {
    border-bottom: 0;
  }
  .dlist dl {
    font-weight: 400;
    font-size: 16px;
    line-height: 200%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 32px 0;
    border-bottom: 1px solid #e0e0e0;
  }
  .dlist dl dt {
    font-weight: 500;
    width: 250px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding-left: 12px;
  }
  .dlist dl dd {
    width: 100%;
  }
  .ttl3 {
    font-weight: 500;
    font-size: 22px;
    line-height: 1.45455;
    letter-spacing: 0.02em;
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
  }
  .ttl3::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 0;
    width: 8px;
    height: 8px;
    background: #0270aa;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    display: block;
  }
  .p_about .about .intro {
    -moz-border-radius: 0px 160px 0px 0px;
    border-radius: 0px 160px 0px 0px;
    position: relative;
    padding: 150px 0 120px;
    color: #fff;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_about .about .intro::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 500%;
    background: #f2efef url(../img/about/intro_bg.png) center top no-repeat;
    -moz-background-size: 100% auto;
    background-size: 100% auto;
    display: block;
    z-index: -1;
  }
  .p_about .about .intro .txt {
    width: 586px;
  }
  .p_about .about .intro h2 {
    font-weight: 500;
    font-size: 40px;
    line-height: 160%;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 40px;
  }
  .p_about .about .intro p + p {
    margin-top: 30px;
  }
  .p_about .future::after {
    display: none;
  }
  .p_about .history {
    /* overflow: hidden; */
  }
  .p_about .history .t_ttl {
    position: relative;
    z-index: 2;
  }
  .p_about .history_main {
    padding: 120px 0 146px 120px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_about .history_main {
    /* padding-left: 55px; */
    padding-left: 120px;
    padding-bottom: 55px;
  }
}

@media screen and (min-width: 769px), print {
  .p_about .history {
    position: relative;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_about .history::before {
    content: "";
    position: absolute;
    left: 100px;
    bottom: -50px;
    width: calc(100% - 100px);
    width: -webkit-calc(100% - 100px);
    height: calc(100% + 50px);
    height: -webkit-calc(100% + 50px);
    background: #ffffff;
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    display: block;
    z-index: -1;
  }
  .p_about .future::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 400px;
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0) 0%,
      #f2efef 70.38%
    );
    left: 0;
    bottom: -144px;
    z-index: -1;
  }
  /* .p_about .history_main::after {
    content: "";
    position: absolute;
    left: -100px;
    top: 0;
    width: 100vw;
    height: 100%;
    background: #FFFFFF;
    -moz-border-radius: 160px 0px 0px 0px;
         border-radius: 160px 0px 0px 0px;
    display: block;
    z-index: -1;
  } */
}

@media screen and (min-width: 769px) and (max-width: 1280px) {
  /* .p_about .history_main::after {
    left: 0;
  } */
  .p_about .history::after {
    left: 55px;
    width: calc(100% - 55px);
    width: -webkit-calc(100% - 55px);
  }
}

@media screen and (min-width: 769px), print {
  .p_about .history_top {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    margin-bottom: 100px;
  }
  .p_about .history_top::after {
    content: "";
    position: absolute;
    top: -250px;
    left: 122px;
    width: 296px;
    height: 379px;
    background: conic-gradient(
      from 44.43deg at 38.69% 64.24%,
      #f4dcff 0deg,
      #fffacc 28.8deg,
      #d4fff5 158.4deg,
      #ffede0 360deg,
      #f4dcff 360deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(-118.87deg);
    -moz-transform: rotate(-118.87deg);
    -ms-transform: rotate(-118.87deg);
    transform: rotate(-118.87deg);
    display: block;
    opacity: 0.3;
    z-index: -1;
  }
  .p_about .history_top figure {
    width: 64.8%;
  }
  .p_about .history_top figure img {
    -moz-border-radius: 24px;
    border-radius: 24px;
    overflow: hidden;
  }
  .p_about .history_top .txt {
    width: 55.5%;
    margin-top: 80px;
    margin-left: -27.7%;
    background: #ffffff;
    -moz-box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    -moz-border-radius: 24px;
    border-radius: 24px;
    padding: 48px;
  }
  .p_about .history_bot h3 {
    margin-bottom: 60px;
    font-weight: 500;
    font-size: 22px;
    line-height: 100%;
    letter-spacing: 0.02em;
  }
  .p_about .history_bot .h_list {
    position: relative;
  }
  .p_about .history_bot .h_list::after {
    content: "";
    position: absolute;
    top: 1%;
    left: 150px;
    width: 1px;
    height: 98%;
    background: #382e2e;
    display: block;
  }
  .p_about .history_bot .h_list dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 16px;
    line-height: 160%;
  }
  .p_about .history_bot .h_list dl + dl {
    margin-top: 54px;
  }
  .p_about .history_bot .h_list dl dt {
    width: 150px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .p_about .history_bot .h_list dl dd {
    width: 100%;
    padding-left: 58px;
    position: relative;
  }
  .p_about .history_bot .h_list dl dd::before {
    content: "";
    position: absolute;
    top: 4px;
    left: -9px;
    width: 17px;
    height: 17px;
    background: #382e2e;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    display: block;
    outline: 1px solid #382e2e;
    z-index: 2;
    border: 2px solid #fff;
  }
  .p_about .future {
    padding-top: 120px;
    background: #ffffff;
    -moz-box-shadow: 0px -4px 36px 0 rgba(5, 45, 67, 0.1);
    /* box-shadow: 0px -4px 36px 0 rgba(5, 45, 67, 0.1); */
    box-shadow: 0 -108px 36px 0px rgb(5 45 67 / 3%);
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    position: relative;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    /* z-index: 2; */
    z-index: 1;
  }

  .p_about .future .row {
    position: relative;
  }
  .p_about .future .row::before {
    content: "";
    position: absolute;
    right: 0;
    top: -90px;
    width: 343px;
    height: 439px;
    background: conic-gradient(
      from 162.45deg at 38.69% 64.24%,
      #fff1e0 0deg,
      #fffacc 28.8deg,
      #ffe0f1 145.8deg,
      #ffede0 360deg,
      #fff1e0 360deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(-114.47deg);
    -moz-transform: rotate(-114.47deg);
    -ms-transform: rotate(-114.47deg);
    transform: rotate(-114.47deg);
    display: block;
    opacity: 0.5;
  }
  .p_about .future .row::after {
    content: "";
    position: absolute;
    right: -100px;
    bottom: -180px;
    width: 477px;
    height: 290px;
    background: conic-gradient(
      from 187.4deg at 56.06% 53.39%,
      #fcffd9 0deg,
      #dbecff 145.8deg,
      #f4dcff 360deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(-33.88deg);
    -moz-transform: rotate(-33.88deg);
    -ms-transform: rotate(-33.88deg);
    transform: rotate(-33.88deg);
    display: block;
    opacity: 0.5;
  }
  .p_about .future .future_ttl {
    font-weight: 500;
    font-size: 40px;
    line-height: 160%;
    letter-spacing: 0.02em;
    color: #0270aa;
    position: relative;
    margin-bottom: 72px;
  }
  .p_about .future .future_ttl::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -100vw;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100vw;
    height: 4px;
    background: #0270aa;
    display: block;
    margin-left: -44px;
    display: none;
  }
  .p_about .future .vision {
    position: relative;
    padding: 100px 120px 100px 0;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_about .future .vision.st2 {
    color: #000;
  }
  .p_about .future .vision.st2:after {
    background-color: #f8f7f7;
  }
  .p_about .future .vision.st2 .t_ttl small {
    color: #62afdb;
  }
  .p_about .future .vision.st2 .t_ttl span {
    color: #0270aa;
  }
  .p_about .future .vision.st2 .t_ttl3 {
    line-height: 41.5px;
  }
  .p_about .future .vision .t_ttl {
    width: 42%;
  }
  .p_about .future .vision .txt {
    width: 58%;
  }
  .p_about .future .vision::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(-50vw + 640px);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100vw;
    height: 100%;
    background: #0270aa;
    -moz-border-radius: 0px 100px 100px 0px;
    border-radius: 0px 100px 100px 0px;
    display: block;
    z-index: -1;
  }
  .p_about .profile {
    padding: 120px 0 60px;
    background: #fff;
    position: relative;
    /* z-index: 9; */
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_about .profile::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 632px;
    background: -webkit-linear-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
    z-index: -1;
  }
  .p_service_detail,
  .p_interview_detail {
    padding-top: 0;
  }
  .p_service_detail .header,
  .p_interview_detail .header {
    background-color: transparent;
  }
  .p_service_detail .breadcrumb .row::after {
    display: none;
  }
  .p_service .service .career .career_top {
    position: relative;
    padding: 90px 0 68px;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    margin-bottom: 90px;
  }
  .p_service .service .career .career_top::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 730px;
    left: 0;
    top: 0;
    z-index: -1;
    background: -webkit-gradient(
      linear,
      left bottom,
      left top,
      color-stop(32%, #ffffff),
      color-stop(100%, #f2efef),
      color-stop(100.01%, #f2efef)
    );
    background: -webkit-linear-gradient(
      bottom,
      #ffffff 32%,
      #f2efef 100%,
      #f2efef 100.01%
    );
    background: -moz-
      oldlinear-gradient(bottom, #ffffff 32%, #f2efef 100%, #f2efef 100.01%);
    background: linear-gradient(
      0deg,
      #ffffff 32%,
      #f2efef 100%,
      #f2efef 100.01%
    );
  }
  .p_service .service .career .career_top::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: url(../img/service/career_bg.jpg) center bottom no-repeat;
    display: block;
    -moz-border-radius: 0px 0px 0px 140px;
    border-radius: 0px 0px 0px 140px;
    overflow: hidden;
    z-index: -1;
    -moz-background-size: cover;
    background-size: cover;
  }
  .p_service .service .career .career_top ul {
    width: 850px;
    max-width: 100%;
  }
  .p_service .service .career .career_top ul li {
    background: #ffffff;
    -moz-box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    -moz-border-radius: 24px;
    border-radius: 24px;
    padding: 48px;
  }
  .p_service .service .career .career_top ul li + li {
    margin-top: 38px;
  }
  .p_service .service .career .career_bot {
    padding-bottom: 120px;
  }
  .p_service .service .career .career_bot .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p_service .service .career .career_bot figure {
    width: 43.51852%;
  }
  .p_service .service .career .career_bot figure img {
    overflow: hidden;
    -moz-border-radius: 0px 40px 40px 0px;
    border-radius: 0px 40px 40px 0px;
  }
  .p_service .service .career .career_bot .txt {
    width: 52.5%;
    border-left: 5px solid #382e2e;
    padding-left: 50px;
    margin-top: 6px;
    margin-bottom: 6px;
  }
  .p_service .service .career .career_bot .txt h4 {
    position: relative;
    margin-bottom: 18px;
    font-weight: 500;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0.02em;
  }
  .p_service .service .career .career_bot .txt h4::before {
    content: "";
    position: absolute;
    top: 0;
    left: -55px;
    width: 5px;
    /* height: 100%; */
    height: 30px;
    background: #0270aa;
    display: block;
  }
  .p_service .service .career .career_bot .txt p {
    font-size: 17px;
    line-height: 30.8px;
  }
  .p_service .service .occupation {
    padding: 90px 0 160px;
    background-color: #f2efef;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_service .service .occupation .t_ttl {
    padding-left: 15px;
  }
}

@media screen and (min-width: 769px), print {
  .p_service .service .occupation_main {
    padding-top: 120px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_service .service .occupation_main::after {
    content: "";
    position: absolute;
    top: 0;
    /* left: -120px; */
    right: 0;
    /* width: 100vw; */
    width: 92.1875%;
    height: 100%;
    background: #ffffff;
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    z-index: -1;
    display: block;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_service .service .occupation_main::after {
    left: 0;
    width: 100%;
  }
}

@media screen and (min-width: 769px), print {
  .p_service .service .occupation_main ul li {
    display: block;
    position: relative;
    /* width: 1180px;
    margin-left: -120px; */
    width: 100%;
    padding-left: 7.8125%;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_service .service .occupation_main ul li {
    padding-left: 0;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1179px) {
  .p_service .service .occupation_main ul li {
    max-width: 100%;
    margin-left: 0;
    width: 1000px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_service .service .occupation_main ul li {
    margin-left: 0;
    max-width: 100%;
  }
}

@media screen and (min-width: 769px), print {
  .p_service .service .occupation_main ul li + li {
    margin-top: 2px;
  }
  .p_service .service .occupation_main ul li .txt {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    max-width: 1080px;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 15px 0;
  }
  @media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
    .p_service .service .occupation_main ul li .txt {
      padding: 15px;
    }
  }
  .p_service .service .occupation_main ul li .txt .txt_inner {
    /* max-width: 980px; */
    width: 100%;
    position: relative;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    padding-right: 200px;
  }
  .p_service .service .occupation_main ul li .txt .txt_inner .btnWr {
    position: absolute;
    right: 0;
    bottom: -66px;
  }
  .p_service .service .occupation_main ul li .txt h3 {
    font-weight: 500;
    font-size: 28px;
    line-height: 100%;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 26px;
  }
  .p_service .service .occupation_main ul li .txt p {
    font-weight: 400;
    font-size: 16px;
    line-height: 160%;
    color: #ffffff;
  }
  .p_service .service .occupation_main ul li .txt .btn {
    margin-top: 20px;
  }
  .p_service .sd_mv {
    position: relative;
  }
  .p_service .sd_mv figure,
  .p_service .sd_mv picture {
    height: 729px;
  }
  .p_service .sd_mv figure img,
  .p_service .sd_mv picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  .p_service .sd_mv .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 250px;
    -webkit-box-align: end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .p_service .sd_mv .txt .breadcrumb {
    padding-bottom: 0;
  }
  .p_service .sd_mv .txt .sd_mv_ttl {
    margin-bottom: 43px;
  }
  .p_service .sd_mv .txt .sd_mv_ttl h2 {
    font-weight: 700;
    font-size: 40px;
    line-height: 100%;
    margin-bottom: 20px;
    letter-spacing: 0.04em;
    color: #ffffff;
  }
  .p_service .sd_mv .txt .sd_mv_ttl p {
    font-weight: 500;
    font-size: 16px;
    line-height: 160%;
    color: #ffffff;
  }
  .p_service .service_detail {
    margin-top: -140px;
    position: relative;
    z-index: 2;
    position: relative;
  }
  .p_service .service_detail::after {
    content: "";
    position: absolute;
    top: 140px;
    left: 0;
    width: 100%;
    height: -webkit-calc(100% - 140px);
    height: -moz-calc(100% - 140px);
    height: calc(100% - 140px);
    background-color: #f2efef;
    display: block;
    z-index: -1;
  }
  .p_service .service_detail .row {
    padding-top: 100px;
    position: relative;
    -webkit-transform: translateX(5px) translateZ(0);
    -moz-transform: translateX(5px) translateZ(0);
    transform: translateX(5px) translateZ(0);
    max-width: 960px;
  }
  .p_service .service_detail .row::after {
    content: "";
    position: absolute;
    height: 100%;
    left: -120px;
    top: 0;
    width: 100vw;
    background: #ffffff;
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    display: block;
    z-index: -1;
  }
  /* .p_service .service_detail .row .sd_top p {
    font-size: 1.8rem;
    line-height: 32px;
    font-weight: 400;
  } */
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_service .service_detail .row::after {
    left: 0;
  }
}

@media screen and (min-width: 769px), print {
  .p_service .service_detail .s_ttl2 {
    font-weight: 500;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0.02em;
    line-height: 2.25;
    border-bottom: 1px solid #000;
    margin-bottom: 24px;
    position: relative;
    padding-left: 35px;
  }
  .p_service .service_detail .s_ttl2::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    background: url(../img/service/detail/s_ttl2_ic.svg) center/100% 100%
      no-repeat;
    display: block;
  }
  .p_service .service_detail .sd_top .flow {
    margin-top: 56px;
  }
  .p_service .service_detail .sd_top .flow h3 {
    font-weight: 500;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0.02em;
    margin-bottom: 16px;
    position: relative;
    padding-left: 26px;
    margin-left: 24px;
  }
  .p_service .service_detail .sd_top .flow h3::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 15px solid #d9d9d9;
  }
  .p_service .service_detail .sd_top .flow .flow_bd {
    padding: 56px 80px;
    background: #f8f7f7;
    -moz-border-radius: 24px;
    border-radius: 24px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it {
    width: 337px;
    max-width: 48%;
    padding-left: 30px;
    position: relative;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it.st2::before {
    top: -20px;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 0;
    width: 1px;
    height: 100%;
    background: #d9d9d9;
    display: block;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl::before {
    content: "";
    position: absolute;
    top: 9px;
    left: -35px;
    width: 10px;
    height: 10px;
    background: #0270aa;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    display: block;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl + dl {
    margin-top: 20px;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dt {
    width: 60px;
    height: 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 100%;
    text-align: center;
    color: #ffffff;
    background-color: #382e2e;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dd {
    width: 100%;
    padding-left: 20px;
    padding-top: 5px;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dd p {
    font-weight: 400;
    font-size: 14px;
    line-height: 130%;
    letter-spacing: 0.02em;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dd .txt_lg {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 8px;
  }
  .p_service .service_detail .sd_mid {
    margin: 100px 0;
  }
  .p_service .service_detail .sd_mid dl {
    border: 2px solid #0270aa;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding: 0 80px 56px;
    text-align: center;
  }
  .p_service .service_detail .sd_mid dl dt {
    font-weight: 500;
    font-size: 22px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.02em;
    color: #ffffff;
    min-width: 240px;
    min-height: 40px;
    background: #0270aa;
    -moz-border-radius: 0px 0px 30px 30px;
    border-radius: 0px 0px 30px 30px;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 32px;
    padding-bottom: 2px;
  }
  .p_service .service_detail .sd_mid dl dd {
    text-align: left;
  }
  .p_service .service_detail .sd_mid dl dd span {
    color: #0270aa;
    font-weight: 500;
  }
  .p_service .service_detail .sd_bot h3 {
    font-weight: 500;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0.02em;
    margin-bottom: 34px;
    position: relative;
    padding-left: 28px;
    margin-left: 24px;
  }
  .p_service .service_detail .sd_bot h3::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-top: 16px solid #0270aa;
  }
  .p_service .service_detail .sd_bot_main {
    padding: 80px 50px 84px 70px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_service .service_detail .sd_bot_main::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: -webkit-linear-gradient(
      326.96deg,
      #f8f7f7 38.71%,
      #e2e2e2 91.84%
    );
    background: -moz-
      oldlinear-gradient(326.96deg, #f8f7f7 38.71%, #e2e2e2 91.84%);
    background: linear-gradient(123.04deg, #f8f7f7 38.71%, #e2e2e2 91.84%);
    -moz-border-radius: 60px 0px 0px 0px;
    border-radius: 60px 0px 0px 0px;
    display: block;
    z-index: -1;
  }
  .p_service .service_detail .sd_bot_main a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .p_service .service_detail .sd_bot_main a:hover {
    opacity: 1;
  }
  .p_service .service_detail .sd_bot_main a:hover figure img {
    opacity: 1;
    -webkit-transform: scale(1.12);
    -moz-transform: scale(1.12);
    -ms-transform: scale(1.12);
    transform: scale(1.12);
  }
  .p_service .service_detail .sd_bot_main a .txt {
    padding: 45px 130px 45px 50px;
    background: #ffffff;
    -moz-border-radius: 30px 0 0 20px;
    border-radius: 30px 0 0 20px;
    width: -webkit-calc(52.4% + 80px);
    width: -moz-calc(52.4% + 80px);
    width: calc(52.4% + 80px);
    margin-right: -80px;
  }
  .p_service .service_detail .sd_bot_main a .txt h4 {
    font-weight: 500;
    font-size: 25px;
    line-height: 160%;
    letter-spacing: 0.02em;
    padding-bottom: 20px;
    margin-bottom: 18px;
    border-bottom: 1px solid #e0e0e0;
  }
  .p_service .service_detail .sd_bot_main a .txt p {
    font-weight: 400;
    font-size: 15px;
    line-height: 1.46667;
    letter-spacing: 0.04em;
  }
  .p_service .service_detail .sd_bot_main a .txt p small {
    font-size: 13px;
    display: block;
  }
  .p_service .service_detail .sd_bot_main a .txt p em {
    font-style: normal;
    font-weight: 600;
    font-size: 25px;
    font-family: "Montserrat", sans-serif;
    display: block;
  }
  .p_service .service_detail .sd_bot_main a figure {
    width: 47.6%;
    overflow: hidden;
    -moz-border-radius: 12px 12px 12px 80px;
    border-radius: 12px 12px 12px 80px;
  }
  .p_service .service_detail .sd_bot_main a figure img {
    -moz-border-radius: 12px 12px 12px 80px;
    border-radius: 12px 12px 12px 80px;
    overflow: hidden;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_work_place .container {
    overflow: clip;
  }
  .p_work_place .work_place {
    padding-top: 120px;
    background: -webkit-linear-gradient(
        251.35deg,
        rgba(2, 112, 170, 0.25) 7.37%,
        rgba(145, 194, 222, 0.25) 23.51%,
        rgba(245, 244, 240, 0.25) 49.58%,
        rgba(255, 255, 255, 0.25) 74.91%
      ),
      #ffffff;
    background: -moz-
        oldlinear-gradient(
          251.35deg,
          rgba(2, 112, 170, 0.25) 7.37%,
          rgba(145, 194, 222, 0.25) 23.51%,
          rgba(245, 244, 240, 0.25) 49.58%,
          rgba(255, 255, 255, 0.25) 74.91%
        ),
      #ffffff;
    background: linear-gradient(
        198.65deg,
        rgba(2, 112, 170, 0.25) 7.37%,
        rgba(145, 194, 222, 0.25) 23.51%,
        rgba(245, 244, 240, 0.25) 49.58%,
        rgba(255, 255, 255, 0.25) 74.91%
      ),
      #ffffff;
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
    -webkit-box-align: start;
    -moz-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .p_work_place .work_place .w_aside {
    position: -webkit-sticky;
    position: sticky;
    top: 84px;
    left: 60px;
    width: 230px;
    z-index: 99;
    /* -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; */
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_work_place .work_place .w_aside {
    left: 0;
  }
}

@media screen and (min-width: 769px), print {
  .p_work_place .work_place .w_aside ul {
    background-color: #fff;
    -moz-border-radius: 24px;
    border-radius: 24px;
    padding: 40px 40px 40px 22px;
  }
  .p_work_place .work_place .w_aside ul li + li {
    margin-top: 22px;
  }
  .p_work_place .work_place .w_aside ul li a {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: rgba(2, 112, 170, 0.2);
    display: inline-block;
    padding-left: 18px;
    position: relative;
  }
  .p_work_place .work_place .w_aside ul li a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    background-color: transparent;
    display: block;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_work_place .work_place .w_aside ul li a:hover,
  .p_work_place .work_place .w_aside ul li a.active {
    color: #0270aa;
    opacity: 1;
  }
  .p_work_place .work_place .w_aside ul li a:hover::before,
  .p_work_place .work_place .w_aside ul li a.active::before {
    background-color: #0270aa;
  }
  .p_work_place .work_place_main {
    width: -webkit-calc(100% - 230px);
    width: -moz-calc(100% - 230px);
    width: calc(100% - 230px);
  }
  .p_work_place .work_place_main .row {
    max-width: 860px;
  }
  .p_work_place .work_place .numbers {
    margin-bottom: 120px;
  }
  .p_work_place .work_place .numbers ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .p_work_place .work_place .numbers ul li {
    margin-bottom: 14px;
    width: -webkit-calc((100% - 28px) / 3);
    width: -moz-calc((100% - 28px) / 3);
    width: calc((100% - 28px) / 3);
    background: #ffffff;
    -moz-box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    -moz-border-radius: 24px;
    border-radius: 24px;
    padding: 48px 0 61px;
    text-align: center;
  }
  .p_work_place .work_place .numbers ul li:not(:nth-of-type(3n)) {
    margin-right: 14px;
  }
  .p_work_place .work_place .numbers ul li figure {
    display: inline-block;
    width: 42px;
  }
  .p_work_place .work_place .numbers ul li > span {
    display: block;
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    margin-bottom: 12px;
  }
  .p_work_place .work_place .numbers ul li p {
    font-weight: 500;
    font-size: 30px;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #0270aa;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: baseline;
    -moz-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    font-family: "Zen Kaku Gothic New", sans-serif;
  }
  .p_work_place .work_place .numbers ul li p.st2 {
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p_work_place .work_place .numbers ul li p i {
    font-style: normal;
    font-family: "Montserrat", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 72px;
    line-height: 100%;
    color: #0270aa;
  }
}

@media screen and (min-width: 769px) and (max-width: 1079px) and (min-width: 769px) {
  .p_work_place .work_place .numbers ul li p i {
    font-size: 50px;
  }
}

@media screen and (min-width: 769px), print {
  .p_work_place .work_place .numbers ul li p span {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: 26px;
  }
  .p_work_place .work_place .connections {
    padding-bottom: 120px;
  }
  .p_work_place .work_place .connections p {
    font-size: 16px;
    line-height: 180%;
  }
  .p_work_place .work_place .connections figure {
    width: 454px;
    margin: 60px auto 0;
  }
  .p_work_place .work_place .welfare {
    padding: 100px 0 120px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_work_place .work_place .welfare::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 200vw;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 100%;
    background-color: #f8f7f7;
    display: block;
    z-index: -1;
  }
  .p_work_place .work_place .welfare .welfare_bd {
    overflow: hidden;
    background: #ffffff;
    -moz-border-radius: 0px 60px 60px 0px;
    border-radius: 0px 60px 60px 0px;
  }
  .p_work_place .work_place .welfare .welfare_bd .fig {
    height: 340px;
  }
  .p_work_place .work_place .welfare .welfare_bd .fig img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_bd_ctn {
    background-color: #fff;
    padding: 56px 50px 90px;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it + .welfare_it {
    margin-top: 33px;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it h3 {
    font-weight: 500;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0.02em;
    position: relative;
    padding: 15px 0 15px 35px;
    margin-bottom: 24px;
    border-bottom: 1px solid #000;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it h3.st2::before {
    background-image: url(../img/work_place/welfare_ic2.svg);
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it h3::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    background-image: url(../img/work_place/welfare_ic1.svg);
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
    display: block;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it .welfare_it_ex {
    margin-top: 80px;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it .welfare_it_ex dl {
    padding: 20px 48px 30px;
    background: #f6f6f6;
    -moz-border-radius: 12px;
    border-radius: 12px;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    + dl {
    margin-top: 40px;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dt {
    font-weight: 500;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0.02em;
    padding-bottom: 12px;
    padding-top: 12px;
    margin-bottom: 10px;
    border-bottom: 1px solid #fff;
    position: relative;
    padding-left: 34px;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 24px;
    height: 18px;
    background-image: url(../img/work_place/welfare_ic3.svg);
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
    display: block;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dt.st2::before {
    width: 29px;
    height: 15px;
    background-image: url(../img/work_place/welfare_ic4.svg);
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dd {
    font-weight: 400;
    font-size: 14px;
    line-height: 180%;
  }
  .p_work_place .work_place .training {
    padding: 100px 0 120px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_work_place .work_place .training::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 200vw;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 100%;
    background-color: #fff;
    display: block;
    z-index: -1;
  }
  .p_work_place .work_place .training::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 200vw;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 100%;
    height: 632px;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
    z-index: -1;
  }
  .p_work_place .work_place .training .t_txt {
    font-weight: 500;
    font-size: 26px;
    letter-spacing: 0.02em;
    color: #382e2e;
    margin-bottom: 56px;
  }
  .p_work_place .work_place .training .t_list {
    padding: 80px 50px;
    background: #ffffff;
    -moz-box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    box-shadow: 0px 10px 60px rgba(5, 45, 67, 0.06);
    -moz-border-radius: 60px 0 0 60px;
    border-radius: 60px 0 0 60px;
    position: relative;
  }
  .p_work_place .work_place .training .t_list::after {
    content: "";
    position: absolute;
    top: 0;
    right: -100vw;
    width: 100vw;
    height: 100%;
    background: #fff;
    display: block;
  }
  .p_work_place .work_place .training .t_list dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_work_place .work_place .training .t_list dl + dl {
    margin-top: 18px;
  }
  .p_work_place .work_place .training .t_list dl dt {
    width: 260px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background: #382e2e;
    -moz-border-radius: 8px;
    border-radius: 8px;
    font-weight: 500;
    font-size: 18px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.02em;
    color: #ffffff;
    padding: 23px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .p_work_place .work_place .training .t_list dl dd {
    font-size: 14px;
    line-height: 180%;
    padding-left: 33px;
  }
  .p_work_place .work_place .training .t_list dl dd span {
    font-weight: 500;
    display: block;
  }
  .p_news {
    background-color: #f2efef;
  }
  .p_news .news {
    background: #ffffff;
    -moz-border-radius: 160px 0px 0px 0px;
    border-radius: 160px 0px 0px 0px;
    padding: 100px 0 160px;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_news .news::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 240px;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
    z-index: -1;
  }
  .p_news .news .row {
    max-width: 960px;
  }
  .p_news .news .news_list {
    width: 920px;
    max-width: 100%;
    margin: 0 auto;
  }
  .p_news .news_intro {
    margin-bottom: 100px;
    border-left: 5px solid #382e2e;
    padding-left: 27px;
  }
  .p_news .news_intro h3 {
    font-weight: 500;
    font-size: 26px;
    line-height: 1.53846;
    letter-spacing: 0.02em;
    color: #382e2e;
    position: relative;
    margin-bottom: 7px;
  }
  .p_news .news_intro h3::before {
    content: "";
    position: absolute;
    top: 0;
    left: -32px;
    width: 5px;
    height: 100%;
    background: #0270aa;
    display: block;
  }
  .p_news .news_detail .meta {
    padding-bottom: 30px;
    border-bottom: 1px solid #d9d9d9;
    margin-bottom: 56px;
  }
  .p_news .news_detail .meta time {
    border: 1px solid #000;
    width: 136px;
    height: 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_news .news_detail .meta h1 {
    font-weight: 500;
    font-size: 28px;
    line-height: 160%;
    margin-top: 30px;
  }
  .p_news .news_detail .news_detail_ctn {
    padding-bottom: 100px;
    border-bottom: 1px solid #d9d9d9;
  }
  .p_news .news_detail .news_detail_ctn p {
    font-size: 18px;
    line-height: 180%;
  }
  .p_news .news_detail .news_detail_ctn a {
    color: #0270aa;
    transition: all 0.3s;
  }
  .p_news .news_detail .news_detail_ctn p + p {
    margin-top: 30px;
  }
  .p_news .news_detail .postNav {
    padding-top: 60px;
  }
  .p_news .news_detail .postNav ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .p_news .news_detail .postNav ul li {
    margin-top: 24px;
  }
  .p_news .news_detail .postNav ul li a {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0.04em;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(2) {
    margin: 0 108px;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(2) a:hover {
    opacity: 1;
    text-decoration: underline;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(1) a {
    position: relative;
    color: #7f7f7f;
    padding-left: 27px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(1) a:hover {
    opacity: 1;
    color: #b5b5b5;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(1) a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 7px;
    height: 12px;
    background: url(../img/page_prev.svg) center/100% 100% no-repeat;
    display: block;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(3) a {
    position: relative;
    color: #7f7f7f;
    padding-right: 27px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(3) a:hover {
    opacity: 1;
    color: #b5b5b5;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(3) a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 7px;
    height: 12px;
    background: url(../img/page_next.svg) center/100% 100% no-repeat;
    display: block;
  }
  .wp-pagenavi {
    margin-top: 72px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .wp-pagenavi .pages {
    display: none;
  }
  .wp-pagenavi .page {
    margin: 0 7px;
    width: 36px;
    height: 36px;
    font-weight: 600;
    font-size: 14px;
    color: #382e2e;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid transparent;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .wp-pagenavi .page:hover {
    opacity: 1;
    background: #f2efef;
    border-color: #d9d9d9;
  }
  .wp-pagenavi .dots {
    background-color: transparent;
  }
  .wp-pagenavi .dots:hover {
    opacity: 1;
    background: #f2efef;
    border-color: #d9d9d9;
  }
  .wp-pagenavi .current {
    width: 36px;
    height: 36px;
    margin: 0 7px;
    background-color: #382e2e;
    color: #fff;
    font-weight: 600;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    font-size: 14px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .wp-pagenavi .nextpostslink {
    width: 36px;
    height: 36px;
    text-indent: -9999px;
    display: block;
    -webkit-transition: background-color 0.3s ease-out;
    -moz-transition: background-color 0.3s ease-out;
    transition: background-color 0.3s ease-out;
    background-image: url("../img/page_next.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 7px 12px;
    background-size: 7px 12px;
  }
  .wp-pagenavi .previouspostslink {
    width: 36px;
    height: 36px;
    text-indent: -9999px;
    display: block;
    -webkit-transition: background-color 0.3s ease-out;
    -moz-transition: background-color 0.3s ease-out;
    transition: background-color 0.3s ease-out;
    background-image: url("../img/page_next.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 7px 12px;
    background-size: 7px 12px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}

@media screen and (max-width: 768px) {
  img {
    width: 100%;
    height: auto;
  }
  .container {
    overflow: hidden;
  }
  .show_pc {
    display: none !important;
  }
  .inner,
  .row {
    padding-left: 5.86667vw;
    padding-right: 5.86667vw;
  }
  .text_cm {
    font-size: 4vw;
    line-height: 180%;
  }
  body {
    padding-top: 17.06667vw;
  }
  .header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.24);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    height: 17.06667vw;
    padding-left: 5.33333vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header_l {
    width: 45.06667vw;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .header_l h1 {
    font-size: 0;
    line-height: 0;
  }
  .header_l a {
    display: block;
  }
  .header .row {
    padding: 0;
  }
  .header .header_r {
    position: fixed;
    height: 100%;
    right: 0;
    top: 0;
    height: 0;
    overflow-y: auto;
    width: 100%;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(24, 24, 24, 0.74)),
      to(rgba(14, 49, 71, 0.74))
    );
    background: -webkit-linear-gradient(
      top,
      rgba(24, 24, 24, 0.74) 0%,
      rgba(14, 49, 71, 0.74) 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(24, 24, 24, 0.74) 0%,
        rgba(14, 49, 71, 0.74) 100%
      );
    background: linear-gradient(
      180deg,
      rgba(24, 24, 24, 0.74) 0%,
      rgba(14, 49, 71, 0.74) 100%
    );
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    padding: 38.4vw 13.33333vw;
    -webkit-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    -moz-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    -webkit-transform: scale(1, 0);
    -moz-transform: scale(1, 0);
    -ms-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
  }
  .header .header_r.active {
    -webkit-transform: scale(1, 1);
    -moz-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    -webkit-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    -moz-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
  }
  .header .header_r.active .header_nav ul li {
    opacity: 1;
    -webkit-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
    -moz-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
  }
  .header .header_r.active .header_nav ul li a {
    opacity: 1;
    -webkit-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
    -moz-transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
  }
  .header .header_r .header_nav ul {
    text-align: center;
  }
  .header .header_r .header_nav ul li {
    opacity: 0;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    transition: 0.5s;
  }
  .header .header_r .header_nav ul li + li {
    margin-top: 48px;
  }
  .header .header_r .header_nav ul li a {
    font-size: 4.8vw;
    white-space: nowrap;
    color: #fff;
    display: block;
    position: relative;
    font-weight: 500;
    letter-spacing: 0.04em;
    opacity: 0;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    transition: 0.5s;
  }
  .header .menu_icon {
    width: 17.06667vw;
    height: 17.06667vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99;
    cursor: pointer;
  }
  .header .menu_icon.active {
    border-color: transparent;
  }
  .header .menu_icon.active .menu-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(1.06667vw) rotate(-30deg);
    -moz-transform: translateY(1.06667vw) rotate(-30deg);
    -ms-transform: translateY(1.06667vw) rotate(-30deg);
    transform: translateY(1.06667vw) rotate(-30deg);
    background-color: #fff;
  }
  .header .menu_icon.active .menu-trigger span:nth-of-type(2) {
    opacity: 0;
  }
  .header .menu_icon.active .menu-trigger span:nth-of-type(3) {
    -webkit-transform: translateY(-1.06667vw) rotate(30deg);
    -moz-transform: translateY(-1.06667vw) rotate(30deg);
    -ms-transform: translateY(-1.06667vw) rotate(30deg);
    transform: translateY(-1.06667vw) rotate(30deg);
    background-color: #fff;
  }
  .header .menu_icon_in {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    cursor: pointer;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .header .menu_icon_in .menu-trigger,
  .header .menu_icon_in .menu-trigger span {
    display: inline-block;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .header .menu_icon_in .menu-trigger {
    position: relative;
    height: 2.66667vw;
    width: 6.4vw;
  }
  .header .menu_icon_in .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.53333vw;
    min-height: 1px;
    background-color: #0270aa;
  }
  .header .menu_icon_in .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .header .menu_icon_in .menu-trigger span:nth-of-type(2) {
    top: 3.46667vw;
    opacity: 0;
  }
  .header .menu_icon_in .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  .footer {
    padding-top: 16vw;
    background-color: #fff;
  }
  .footer .row {
    padding: 0;
  }
  .footer_main {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-bottom: 10.66667vw;
  }
  .footer_copyright {
    width: 100%;
    text-align: center;
    background-color: #382e2e;
    padding: 3.73333vw;
    font-weight: 400;
    font-size: 3.2vw;
    line-height: 100%;
    color: #ffffff;
  }
  /* .footer_sites a {
    position: relative;
    font-weight: 500;
    font-size: 3.46667vw;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #382e2e;
    padding-right: 4.8vw;
  }
  .footer_sites a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 3.73333vw;
    height: 3.73333vw;
    background: url(../img/ic_link.svg) center/100% 100% no-repeat;
    display: block;
  } */
  .footer_l {
    padding-top: 6.4vw;
    padding-left: 14.66667vw;
  }
  .footer_l a {
    display: inline-block;
    width: 70.66667vw;
    margin-bottom: 1.33333vw;
  }
  .footer_l p {
    font-weight: 400;
    font-size: 3.73333vw;
    line-height: 1.92308;
    letter-spacing: 0.04em;
    color: #000000;
  }
  .footer_l p span {
    font-weight: 500;
  }
  .footer_r {
    padding-left: 8vw;
    padding-right: 8vw;
    padding-bottom: 10.66667vw;
    border-bottom: 1px solid #d9d9d9;
  }
  /* .footer_r ul {
    margin-bottom: 7.46667vw;
  } */
  .footer_r ul li + li {
    margin-top: 5.33333vw;
  }
  .footer_r ul li a {
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 160%;
    letter-spacing: 0.04em;
    color: #382e2e;
  }
  .ttl {
    padding: 28.8vw 0 25.6vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .ttl::after {
    content: "";
    position: absolute;
    top: 27.73333vw;
    right: -12vw;
    width: 92.53333vw;
    height: 65.33333vw;
    background: conic-gradient(
      from 100.21deg at 50% 50%,
      #e6ffe2 -89.91deg,
      #cfeeff 43.2deg,
      #ffedd3 150.55deg,
      #cfeeff 197.26deg,
      #e6ffe2 270.09deg,
      #cfeeff 403.2deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(-150.54deg);
    -moz-transform: rotate(-150.54deg);
    -ms-transform: rotate(-150.54deg);
    transform: rotate(-150.54deg);
    display: block;
    opacity: 0.4;
    z-index: -1;
  }
  .ttl h2 small {
    font-weight: bold;
    font-size: 3.73333vw;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #9b9b9b;
    display: block;
    margin-top: 2.13333vw;
  }
  .ttl h2 span {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 15.46667vw;
    line-height: 100%;
    color: #382e2e;
    display: block;
    white-space: nowrap;
  }
  .breadcrumb {
    padding-top: 2.66667vw;
  }
  .breadcrumb ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .breadcrumb ul li {
    font-weight: 500;
    font-size: 3.2vw;
    line-height: 100%;
    text-align: right;
    letter-spacing: 0.04em;
    color: #0270aa;
  }
  .breadcrumb ul li:not(:last-child) {
    position: relative;
    margin-right: 5.6vw;
  }
  .breadcrumb ul li:not(:last-child):after {
    content: "/";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -4vw;
    color: #62afdb;
  }
  .breadcrumb ul li a {
    color: #62afdb;
  }
  .breadcrumb ul li a:visited {
    text-decoration: underline;
  }
  .t_ttl {
    margin-bottom: 5.33333vw;
  }
  .t_ttl.st2 small {
    color: #d9d9d9;
  }
  .t_ttl.st2 span {
    color: #f8f6f6;
  }
  .t_ttl small {
    display: block;
    /* font-weight: 700; */
    font-weight: 500;
    font-size: 3.2vw;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #b5b5b5;
    margin-bottom: 1.06667vw;
  }
  .t_ttl span {
    display: block;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 12.8vw;
    line-height: 100%;
    color: #382e2e;
  }
  .t_ttl3 {
    margin-bottom: 5.33333vw;
    font-weight: 500;
    font-size: 5.86667vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #000;
  }
  .btnWr {
    text-align: right;
  }
  a.btn,
  button.btn {
    position: relative;
    padding-right: 16.53333vw;
    margin-top: 8vw;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 4.26667vw;
    line-height: 100%;
    color: #382e2e;
    min-height: 12.8vw;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  a.btn .split,
  button.btn .split {
    font-style: normal;
  }
  a.btn .icon,
  button.btn .icon {
    width: 12.8vw;
    height: 12.8vw;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  a.btn .icon:before,
  button.btn .icon:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    background-color: #382e2e;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
  }
  a.btn .icon::after,
  button.btn .icon::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-image: url(../img/btn_ar.svg);
    background-position: center;
    display: block;
    -moz-background-size: 3.46667vw 2.4vw;
    background-size: 3.46667vw 2.4vw;
    display: block;
  }
  a.btn.st2,
  button.btn.st2 {
    color: #fff;
  }
  a.btn.st2 .icon:before,
  button.btn.st2 .icon:before {
    background-color: #fff;
  }
  a.btn.st2 .icon:after,
  button.btn.st2 .icon:after {
    background-image: url(../img/btn_ar2.svg);
  }
  .p_top .header {
    background-color: transparent;
  }
  .p_top .mv {
    position: relative;
    /* padding-top: 10.66667vw; */
    position: relative;
    background: -webkit-linear-gradient(
      273.86deg,
      rgba(248, 246, 246, 0.12) 23.06%,
      rgba(238, 234, 233, 0.6) 58.16%,
      #f8f6f6 90.37%
    );
    background: -moz-
      oldlinear-gradient(
        273.86deg,
        rgba(248, 246, 246, 0.12) 23.06%,
        rgba(238, 234, 233, 0.6) 58.16%,
        #f8f6f6 90.37%
      );
    background: linear-gradient(
      176.14deg,
      rgba(248, 246, 246, 0.12) 23.06%,
      rgba(238, 234, 233, 0.6) 58.16%,
      #f8f6f6 90.37%
    );
  }
  .p_top .mv .mv_imgArea {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p_top .mv .mv_imgArea .row {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .p_top .mv .mv_imgArea .mv_img {
    position: absolute;
  }
  .p_top .mv .mv_imgArea .mv_img img {
    -moz-border-radius: 5.33333vw;
    border-radius: 5.33333vw;
    overflow: hidden;
  }
  .p_top .mv .mv_imgArea .mv_img1 {
    width: 53.86667vw;
    left: -34.4vw;
    top: 2.66667vw;
  }
  .p_top .mv .mv_imgArea .mv_img2 {
    /* top: 66.93333vw; */
    top: 74.93vw;
    left: -28.8vw;
    width: 58.66667vw;
  }
  .p_top .mv .mv_imgArea .mv_img3 {
    /* top: 74.66667vw; */
    top: 83.2vw;
    right: -4.53333vw;
    width: 18.93333vw;
  }
  .p_top .mv .mv_imgArea .mv_img3 img {
    -moz-border-radius: 4.26667vw;
    border-radius: 4.26667vw;
  }
  .p_top .mv .mv_imgArea .mv_img4 {
    top: 5.86667vw;
    right: -9.6vw;
    width: 35.73333vw;
  }
  .p_top .mv .mv_imgArea .mv_img4 img {
    -moz-border-radius: 4vw;
    border-radius: 4vw;
  }
  .p_top .mv::before {
    content: "";
    position: absolute;
    left: 26.66667vw;
    top: 26.93333vw;
    width: 154.66667vw;
    height: 109.06667vw;
    background: conic-gradient(
      from 100.21deg at 50% 50%,
      #e6ffe2 -89.91deg,
      #cfeeff 43.2deg,
      #ffedd3 150.55deg,
      #cfeeff 197.26deg,
      #e6ffe2 270.09deg,
      #cfeeff 403.2deg
    );
    -webkit-filter: blur(70px);
    filter: blur(70px);
    -webkit-transform: rotate(-136.12deg);
    -moz-transform: rotate(-136.12deg);
    -ms-transform: rotate(-136.12deg);
    transform: rotate(-136.12deg);
    display: block;
    opacity: 0.3;
  }
  .p_top .mv_top {
    position: relative;
  }
  .p_top .mv_top .row {
    position: relative;
  }
  .p_top .mv_top .mv_sliderArea {
    width: 83.73333vw;
    position: relative;
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    padding-top: 10.66667vw;
  }
  .p_top .mv_top .mv_sliderArea.show {
    opacity: 1;
  }
  .p_top .mv_top .mv_sliderArea::after {
    content: "";
    position: absolute;
    right: -5.86667vw;
    bottom: -3.2vw;
    width: 83.46667vw;
    height: 88.8vw;
    background: url(../img/mv_mask.png) center/100% 100% no-repeat;
    display: block;
  }
  .p_top .mv_top .txt {
    height: 51.73333vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -5.86667vw;
    margin-right: -5.86667vw;
    padding-left: 5.86667vw;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p_top .mv_top .txt h2 {
    -webkit-transform: matrix(1, -0.02, -0.17, 0.98, 0, 0) translateZ(0);
    -moz-transform: matrix(1, -0.02, -0.17, 0.98, 0, 0) translateZ(0);
    transform: matrix(1, -0.02, -0.17, 0.98, 0, 0) translateZ(0);
    font-family: "Zen Kurenaido", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 9.86667vw;
    line-height: 140%;
    color: #382e2e;
    position: relative;
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
  }
  .p_top .mv_top .txt h2.show {
    opacity: 1;
  }
  .p_top .mv_top .txt h2::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 195.2vw;
    height: 125.6vw;
    background: url(../img/mv_bg2.png) center/100% 100% no-repeat;
    display: block;
    z-index: -2;
  }
  .p_top .mv_top .txt h2::before {
    content: "";
    position: absolute;
    top: 9.33333vw;
    left: 0;
    width: 82.4vw;
    height: 5.33333vw;
    background: url(../img/mv_line.png) center/100% 100% no-repeat;
    display: block;
    z-index: -1;
  }
  .p_top .mv .mv_bot {
    padding-top: 77.86667vw;
    padding-bottom: 13.33333vw;
    position: relative;
  }
  .p_top .mv .mv_bot .row {
    padding-left: 9.33333vw;
    padding-right: 9.33333vw;
  }
  .p_top .mv .mv_bot_l {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_top .mv .mv_bot_l::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 58.93333vw;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 129.54839vw;
    height: 142.96774vw;
    background: url(../img/mv_bg3.png) center/100% 100% no-repeat;
    display: block;
    z-index: -1;
  }
  .p_top .mv .mv_bot_l h3 {
    font-weight: 500;
    font-size: 5.86667vw;
    line-height: 100%;
    letter-spacing: 0.02em;
    margin-bottom: 6.4vw;
  }
  .p_top .mv .mv_bot_l p + p {
    margin-top: 8vw;
  }
  .p_top .mv .mv_bot_r ul li {
    margin-left: auto;
    -webkit-filter: drop-shadow(
      1.06667vw 2.13333vw 6.4vw rgba(5, 45, 67, 0.08)
    );
    filter: drop-shadow(1.06667vw 2.13333vw 6.4vw rgba(5, 45, 67, 0.08));
  }
  .p_top .mv .mv_bot_r ul li:nth-of-type(1) {
    width: 80vw;
    position: absolute;
    top: 12.8vw;
    left: -3.73333vw;
    z-index: 2;
  }
  .p_top .mv .mv_bot_r ul li img {
    -moz-border-radius: 6.4vw;
    border-radius: 6.4vw;
    overflow: hidden;
  }
  .p_top .mv .mv_bot_r ul li + li {
    margin-top: 10.66667vw;
  }
  .p_top .mv .mv_bot_r ul li.st2 {
    width: 45.86667vw;
    margin-left: auto;
  }
  .p_top .mv .mv_bot_r ul li.st2 img {
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
    overflow: hidden;
  }
  .p_top .mv .mv_bot_r ul li.st3 {
    width: 37.33333vw;
    margin-top: 4.8vw;
    margin-left: 0;
  }
  .p_top .mv .mv_bot_r ul li.st3 img {
    -moz-border-radius: 3.2vw;
    border-radius: 3.2vw;
  }
  .p_top .about_service {
    padding-bottom: 18.66667vw;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      color-stop(32%, #ffffff),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(top, #ffffff 32%, #f2efef 100%);
    background: -moz- oldlinear-gradient(top, #ffffff 32%, #f2efef 100%);
    background: linear-gradient(180deg, #ffffff 32%, #f2efef 100%);
  }
  .p_top .about {
    padding: 18.66667vw 0 16vw;
    position: relative;
    z-index: 3;
  }
  .p_top .about .t_ttl {
    text-align: center;
  }
  .p_top .about_main {
    position: relative;
    z-index: 2;
  }
  .p_top .about_l {
    margin-bottom: 4vw;
  }
  .p_top .about_l figure,
  .p_top .about_l picture {
    position: relative;
  }
  .p_top .about_r {
    position: relative;
    z-index: 2;
  }
  .p_top .about_r p {
    font-size: 3.73333vw;
    color: #000;
  }
  .p_top .service {
    position: relative;
    z-index: 2;
    background: url(../img/service_bg_sp.png) center/100% 100% no-repeat;
    -moz-background-size: cover;
    background-size: cover;
    -moz-border-radius: 16vw 0px 0px 16vw;
    border-radius: 16vw 0px 0px 16vw;
  }
  .p_top .service .t_ttl3 {
    color: #fff;
  }
  .p_top .service .row {
    position: relative;
    padding: 0;
  }
  .p_top .service_main {
    position: relative;
  }
  .p_top .service_main .txt {
    padding: 21.33333vw 5.33333vw 16vw 8.53333vw;
    color: #fff;
  }
  .p_top .interview {
    position: relative;
    z-index: 2;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    padding: 18.66667vw 0 16vw;
    text-align: right;
    background: #f2efef;
  }
  .p_top .interview::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background: #ffffff;
    -moz-box-shadow: 0vw 0vw 9.6vw rgba(5, 45, 67, 0.01);
    box-shadow: 0vw 0vw 9.6vw rgba(5, 45, 67, 0.01);
    -moz-border-radius: 0px 16vw 0px 0px;
    border-radius: 0px 16vw 0px 0px;
  }
  .p_top .interview_head {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-bottom: 5.33333vw;
    text-align: left;
  }
  .p_top .interview_head .t_ttl {
    margin-bottom: 0;
  }
  .p_top .interview_head .btn {
    margin-top: 0;
  }
  .p_top .interview_mid {
    text-align: left;
  }
  .p_top .interview .interview_sliderArea {
    text-align: left;
    position: relative;
    padding-top: 10.66667vw;
    z-index: 3;
  }
  .p_top .interview .interview_sliderArea .interview_sliderCtr {
    position: absolute;
    top: 4.8vw;
    right: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-prev,
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-next {
    margin: 0;
    position: static;
    width: 15.2vw;
    height: 15.2vw;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    border: 1px solid #382e2e;
    background-image: url(../img/slider_prev.svg);
    background-repeat: no-repeat;
    -moz-background-size: 1.86667vw 3.2vw;
    background-size: 1.86667vw 3.2vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-prev:hover,
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-next:hover {
    opacity: 1;
    background-color: #f2efef;
  }
  .p_top
    .interview
    .interview_sliderArea
    .interview_sliderCtr
    .swiper-button-next {
    margin-left: 3.73333vw;
    background-image: url(../img/slider_next.svg);
  }
  .p_top .interview .interview_sliderArea .swiper-pagination-progressbar {
    background: #f2efef;
    position: static;
    width: 64vw;
    height: 1.06667vw;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    overflow: hidden;
    margin-top: 8.53333vw;
  }
  .p_top
    .interview
    .interview_sliderArea
    .swiper-pagination-progressbar
    .swiper-pagination-progressbar-fill {
    background-color: #382e2e;
    -moz-border-radius: 9999px;
    border-radius: 9999px;
    overflow: hidden;
  }
  .p_top .interview_slider {
    margin-right: -5.86667vw;
  }
  .p_top .work {
    padding: 0vw 0 16vw;
  }
  .p_top .work_l {
    position: relative;
    z-index: 3;
    margin-left: -5.86667vw;
    margin-bottom: 10.66667vw;
  }
  .p_top .work_l img {
    -moz-border-radius: 0vw 16vw 16vw 0vw;
    border-radius: 0vw 16vw 16vw 0vw;
    overflow: hidden;
  }
  .p_top .work_r {
    position: relative;
    z-index: 3;
  }
  .p_top .recruit {
    position: relative;
    background: url(../img/recruit_img_sp.jpg) center top no-repeat;
    -moz-background-size: cover;
    background-size: cover;
    min-height: 125.06667vw;
  }
  .p_top .recruit .t_ttl3 {
    color: #fff;
  }
  .p_top .recruit .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    padding: 2.66667vw;
  }
  .p_top .recruit .txt .txt_inner {
    width: 100%;
    height: 100%;
    max-width: 309.33333vw;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.12);
    background-blend-mode: screen;
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
  }
  .p_top .recruit .txt .txt_inner .row {
    width: 100%;
    padding-right: 2.66667vw;
  }
  .p_top .news {
    background: -webkit-linear-gradient(
      linear,
      left top,
      left bottom,
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(top, rgba(242, 239, 239, 0.2) 32%, #f2efef 100%);
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    padding: 16vw 0 18.66667vw;
    text-align: right;
  }
  .p_top .news .row {
    padding-left: 0;
  }
  .p_top .news .t_ttl {
    text-align: left;
  }
  .p_top .news_main {
    position: relative;
    padding: 13.33333vw 5.86667vw;
    position: relative;
    background: #ffffff;
    -moz-box-shadow: 0px 2.66667vw 16vw rgba(5, 45, 67, 0.06);
    box-shadow: 0px 2.66667vw 16vw rgba(5, 45, 67, 0.06);
    -moz-border-radius: 0px 16vw 16vw 0px;
    border-radius: 0px 16vw 16vw 0px;
  }
  .news_list.st2 {
    padding-left: 2.66667vw;
    padding-right: 2.66667vw;
  }
  .news_list.st2 li a {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .news_list.st2 li a h4 {
    width: 100%;
    font-weight: 500;
    line-height: 1.75;
    font-size: 4vw;
    margin: 4.26667vw 0 0vw;
  }
  .news_list.st2 li a p {
    font-size: 3.73333vw;
    padding-left: 0;
    display: none;
  }
  .news_list li:nth-of-type(1) a {
    padding-top: 0;
  }
  .news_list li a {
    padding: 5.86667vw 0 3.2vw;
    border-bottom: 1px solid #d9d9d9;
    display: block;
    text-align: left;
  }
  .news_list li a time {
    border: 1px solid #000;
    width: 32.8vw;
    height: 6.13333vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 4vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    margin-bottom: 3.2vw;
  }
  .news_list li a p {
    font-weight: 500;
    font-size: 3.46667vw;
    line-height: 150%;
    color: #000000;
  }
  .interview_it {
    position: relative;
    width: 55.46667vw;
    margin: 5.33333vw 2.66667vw 0;
  }
  .interview_it.swiper-slide-active {
    margin-top: 0;
  }
  .interview_it p {
    text-align: right;
    position: absolute;
    bottom: 3.2vw;
    right: 2.33333vw;
    font-weight: 700;
    font-size: 3.2vw;
    line-height: 160%;
    letter-spacing: 0.04em;
    color: #ffffff;
  }
  .interview_it p span {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 5.86667vw;
    line-height: 100%;
    /* margin-left: 2.93333vw; */
    position: absolute;
    top: -9.6618vw;
    right: 0;
  }
  .interview_it figure {
    height: 75.2vw;
  }
  .interview_it figure img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-border-radius: 3.73333vw;
    border-radius: 3.73333vw;
    overflow: hidden;
  }
  .p_interview {
    background-color: #f2efef;
  }
  .p_interview .interview {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_interview .interview::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100vw;
    height: 145.6vw;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
  }
  .p_interview .interview .row {
    padding-bottom: 21.33333vw;
    padding-top: 16.53333vw;
    max-width: 256vw;
  }
  .p_interview .interview_intro {
    padding-left: 3.46667vw;
    border-left: 1.33333vw solid #382e2e;
    margin-bottom: 16vw;
  }
  .p_interview .interview_intro h2 {
    font-weight: 500;
    font-size: 4.8vw;
    letter-spacing: 0.02em;
    color: #382e2e;
    position: relative;
  }
  .p_interview .interview_intro h2::before {
    content: "";
    position: absolute;
    top: 0;
    left: -4.8vw;
    width: 1.33333vw;
    height: 100%;
    background: #0270aa;
    display: block;
  }
  .p_interview .interview_intro p {
    font-size: 3.46667vw;
    line-height: 180%;
  }
  .p_interview .interview .row {
    position: relative;
  }
  .p_interview .interview_list {
    padding-left: 6.93333vw;
    padding-right: 6.93333vw;
  }
  .p_interview .interview_list .interview_it {
    margin: 0;
    position: relative;
    z-index: 2;
    width: 100%;
  }
  .p_interview .interview_list .interview_it + .interview_it {
    margin-top: 10.66667vw;
  }
  .p_interview .interview_list .interview_it a {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_interview .interview_list .interview_it a p {
    bottom: 5.33333vw;
    right: 9.6vw;
    font-size: 3.46667vw;
  }
  .p_interview .interview_list .interview_it a p span {
    font-size: 7.2vw;
  }
  .p_interview .interview_list .interview_it a figure {
    overflow: hidden;
    height: 101.33333vw;
  }
  .p_interview .interview_list .interview_it a figure img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
  }
  .p_interview .interview_list .interview_it a figure img {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_interview .interview_dt_mv {
    padding-top: 10.13333vw;
    position: relative;
    margin-bottom: 8vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .p_interview .interview_dt_mv h2 {
    position: absolute;
    right: 0vw;
    bottom: -1.33333vw;
    line-height: 1;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 12.8vw;
    color: rgba(227, 224, 224, 0.3);
    z-index: 2;
  }
  .p_interview .interview_dt_mv .txt {
    padding: 4.8vw;
    background: #ffffff;
    -moz-border-radius: 4.26667vw;
    border-radius: 4.26667vw;
    width: 83.46667vw;
    margin-top: -20vw;
    position: relative;
    z-index: 2;
  }
  .p_interview .interview_dt_mv .txt h3 {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 160%;
    letter-spacing: 0.02em;
    padding-bottom: 2.66667vw;
    margin-bottom: 2.66667vw;
    border-bottom: 1px solid #e0e0e0;
  }
  .p_interview .interview_dt_mv .txt p {
    font-weight: 400;
    font-size: 3.2vw;
    line-height: 1.46667;
    letter-spacing: 0.04em;
  }
  .p_interview .interview_dt_mv .txt p small {
    font-size: 3.2vw;
    display: block;
  }
  .p_interview .interview_dt_mv .txt p em {
    font-style: normal;
    font-weight: 600;
    font-size: 5.33333vw;
    font-family: "Montserrat", sans-serif;
    display: block;
  }
  .p_interview .interview_dt_mv figure {
    width: 78.66667vw;
    overflow: hidden;
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
    margin-left: auto;
    /* margin-top: -6.93333vw; */
  }
  .p_interview .interview_dt_mv figure img {
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
    overflow: hidden;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_interview .interview_dt {
    padding-left: 5.33333vw;
    padding-right: 5.33333vw;
  }
  .p_interview .interview_dt_main {
    background-color: #fff;
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
    padding: 13.33333vw 4vw 10.66667vw;
  }
  .p_interview .interview_dt_main ul {
    width: 213.33333vw;
    max-width: 100%;
    margin: 0 auto;
  }
  .p_interview .interview_dt_main ul li {
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 8vw;
  }
  .p_interview .interview_dt_main ul li:not(:last-child) {
    margin-bottom: 8vw;
  }
  .p_interview .interview_dt_main ul li h3 {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    margin-bottom: 3.2vw;
  }
  .p_interview .interview_dt_main ul li h3 span {
    display: block;
    font-weight: 500;
    font-size: 4vw;
    letter-spacing: 0.02em;
    color: #0270aa;
    margin-bottom: 3.2vw;
  }
  .p_interview .interview_dt_main ul li p {
    font-size: 3.73333vw;
    line-height: 180%;
  }
  .p_interview .other_interview {
    padding: 13.33333vw 0 18.66667vw;
    background: #ffffff;
    -moz-border-radius: 16vw 0vw 0vw 0vw;
    border-radius: 16vw 0vw 0vw 0vw;
    margin-top: 13.33333vw;
    position: relative;
    margin-left: -5.86667vw;
  }
  .p_interview .other_interview .row {
    max-width: 272vw;
  }
  .p_interview .other_interview::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 145.6vw;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
  }
  .p_interview .other_interview .t_ttl {
    text-align: center;
    margin-bottom: 8.53333vw;
  }
  .p_interview .other_interview .interview_list:after {
    display: none;
  }
  .p_interview .other_interview .btn {
    margin-top: 2.66667vw;
    position: relative;
    z-index: 2;
  }
  .p_interview .other_interview .btnWr {
    text-align: center;
    margin-top: 13.33333vw;
  }
  .p_recruit .recruit .intro {
    position: relative;
    z-index: 2;
  }
  .p_recruit .recruit .intro figure,
  .p_recruit .recruit .intro picture {
    height: 133.86667vw;
  }
  .p_recruit .recruit .intro figure img,
  .p_recruit .recruit .intro picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_recruit .recruit .intro .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    z-index: 2;
  }
  .p_recruit .recruit .intro .txt .row {
    padding-left: 9.33333vw;
    padding-right: 9.33333vw;
  }
  .p_recruit .recruit .intro .txt h2 {
    font-weight: 500;
    font-size: 5.86667vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 6.4vw;
    text-align: center;
  }
  .p_recruit .recruit .intro .txt p {
    font-weight: 500;
    font-size: 4vw;
    line-height: 180%;
    color: #ffffff;
    text-align: left;
  }
  .p_recruit .recruit .intro .txt p + p {
    margin-top: 8vw;
  }
  .p_recruit .recruit .requirements {
    padding-top: 10.66667vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_recruit .recruit .requirements .t_ttl span {
    white-space: nowrap;
    font-size: 11.73333vw;
  }
  .p_recruit .recruit .requirements::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 133.33333vw;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      color-stop(52.62%, #f2efef),
      color-stop(93.12%, #dadada)
    );
    background: -webkit-linear-gradient(top, #f2efef 52.62%, #dadada 93.12%);
    background: -moz- oldlinear-gradient(top, #f2efef 52.62%, #dadada 93.12%);
    background: linear-gradient(180deg, #f2efef 52.62%, #dadada 93.12%);
    display: block;
    z-index: -1;
  }
  .p_recruit .recruit .requirements .tab_content {
    display: none;
  }
  .p_recruit .recruit .requirements .tab_content.active {
    display: block;
  }
  .p_recruit .recruit .requirements .tabs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .p_recruit .recruit .requirements .tabs li {
    width: 27.2vw;
  }
  .p_recruit .recruit .requirements .tabs li:not(:last-child) {
    margin-right: 1.6vw;
  }
  .p_recruit .recruit .requirements .tabs li:nth-of-type(1) {
    width: 61.6vw;
    margin-left: -3.2vw;
  }
  .p_recruit .recruit .requirements .tabs li a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1.6vw 0;
    background: #c5c5c5;
    -moz-border-radius: 3.2vw 3.2vw 0vw 0vw;
    border-radius: 3.2vw 3.2vw 0vw 0vw;
    font-weight: 500;
    font-size: 3.2vw;
    line-height: 140%;
    text-align: center;
    letter-spacing: 0.02em;
    color: #ffffff;
    height: 100%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_recruit .recruit .requirements .tabs li a.active,
  .p_recruit .recruit .requirements .tabs li a:hover {
    background-color: #fff;
    color: #0270aa;
    opacity: 1;
  }
  .p_recruit .recruit .requirements .tabCtn {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    padding: 13.33333vw 0 18.66667vw;
  }
  .p_recruit .recruit .requirements .tabCtn .dlist dl {
    padding-left: 1.33333vw;
    padding-right: 1.33333vw;
    font-size: 4.26667vw;
  }
  .p_recruit .recruit .requirements .tabCtn::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background: #ffffff;
    -moz-border-radius: 0vw 8vw 0vw 0vw;
    border-radius: 0vw 8vw 0vw 0vw;
    display: block;
    z-index: -1;
  }
  .p_recruit .recruit .requirements .tabCtn h3 {
    margin-bottom: 2.66667vw;
    font-weight: 500;
    font-size: 4.8vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #000000;
  }
  .p_recruit .recruit .entry {
    padding: 13.33333vw 0 16vw;
    background: #f2efef;
  }
  .p_recruit .recruit .entry_main {
    background: #ffffff;
    -moz-border-radius: 3.2vw;
    border-radius: 3.2vw;
    padding: 10.66667vw 8vw 13.33333vw;
  }
  .p_recruit .recruit .entry_main .form {
    margin: 0 auto;
  }
  .p_recruit .recruit .entry .t_ttl {
    text-align: center;
  }
  .form .f_completed {
    text-align: center;
  }
  .form .f_completed_btn {
    margin: 0 auto;
    width: 62.93333vw;
    height: 17.06667vw;
    background: #f4f9fb;
    border: 1px solid #0270aa;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    font-weight: 500;
    font-size: 4.26667vw;
    letter-spacing: 0.04em;
    color: #185984;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .form .f_completed_btn:hover {
    opacity: 1;
    background-color: #0270aa;
    border-color: #0270aa;
    color: #fff;
  }
  .form .f_completed h3 {
    font-weight: bold;
    font-size: 5.86667vw;
    line-height: 140%;
    text-align: center;
    color: #0f2957;
    letter-spacing: 0.1em;
    margin-bottom: 3.2vw;
  }
  .form .f_completed p {
    text-align: left;
    font-size: 3.73333vw;
    line-height: 180%;
    letter-spacing: 0.02em;
  }
  .form .f_completed .c_red {
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 160%;
    letter-spacing: 0.04em;
    color: #ca1e1e;
    margin: 0vw 0 10.66667vw;
  }
  .form .f_completed .box {
    margin: 4.8vw 0;
    padding: 5.33333vw 2.66667vw;
    border: 1px solid #f0f0f0;
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
  }
  .form .f_completed .box h4 {
    font-weight: 500;
    font-size: 4vw;
    line-height: 160%;
    letter-spacing: 0.08em;
    margin-bottom: 3.2vw;
    text-align: center;
  }
  .form .f_completed .box ul li {
    position: relative;
    text-align: left;
    font-size: 3.46667vw;
    line-height: 160%;
    letter-spacing: 0.04em;
    padding-left: 4.8vw;
    font-weight: 50;
  }
  .form .f_completed .box ul li + li {
    margin-top: 2.66667vw;
  }
  .form .f_completed .box ul li span {
    color: #0270aa;
  }
  .form .f_completed .box ul li::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    width: 2.13333vw;
    height: 2.13333vw;
    background: #0270aa;
    display: block;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
  }
  .form.st2 dl {
    padding: 8.53333vw 0;
    border-bottom: 1px solid #e0e0e0;
  }
  .form.st2 dl + dl {
    margin-top: 0;
  }
  .form.st2 dl:nth-of-type(1) {
    border-top: 1px solid #e0e0e0;
  }
  .form.st2 .f_btn:hover {
    opacity: 1;
    background-color: #0270aa;
    border-color: #0270aa;
  }
  .form .filepond--drop-label {
    color: #4c4e53;
  }
  .form .filepond--label-action {
    -webkit-text-decoration-color: #babdc0;
    -moz-text-decoration-color: #babdc0;
    text-decoration-color: #babdc0;
  }
  .form .filepond--panel-root {
    -moz-border-radius: 2em;
    border-radius: 2em;
    background-color: #edf0f4;
    height: 1em;
  }
  .form .filepond--item-panel {
    background-color: #595e68;
  }
  .form .filepond--drip-blob {
    background-color: #7f8a9a;
  }
  .form .filepond--credits {
    display: none;
  }
  .form .filepond--panel-root {
    background: none !important;
  }
  .form .filepond--browser.filepond--browser {
    display: none;
  }
  .form .filepond--root {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .form .filepond--item-panel {
    background-color: transparent !important;
  }
  .form .filepond--file-wrapper.filepond--file-wrapper > legend {
    display: none;
    width: 0;
  }
  .form .filepond--file-info .filepond--file-info-main {
    font-size: 3.73333vw;
    font-weight: 500;
    color: #382e2e;
  }
  .form .filepond--file-info {
    -webkit-box-flex: initial !important;
    -moz-box-flex: initial !important;
    -ms-flex: initial !important;
    flex: initial !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
  }
  .form .filepond--file {
    font-size: 3.73333vw;
    font-weight: 500;
    color: #382e2e;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -moz-box-orient: horizontal;
    -moz-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
  .form .filepond--item > .filepond--panel .filepond--panel-bottom {
    -moz-box-shadow: none;
    box-shadow: none;
  }
  .form .filepond--file-info .filepond--file-info-sub {
    display: none;
  }
  .form .filepond--file {
    padding-top: 0;
  }
  .form .filepond--file button {
    display: none;
  }
  .form .filepond--file .filepond--file-status {
    display: none !important;
  }
  .form .filepond--action-remove-item {
    right: 0.5625em;
    left: initial;
    position: static;
    display: block !important;
    text-indent: -2666.4vw;
    width: 6.13333vw;
    height: 6.13333vw;
    background: url(../img/ic_close.svg) center/100% 100% no-repeat;
    cursor: pointer;
  }
  .form .filepond--action-remove-item:hover {
    opacity: 0.7;
    background-color: transparent;
  }
  .form .filepond--drop-label {
    width: 33.6vw;
    height: 7.46667vw;
    background: #f2efef;
    border: 1px solid #c2c2c2;
    -moz-border-radius: 1.06667vw;
    border-radius: 1.06667vw;
    text-indent: -2666.4vw;
    position: relative;
    cursor: pointer;
  }
  .form .filepond--drop-label.hide::before {
    display: none;
  }
  .form .filepond--drop-label::before {
    content: "選択されていません";
    position: absolute;
    top: 50%;
    right: -38.93333vw;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    font-weight: 500;
    font-size: 3.73333vw;
    letter-spacing: 0.02em;
    color: #9b9b9b;
    white-space: nowrap;
    text-indent: 0;
  }
  .form .filepond--drop-label::after {
    content: "ファイルを選択";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-weight: 500;
    font-size: 3.2vw;
    letter-spacing: 0.02em;
    color: #9b9b9b;
    display: block;
    white-space: nowrap;
    text-indent: 0;
  }
  .form .filepond--progress-indicator {
    display: none;
  }
  .form .filepond--root .filepond--drop-label {
    min-height: initial;
  }
  .form .filepond--list-scroller {
    position: static;
    width: -webkit-calc(100% - vw(152));
    width: -moz-calc(100% - vw(152));
    width: calc(100% - vw(152));
    padding-left: 5.33333vw;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-transition: none !important;
    -moz-transition: none !important;
    transition: none !important;
    margin-top: 0 !important;
  }
  .form .filepondDesc {
    font-weight: 500;
    font-size: 3.46667vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #382e2e;
  }
  .form .f_txtError {
    font-size: 3.73333vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #f44848;
    margin-top: 2.13333vw;
  }
  .form .TxtAfterConfirm {
    font-size: 3.73333vw;
    line-height: 100%;
    text-align: center;
    margin-top: 14.93333vw;
    margin-bottom: 4.8vw;
  }
  .form .f_btn {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    cursor: pointer;
    margin: 0 auto;
    max-width: 100%;
    width: 62.93333vw;
    height: 17.06667vw;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    background: #62afdb;
    border-color: #62afdb;
    color: #ffffff;
  }
  .form .f_btn:disabled {
    color: #91c2de;
    background: #ffffff;
    border: 1px solid #91c2de;
    pointer-events: none;
  }
  .form .f_privacy {
    margin: 10.66667vw auto 8vw;
  }
  .form .f_privacy h3 {
    text-align: center;
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 100%;
    letter-spacing: 0.1em;
    color: #000000;
    margin-bottom: 3.2vw;
  }
  .form .f_privacy .box {
    overflow-y: auto;
    padding: 3.2vw;
    height: 32vw;
    background: #f0f0f0;
    -moz-border-radius: 0.8vw;
    border-radius: 0.8vw;
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 3.73333vw;
    line-height: 160%;
    letter-spacing: 0.1em;
  }
  .form .checkboxWr {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 10.66667vw;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .form .checkboxWr div,
  .form .checkboxWr .mwform-checkbox-field {
    display: inline-block;
  }
  .form .checkboxWr label {
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: inline-block;
    font-weight: 500;
    font-size: 3.73333vw;
    letter-spacing: 0.02em;
  }
  .form .checkboxWr label input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
  }
  .form .checkboxWr label span {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    display: inline-block;
    padding: 0 0 0 5.86667vw;
  }
  .form .checkboxWr label span::before {
    position: absolute;
    content: "";
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    -moz-border-radius: 1px;
    border-radius: 1px;
    width: 3.73333vw;
    height: 3.73333vw;
    /* border: 1px solid #CACACA; */
    background: url("../img/recruit/iconCheck_sp.png") 0 0 no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
  }
  /* .form .checkboxWr label span::after {
    left: 1.33333vw;
    top: 1.06667vw;
    width: 1.33333vw;
    height: 2.4vw;
    border: solid #CACACA;
    border-width: 0 0.53333vw 0.53333vw 0;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    content: "";
    position: absolute;
  }
  .form .checkboxWr label input:checked ~ span:after {
    border-color: #fff;
  } */
  .form .checkboxWr label input:checked ~ span:before {
    /* background-color: #0270AA;
    border-color: #0270AA; */
    background: url("../img/recruit/iconChecked.png") 0 0 no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
  }
  .form dl + dl {
    margin-top: 4.8vw;
  }
  .form dl dt {
    font-weight: 500;
    font-size: 4vw;
    line-height: 100%;
    letter-spacing: 0.06em;
    color: #000000;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 2.13333vw;
  }
  .form dl dt span {
    margin-right: 2.4vw;
    width: 10.13333vw;
    height: 4.8vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #ca1e1e;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    font-weight: 700;
    font-size: 2.66667vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.06em;
    color: #ffffff;
  }
  .form dl dd input {
    width: 100%;
    padding: 0 4.8vw;
    outline: none;
    font-size: -webkit-calc(max(3.73333vw, 16px));
    font-size: -moz-calc(max(3.73333vw, 16px));
    font-size: calc(max(3.73333vw, 16px));
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 14.66667vw;
    background: #fcfcfc;
    border: 1px solid #ededed;
    -moz-box-shadow: inset 0vw 0vw 1.6vw rgba(0, 0, 0, 0.08);
    box-shadow: inset 0vw 0vw 1.6vw rgba(0, 0, 0, 0.08);
    -moz-border-radius: 0.53333vw;
    border-radius: 0.53333vw;
  }
  .form dl dd input::-webkit-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input::-moz-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input:-ms-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input::placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd input.error {
    border: 1px solid #f44848;
  }
  .form dl dd textarea {
    width: 100%;
    padding: 2.66667vw 4.8vw;
    outline: none;
    font-size: -webkit-calc(max(3.73333vw, 16px));
    font-size: -moz-calc(max(3.73333vw, 16px));
    font-size: calc(max(3.73333vw, 16px));
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 24vw;
    background: #fcfcfc;
    border: 1px solid #ededed;
    -moz-box-shadow: inset 0vw 0vw 1.6vw rgba(0, 0, 0, 0.08);
    box-shadow: inset 0vw 0vw 1.6vw rgba(0, 0, 0, 0.08);
    -moz-border-radius: 0.53333vw;
    border-radius: 0.53333vw;
  }
  .form dl dd textarea::-webkit-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea::-moz-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea:-ms-input-placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea::placeholder {
    color: #bebebe;
    opacity: 1;
  }
  .form dl dd textarea.error {
    border: 1px solid #f44848;
  }
  .form dl dd .select label {
    display: block;
    position: relative;
    -webkit-perspective: 0.26667vw;
    -moz-perspective: 0.26667vw;
    perspective: 0.26667vw;
    height: 14.66667vw;
    background: #fcfcfc;
    border: 1px solid #ededed;
    -moz-box-shadow: inset 0vw 0vw 1.6vw rgba(0, 0, 0, 0.08);
    box-shadow: inset 0vw 0vw 1.6vw rgba(0, 0, 0, 0.08);
    -moz-border-radius: 0.53333vw;
    border-radius: 0.53333vw;
  }
  .form dl dd .select label select {
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    border: none;
    padding: 0 4.8vw;
    background: transparent;
    font-size: -webkit-calc(max(3.73333vw, 16px));
    font-size: -moz-calc(max(3.73333vw, 16px));
    font-size: calc(max(3.73333vw, 16px));
    /* color: #BEBEBE; */
    cursor: pointer;
    position: relative;
    z-index: 3;
  }
  .form dl dd .select label select::-ms-expand {
    display: none;
  }
  .f_step {
    margin-bottom: 10.66667vw;
  }
  .f_step ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    counter-reset: div;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .f_step ul li {
    position: relative;
    padding-top: 10.4vw;
    font-weight: 500;
    font-size: 3.2vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    color: #000000;
  }
  .f_step ul li.active:before {
    background-color: #0270aa;
  }
  .f_step ul li:before {
    counter-increment: div;
    content: counter(div);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    width: 7.46667vw;
    height: 7.46667vw;
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #b5b5b5;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 3.73333vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    color: #ffffff;
  }
  .f_step ul li:not(:last-child) {
    position: relative;
    margin-right: 14.4vw;
  }
  .f_step ul li:not(:last-child):after {
    content: "";
    position: absolute;
    top: 3.73333vw;
    right: -11.2vw;
    width: 8vw;
    height: 0.26667vw;
    background: #d9d9d9;
    display: block;
  }
  .dlist.st2 dl:last-child {
    border-bottom: 0;
  }
  .dlist .listNum li {
    text-indent: -1em;
    padding-left: 1em;
  }
  .dlist dl {
    font-weight: 400;
    font-size: 3.73333vw;
    line-height: 200%;
    padding: 4vw 0;
    border-bottom: 1px solid #e0e0e0;
  }
  .dlist dl dt {
    font-weight: 500;
  }
  .ttl3 {
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 1.45455;
    letter-spacing: 0.02em;
    position: relative;
    padding-left: 3.2vw;
    margin-bottom: 1.86667vw;
    color: #000;
  }
  .ttl3::before {
    content: "";
    position: absolute;
    top: 1.86667vw;
    left: 0;
    width: 1.33333vw;
    height: 1.33333vw;
    background: #0270aa;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    display: block;
  }
  .p_about .about .intro {
    position: relative;
    padding: 25.6vw 0 32vw;
    color: #fff;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_about .about .intro .row {
    padding-left: 9.33333vw;
    padding-right: 9.33333vw;
  }
  .p_about .about .intro::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 500%;
    background: #f2efef url(../img/about/intro_bg_sp.png) center top no-repeat;
    -moz-background-size: 100% auto;
    background-size: 100% auto;
    display: block;
    z-index: -1;
    -moz-border-radius: 0vw 16vw 0vw 0vw;
    border-radius: 0vw 16vw 0vw 0vw;
  }
  .p_about .about .intro h2 {
    font-weight: 500;
    font-size: 5.86667vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 6.4vw;
  }
  .p_about .about .intro p + p {
    margin-top: 8vw;
  }
  .p_about .history {
    overflow: hidden;
    background-color: #fff;
    -moz-border-radius: 16vw 0 0 0;
    border-radius: 16vw 0 0 0;
    width: 94.66667vw;
    margin-left: auto;
    position: relative;
    z-index: 2;
    padding-bottom: 16vw;
    margin-bottom: -16vw;
    position: relative;
  }
  .p_about .history::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0vw;
    width: 94.66667vw;
    height: 34.13333vw;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0)),
      color-stop(70.38%, #f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(255, 255, 255, 0) 0%,
      #f2efef 70.38%
    );
    background: -moz-
      oldlinear-gradient(top, rgba(255, 255, 255, 0) 0%, #f2efef 70.38%);
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0) 0%,
      #f2efef 70.38%
    );
  }
  .p_about .history .row {
    padding: 0;
  }
  .p_about .history .t_ttl {
    position: relative;
    z-index: 2;
  }
  .p_about .history_main {
    padding: 10.66667vw 5.33333vw 16vw 10.66667vw;
    position: relative;
  }
  .p_about .history_top {
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    margin-bottom: 16vw;
  }
  .p_about .history_top figure {
    margin-bottom: 6.93333vw;
  }
  .p_about .history_top figure img {
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
    overflow: hidden;
  }
  .p_about .history_top .txt p {
    font-size: 3.46667vw;
  }
  .p_about .history_bot h3 {
    margin-bottom: 6.4vw;
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 100%;
    letter-spacing: 0.02em;
  }
  .p_about .history_bot .h_list {
    position: relative;
  }
  .p_about .history_bot .h_list::after {
    content: "";
    position: absolute;
    top: 1%;
    left: 0;
    width: 0.26667vw;
    height: 98%;
    background: #382e2e;
    display: block;
  }
  .p_about .history_bot .h_list dl {
    font-size: 4.26667vw;
    line-height: 160%;
    padding-left: 5.33333vw;
  }
  .p_about .history_bot .h_list dl + dl {
    margin-top: 8vw;
  }
  .p_about .history_bot .h_list dl dt {
    display: block;
    letter-spacing: 0.04em;
    color: #000;
    font-weight: bold;
    position: relative;
  }
  .p_about .history_bot .h_list dl dt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -7.2vw;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 3.73333vw;
    height: 3.73333vw;
    background: #382e2e;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    display: block;
    outline: 0.26667vw solid #382e2e;
    z-index: 2;
    border: 2px solid #fff;
  }
  .p_about .history_bot .h_list dl dd {
    font-size: 3.46667vw;
  }
  .p_about .future {
    padding-top: 16vw;
    background: #ffffff;
    -moz-box-shadow: 0vw -1.06667vw 9.6vw rgba(5, 45, 67, 0.01);
    box-shadow: 0vw -1.06667vw 9.6vw rgba(5, 45, 67, 0.01);
    -moz-border-radius: 16vw 0vw 0vw 0vw;
    border-radius: 16vw 0vw 0vw 0vw;
    position: relative;
    z-index: 2;
  }
  .p_about .future .row {
    position: relative;
  }
  .p_about .future .future_ttl {
    font-weight: 500;
    font-size: 5.33333vw;
    line-height: 160%;
    letter-spacing: 0.02em;
    color: #0270aa;
    position: relative;
    margin-bottom: 8vw;
  }
  .p_about .future .future_ttl::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -100vw;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100vw;
    height: 1.06667vw;
    background: #0270aa;
    display: block;
    margin-left: -11.73333vw;
    display: none;
  }
  .p_about .future .vision {
    position: relative;
    padding: 16vw 5.86667vw 16vw 0;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    color: #fff;
  }
  .p_about .future .vision .t_ttl3 {
    color: #fff;
    font-size: 4.8vw;
  }
  .p_about .future .vision.st2 {
    color: #000;
  }
  .p_about .future .vision.st2 .t_ttl3 {
    color: #000;
  }
  .p_about .future .vision.st2:after {
    background-color: #f8f7f7;
  }
  .p_about .future .vision.st2 .t_ttl small {
    color: #62afdb;
  }
  .p_about .future .vision.st2 .t_ttl span {
    color: #0270aa;
  }
  .p_about .future .vision .t_ttl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -moz-box-orient: horizontal;
    -moz-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: left;
    -webkit-box-align: baseline;
    -moz-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    margin-right: -5.86667vw;
  }
  .p_about .future .vision .t_ttl small {
    margin-left: 4.26667vw;
  }
  .p_about .future .vision .t_ttl span {
    font-size: 11.2vw;
  }
  .p_about .future .vision::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100vw;
    height: 100%;
    background: #0270aa;
    -moz-border-radius: 0vw 10.66667vw 10.66667vw 0vw;
    border-radius: 0vw 10.66667vw 10.66667vw 0vw;
    display: block;
    z-index: -1;
  }
  .p_about .profile {
    background-color: #fff;
    padding: 18.66667vw 0 16vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_about .profile::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 145.6vw;
    background: -webkit-linear-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
    z-index: -1;
  }

  .p_service .service .career .career_top {
    position: relative;
    padding: 18.66667vw 0 21.33333vw;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    margin-bottom: 13.33333vw;
  }
  .p_service .service .career .career_top .row {
    padding-left: 2.66667vw;
    padding-right: 2.66667vw;
  }
  .p_service .service .career .career_top::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 194.66667vw;
    left: 0;
    top: 0;
    z-index: -1;
    background: -webkit-gradient(
      linear,
      left bottom,
      left top,
      color-stop(32%, #ffffff),
      color-stop(100%, #f2efef),
      color-stop(100.01%, #f2efef)
    );
    background: -webkit-linear-gradient(
      bottom,
      #ffffff 32%,
      #f2efef 100%,
      #f2efef 100.01%
    );
    background: -moz-
      oldlinear-gradient(bottom, #ffffff 32%, #f2efef 100%, #f2efef 100.01%);
    background: linear-gradient(
      0deg,
      #ffffff 32%,
      #f2efef 100%,
      #f2efef 100.01%
    );
  }
  .p_service .service .career .career_top::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 94.66667vw;
    height: 100%;
    background: url(../img/service/career_bg_sp.jpg) center bottom no-repeat;
    display: block;
    -moz-border-radius: 0vw 0vw 0vw 32vw;
    border-radius: 0vw 0vw 0vw 32vw;
    overflow: hidden;
    z-index: -1;
    -moz-background-size: cover;
    background-size: cover;
  }
  .p_service .service .career .career_top ul {
    width: 226.66667vw;
    max-width: 100%;
  }
  .p_service .service .career .career_top ul li {
    background: #ffffff;
    -moz-box-shadow: 0vw 2.66667vw 16vw rgba(5, 45, 67, 0.06);
    box-shadow: 0vw 2.66667vw 16vw rgba(5, 45, 67, 0.06);
    -moz-border-radius: 6.4vw;
    border-radius: 6.4vw;
    padding: 10.66667vw 5.86667vw;
  }
  .p_service .service .career .career_top ul li + li {
    margin-top: 5.33333vw;
  }
  .p_service .service .career .career_top ul li .ttl3 {
    font-size: 4.26667vw;
  }
  .p_service .service .career .career_top ul li .ttl3:before {
    top: 2.13333vw;
  }
  .p_service .service .career .career_top ul li p {
    font-size: 3.73333vw;
  }
  .p_service .service .career .career_bot {
    padding-bottom: 13.33333vw;
  }
  .p_service .service .career .career_bot .row {
    padding: 0;
  }
  .p_service .service .career .career_bot figure {
    margin-bottom: 8.8vw;
    width: 94.66667vw;
  }
  .p_service .service .career .career_bot figure img {
    overflow: hidden;
    -moz-border-radius: 0vw 8vw 8vw 0vw;
    border-radius: 0vw 8vw 8vw 0vw;
  }
  .p_service .service .career .career_bot .txt {
    border-left: 1.33333vw solid #382e2e;
    padding-left: 3.46667vw;
    margin-left: 2.66667vw;
    padding-right: 3.46667vw;
  }
  .p_service .service .career .career_bot .txt h4 {
    position: relative;
    font-weight: 500;
    font-size: 4.8vw;
    line-height: 100%;
    letter-spacing: 0.02em;
    padding: 1.33333vw 0;
  }
  .p_service .service .career .career_bot .txt h4::before {
    content: "";
    position: absolute;
    top: 0;
    left: -4.8vw;
    width: 1.33333vw;
    height: 100%;
    display: block;
    background-color: #0270aa;
  }
  .p_service .service .career .career_bot .txt p {
    font-size: 3.46667vw;
    line-height: 180%;
  }
  .p_service .service .occupation {
    padding: 16vw 0 16vw;
    background-color: #f2efef;
  }
  .p_service .service .occupation .row {
    padding: 0;
  }
  .p_service .service .occupation_main {
    padding-top: 10.66667vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    width: 94.66667vw;
    margin-left: auto;
    background: #ffffff;
    -moz-border-radius: 16vw 0vw 0vw 0vw;
    border-radius: 16vw 0vw 0vw 0vw;
  }
  .p_service .service .occupation_main .t_ttl {
    padding-left: 10.66667vw;
  }
  .p_service .service .occupation_main ul li {
    display: block;
    position: relative;
  }
  .p_service .service .occupation_main ul li figure,
  .p_service .service .occupation_main ul li picture {
    height: 42.66667vw;
  }
  .p_service .service .occupation_main ul li figure img,
  .p_service .service .occupation_main ul li picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_service .service .occupation_main ul li + li {
    margin-top: 0.53333vw;
  }
  .p_service .service .occupation_main ul li .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-left: 5.33333vw;
    padding-right: 5.33333vw;
  }
  .p_service .service .occupation_main ul li .txt .txt_inner {
    width: 261.33333vw;
    max-width: 100%;
  }
  .p_service .service .occupation_main ul li .txt h3 {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 100%;
    letter-spacing: 0.02em;
    color: #ffffff;
    margin-bottom: 3.2vw;
  }
  .p_service .service .occupation_main ul li .txt p {
    font-weight: 400;
    font-size: 3.2vw;
    line-height: 160%;
    color: #ffffff;
  }
  .p_service .service .occupation_main ul li .txt .btn {
    margin-top: 1.06667vw;
    font-size: 2.93333vw;
    padding-right: 12.26667vw;
  }
  .p_service .service .occupation_main ul li .txt .btn .icon {
    width: 9.6vw;
    height: 9.6vw;
  }
  .p_service .sd_mv {
    position: relative;
  }
  .p_service .sd_mv figure,
  .p_service .sd_mv picture {
    height: 86.93333vw;
  }
  .p_service .sd_mv figure img,
  .p_service .sd_mv picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  .p_service .sd_mv .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_service .sd_mv .txt .row {
    padding-top: 19.73333vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-pack: end;
    -moz-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .p_service .sd_mv .txt .breadcrumb {
    padding-bottom: 0;
    padding-top: 0;
    margin-bottom: 20.8vw;
  }
  .p_service .sd_mv .txt .breadcrumb .row {
    padding: 0;
  }
  .p_service .sd_mv .txt .breadcrumb ul {
    width: 100%;
  }
  .p_service .sd_mv .txt .sd_mv_ttl h2 {
    font-weight: 700;
    font-size: 4.8vw;
    line-height: 100%;
    margin-bottom: 2.13333vw;
    letter-spacing: 0.04em;
    color: #ffffff;
  }
  .p_service .sd_mv .txt .sd_mv_ttl p {
    font-weight: 500;
    font-size: 3.2vw;
    line-height: 160%;
    color: #ffffff;
  }
  .p_service_detail,
  .p_interview_detail {
    padding-top: 0;
  }
  .p_service_detail .header,
  .p_interview_detail .header {
    background: transparent;
  }
  .p_service .service_detail {
    margin-top: -16.53333vw;
    position: relative;
    z-index: 2;
    position: relative;
    margin-left: 5.33333vw;
  }
  .p_service .service_detail::after {
    content: "";
    position: absolute;
    top: 16.53333vw;
    left: -5.33333vw;
    width: 100%;
    height: -webkit-calc(100% - 16.53333vw);
    height: -moz-calc(100% - 16.53333vw);
    height: calc(100% - 16.53333vw);
    background-color: #f2efef;
    display: block;
    z-index: -1;
  }
  .p_service .service_detail .row {
    padding-top: 10.66667vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    max-width: 256vw;
    padding-left: 10.66667vw;
  }
  .p_service .service_detail .row::after {
    content: "";
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100vw;
    background: #ffffff;
    -moz-border-radius: 16vw 0vw 0vw 0vw;
    border-radius: 16vw 0vw 0vw 0vw;
    display: block;
    z-index: -1;
  }
  .p_service .service_detail .s_ttl2 {
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 100%;
    letter-spacing: 0.02em;
    line-height: 2.25;
    border-bottom: 1px solid #000;
    margin-bottom: 3.73333vw;
    position: relative;
    padding-left: 7.46667vw;
  }
  .p_service .service_detail .s_ttl2::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 5.33333vw;
    height: 5.33333vw;
    background: url(../img/service/detail/s_ttl2_ic.svg) center/100% 100%
      no-repeat;
    display: block;
  }
  .p_service .service_detail .sd_top .text_cm {
    font-size: 4.26667vw;
  }
  .p_service .service_detail .sd_top .flow {
    margin-top: 10.66667vw;
  }
  .p_service .service_detail .sd_top .flow h3 {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 100%;
    letter-spacing: 0.02em;
    margin-bottom: 5.33333vw;
    position: relative;
    padding-left: 5.86667vw;
    margin-right: -5.33333vw;
  }
  .p_service .service_detail .sd_top .flow h3::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 1.86667vw solid transparent;
    border-right: 1.86667vw solid transparent;
    border-top: 3.46667vw solid #d9d9d9;
  }
  .p_service .service_detail .sd_top .flow .flow_bd {
    padding: 10.66667vw 5.33333vw;
    background: #f8f7f7;
    -moz-border-radius: 6.4vw;
    border-radius: 6.4vw;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it {
    padding-left: 8vw;
    position: relative;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it.st2::before {
    top: -5.33333vw;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it::before {
    content: "";
    position: absolute;
    top: 2.66667vw;
    left: 0;
    width: 0.26667vw;
    height: 100%;
    background: #d9d9d9;
    display: block;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl::before {
    content: "";
    position: absolute;
    top: 2.4vw;
    left: -9.33333vw;
    width: 2.66667vw;
    height: 2.66667vw;
    background: #0270aa;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    display: block;
    z-index: 2;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl + dl {
    margin-top: 5.33333vw;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dt {
    width: 16vw;
    height: 8vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 3.73333vw;
    line-height: 100%;
    text-align: center;
    color: #ffffff;
    background-color: #382e2e;
    -moz-border-radius: 1.06667vw;
    border-radius: 1.06667vw;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dd {
    width: 100%;
    padding-left: 5.33333vw;
    padding-top: 1.33333vw;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dd p {
    font-weight: 400;
    font-size: 3.73333vw;
    line-height: 130%;
    letter-spacing: 0.02em;
  }
  .p_service .service_detail .sd_top .flow .flow_bd .flow_it dl dd .txt_lg {
    font-size: 4.26667vw;
    font-weight: 500;
    margin-bottom: 2.13333vw;
  }
  .p_service .service_detail .sd_mid {
    margin: 10.66667vw 0 13.33333vw;
  }
  .p_service .service_detail .sd_mid dl {
    border: 2px solid #0270aa;
    -moz-border-radius: 8vw;
    border-radius: 8vw;
    padding: 0 4.53333vw 8vw;
    text-align: center;
  }
  .p_service .service_detail .sd_mid dl dt {
    font-weight: 500;
    font-size: 4.8vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.02em;
    color: #ffffff;
    min-width: 51.73333vw;
    min-height: 8.53333vw;
    background: #0270aa;
    -moz-border-radius: 0vw 0vw 8vw 8vw;
    border-radius: 0vw 0vw 8vw 8vw;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 5.33333vw;
    padding-bottom: 0.53333vw;
  }
  .p_service .service_detail .sd_mid dl dd {
    text-align: left;
  }
  .p_service .service_detail .sd_mid dl dd span {
    color: #0270aa;
    font-weight: 500;
  }
  .p_service .service_detail .sd_bot h3 {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    margin-bottom: 9.06667vw;
    position: relative;
    padding-left: 5.86667vw;
    margin-left: 6.4vw;
  }
  .p_service .service_detail .sd_bot h3::after {
    content: "";
    position: absolute;
    top: 3.2vw;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 1.86667vw solid transparent;
    border-right: 1.86667vw solid transparent;
    border-top: 3.46667vw solid #0270aa;
  }
  .p_service .service_detail .sd_bot_main {
    padding: 13.33333vw 5.33333vw 13.33333vw 10.66667vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    margin-left: -10.66667vw;
  }
  .p_service .service_detail .sd_bot_main::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-linear-gradient(
      320.33deg,
      #f8f7f7 41.27%,
      #e2e2e2 63.14%
    );
    background: -moz-
      oldlinear-gradient(320.33deg, #f8f7f7 41.27%, #e2e2e2 63.14%);
    background: linear-gradient(129.67deg, #f8f7f7 41.27%, #e2e2e2 63.14%);
    -moz-border-radius: 16vw 0vw 0vw 0vw;
    border-radius: 16vw 0vw 0vw 0vw;
    display: block;
    z-index: -1;
  }
  .p_service .service_detail .sd_bot_main a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .p_service .service_detail .sd_bot_main a .txt {
    padding: 4.8vw;
    background: #ffffff;
    -moz-border-radius: 4.26667vw;
    border-radius: 4.26667vw;
    margin: 0 -2.66667vw;
    position: relative;
    z-index: 2;
  }
  .p_service .service_detail .sd_bot_main a .txt h4 {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 160%;
    letter-spacing: 0.02em;
    padding-bottom: 1.86667vw;
    margin-bottom: 2.66667vw;
    border-bottom: 1px solid #e0e0e0;
  }
  .p_service .service_detail .sd_bot_main a .txt p {
    font-weight: 400;
    font-size: 3.2vw;
    line-height: 1.46667;
    letter-spacing: 0.04em;
  }
  .p_service .service_detail .sd_bot_main a .txt p small {
    font-size: 3.2vw;
    display: block;
  }
  .p_service .service_detail .sd_bot_main a .txt p em {
    font-style: normal;
    font-weight: 600;
    font-size: 5.33333vw;
    font-family: "Montserrat", sans-serif;
    display: block;
  }
  .p_service .service_detail .sd_bot_main a figure {
    overflow: hidden;
    margin-bottom: -8.53333vw;
  }
  .p_service .service_detail .sd_bot_main a figure img {
    -moz-border-radius: 4.8vw;
    border-radius: 4.8vw;
    overflow: hidden;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_work_place .container {
    overflow: clip;
  }
  .p_work_place .work_place {
    padding-top: 10.66667vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_work_place .work_place::after {
    content: "";
    -moz-border-radius: 16vw 0vw 0vw 0vw;
    border-radius: 16vw 0vw 0vw 0vw;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 422.4vw;
    background: -webkit-linear-gradient(
        251.35deg,
        rgba(2, 112, 170, 0.25) 7.37%,
        rgba(145, 194, 222, 0.25) 23.51%,
        rgba(245, 244, 240, 0.25) 49.58%,
        rgba(255, 255, 255, 0.25) 74.91%
      ),
      #ffffff;
    background: -moz-
        oldlinear-gradient(
          251.35deg,
          rgba(2, 112, 170, 0.25) 7.37%,
          rgba(145, 194, 222, 0.25) 23.51%,
          rgba(245, 244, 240, 0.25) 49.58%,
          rgba(255, 255, 255, 0.25) 74.91%
        ),
      #ffffff;
    background: linear-gradient(
        198.65deg,
        rgba(2, 112, 170, 0.25) 7.37%,
        rgba(145, 194, 222, 0.25) 23.51%,
        rgba(245, 244, 240, 0.25) 49.58%,
        rgba(255, 255, 255, 0.25) 74.91%
      ),
      #ffffff;
    display: block;
    z-index: -1;
  }
  .p_work_place .work_place_main .row {
    max-width: 229.33333vw;
    padding-left: 8.53333vw;
    padding-right: 8.53333vw;
  }
  .p_work_place .work_place .numbers {
    margin-bottom: 16vw;
  }
  .p_work_place .work_place .numbers .t_ttl {
    margin-bottom: 10.66667vw;
  }
  .p_work_place .work_place .numbers ul {
    padding-left: 8.53333vw;
    padding-right: 8.53333vw;
  }
  .p_work_place .work_place .numbers ul li {
    margin-bottom: 3.73333vw;
    background: #ffffff;
    -moz-box-shadow: 0vw 2.66667vw 16vw rgba(5, 45, 67, 0.06);
    box-shadow: 0vw 2.66667vw 16vw rgba(5, 45, 67, 0.06);
    -moz-border-radius: 6.4vw;
    border-radius: 6.4vw;
    padding: 12.8vw 0 16.26667vw;
    text-align: center;
  }
  .p_work_place .work_place .numbers ul li + li {
    margin-top: 10.66667vw;
  }
  .p_work_place .work_place .numbers ul li figure {
    display: inline-block;
    width: 11.2vw;
  }
  .p_work_place .work_place .numbers ul li > span {
    display: block;
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    margin-bottom: 3.2vw;
  }
  .p_work_place .work_place .numbers ul li p {
    font-weight: 500;
    font-size: 8vw;
    line-height: 100%;
    letter-spacing: 0.04em;
    color: #0270aa;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: baseline;
    -moz-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    font-family: "Zen Kaku Gothic New", sans-serif;
  }
  .p_work_place .work_place .numbers ul li p.st2 {
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p_work_place .work_place .numbers ul li p i {
    font-style: normal;
    font-family: "Montserrat", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 19.2vw;
    line-height: 100%;
    color: #0270aa;
  }
  .p_work_place .work_place .numbers ul li p span {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: 6.93333vw;
  }
  .p_work_place .work_place .connections {
    padding-bottom: 10.66667vw;
  }
  .p_work_place .work_place .connections .t_ttl {
    margin-right: -5.86667vw;
    margin-bottom: 2.66667vw;
  }
  .p_work_place .work_place .connections p {
    font-size: 3.46667vw;
    line-height: 180%;
  }
  .p_work_place .work_place .connections figure {
    margin: 5.33333vw auto 0;
  }
  .p_work_place .work_place .welfare {
    padding: 10.66667vw 0 13.33333vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_work_place .work_place .welfare::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 200vw;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 100%;
    background-color: #f8f7f7;
    display: block;
    z-index: -1;
  }
  .p_work_place .work_place .welfare .welfare_bd {
    overflow: hidden;
    background: #ffffff;
    -moz-border-radius: 0vw 8vw 8vw 0vw;
    border-radius: 0vw 8vw 8vw 0vw;
  }
  .p_work_place .work_place .welfare .welfare_bd .fig {
    height: 42.66667vw;
  }
  .p_work_place .work_place .welfare .welfare_bd .fig img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_bd_ctn {
    background-color: #fff;
    padding: 8vw 4vw 10.66667vw;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it + .welfare_it {
    margin-top: 4.26667vw;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it p {
    font-size: 3.73333vw;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it h3 {
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 100%;
    letter-spacing: 0.02em;
    position: relative;
    padding: 2.66667vw 0 2.66667vw 7.46667vw;
    margin-bottom: 1.6vw;
    border-bottom: 1px solid #000;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it h3.st2::before {
    background-image: url(../img/work_place/welfare_ic2.svg);
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it h3::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 5.33333vw;
    height: 5.33333vw;
    background-image: url(../img/work_place/welfare_ic1.svg);
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
    display: block;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it .welfare_it_ex {
    margin-top: 8vw;
  }
  .p_work_place .work_place .welfare .welfare_bd .welfare_it .welfare_it_ex dl {
    padding: 4.8vw;
    background: #f6f6f6;
    padding-top: 2.13333vw;
    -moz-border-radius: 3.2vw;
    border-radius: 3.2vw;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    + dl {
    margin-top: 5.33333vw;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dt {
    font-weight: 500;
    font-size: 3.73333vw;
    line-height: 100%;
    letter-spacing: 0.02em;
    padding-bottom: 2.66667vw;
    padding-top: 2.66667vw;
    margin-bottom: 1.6vw;
    border-bottom: 1px solid #fff;
    position: relative;
    padding-left: 6.93333vw;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 5.07937vw;
    height: 3.80952vw;
    background-image: url(../img/work_place/welfare_ic3.svg);
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
    display: block;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dt.st2 {
    padding-left: 7.93333vw;
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dt.st2::before {
    width: 7.73333vw;
    height: 4vw;
    background-image: url(../img/work_place/welfare_ic4.svg);
  }
  .p_work_place
    .work_place
    .welfare
    .welfare_bd
    .welfare_it
    .welfare_it_ex
    dl
    dd {
    font-weight: 400;
    font-size: 3.73333vw;
    line-height: 180%;
  }
  .p_work_place .work_place .training {
    padding: 10.66667vw 0 18.66667vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
    background-color: #fff;
  }
  .p_work_place .work_place .training::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -8.53333vw;
    width: 100vw;
    height: 145.6vw;
    background: -webkit-linear-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
    z-index: -1;
  }
  .p_work_place .work_place .training .t_txt {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 140%;
    letter-spacing: 0.02em;
    color: #382e2e;
    margin-bottom: 8vw;
  }
  .p_work_place .work_place .training .t_list dl + dl {
    margin-top: 8vw;
  }
  .p_work_place .work_place .training .t_list dl dt {
    background: #382e2e;
    -moz-border-radius: 2.13333vw;
    border-radius: 2.13333vw;
    font-weight: 500;
    font-size: 4.8vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.02em;
    color: #ffffff;
    padding: 6.93333vw;
    margin-bottom: 3.73333vw;
  }
  .p_work_place .work_place .training .t_list dl dd {
    font-size: 3.73333vw;
    line-height: 180%;
  }
  .p_work_place .work_place .training .t_list dl dd span {
    font-weight: 500;
    display: block;
  }
  .p_news {
    background-color: #f2efef;
  }
  .p_news .news {
    background: #ffffff;
    -moz-border-radius: 16vw 0vw 0vw 0vw;
    border-radius: 16vw 0vw 0vw 0vw;
    padding: 16.53333vw 0 18.66667vw;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    transform: translateZ(0);
  }
  .p_news .news::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 64vw;
    background: -webkit-linear-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(242, 239, 239, 0)),
      color-stop(32%, rgba(242, 239, 239, 0.2)),
      to(#f2efef)
    );
    background: -webkit-linear-gradient(
      top,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    background: -moz-
      oldlinear-gradient(
        top,
        rgba(242, 239, 239, 0) 0%,
        rgba(242, 239, 239, 0.2) 32%,
        #f2efef 100%
      );
    background: linear-gradient(
      180deg,
      rgba(242, 239, 239, 0) 0%,
      rgba(242, 239, 239, 0.2) 32%,
      #f2efef 100%
    );
    display: block;
    z-index: -1;
  }
  .p_news .news .row {
    max-width: 256vw;
  }
  .p_news .news .news_list {
    width: 245.33333vw;
    max-width: 100%;
    margin: 0 auto;
  }
  .p_news .news_intro {
    margin-bottom: 13.33333vw;
    border-left: 1.33333vw solid #382e2e;
    padding-left: 3.46667vw;
  }
  .p_news .news_intro p {
    font-size: 3.46667vw;
  }
  .p_news .news_intro h3 {
    font-weight: 500;
    font-size: 4.8vw;
    line-height: 1.53846;
    letter-spacing: 0.02em;
    color: #382e2e;
    position: relative;
    margin-bottom: 1.86667vw;
  }
  .p_news .news_intro h3::before {
    content: "";
    position: absolute;
    top: 0;
    left: -4.8vw;
    width: 1.33333vw;
    height: 100%;
    background: #0270aa;
    display: block;
  }
  .p_news .news_detail {
    padding-bottom: 25.06667vw;
  }
  .p_news .news_detail .meta {
    padding-bottom: 4.8vw;
    border-bottom: 1px solid #d9d9d9;
    margin-bottom: 4.8vw;
  }
  .p_news .news_detail .meta time {
    border: 1px solid #000;
    width: 32.8vw;
    height: 6.13333vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 4vw;
    line-height: 100%;
    text-align: center;
    letter-spacing: 0.04em;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_news .news_detail .meta h1 {
    font-weight: 500;
    font-size: 4vw;
    line-height: 150%;
    margin-top: 4.8vw;
  }
  .p_news .news_detail .news_detail_ctn {
    padding-bottom: 16vw;
    border-bottom: 1px solid #d9d9d9;
  }
  .p_news .news_detail .news_detail_ctn p {
    font-size: 4.26667vw;
    line-height: 180%;
  }
  .p_news .news_detail .news_detail_ctn p + p {
    margin-top: 8vw;
  }
  .p_news .news_detail .postNav {
    padding-top: 9.6vw;
  }
  .p_news .news_detail .postNav ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .p_news .news_detail .postNav ul li a {
    font-weight: 500;
    font-size: 4.26667vw;
    line-height: 100%;
    letter-spacing: 0.04em;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(2) a:hover {
    opacity: 1;
    text-decoration: underline;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(1) a {
    position: relative;
    color: #7f7f7f;
    padding-left: 7.2vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    text-indent: -9999px;
    display: block;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(1) a:hover {
    opacity: 1;
    color: #b5b5b5;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(1) a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1.86667vw;
    height: 3.2vw;
    background: url(../img/page_prev.svg) center/100% 100% no-repeat;
    display: block;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(3) a {
    position: relative;
    color: #7f7f7f;
    padding-right: 7.2vw;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    text-indent: -9999px;
    display: block;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(3) a:hover {
    opacity: 1;
    color: #b5b5b5;
  }
  .p_news .news_detail .postNav ul li:nth-of-type(3) a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1.86667vw;
    height: 3.2vw;
    background: url(../img/page_next.svg) center/100% 100% no-repeat;
    display: block;
  }
  .wp-pagenavi {
    margin-top: 13.33333vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .wp-pagenavi .pages {
    display: none;
  }
  .wp-pagenavi .page {
    margin: 0 1.86667vw;
    width: 9.6vw;
    height: 9.6vw;
    font-weight: 600;
    font-size: 3.73333vw;
    color: #382e2e;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid transparent;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .wp-pagenavi .page:hover {
    opacity: 1;
    background: #f2efef;
    border-color: #d9d9d9;
  }
  .wp-pagenavi .dots {
    background-color: transparent;
  }
  .wp-pagenavi .dots:hover {
    opacity: 1;
    background: #f2efef;
    border-color: #d9d9d9;
  }
  .wp-pagenavi .current {
    width: 9.6vw;
    height: 9.6vw;
    margin: 0 1.86667vw;
    background-color: #382e2e;
    color: #fff;
    font-weight: 600;
    -moz-border-radius: 2666.4vw;
    border-radius: 2666.4vw;
    font-size: 3.73333vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .wp-pagenavi .nextpostslink {
    width: 9.6vw;
    height: 9.6vw;
    text-indent: -2666.4vw;
    display: block;
    -webkit-transition: background-color 0.3s ease-out;
    -moz-transition: background-color 0.3s ease-out;
    transition: background-color 0.3s ease-out;
    background-image: url("../img/page_next.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 1.86667vw 3.2vw;
    background-size: 1.86667vw 3.2vw;
  }
  .wp-pagenavi .previouspostslink {
    width: 9.6vw;
    height: 9.6vw;
    text-indent: -2666.4vw;
    display: block;
    -webkit-transition: background-color 0.3s ease-out;
    -moz-transition: background-color 0.3s ease-out;
    transition: background-color 0.3s ease-out;
    background-image: url("../img/page_next.svg");
    background-repeat: no-repeat;
    background-position: center;
    -moz-background-size: 1.86667vw 3.2vw;
    background-size: 1.86667vw 3.2vw;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}

.codedropz-upload-inner h3,
.codedropz-upload-inner span,
.dnd-upload-counter {
  display: none;
}
#btn_submit {
  display: none;
}
.p_recruit .recruit .entry_main .form.confirmScreen .formMain dt span,
.p_recruit .recruit .entry_main .form.confirmScreen .formMain .f_privacy,
.p_recruit .recruit .entry_main .form.confirmScreen .formMain #btn_send {
  display: none;
}
.p_recruit .recruit .entry_main .form.confirmScreen #btn_submit {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  margin-top: 20px;
}
.p_recruit
  .recruit
  .entry_main
  .form.confirmScreen
  .formMain
  dl
  dd
  .select
  label,
.p_recruit .recruit .entry_main .form.confirmScreen .formMain dl dd input,
.p_recruit .recruit .entry_main .form.confirmScreen .formMain dl dd textarea {
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 0;
  background: none;
  height: auto;
}
.p_recruit
  .recruit
  .entry_main
  .form.confirmScreen
  .formMain
  .dnd-upload-status
  .dnd-upload-details
  .remove-file,
.p_recruit
  .recruit
  .entry_main
  .form.confirmScreen
  .formMain
  .codedropz-upload-handler,
.p_recruit .recruit .entry_main .form.confirmScreen .formMain .checkboxWr {
  display: none;
}
.p_recruit .recruit .entry_main .form.confirmScreen .formMain dl {
  padding: 32px 0;
  border-bottom: 1px solid #e0e0e0;
}
.p_recruit .recruit .entry_main .form.confirmScreen .formMain dl + dl {
  margin-top: 0;
}
.p_recruit .recruit .entry_main .form.confirmScreen .formMain,
.p_recruit .recruit .entry_main .form.confirmScreen .formMain select {
  color: #000 !important;
}
.p_recruit .recruit .requirements .tabCtn h3 br {
  display: none;
}
/* .form dl dd .select label select  {
  color: #000;
} */
.form dl dd .select label select {
  color: #bebebe;
}
.form dl dd .select label select.changeColor {
  color: #000;
}
.wpcf7-not-valid {
  border: 1px solid #f44848 !important;
}
@media screen and (min-width: 768px) {
  .wpcf7-not-valid-tip {
    font-size: 14px !important;
    line-height: 140% !important;
    letter-spacing: 0.02em !important;
    color: #f44848 !important;
    margin-top: 8px !important;
    padding-left: 26px !important;
  }
}
@media screen and (max-width: 768px) {
  .wpcf7-not-valid-tip {
    font-size: 3.73333vw !important;
    line-height: 140% !important;
    letter-spacing: 0.02em !important;
    color: #f44848 !important;
    margin-top: 2.13333vw !important;
  }
}

@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p_about .future .vision {
    padding-left: 60px;
  }
  .p_about .future .vision::after {
    right: 60px;
  }
}

@media screen and (min-width: 769px) and (max-width: 1347px) {
  .p_service .service .occupation_main::after {
    width: 97%;
  }
  .p_service .service .occupation_main ul li {
    padding-left: 3%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1179px) {
  .p_service .service .occupation_main ul li {
    width: 100%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1297px) {
  .p_service .service .occupation_main .occupation__title {
    padding-left: 50px;
    padding-right: 50px;
  }
  .p_service .service .occupation .t_ttl {
    padding-left: 0;
  }
  .p_service .service .occupation_main ul li .txt {
    padding: 15px 50px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1079px) {
  .p_service .service .occupation .t_ttl {
    padding-left: 0;
  }
  .p_service .service .occupation_main::after {
    width: 100%;
  }
  .p_service .service .occupation_main ul li .txt .txt_inner .btnWr {
    bottom: 0;
  }
}
.p_work_place .work_place .w_aside.hidden {
  opacity: 0;
}
@-webkit-keyframes LightText {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-moz-keyframes LightText {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes LightText {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes LightText2 {
  0% {
    background-position: -100% center;
  }
  100% {
    background-position: 400% center;
  }
}

@-moz-keyframes LightText2 {
  0% {
    background-position: -100% center;
  }
  100% {
    background-position: 400% center;
  }
}

@keyframes LightText2 {
  0% {
    background-position: -100% center;
  }
  100% {
    background-position: 400% center;
  }
}
