@charset "UTF-8";
/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* regular: 400, medium: 500, bold: 700 */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/* regular: 400 */
/*@mixin font-deco {
	font-family: "Fuggles", cursive;
	font-weight: 400;
	font-style: normal;
}*/
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* 角丸 */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* 縦書き */
/* 内径 */
/* mv
---------------------------------------------------------------------------*/
#mv {
  position: relative;
  width: 100%;
  height: 680px;
  padding-top: 80px; }
  @media screen and (max-width: 1300px) {
    #mv {
      height: 52.3076923077vw;
      padding-top: 6.1538461538vw; } }
  @media screen and (max-width: 480px) {
    #mv {
      padding-top: 16vw;
      padding-bottom: 11.7333333333vw;
      height: 179.7333333333vw;
      /* 表示量位起き570 */ } }

#topSlider {
  position: relative;
  width: 100%;
  height: 100%; }
  #topSlider .swiper-slide {
    position: relative;
    height: 100%; }
    #topSlider .swiper-slide .topSlider-img {
      width: 100%;
      height: 100%; }
      #topSlider .swiper-slide .topSlider-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        font-family: "object-fit: cover; object-position: center;"; }

.topSlider-prev,
.topSlider-next {
  position: absolute;
  width: 50px;
  height: 50px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  top: 50%;
  transform: translateY(-50%);
  z-index: 100; }
  @media screen and (max-width: 1300px) {
    .topSlider-prev,
    .topSlider-next {
      width: 3.8461538462vw;
      height: 3.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .topSlider-prev,
    .topSlider-next {
      display: none; } }

.topSlider-prev {
  background-image: url(../img/top/mv-prev.png);
  left: 50px; }
  @media screen and (max-width: 1300px) {
    .topSlider-prev {
      left: 3.8461538462vw; } }

.topSlider-next {
  background-image: url(../img/top/mv-next.png);
  right: 50px; }
  @media screen and (max-width: 1300px) {
    .topSlider-next {
      right: 3.8461538462vw; } }

.topSlider-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  bottom: 20px !important;
  width: 100%;
  z-index: 100;
  gap: 10px; }
  @media screen and (max-width: 1300px) {
    .topSlider-pagination {
      bottom: 1.5384615385vw !important;
      gap: 0.7692307692vw; } }
  @media screen and (max-width: 480px) {
    .topSlider-pagination {
      bottom: 5.3333333333vw !important;
      gap: 2.4vw; } }
  .topSlider-pagination .swiper-pagination-bullet {
    margin: 0 !important;
    width: 10px;
    height: 10px;
    border: 1px solid #5F5F5F;
    background-color: #5F5F5F;
    opacity: 1; }
    @media screen and (max-width: 1300px) {
      .topSlider-pagination .swiper-pagination-bullet {
        width: 0.7692307692vw;
        height: 0.7692307692vw; } }
    @media screen and (max-width: 480px) {
      .topSlider-pagination .swiper-pagination-bullet {
        width: 2.6666666667vw;
        height: 2.6666666667vw; } }
    .topSlider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
      border-color: #ffffff;
      background-color: #ffffff; }
      @media screen and (max-width: 480px) {
        .topSlider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
          border-color: #2E919F;
          background-color: #2E919F; } }

.topSlider-tx {
  position: absolute;
  /* 1080 */
  width: 1100px;
  margin-left: auto;
  margin-right: auto;
  left: 50%;
  transform: translateX(-50%);
  bottom: 70px; }
  @media screen and (max-width: 1300px) {
    .topSlider-tx {
      width: 84.6153846154vw; } }
  @media screen and (max-width: 480px) {
    .topSlider-tx {
      width: 88vw; } }
  @media screen and (max-width: 1300px) {
    .topSlider-tx {
      bottom: 70px; } }
  @media screen and (max-width: 480px) {
    .topSlider-tx {
      top: 50%;
      transform: translate(-50%, -50%);
      bottom: auto;
      text-align: center; } }
  .topSlider-tx-hdl {
    font-family: english, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 46px;
    letter-spacing: .05em;
    margin-bottom: 12px; }
    @media screen and (max-width: 1300px) {
      .topSlider-tx-hdl {
        font-size: 3.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .topSlider-tx-hdl {
        font-size: 12.2666666667vw; } }
    @media screen and (max-width: 1300px) {
      .topSlider-tx-hdl {
        margin-bottom: 0.9230769231vw; } }
    @media screen and (max-width: 480px) {
      .topSlider-tx-hdl {
        font-size: 8.5333333333vw;
        margin-bottom: 3.2vw; } }
  .topSlider-tx-catch {
    font-family: "Hiragino Mincho ProN", serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    font-size: 40px;
    letter-spacing: .02em;
    line-height: 1.25;
    margin-bottom: 20px;
    font-weight: 700; }
    @media screen and (max-width: 1300px) {
      .topSlider-tx-catch {
        font-size: 3.0769230769vw; } }
    @media screen and (max-width: 480px) {
      .topSlider-tx-catch {
        font-size: 10.6666666667vw; } }
    @media screen and (max-width: 1300px) {
      .topSlider-tx-catch {
        margin-bottom: 1.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .topSlider-tx-catch {
        font-size: 9.6vw;
        margin-bottom: 5.3333333333vw; } }
  .topSlider-tx-desc {
    font-size: 20px;
    letter-spacing: .05em;
    line-height: 1.5;
    margin-bottom: 46px; }
    @media screen and (max-width: 1300px) {
      .topSlider-tx-desc {
        font-size: 1.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .topSlider-tx-desc {
        font-size: 5.3333333333vw; } }
    @media screen and (max-width: 1300px) {
      .topSlider-tx-desc {
        margin-bottom: 3.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .topSlider-tx-desc {
        font-size: 4.2666666667vw;
        margin-bottom: 8vw;
        line-height: 1.875; } }
  .topSlider-tx-btn {
    margin-left: auto;
    margin-right: 0; }
    @media screen and (max-width: 480px) {
      .topSlider-tx-btn {
        margin-right: auto; }
        .topSlider-tx-btn a {
          height: 16vw;
          border-radius: 8vw; } }
  .topSlider-tx.clr-w .topSlider-tx-hdl {
    text-shadow: 0px 0px 6px rgba(112, 81, 13, 0.5); }
  .topSlider-tx.clr-w .topSlider-tx-catch {
    text-shadow: 0px 0px 12px #70510d; }
  .topSlider-tx.clr-w .topSlider-tx-desc {
    text-shadow: 0px 0px 8px rgba(112, 81, 13, 0.5); }
  .topSlider-tx.clr-b {
    color: #2a2929; }
    .topSlider-tx.clr-b .topSlider-tx-hdl {
      text-shadow: 0px 0px 6px rgba(255, 255, 255, 0.5); }
    .topSlider-tx.clr-b .topSlider-tx-catch {
      text-shadow: 0px 0px 12px white; }
    .topSlider-tx.clr-b .topSlider-tx-desc {
      text-shadow: 0px 0px 8px rgba(255, 255, 255, 0.5); }

/* news
---------------------------------------------------------------------------*/
.news {
  position: relative;
  padding: 80px 0; }
  @media screen and (max-width: 1300px) {
    .news {
      padding: 6.1538461538vw 0; } }
  @media screen and (max-width: 480px) {
    .news {
      padding: 12vw 0 14.9333333333vw; } }
  .news-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    /* 1080 */
    width: 1100px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 225px; }
    @media screen and (max-width: 1300px) {
      .news-wrap {
        width: 84.6153846154vw; } }
    @media screen and (max-width: 480px) {
      .news-wrap {
        width: 88vw; } }
    @media screen and (max-width: 1300px) {
      .news-wrap {
        padding-left: 17.3076923077vw; } }
    @media screen and (max-width: 480px) {
      .news-wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-left: 0; } }
  @media screen and (max-width: 480px) {
    .news-ttl {
      font-size: 9.6vw;
      text-align: center; }
      .news-ttl-ja {
        text-align: center; } }
  @media screen and (max-width: 480px) {
    .news-link {
      text-align: center; } }
  .news-link a {
    position: relative;
    padding-right: 32px; }
    @media screen and (max-width: 1300px) {
      .news-link a {
        padding-right: 2.4615384615vw; } }
    @media screen and (max-width: 480px) {
      .news-link a {
        padding-right: 8.5333333333vw; } }
    .news-link a::after {
      position: absolute;
      content: "";
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      width: 16px;
      height: 16px;
      background-image: url(../img/cmn/arw-right-mnd.png);
      right: 0;
      top: 50%;
      transform: translateY(-50%); }
      @media screen and (max-width: 1300px) {
        .news-link a::after {
          width: 1.2307692308vw;
          height: 1.2307692308vw; } }
      @media screen and (max-width: 480px) {
        .news-link a::after {
          width: 4.2666666667vw;
          height: 4.2666666667vw; } }
    .news-link a span {
      text-decoration: underline; }
  .news-article + .news-article {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px dotted #B7B7B7; }
    @media screen and (max-width: 1300px) {
      .news-article + .news-article {
        margin-top: 1.2307692308vw;
        padding-top: 1.2307692308vw; } }
  .news-article a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (max-width: 480px) {
      .news-article a {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 5.3333333333vw 0; } }
  .news-article-date {
    width: 130px; }
    @media screen and (max-width: 1300px) {
      .news-article-date {
        width: 10vw; } }
    @media screen and (max-width: 480px) {
      .news-article-date {
        width: 100%; } }
  .news-article-ttl {
    width: 485px; }
    @media screen and (max-width: 1300px) {
      .news-article-ttl {
        width: 37.3076923077vw; } }
    @media screen and (max-width: 480px) {
      .news-article-ttl {
        width: 100%;
        font-size: 4vw;
        margin-top: 2.1333333333vw; } }
  .news-deco {
    position: absolute;
    width: 238px;
    height: 269px;
    top: 6px;
    right: calc(50% + 402px); }
    @media screen and (max-width: 1300px) {
      .news-deco {
        width: 18.3076923077vw;
        height: 20.6923076923vw;
        top: 0.4615384615vw;
        right: calc(50% + 30.92307vw); } }
    @media screen and (max-width: 480px) {
      .news-deco {
        width: 37.0666666667vw;
        height: 41.8666666667vw;
        top: -1.0666666667vw;
        right: auto;
        left: -10.6666666667vw; } }

/* concept
---------------------------------------------------------------------------*/
.concept {
  padding: 80px 0 20px;
  margin-bottom: 20px; }
  @media screen and (max-width: 1300px) {
    .concept {
      padding: 6.1538461538vw 0 1.5384615385vw;
      margin-bottom: 1.5384615385vw; } }
  @media screen and (max-width: 480px) {
    .concept {
      padding: 12vw 0 14.9333333333vw; } }
  .concept-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    /* 1280 */
    width: 1340px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 64px; }
    @media screen and (max-width: 1300px) {
      .concept-wrap {
        width: 103.0769230769vw; } }
    @media screen and (max-width: 480px) {
      .concept-wrap {
        width: 88vw; } }
    @media screen and (max-width: 1300px) {
      .concept-wrap {
        padding-left: 4.9230769231vw; } }
    @media screen and (max-width: 480px) {
      .concept-wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-left: 0; } }
  @media screen and (max-width: 480px) {
    .concept-ttl {
      font-size: 9.6vw; } }
  .concept-tx {
    width: 588px; }
    @media screen and (max-width: 1300px) {
      .concept-tx {
        width: 45.2307692308vw; } }
    @media screen and (max-width: 480px) {
      .concept-tx {
        width: 100%; } }
    .concept-tx-catch {
      position: relative; }
      @media screen and (max-width: 480px) {
        .concept-tx-catch {
          font-size: 8.8vw;
          padding-bottom: 6.6666666667vw; } }
      .concept-tx-catch::after {
        position: absolute;
        content: "";
        width: 122px;
        height: 2px;
        background-color: #333333;
        right: 30px;
        bottom: 30px; }
        @media screen and (max-width: 1300px) {
          .concept-tx-catch::after {
            width: 9.3846153846vw;
            right: 2.3076923077vw;
            bottom: 2.3076923077vw; } }
        @media screen and (max-width: 480px) {
          .concept-tx-catch::after {
            width: 14.1333333333vw;
            height: 0.5333333333vw;
            left: 0;
            right: auto;
            bottom: 0; } }
    .concept-tx-desc strong {
      color: #2E919F; }
    .concept-tx-btn {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end; }
      @media screen and (max-width: 480px) {
        .concept-tx-btn {
          margin-top: 12vw; } }
      .concept-tx-btn a {
        display: block;
        position: relative;
        padding-left: 50px; }
        @media screen and (max-width: 1300px) {
          .concept-tx-btn a {
            padding-left: 3.8461538462vw; } }
        @media screen and (max-width: 480px) {
          .concept-tx-btn a {
            padding-left: 13.3333333333vw; } }
        .concept-tx-btn a > span {
          text-decoration: underline; }
        .concept-tx-btn a::before {
          position: absolute;
          content: "";
          background-repeat: no-repeat;
          background-position: center;
          background-size: contain;
          background-image: url(../img/top/arw-circle-mnd.png);
          width: 40px;
          height: 40px;
          left: 0;
          top: 50%;
          transform: translateY(-50%); }
          @media screen and (max-width: 1300px) {
            .concept-tx-btn a::before {
              width: 3.0769230769vw;
              height: 3.0769230769vw; } }
          @media screen and (max-width: 480px) {
            .concept-tx-btn a::before {
              width: 10.6666666667vw;
              height: 10.6666666667vw; } }
  .concept-imgs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 640px; }
    @media screen and (max-width: 1300px) {
      .concept-imgs {
        width: 49.2307692308vw; } }
    @media screen and (max-width: 480px) {
      .concept-imgs {
        display: block;
        width: 100vw;
        margin-left: -6vw;
        margin-right: -6vw;
        margin-top: 10.1333333333vw; } }
    .concept-imgs li {
      width: 314px; }
      @media screen and (max-width: 1300px) {
        .concept-imgs li {
          width: 24.1538461538vw; } }
      @media screen and (max-width: 480px) {
        .concept-imgs li {
          width: 61.3333333333vw; } }
      .concept-imgs li:nth-of-type(2) {
        padding-top: 170px; }
        @media screen and (max-width: 1300px) {
          .concept-imgs li:nth-of-type(2) {
            padding-top: 13.0769230769vw; } }
        @media screen and (max-width: 480px) {
          .concept-imgs li:nth-of-type(2) {
            padding-top: 2.1333333333vw;
            margin-left: auto;
            margin-right: 0; } }
      .concept-imgs li img {
        border-radius: 60px 0; }
        @media screen and (max-width: 1300px) {
          .concept-imgs li img {
            border-radius: 4.6153846154vw 0; } }
        @media screen and (max-width: 480px) {
          .concept-imgs li img {
            width: 100%;
            height: 72.2666666667vw;
            border-radius: 16vw 0;
            object-fit: cover;
            object-position: center;
            font-family: "object-fit: cover; object-position: center;"; } }
  .concept-deco {
    position: absolute; }
    .concept-deco.deco01 {
      width: 347px;
      height: 313px;
      top: -28px;
      left: 414px;
      z-index: -1; }
      @media screen and (max-width: 1300px) {
        .concept-deco.deco01 {
          width: 26.6923076923vw;
          height: 24.0769230769vw;
          top: -2.1538461538vw;
          left: 31.8461538462vw; } }
      @media screen and (max-width: 480px) {
        .concept-deco.deco01 {
          width: 92.5333333333vw;
          height: 83.4666666667vw;
          top: -18.4vw;
          left: 9.8666666667vw; } }
    .concept-deco.deco02 {
      width: 236px;
      height: 212px;
      top: -74px;
      right: 18px;
      z-index: -1; }
      @media screen and (max-width: 1300px) {
        .concept-deco.deco02 {
          width: 18.1538461538vw;
          height: 16.3076923077vw;
          top: -5.6923076923vw;
          right: 1.3846153846vw; } }
      @media screen and (max-width: 480px) {
        .concept-deco.deco02 {
          width: 51.2vw;
          height: 53.8666666667vw;
          top: auto;
          bottom: 94vw;
          right: -6.8vw;
          z-index: 10; } }
    .concept-deco.deco03 {
      width: 169px;
      height: 189px;
      top: 446px;
      right: 353px;
      z-index: 10; }
      @media screen and (max-width: 1300px) {
        .concept-deco.deco03 {
          width: 13vw;
          height: 14.5384615385vw;
          top: 34.3076923077vw;
          right: 27.1538461538vw; } }
      @media screen and (max-width: 480px) {
        .concept-deco.deco03 {
          width: 44.8vw;
          height: 50.4vw;
          right: auto;
          top: auto;
          bottom: 0;
          left: -11.3333333333vw; } }

/* strength
---------------------------------------------------------------------------*/
.strength {
  position: relative;
  padding: 140px 0; }
  @media screen and (max-width: 1300px) {
    .strength {
      padding: 10.7692307692vw 0; } }
  @media screen and (max-width: 480px) {
    .strength {
      padding: 20vw 0 24vw; } }
  .strength-ttl {
    font-family: "french-canon", serif;
    font-weight: 400;
    font-style: normal; }
    @media screen and (max-width: 480px) {
      .strength-ttl {
        font-size: 10.6666666667vw; }
        .strength-ttl-ja {
          font-size: 4.2666666667vw;
          margin-bottom: 13.3333333333vw; } }
  .strength-bg {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 856px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../img/top/strength-bg.png);
    z-index: -1;
    background-size: 100% 100%;
    background-repeat: repeat-x; }
    @media screen and (max-width: 1300px) {
      .strength-bg {
        height: 65.8461538462vw; } }
    @media screen and (max-width: 480px) {
      .strength-bg {
        height: 100%;
        background-size: 100% 100%;
        background-image: url(../img/top/strength-bg-sp.png); } }
  .strength-wrap {
    /* 1080 */
    width: 1100px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 1300px) {
      .strength-wrap {
        width: 84.6153846154vw; } }
    @media screen and (max-width: 480px) {
      .strength-wrap {
        width: 88vw; } }
  .strength-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .strength-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16vw; } }
    .strength-list li {
      position: relative;
      width: 350px; }
      @media screen and (max-width: 1300px) {
        .strength-list li {
          width: 26.9230769231vw; } }
      @media screen and (max-width: 480px) {
        .strength-list li {
          width: 100%; } }
    .strength-list-point {
      position: absolute;
      width: 88px;
      height: 88px;
      top: -44px;
      left: 12px; }
      @media screen and (max-width: 1300px) {
        .strength-list-point {
          width: 6.7692307692vw;
          height: 6.7692307692vw;
          top: -3.3846153846vw;
          left: 0.9230769231vw; } }
      @media screen and (max-width: 480px) {
        .strength-list-point {
          width: 23.4666666667vw;
          height: 23.4666666667vw;
          top: -11.7333333333vw;
          left: 1.6vw; } }
    @media screen and (max-width: 480px) {
      .strength-list-img {
        margin-bottom: 7.4666666667vw; } }
    .strength-list-img img {
      border-radius: 20px; }
      @media screen and (max-width: 1300px) {
        .strength-list-img img {
          border-radius: 1.5384615385vw; } }
      @media screen and (max-width: 480px) {
        .strength-list-img img {
          border-radius: 5.3333333333vw; } }
    @media screen and (max-width: 480px) {
      .strength-list-tx-hdl {
        line-height: 1.25;
        margin-bottom: 4.2666666667vw; } }

/* solution
---------------------------------------------------------------------------*/
.solution {
  position: relative;
  padding: 50px 0 0; }
  @media screen and (max-width: 1300px) {
    .solution {
      padding: 3.8461538462vw 0 0; } }
  @media screen and (max-width: 480px) {
    .solution {
      padding: 13.3333333333vw 0 0; } }
  .solution-wrap {
    /* 1080 */
    width: 1100px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 1300px) {
      .solution-wrap {
        width: 84.6153846154vw; } }
    @media screen and (max-width: 480px) {
      .solution-wrap {
        width: 88vw; } }
  @media screen and (max-width: 480px) {
    .solution-ttl {
      font-size: 9.6vw;
      text-align: center; } }
  @media screen and (max-width: 480px) {
    .solution-ttl-ja {
      text-align: center;
      margin-bottom: 16vw; } }
  .solution-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .solution-body.mb136 {
        margin-bottom: 26.6666666667vw; } }
    .solution-body-img {
      position: relative;
      width: 524px;
      z-index: 10; }
      @media screen and (max-width: 1300px) {
        .solution-body-img {
          width: 40.3076923077vw; } }
      @media screen and (max-width: 480px) {
        .solution-body-img {
          width: 100%;
          margin-bottom: 9.0666666667vw; } }
      .solution-body-img img {
        border-radius: 30px; }
        @media screen and (max-width: 1300px) {
          .solution-body-img img {
            border-radius: 2.3076923077vw; } }
        @media screen and (max-width: 480px) {
          .solution-body-img img {
            width: 100%;
            height: 85.3333333333vw;
            border-radius: 5.3333333333vw;
            object-fit: cover;
            object-position: center;
            font-family: "object-fit: cover; object-position: center;"; } }
    .solution-body-tx {
      position: relative;
      width: 514px;
      padding-top: 46px; }
      @media screen and (max-width: 1300px) {
        .solution-body-tx {
          width: 39.5384615385vw;
          padding-top: 3.5384615385vw; } }
      @media screen and (max-width: 480px) {
        .solution-body-tx {
          width: 100%;
          padding-top: 0; } }
      .solution-body-tx-deco {
        position: absolute; }
        .solution-body-tx-deco.deco01 {
          width: 325px;
          height: 430px;
          right: -225px;
          top: -262px; }
          @media screen and (max-width: 1300px) {
            .solution-body-tx-deco.deco01 {
              width: 25vw;
              height: 33.0769230769vw;
              right: -17.3076923077vw;
              top: -20.1538461538vw; } }
        .solution-body-tx-deco.deco02 {
          width: 368px;
          height: 338px;
          left: -171px;
          top: -233px;
          z-index: -1; }
          @media screen and (max-width: 1300px) {
            .solution-body-tx-deco.deco02 {
              width: 28.3076923077vw;
              height: 26vw;
              left: -13.1538461538vw;
              top: -17.9230769231vw; } }
          @media screen and (max-width: 480px) {
            .solution-body-tx-deco.deco02 {
              width: 76.2666666667vw;
              height: 69.8666666667vw;
              left: -12.9333333333vw;
              top: 156vw; } }
        .solution-body-tx-deco.deco03 {
          width: 368px;
          height: 338px;
          left: -183px;
          top: -180px;
          z-index: -1; }
          @media screen and (max-width: 1300px) {
            .solution-body-tx-deco.deco03 {
              width: 28.3076923077vw;
              height: 26vw;
              left: -14.0769230769vw;
              top: -13.8461538462vw; } }
          @media screen and (max-width: 480px) {
            .solution-body-tx-deco.deco03 {
              width: 73.3333333333vw;
              height: 67.2vw;
              left: 31.3333333333vw;
              top: 126vw; } }
      @media screen and (max-width: 480px) {
        .solution-body-tx-ttl {
          position: relative; }
          .solution-body-tx-ttl > div {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            justify-content: center;
            min-height: 22.9333333333vw; } }
      .solution-body-tx-num {
        position: absolute;
        font-size: 160px;
        color: rgba(46, 145, 159, 0.2);
        right: 0;
        top: -30px; }
        @media screen and (max-width: 1300px) {
          .solution-body-tx-num {
            font-size: 12.3076923077vw; } }
        @media screen and (max-width: 480px) {
          .solution-body-tx-num {
            font-size: 42.6666666667vw; } }
        @media screen and (max-width: 1300px) {
          .solution-body-tx-num {
            top: -2.3076923077vw; } }
        @media screen and (max-width: 480px) {
          .solution-body-tx-num {
            font-size: 25.6vw;
            letter-spacing: -.05em;
            top: 50%;
            transform: translateY(-50%); } }
      @media screen and (max-width: 480px) {
        .solution-body-tx-catch {
          font-size: 4vw; } }
      @media screen and (max-width: 480px) {
        .solution-body-tx-name {
          font-size: 8.5333333333vw;
          margin-bottom: 6.1333333333vw; }
          .solution-body-tx-name span {
            display: block;
            font-size: 5.3333333333vw; } }
      .solution-body-tx .btn-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: .5em; }
        @media screen and (max-width: 480px) {
          .solution-body-tx .btn-wrap {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-align: center;
            -ms-flex-align: center;
            align-items: center;
            margin-top: -2.6666666667vw; } }
      @media screen and (max-width: 480px) {
        .solution-body-tx .btn-box {
          margin-left: auto;
          margin-right: auto; } }
    .solution-body.rvs {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }

