/*
top
*/
.tp-wrapper {
  margin-top: 14rem;
  margin-top: 7.292vw;
  padding-bottom: 22.5rem;
  padding-bottom: 11.719vw; }

.tp-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 18rem;
  padding-left: 9.375vw; }
  .tp-inner__header {
    width: 27%; }
  .tp-inner__body {
    width: 73%; }
  .tp-inner--col1 {
    display: block; }
  .tp-inner__title {
    font-size: 4.3rem;;
    font-weight: 600;
    color: #073290;
    line-height: 7.3rem;
    margin-bottom: 0.2vw; }
  .tp-inner__text {
    font-size: 1.9rem;
    line-height: 4rem;
    margin-bottom: 3vw;
    color: #073290; }
  .tp-inner__title--sub {
    border-top: 1px solid #073290;
    border-bottom: 1px solid #073290;
    padding: 2.1vw 0;
    font-size: 3.2rem;
    font-weight: 600;
    color: #073290;
    margin-bottom: 2vw; }

.tp-logolist {
  width: 103rem;
  width: 55.646vw;
  /*width: 53.646vw;*/
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .tp-logolist__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1vw;
     }
    /*.tp-logolist__content > li {
      margin-left: 1.8rem;
      margin-left: 0.938vw;
      margin-top: 2.6rem;
      margin-top: 1.354vw; }*/
  .tp-logolist__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 21.36rem;
    width: 17.8vw;
    height: 7.2rem;
    height: 6vw;
    padding-top: 1rem;
    padding-top: 0.521vw;
    padding-bottom: 1rem;
    padding-bottom: 0.521vw;
    background-color: #fff;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .tp-logolist__item > img {
      max-height: 100%; }

.tp-more {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  height: 3.2rem;
  height: 1.667vw; }
  .tp-more__text {
    font-size: 2.2rem;
    margin-right: 15px;
    font-weight: 500; }
  .tp-more__text-thin {
    font-size: 2.2rem;
    margin-right: 15px;
    font-weight: 300; }
  .tp-more__arrow {
    width: 9.7rem;
    width: 5.052vw;
    height: 1.8rem;
    height: 0.938vw;
    display: inline-block;
    background-image: url("./assets/images/bg-more.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left bottom; }
  .mb-6vw {
    margin-bottom: 6vw; }
  .mb-4vw {
    margin-bottom: 4vw; }
  .mb-2vw {
    margin-bottom: 2vw; }
  .mb-1vw {
    margin-bottom: 1vw; }

/* hero */
.tp-hero {
  position: relative;
  height: 130rem;
  height: 67.708vw; }
  .tp-hero__bg {
    height: 53.5rem;
    height: 27.865vw;
    background-image: url("./assets/images/bg-hero.png");
    background-position: center;
    background-size: cover; }
  .tp-hero__main {
    margin-top: 3vw;
    margin-left: 17rem;
    margin-left: 20.854vw; }
  .tp-hero__catch {
    color: #073290;
    font-size: 6.5rem;
    font-weight: bold;
    letter-spacing: -0.02em;
    line-height: 1.3; }
  .tp-hero__description {
    margin-top: 3.4rem;
    margin-bottom: 6.5rem;
    font-size: 1.9rem;
    line-height: 2.4;
    color: #444;
    letter-spacing: -0.03em; }
  .tp-hero__logo {
    width: 13.6rem;
    width: 7.083vw;
    height: 13rem;
    height: 6.771vw;
    margin-top: 7rem;
    margin-top: 3.646vw; }
  .tp-hero__letter {
    position: absolute;
    top: 0;
    right: 0;
    width: 112.7rem;
    width: 58.698vw;
    height: 126.5rem;
    height: 65.885vw;
    -webkit-filter: drop-shadow(30px 24px 3px rgba(0, 0, 0, 0.16)); }
  .tp-hero__letter-image {
    width: 100%;
    height: auto; }
  .tp-hero__recruit {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 34.5rem;
    width: 17.969vw;
    margin-bottom: 16.5rem;
    margin-bottom: 8.594vw;
    background-color: #FFF;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
    -webkit-box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
            box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
    -webkit-box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16);
            box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16);
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .tp-hero__recruit-link {
    display: block;
    padding-top: 3.6rem;
    padding-top: 1.875vw;
    padding-left: 4rem;
    padding-left: 2.083vw;
    padding-bottom: 3.5rem;
    padding-bottom: 1.823vw;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px; }
  .tp-hero__recruit-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    color: #0C3969;
    font-size: 4.2rem;
    font-weight: bold;
    letter-spacing: -0.02em; }
    .tp-hero__recruit-title::after {
      content: '';
      display: block;
      width: 2.3rem;
      width: 1.198vw;
      height: 1.7rem;
      height: 0.885vw;
      margin-left: 1.3rem;
      margin-left: 0.677vw;
      margin-top: 0.6rem;
      margin-top: 0.312vw;
      background-image: url("./assets/images/logo-wantedly_s.svg");
      background-repeat: no-repeat;
      background-size: contain; }
  .tp-hero__recruit-text {
    margin-top: 2rem;
    margin-top: 1.042vw;
    color: #0C3969;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 0.04em; }
  .c-textlink {
    font-size: 1.7rem;
    font-weight: 600;
    color: #073290 !important;
  }
  .c-textlink::before {
    content: "";
    width: 1vw;
    height: 1px;
    margin-right: 10px;
    background: #073290;
    display: inline-block;
    vertical-align: middle;
  }

.tp-info {
  margin-top: 10.3rem;
  margin-top: 5.656vw; }
  .tp-info__body {
    margin-top: 5.5rem;
    margin-top: 2.865vw;
    margin-right: 18rem;
    margin-right: 9.375vw; }
  .tp-info__list {
    width: 86rem;
    width: 44.792vw;
    margin-left: auto;
    margin-right: auto; }
    .tp-info__list > li:not(:first-child) {
      margin-top: 4rem;
      margin-top: 2.083vw; }
  .tp-info__list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .tp-info__list-date {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 13.8rem;
    width: 7.188vw;
    padding-top: 1.2rem;
    padding-top: 0.625vw;
    border-top: solid 1px #437F90;
    font-size: 2.2rem;
    font-weight: bold;
    letter-spacing: -0.02em; }
    .tp-info__list-date::after {
      content: '-';
      display: inline-block;
      margin-left: 0.6rem;
      margin-left: 0.312vw; }
  .tp-info__list-text {
    min-height: 7.1rem;
    min-height: 3.698vw;
    padding-top: 0.6rem;
    padding-top: 0.312vw;
    padding-left: 2rem;
    padding-left: 1.042vw;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: -0.02em; }
  .tp-info__link {
    height: 3.2rem;
    height: 1.667vw;
    margin-top: 3.9rem;
    margin-top: 2.031vw; }
  .tp-info__link-text {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    font-size: 2.1rem;
    letter-spacing: 0.05em; }

.tp-about {
  margin-top: 25rem;
  margin-top: 13.021vw; }
  .tp-about__body {
    width: 75%;
    margin-left: auto;
    margin-right: 0;
    margin-top: 3.8rem;
    margin-top: 1.979vw; }
  .tp-about__key-image {
    background-image: url(./assets/images/mv-top.png);
    background-position: center;
    background-size: cover; }
  .tp-about__key-image:after {
    content: '';
    padding-top: 37.3%;
    display: block; }
  .tp-about__content {
    width: 103rem;
    width: 53.646vw;
    margin-top: 7.2rem;
    margin-top: 3.75vw; }
  .tp-about__catch {
    color: #073290;
    font-size: 8rem;
    font-weight: bold;
    letter-spacing: -0.03em;
    line-height: 1.07; }
  .tp-about__catch-sub {
    margin-top: 5rem;
    margin-top: 2.604vw;
    color: #073290;
    font-size: 3.6rem;
    font-weight: bold;
    letter-spacing: 0.05em; }
  .tp-about__text {
    margin-top: 5.4rem;
    margin-top: 2.812vw;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 2;
    letter-spacing: 0.05em; }
  .tp-about__link {
    height: 3.2rem;
    height: 1.667vw;
    margin-top: 3.9rem;
    margin-top: 2.031vw; }

.tp-pickup {
  margin-top: 24.3rem;
  margin-top: 12.656vw; }
  .tp-pickup__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .tp-pickup__list > li:not(:first-child) {
      margin-left: 7rem;
      margin-left: 3.646vw; }
  .tp-pickup__item {
    display: table;
    border-top-left-radius: 47px;
    border-bottom-left-radius: 47px;
    border-top-right-radius: 47px;
    border-bottom-right-radius: 47px;
    background-color: #FFF;
    -webkit-box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
            box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
    -webkit-box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16);
            box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16); }
  .tp-pickup__content {
    vertical-align: top;
    width: 46rem;
    width: 23.958vw; }
  .tp-pickup__item-hero-block {
    width: 100%; }
  .tp-pickup__item-hero {
    width: 100%;
    height: 26rem;
    height: 13.542vw;
    border-top-left-radius: 47px;
    border-top-right-radius: 47px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; }
  .tp-pickup__item-title {
    color: #000;
    font-size: 3.2rem;
    font-weight: bold;
    letter-spacing: 0.05em; }
  .tp-pickup__item-bottom {
    padding-top: 3rem;
    padding-top: 1.562vw;
    padding-bottom: 2rem;
    padding-bottom: 1.042vw;
    padding-left: 3rem;
    padding-left: 1.562vw;
    padding-right: 3rem;
    padding-right: 1.562vw; }
  .tp-pickup__item-text {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.75; }
  .tp-pickup__link {
    margin-top: 3rem;
    margin-top: 1.562vw;
    vertical-align: bottom;
    text-align: right; }