/* brand2sustainability
---------------------------------------------------------------------------*/
.brand2sustainability {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .brand2sustainability {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 4.2666666667vw; } }
  .brand2sustainability a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    width: 49.6528%;
    height: 375px;
    padding: 40px; }
    @media screen and (max-width: 1300px) {
      .brand2sustainability a {
        padding: 3.0769230769vw;
        height: 28.8461538462vw; } }
    @media screen and (max-width: 480px) {
      .brand2sustainability a {
        width: 100%;
        height: 57.0666666667vw;
        padding: 6vw; } }
  .brand2sustainability-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }
    .brand2sustainability-bg img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      font-family: "object-fit: cover; object-position: center;"; }
  @media screen and (max-width: 480px) {
    .brand2sustainability-tx .font-en {
      font-size: 9.6vw; }
    .brand2sustainability-tx .font-min {
      font-size: 4.2666666667vw; } }
  .brand2sustainability-btn {
    position: absolute;
    width: 70px;
    height: 70px;
    right: 16px;
    bottom: 36px; }
    @media screen and (max-width: 1300px) {
      .brand2sustainability-btn {
        width: 5.3846153846vw;
        height: 5.3846153846vw;
        right: 1.2307692308vw;
        bottom: 2.7692307692vw; } }
    @media screen and (max-width: 480px) {
      .brand2sustainability-btn {
        width: 14.9333333333vw;
        height: 14.9333333333vw;
        right: 6vw;
        bottom: 7.2vw; } }

/* company2recruit
---------------------------------------------------------------------------*/
.company2recruit {
  position: relative;
  padding: 85px 0 104px; }
  @media screen and (max-width: 1300px) {
    .company2recruit {
      padding: 6.5384615385vw 0 8vw; } }
  @media screen and (max-width: 480px) {
    .company2recruit {
      padding: 21.3333333333vw 0; } }
  .company2recruit::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 346px;
    background-color: #F7F6F0;
    left: 0;
    bottom: 0; }
    @media screen and (max-width: 1300px) {
      .company2recruit::before {
        height: 26.6153846154vw; } }
    @media screen and (max-width: 480px) {
      .company2recruit::before {
        display: none; } }
  .company2recruit-wrap {
    /* 1080 */
    width: 1100px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media screen and (max-width: 1300px) {
      .company2recruit-wrap {
        width: 84.6153846154vw; } }
    @media screen and (max-width: 480px) {
      .company2recruit-wrap {
        width: 88vw; } }
    @media screen and (max-width: 480px) {
      .company2recruit-wrap {
        -webkit-flex-direction: column-reverse;
        flex-direction: column-reverse;
        gap: 4.8vw; } }
  .company2recruit a {
    display: block;
    position: relative;
    width: 540px; }
    @media screen and (max-width: 1300px) {
      .company2recruit a {
        width: 41.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .company2recruit a {
        width: 100%; } }
  @media screen and (max-width: 480px) {
    .company2recruit-img {
      height: 67.7333333333vw; } }
  .company2recruit-img img {
    border-top-right-radius: 30px; }
    @media screen and (max-width: 1300px) {
      .company2recruit-img img {
        border-top-right-radius: 2.3076923077vw; } }
    @media screen and (max-width: 480px) {
      .company2recruit-img img {
        border-top-right-radius: 8vw;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        font-family: "object-fit: cover; object-position: center;"; } }
  .company2recruit-tx {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    background-color: rgba(46, 145, 159, 0.95);
    padding: 34px; }
    @media screen and (max-width: 1300px) {
      .company2recruit-tx {
        padding: 2.6153846154vw; } }
    @media screen and (max-width: 480px) {
      .company2recruit-tx {
        padding: 4.2666666667vw 8.5333333333vw; }
        .company2recruit-tx .font-en {
          font-size: 9.6vw; }
        .company2recruit-tx .font-min {
          font-size: 4.2666666667vw; } }
  .company2recruit-btn {
    position: absolute;
    width: 56px;
    height: 56px;
    right: 16px;
    bottom: 24px; }
    @media screen and (max-width: 1300px) {
      .company2recruit-btn {
        width: 4.3076923077vw;
        height: 4.3076923077vw;
        right: 1.2307692308vw;
        bottom: 1.8461538462vw; } }
    @media screen and (max-width: 480px) {
      .company2recruit-btn {
        width: 14.9333333333vw;
        height: 14.9333333333vw;
        right: 2.4vw;
        bottom: 4.2666666667vw; } }