.product-display {
  display: inline; }

.tp-product {
  margin-top: 24.3rem;
  margin-top: 12.656vw; }
  .tp-product__list > li:not(:first-child) {
    margin-top: 5rem;
    margin-top: 2.604vw; }
  .tp-product__item {
    display: table;
    width: 100%;
    padding-top: 5rem;
    padding-top: 2.604vw;
    padding-bottom: 5rem;
    padding-bottom: 2.604vw;
    padding-left: 6.5rem;
    padding-left: 3.385vw;
    border-top-left-radius: 47px;
    border-bottom-left-radius: 47px;
    background-color: #FFF;
    -webkit-box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
            box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
    -webkit-box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16);
            box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16); }
  .tp-product__logo {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 19rem;
    width: 9.896vw; }
  .tp-product__logo-gtax {
    width: 12.4rem;
    width: 6.458vw;
    height: auto; }
  .tp-product__logo-guardian {
    width: 19rem;
    width: 9.896vw;
    height: auto; }
  .tp-product__content {
    display: table-cell;
    vertical-align: top;
    width: 56.2rem;
    width: 29.271vw;
    padding-left: 3.5rem;
    padding-left: 1.823vw; }
  .tp-product__item-title {
    color: #000;
    font-size: 3.2rem;
    font-weight: bold;
    letter-spacing: 0.05em; }
  .tp-product__item-text {
    margin-top: 3.6rem;
    margin-top: 1.875vw;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.75; }
  .tp-product__link {
    display: table-cell;
    vertical-align: bottom;
    padding-left: 7.8rem;
    padding-left: 4.062vw;
    text-align: right; }

.product-display {
  display: inline; }
  .tp-service .tp-inner__body {
    width: 60%;}
.tp-service__list{
  display: flex;
  flex-wrap: wrap;
  gap: 3.8vw 4vw;}
  .tp-service__item{
    max-width: 25vw;
    width: 100%;}
  .tp-service__item--other{
    max-width: 55vw;
    width: 100%;}
.tp-service__link{
  display: block;}
.tp-service__title--sub{
  font-size: 1.65rem;
  color: #073290;
  display: block;
  margin-bottom: 1vw; }
  .tp-service__title--main{
    font-size: 2.7rem;
    color: #073290;
    margin-bottom: 1.2vw;
    line-height: 3.2rem;
    font-weight: 600; }
.tp-service__thumb{
  width: 100%;
  margin-bottom: 1.1vw;}
.tp-service__badge--01{
  background: #073290;
    color: #fff;
    padding: 6px 9px;
    display: inline-block;
    margin-right: 3px;
    font-size: 1.55rem;}
.tp-service__badge--02{
  background: #fff;
    color: #073290;
    border: 1px solid #073290;
    padding: 6px 9px;
    display: inline-block;
    margin-right: 3px;
    font-size: 1.55rem;}
.tp-service__text {
  font-size: 1.7rem;
  padding: 0.5vw 0 1vw;
  line-height: 3.6rem;}
.tp-admin__list {
    display: flex;
    flex-wrap: wrap;
    gap: 3vw 2.5vw;}
.tp-admin__item {
    background: #fff;
    color: #073290;
    font-size: 2rem;
    font-weight: 600;
    padding: 2vw 0;
    text-align: center;
    width: 30%;}
.tp-admin__thumb {
    display: block;
    text-align: center;
    margin: 0px auto 1vw;
    width: 3.6vw;}
.tp-partner {
  margin-top: 20rem;
  margin-top: 10.417vw; }
  .tp-partner .tp-inner__body {
    width: 75%;}
.tp-media {
  margin-top: 17.3rem;
  margin-top: 9.323vw;  }
.tp-media .tp-inner__body {
  width: 59%;}
.tp-recruit {
  margin-top: 18.3rem;
  margin-top: 9.531vw; }
  .tp-recruit__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 103rem;
    width: 53.646vw; }
  .tp-recruit__title {
    color: #0C3969;
    font-size: 3.5rem;
    font-weight: bold;
    letter-spacing: 0.04em; }
  .tp-recruit__text {
    margin-top: 3.9rem;
    margin-top: 2.031vw;
    font-size: 2.2rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 2; }
  .tp-recruit__action {
    width: 37.7rem;
    width: 19.635vw;
    margin-top: 4.3rem;
    margin-top: 2.24vw;
    background-color: #FFF;
    border-radius: 15px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
            box-shadow: 2rem 5rem 4rem rgba(0, 0, 0, 0.16);
    -webkit-box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16);
            box-shadow: 1.042vw 2.604vw 2.083vw rgba(0, 0, 0, 0.16); }
  .tp-recruit__action-link {
    display: block;
    padding-top: 3.9rem;
    padding-top: 2.031vw;
    padding-right: 3.5rem;
    padding-right: 1.823vw;
    padding-bottom: 3.4rem;
    padding-bottom: 1.771vw;
    padding-left: 2.8rem;
    padding-left: 1.458vw; }
  .tp-recruit__action-image {
    height: 4.4rem;
    height: 2.292vw; }
  .tp-recruit__action-text {
    margin-top: 2.7rem;
    margin-top: 1.406vw;
    color: #0C3969;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 0.04em; }
  .tp-recruit__image {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 30rem;
    width: 15.625vw; }
       .tab-content {
          display: none; }
        .tab__body .tab__inner {
          max-width: 80%;
          width: 100%; }
        .tab__body .tab__inner .tab__button {
          display: table;
          width: 100%; }
        .tab__body .tab__inner .tab__button .tab__item {
          display: table-cell;
          width: 33.3333333%;
          color: #333;
          padding: 21px 0;
          font-size: 1.8rem;
          font-weight: 700;
          border: none;
          transition: all .4s ease;
          -webkit-transition: all .4s ease;
          vertical-align: top;
          background: none;
          border-bottom: 1px solid #073290; }
        .tab__body .tab__inner .tab__button .tab__item:last-child {
          border-right: none; }
        .tab__body .tab__inner .tab__button .tab__item.is-active,
        .tab__body .tab__inner .tab__button .tab__item:hover {
          background: #073290;
          color: #fff; }
        .tab__body .tab__inner .tab__button .tab__item:hover.is-active {
          pointer-events: none; }
        .tab__body .tab__inner ul .tab__content {
          padding: 40px 0;
          line-height: 2rem; }
        .tab__body .tab__inner ul .tab__content dl {
          display: table; }
        .tab__body .tab__inner ul .tab__content dl dt {
          display: table-cell;
          font-size: 2.1rem;
          color: #333;
          font-weight: 700;
          position: relative; }
        .tab__body .tab__inner ul .tab__content dl dt:after {
          content: "-";
          display: inline;
          padding: 0px 8px; }
        .tab__body .tab__inner ul .tab__content dl dd:last-child {
          display: table-cell;
          vertical-align: top;
          padding-bottom: 42px;
          font-weight: 500;
          font-size: 1.9rem;
          line-height: 3rem;
          color: #333;
          transition: all .4s ease;
          -webkit-transition: all .4s ease; }
        .tab__body .tab__inner ul .tab__content dl dd:nth-child(2) {
          white-space: nowrap;
          color: #073290;
          border: 1px solid #073290;
          padding: 3px;
          font-size: 1.5rem;
          margin: 0 20px;
          min-width: 78px;
          text-align: center; }
        .tab__body .tab__inner ul .tab__content a {
          display: block; }
        .tab__body .tab__inner ul .tab__content a:hover {
          opacity: .5; }
        .link-list {
          display: flex;
          flex-wrap: wrap;
          gap: 4% 6%;
          /*max-width: 80%;*/}
        .link-list .link-list__item {
          width: 29.33333%;}
        .link-list .link-list__item img {
          margin-bottom: 8%;}
        .link-list .link-list__item .link-list__title {
          font-size: 1.6rem;
          color: #073290;
          font-weight: 600;}
          .link-list .link-list__item .link-list__title::after {
            content: "";
            background-image: url(./assets/images/icon_link.svg);
            background-size: contain;
            background-repeat: no-repeat;
            display: inline-block;
            width: 0.6vw;
            height: 0.55vw;
            margin: 0 0.6vw;}
        .tp-contact {
          margin-top: 11vw; }
        .tp-contact .contact__wrap {
         background: url(./assets/images/bg-contact.svg) #073290 no-repeat;
         background-size: contain;
         background-position: center;
          color: #fff;
          height: 27vw;
          width: 100%;
          display: flex;
          justify-content: center;
          flex-wrap: wrap;
          align-items: center; }
        .tp-contact .bg-link {
           transition: all .2s ease;
          -webkit-transition: all .2s ease; }
        .tp-contact .bg-link:hover {
          opacity: .8; }
        .contact__title {
          font-family: 'Manrope', sans-serif;
          letter-spacing: .2rem;
          font-weight: 700;
          font-size: 6.9rem;
          text-align: center;
          margin-bottom: 13%;
        }
        .contact__button {
          text-align: center;
          display: inline-block;
          margin: 0 auto;
          width: 100%;
          font-size: 1.6rem;
          color: #fff;
        }
        .contact__button img {
          margin-left: 0.4vw;
          vertical-align: baseline;
          width: 0.7vw;
        }
  @media screen and (max-width: 768px) {
    .tp-wrapper {
      padding-bottom: 11.4rem;
      padding-bottom: 30.4vw;
      margin-top: 14rem;
    margin-top: 37.292vw; }
    .tp-wrapper--other {
    margin-top: 7rem;
    margin-top: 17.292vw;}
    .tp-inner {
      display: block;
      padding-left: 3rem;
      padding-left: 8vw;
      padding-right: 3rem;
      padding-right: 8vw; }
      .tp-inner__header {
        width: 31.5rem;
        width: 84vw; }
      .tp-inner__body {
        width: 100%;
        margin-top: 5rem;
        margin-top: 13.333vw; }
      .tp-inner__body {
        width: 100%;
         margin-top: 1.5rem;
         margin-top: 5vw;}
        .tp-service .tp-inner__body {
          width: 100%;}
    .tp-inner--wide {
      padding-right: 0; }
    .tp-logolist {
      width: 100%; }
      .tp-logolist__content {
        margin-top: -1.2rem;
        margin-top: -3.2vw; }
        .tp-logolist__content > li {
          margin-top: 1.2rem;
          margin-top: 3.2vw;
          margin-left: 0.9rem;
          margin-left: 2.4vw;
          max-width: 39vw;}
          .tp-logolist__item {
            width: 100%;
            height: auto;
            padding-top: 0;
            padding-bottom: 0; }
      .tp-more__arrow {
        width: 8rem;
        width: 21.333vw;
        height: 2.9rem;
        height: 7.733vw; }
    .tp-hero {
      height: 61rem;
      height: 162.667vw; }
      .tp-hero__bg {
        height: 24.7rem;
        height: 65.867vw;
        background-image: url("./assets/images/bg-hero_sp.png"); }
      .tp-hero__main {
        margin-top: 1.2rem;
        margin-top: 3.2vw;
        margin-left: 3rem;
        margin-left: 8vw; }
      .tp-hero__catch {
        font-size: 2.8rem;
        line-height: 1.5;
        margin-top: 4rem; }
      .tp-hero__description {
        margin-top: 2.1rem;
        margin-right: 17rem;
        font-size: 1.4rem;
        line-height: 1.6;
        margin-bottom: 2.5rem; }
      .tp-hero__description br {
        display: none;}
      .tp-hero__logo {
        width: 5.3rem;
        width: 14.133vw;
        height: 5.1rem;
        height: 13.6vw;
        margin-top: 3rem;
        margin-top: 8vw; }
      .tp-hero__letter {
        top: 14.6rem;
        top: 38.933vw;
        width: 17.1rem;
        width: 45.6vw;
        height: 44.5rem;
        height: 118.667vw;
        -webkit-filter: drop-shadow(25px 22px 3px rgba(0, 0, 0, 0.16)); }
      .tp-hero__recruit {
        position: relative;
        left: 2rem;
        left: 5.333vw;
        width: 13.9rem;
        width: 37.067vw;
        margin-top: 8.5rem;
        margin-top: 22.667vw;
        border-top-right-radius: 15px;
        border-bottom-right-radius: 15px;
        -webkit-box-shadow: 1rem 2rem 3rem rgba(0, 0, 0, 0.16);
                box-shadow: 1rem 2rem 3rem rgba(0, 0, 0, 0.16);
        -webkit-box-shadow: 2.667vw 5.333vw 8vw rgba(0, 0, 0, 0.16);
                box-shadow: 2.667vw 5.333vw 8vw rgba(0, 0, 0, 0.16); }
      .tp-hero__recruit-link {
        padding: 2rem 2rem;
        padding: 5.333vw 5.333vw;
        border-top-right-radius: 15px;
        border-bottom-right-radius: 15px; }
      .tp-hero__recruit-title {
        font-size: 2.3rem;
        font-weight: bold; }
        .tp-hero__recruit-title::after {
          width: 1.2rem;
          width: 3.2vw;
          height: 0.8rem;
          height: 2.133vw;
          margin-left: 0.9rem;
          margin-left: 2.4vw;
          margin-top: 0.4rem;
          margin-top: 1.067vw; }
      .tp-hero__recruit-text {
        margin-top: 1.4rem;
        margin-top: 3.733vw;
        font-size: .8rem;
        line-height: 1.5; }
    /*.tp-info {
      margin-top: 13.5rem;
      margin-top: 36vw; }*/
    .tp-info {
      margin-top: 0; }
      .tp-info__body {
        margin-top: 3.5rem;
        margin-top: 9.333vw;
        margin-right: 0; }
      .tp-info__list {
        width: 100%; }
        .tp-info__list > li:not(:first-child) {
          margin-top: 2.4rem;
          margin-top: 6.4vw; }
      .tp-info__list-date {
        width: 5.7rem;
        width: 15.2vw;
        padding-top: 0.5rem;
        padding-top: 1.333vw;
        font-size: 1rem; }
      .tp-info__list-text {
        padding-top: 0.5rem;
        padding-top: 1.333vw;
        padding-left: 0.9rem;
        padding-left: 2.4vw;
        font-size: 1.2rem;
        line-height: 1.6; }
      .tp-info__link {
        margin-top: 3.9rem;
        margin-top: 10.4vw; }
    .tp-about {
      margin-top: 14rem;
      margin-top: 37.333vw; }
      /*.tp-about__body {
        width: 100%;
        margin-top: 7.5rem;
        margin-top: 20vw; }*/
      .tp-about__body {
        width: 100%;
        margin-top: 0.5rem;
        margin-top: 5vw; }
      .tp-about__key-image {
        background-image: url(./assets/images/mv-top_sp.jpg); }
      .tp-about__content {
        width: auto;
        margin-top: 4.2rem;
        margin-top: 11.2vw;
        padding-right: 3rem;
        padding-right: 8vw; }
      .tp-about__catch {
        font-size: 4rem;
        line-height: 1.12; }
      .tp-about__catch-sub {
        margin-top: 2.3rem;
        margin-top: 6.133vw;
        font-size: 1.8rem;
        line-height: 1.6; }
      .tp-about__text {
        margin-top: 2rem;
        margin-top: 5.333vw;
        font-size: 1.6rem;
        font-weight: normal;
        line-height: 1.75; }
      .tp-about__link {
        margin-top: 3.9rem;
        margin-top: 10.4vw; }
    .tp-pickup {
      margin-top: 13.5rem;
      margin-top: 36vw; }
      .tp-pickup__list {
        margin-left: -1.2rem;
        margin-left: -3.2vw;
        padding-right: 1.2rem;
        padding-right: 3.2vw;
        display: block; }
        .tp-pickup__list > li:not(:first-child) {
          margin-top: 4rem;
          margin-top: 10.667vw;
          margin-left: 0; }
      .tp-pickup__item {
        display: block; }
      .tp-pickup__content {
        display: block;
        width: 100%;
        margin-top: 2.45rem;
        margin-top: 6.533vw; }
      .tp-pickup__item-hero {
        height: 15rem;
        height: 40vw; }
      .tp-pickup__item-title {
        font-size: 1.6rem; }
      .tp-pickup__item-bottom {
        padding-top: 1rem;
        padding-top: 2.667vw;
        padding-bottom: 1rem;
        padding-bottom: 2.667vw;
        padding-left: 1rem;
        padding-left: 2.667vw;
        padding-right: 1rem;
        padding-right: 2.667vw; }
      .tp-pickup__item-text {
        margin-top: 1.1rem;
        margin-top: 2.933vw;
        font-size: 1.2rem;
        font-weight: normal;
        line-height: 1.6; }
      .tp-pickup__link {
        display: block;
        margin-top: 1rem;
        margin-top: 2.667vw;
        margin-bottom: 1rem;
        margin-bottom: 2.667vw;
        padding-left: 0; }
    .tp-product {
      margin-top: 13.5rem;
      margin-top: 36vw; }
    .tp-product__list {
      margin-left: -1.2rem;
      margin-left: -3.2vw; }
      .tp-product__list > li:not(:first-child) {
        margin-top: 4rem;
        margin-top: 10.667vw; }
      .tp-product__item {
        display: block;
        padding-top: 3rem;
        padding-top: 8vw;
        padding-bottom: 2rem;
        padding-bottom: 5.333vw;
        padding-left: 3rem;
        padding-left: 8vw;
        -webkit-box-shadow: 1rem 2rem 3rem rgba(0, 0, 0, 0.16);
                box-shadow: 1rem 2rem 3rem rgba(0, 0, 0, 0.16);
        -webkit-box-shadow: 2.667vw 5.333vw 8vw rgba(0, 0, 0, 0.16);
                box-shadow: 2.667vw 5.333vw 8vw rgba(0, 0, 0, 0.16); }
      .tp-product__logo {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        width: 100%;
        height: 7.2rem;
        height: 19.2vw; }
      .tp-product__logo-gtax {
        width: 15.6rem;
        width: 41.6vw; }
      .tp-product__logo-guardian {
        width: 22.3rem;
        width: 59.467vw; }
      .tp-product__content {
        display: block;
        width: 28.5rem;
        width: 76vw;
        margin-top: 2.45rem;
        margin-top: 6.533vw; }
      .tp-product__item-title {
        font-size: 1.6rem; }
      .tp-product__item-text {
        margin-top: 1.1rem;
        margin-top: 2.933vw;
        font-size: 1rem;
        font-weight: normal;
        line-height: 1.6; }
      .tp-product__link {
        display: block;
        width: 30rem;
        width: 80vw;
        margin-top: 1rem;
        margin-top: 2.667vw;
        padding-left: 0; }
    .tp-partner {
      margin-top: 14.667vw;
      margin-bottom: 24vw; }
    .tp-media {
      margin-top: 15.5rem;
      margin-top: 24.333vw; }
    .tp-recruit {
      margin-top: 17.3rem;
      margin-top: 46.133vw; }
      .tp-recruit__inner {
        display: block;
        width: 100%; }
      .tp-recruit__title {
        font-size: 2.4rem;
        line-height: 1.4; }
      .tp-recruit__text {
        margin-top: 3.8rem;
        margin-top: 10.133vw;
        font-size: 1.4rem;
        line-height: 1.7; }
      .tp-recruit__action {
        width: 100%;
        -webkit-box-shadow: 1rem 2rem 3rem rgba(0, 0, 0, 0.16);
                box-shadow: 1rem 2rem 3rem rgba(0, 0, 0, 0.16);
        -webkit-box-shadow: 2.667vw 5.333vw 8vw rgba(0, 0, 0, 0.16);
                box-shadow: 2.667vw 5.333vw 8vw rgba(0, 0, 0, 0.16); }
      .tp-recruit__action-link {
        margin-top: 3.4rem;
        margin-top: 9.067vw;
        padding-top: 2.6rem;
        padding-top: 6.933vw;
        padding-right: 2.5rem;
        padding-right: 6.667vw;
        padding-bottom: 2.3rem;
        padding-bottom: 6.133vw;
        padding-left: 2.5rem;
        padding-left: 6.667vw; }
      .tp-recruit__action-image {
        height: 3.55rem;
        height: 9.467vw; }
      .tp-recruit__action-text {
        margin-top: 1.4rem;
        margin-top: 3.733vw;
        font-size: 1.4rem; }

        .tp-service__item {
          max-width: 80vw; }
        .tp-service__title--sub {
          font-size: 1.1rem; }
        .tp-service__title--main {
          font-size: 1.9rem; }
        .tp-service__badge--01,
        .tp-service__badge--02 {
          font-size: 1rem; }
        .tp-service__text {
          font-size: 1.4rem;
          line-height: 2.4rem;
          padding: 1vw 0 4vw; }
        .tp-service__item {
          margin: 0 2vw 8.6vw 2vw; }
        .tab__body .tab__inner ul .tab__content dl dt {
          display: inline-block;
          margin-bottom: 4vw;
          font-size: 1.4rem; }
        .tab__body .tab__inner ul .tab__content dl dd:nth-child(2) {
          padding: 0px;
          font-size: 1rem;
          margin: 0; }
        .tab__body .tab__inner ul .tab__content dl dd:last-child {
          display: block;
          padding-bottom: 4rem;
          font-size: 1.4rem;
          line-height: 2.5rem; }
        .tab__body .tab__inner ul .tab__content dl dd:nth-child(2) {
          display: inline-block; }
        .tab__body .tab__inner {
          max-width: 100%; }
        .tab__body .tab__inner .tab__button .tab__item {
          font-size: 1.2rem; }
        .c-textlink {
          font-size: 1.3rem; }
        .link-list {
          max-width: 100%; }
        .link-list .link-list__item {
          width: 100%;
          margin-bottom: 13vw; }
        .tp-media .tp-inner__body {
          width: 100%; }
        .tp-contact .contact__wrap {
          background-size: cover;
          height: 77vw; }
        .contact__title {
          font-size: 3.1rem;
          margin-bottom: 10%; }
        .tp-inner__title {
          font-size: 2rem;
          font-weight: 600;
          color: #073290;
          line-height: 3.2rem;
          margin-bottom: 3.2vw; }
          .tp-inner__title--sub {
            padding: 5.55vw 0;
            font-size: 1.8rem;
            margin-bottom: 5vw;}
          .tp-service__item--other {
            max-width: 100%; }
          .tp-inner {
            padding-left: 0;
            padding-right: 0;
            width: 85%;
            margin: 0 auto; }
          .tp-inner__text {
            margin-bottom: 12vw;
            font-size: 1.4rem;
            line-height: 2.4rem; }
            .tp-admin__item {
              background: #fff;
              color: #073290;
              font-size: 1.2rem;
              line-height: 2rem;
              font-weight: 600;
              padding: 3vw 0vw 3vw 13vw;
              text-align: left;
              width: 100%; }
              .tp-inner__wrap {
                margin-bottom: 18vw;}
              .tp-admin__thumb {
                display: inline-block;
                text-align: left;
                margin: 0 4vw 0 0;
                width: 10.6vw;
                vertical-align: middle;}
                .tp-service__list .line {
                  display: none;}
                  .tp-partner .tp-inner__body {
                    width: 100%; }
}






