/*! Writen  by SCSS */
ul.breadlist li {
  color: #fff;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.8); }
  ul.breadlist li:after {
    color: #fff; }
  ul.breadlist li a {
    color: #fff; }
    body:not(.mobile) ul.breadlist li a:hover {
      color: #fff; }

.contents_wrap .container {
  padding-top: 0;
  margin: 0 auto;
  text-align: left;
  padding-bottom: 0; }
  @media screen and (max-width: 767px) {
    .contents_wrap .container {
      padding-top: 0; } }
@media screen and (max-width: 480px) {
  .contents_wrap .cttl {
    font-size: calc(18vw / 3.9);
    line-height: 1.6;
    letter-spacing: 0.25em; } }

.item_bg {
  background: top center / 100% auto no-repeat;
  background-attachment: fixed;
  /*&.item_bg01 {
  	background-image: url("../images/position/bg01.jpg");
  }*/ }
  @media screen and (max-width: 480px) {
    .item_bg {
      background: none  !important;
      position: relative; } }
  .item_bg.item_bg02 {
    background-image: url("../images/position/bg02.jpg"); }
  .item_bg.item_bg03 {
    background: bottom center / 100% auto no-repeat;
    background-attachment: fixed;
    background-image: url("../images/position/bg03.jpg"); }
  @media screen and (max-width: 480px) {
    .item_bg .premium_bg {
      position: absolute;
      width: 100%;
      height: 100%;
      display: block;
      left: 0;
      top: 0;
      z-index: -1; }
      .item_bg .premium_bg .premium_bg_in {
        display: block;
        position: relative;
        overflow: hidden;
        clip-path: inset(0 0 0 0);
        height: 100%; }
        .item_bg .premium_bg .premium_bg_in img {
          position: fixed;
          width: 100%;
          min-height: 100vh;
          height: auto;
          left: 0;
          top: 0;
          pointer-events: none; } }

.contents_wrap .sec_ttl_ja {
  letter-spacing: 0.2em;
  margin-bottom: 1.8em; }
  @media screen and (max-width: 480px) {
    .contents_wrap .sec_ttl_ja {
      margin-bottom: 20px; } }

.pos_wrap01 {
  padding: 50px 0 45px;
  background: linear-gradient(90deg, #253c47 0%, #2e2e2e 100%);
  color: #fff; }
  .pos_wrap01.mb {
    margin-bottom: clamp(80px, calc(150vw / 12), 150px); }
  @media screen and (max-width: 480px) {
    .pos_wrap01 {
      padding-bottom: 60px; } }
  .pos_wrap01 .ttl01 {
    line-height: 1;
    color: #fff;
    text-align: center; }
    @media screen and (max-width: 480px) {
      .pos_wrap01 .ttl01 {
        line-height: 1.6; } }
  .pos_wrap01 .item_wrap {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .pos_wrap01 .item_wrap {
        flex-wrap: wrap;
        flex-direction: column;
        row-gap: 30px; } }
    .pos_wrap01 .item_wrap .item {
      width: 30.54%; }
      @media screen and (max-width: 480px) {
        .pos_wrap01 .item_wrap .item {
          width: 100%; } }
      .pos_wrap01 .item_wrap .item .img {
        margin-bottom: 10px; }
        @media screen and (max-width: 480px) {
          .pos_wrap01 .item_wrap .item .img {
            aspect-ratio: 342/170; }
            .pos_wrap01 .item_wrap .item .img img {
              width: 100%;
              height: 100%;
              object-fit: cover; } }
      .pos_wrap01 .item_wrap .item .text {
        line-height: 1; }
        @media screen and (max-width: 480px) {
          .pos_wrap01 .item_wrap .item .text {
            text-align: center; } }

.sec0 {
  padding-bottom: 50px; }
  @media screen and (max-width: 480px) {
    .sec0 {
      padding-bottom: 40px;
      padding-bottom: 20px; } }
  .sec0 .inner {
    max-width: 1380px; }
  .sec0 .ttl {
    text-align: center; }
    @media screen and (max-width: 480px) {
      .sec0 .ttl {
        margin-inline: auto;
        width: 62%;
        width: 100%; } }
  .sec0 .p_ttl {
    font-size: clamp(14px, calc(28vw / 13.8), 28px);
    font-weight: 500;
    letter-spacing: 0.2em;
    line-height: 1.5;
    margin-bottom: 1em; }
    @media screen and (max-width: 480px) {
      .sec0 .p_ttl {
        font-size: calc(20vw / 3.9);
        letter-spacing: 0.1em; } }
  .sec0 .p_lead {
    font-size: clamp(11px, calc(16vw / 13.8), 16px);
    font-weight: 500;
    letter-spacing: 0.2em;
    line-height: 2.5; }
    @media screen and (max-width: 480px) {
      .sec0 .p_lead {
        font-size: calc(13vw / 3.9);
        letter-spacing: 0.1em; } }
  .sec0 .img001 {
    position: relative;
    max-width: 1600px;
    margin-inline: auto;
    margin-bottom: 80px; }
    @media screen and (max-width: 480px) {
      .sec0 .img001 {
        margin-bottom: 60px; } }
    .sec0 .img001 .cap001 {
      right: calc(375% / 16); }
      @media screen and (max-width: 480px) {
        .sec0 .img001 .cap001 {
          right: 3px; } }
    .sec0 .img001 .img01 {
      overflow: hidden; }
      .sec0 .img001 .img01 picture {
        width: 100%;
        display: block; }
      .sec0 .img001 .img01 img {
        width: calc(100% + 30px);
        margin-inline: -15px;
        max-width: none; }
    .sec0 .img001 .img12 {
      position: absolute;
      z-index: 10;
      width: calc(340% / 16);
      left: calc(0% / 16);
      top: calc(133% / 10.4); }
      @media screen and (max-width: 480px) {
        .sec0 .img001 .img12 {
          position: static;
          width: 48%; } }
    .sec0 .img001 .img13 {
      position: absolute;
      z-index: 10;
      width: calc(360% / 16);
      left: calc(1240% / 16);
      top: calc(210% / 10.4); }
      @media screen and (max-width: 480px) {
        .sec0 .img001 .img13 {
          position: static;
          width: 48%; } }
    .sec0 .img001 .img14 {
      position: absolute;
      z-index: 10;
      width: calc(350% / 16);
      left: calc(80% / 16);
      top: calc(577% / 10.4); }
      @media screen and (max-width: 480px) {
        .sec0 .img001 .img14 {
          position: static;
          width: 48%; } }
    .sec0 .img001 .img15 {
      position: absolute;
      z-index: 10;
      width: calc(320% / 16);
      left: calc(1250% / 16);
      top: calc(700% / 10.4); }
      @media screen and (max-width: 480px) {
        .sec0 .img001 .img15 {
          position: static;
          width: 48%; } }
    @media screen and (max-width: 480px) {
      .sec0 .img001 .img1 {
        padding: 0 20px;
        display: flex;
        justify-content: space-between; }
        .sec0 .img001 .img1 li {
          width: 48%; } }
    @media screen and (max-width: 480px) {
      .sec0 .img001 .img2 {
        padding: 0 20px;
        display: flex;
        justify-content: space-between; }
        .sec0 .img001 .img2 li {
          width: 48%; } }
  .sec0 .img006 {
    max-width: 1373px;
    margin-inline: auto; }
  @media screen and (max-width: 480px) {
    .sec0 .sld1 img {
      width: 600px;
      max-width: 600px; } }

.sec01 .box01 {
  margin-bottom: 60px; }
  .sec01 .box01 > li {
    background: #596e5a;
    color: #fff;
    padding: 50px 0;
    margin-bottom: 30px; }
    @media screen and (max-width: 480px) {
      .sec01 .box01 > li {
        padding: 30px 0;
        margin-bottom: 20px; } }
    .sec01 .box01 > li .inner {
      max-width: 1480px; }
    .sec01 .box01 > li .ttl {
      font-size: clamp(14px, calc(24vw / 14.8), 24px);
      color: #fff;
      line-height: 1.4;
      margin-bottom: 0.9em;
      text-align: center; }
      @media screen and (max-width: 480px) {
        .sec01 .box01 > li .ttl {
          font-size: calc(18vw / 3.9); } }
      .sec01 .box01 > li .ttl .ja {
        letter-spacing: 0.2em;
        font-weight: 500; }
      .sec01 .box01 > li .ttl .en {
        display: inline-block;
        font-size: 90%;
        margin-right: 1.2em;
        color: #ffe194; }
        @media screen and (max-width: 480px) {
          .sec01 .box01 > li .ttl .en {
            display: block;
            margin-right: 0;
            margin-bottom: 0.3em; } }
    .sec01 .box01 > li .box {
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        .sec01 .box01 > li .box {
          display: block; } }
      .sec01 .box01 > li .box .cap_l {
        color: #fff;
        margin-top: 0.3em; }
      .sec01 .box01 > li .box .img01 {
        width: calc(690% / 14.8); }
        @media screen and (max-width: 480px) {
          .sec01 .box01 > li .box .img01 {
            width: 100%;
            margin-bottom: 15px; } }
      .sec01 .box01 > li .box .img02 {
        width: calc(740% / 14.8);
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        row-gap: calc(25% / 5.4);
        row-gap: 24px; }
        @media screen and (max-width: 480px) {
          .sec01 .box01 > li .box .img02 {
            width: 100%;
            row-gap: 15px; } }
        .sec01 .box01 > li .box .img02 li {
          width: calc(350% / 7.4); }
          .sec01 .box01 > li .box .img02 li .cap_l {
            font-size: clamp(12px, calc(16vw / 14.8), 16px); }
            .sec01 .box01 > li .box .img02 li .cap_l.ex {
              font-size: clamp(12px, calc(13vw / 14.8), 13px); }
            @media screen and (max-width: 480px) {
              .sec01 .box01 > li .box .img02 li .cap_l {
                font-size: calc(13vw / 3.9); } }
    .sec01 .box01 > li:nth-child(2n) {
      background: #c0c8c1;
      color: #333; }
      .sec01 .box01 > li:nth-child(2n) .ttl {
        color: #333; }
        .sec01 .box01 > li:nth-child(2n) .ttl .en {
          color: #307931; }
      .sec01 .box01 > li:nth-child(2n) .box {
        flex-direction: row-reverse; }
        .sec01 .box01 > li:nth-child(2n) .box .cap_l {
          color: #333; }

@media screen and (max-width: 480px) {
  .sec02 .main .copy .t1 {
    font-size: calc(23vw / 3.9); } }
.sec02 .text_wrap01 {
  padding: 70px 0 100px; }
  @media screen and (max-width: 480px) {
    .sec02 .text_wrap01 {
      padding: 40px 0; } }
.sec02 .sec02_wrap01 .ttl01 {
  text-align: center;
  line-height: 1; }
  @media screen and (max-width: 480px) {
    .sec02 .sec02_wrap01 .ttl01 {
      line-height: 1.6; } }
.sec02 .sec02_wrap01 .item_wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: clamp(40px, calc(75vw / 11.8), 75px); }
  @media screen and (max-width: 480px) {
    .sec02 .sec02_wrap01 .item_wrap {
      flex-direction: column;
      row-gap: 30px; } }
  .sec02 .sec02_wrap01 .item_wrap .wrap01 {
    width: 70.54%; }
    @media screen and (max-width: 480px) {
      .sec02 .sec02_wrap01 .item_wrap .wrap01 {
        width: 100%; } }
    .sec02 .sec02_wrap01 .item_wrap .wrap01 .item01 {
      margin-bottom: clamp(15px, calc(25vw / 11.8), 25px); }
      .sec02 .sec02_wrap01 .item_wrap .wrap01 .item01 .img {
        margin-bottom: 10px; }
      .sec02 .sec02_wrap01 .item_wrap .wrap01 .item01 .text {
        line-height: 1;
        font-size: clamp(12px, calc(16vw / 11.8), 16px); }
        @media screen and (max-width: 480px) {
          .sec02 .sec02_wrap01 .item_wrap .wrap01 .item01 .text {
            text-align: center;
            font-size: 14px; } }
  .sec02 .sec02_wrap01 .item_wrap .wrap02 {
    width: 25%;
    display: flex;
    flex-direction: column;
    row-gap: 19px; }
    @media screen and (max-width: 480px) {
      .sec02 .sec02_wrap01 .item_wrap .wrap02 {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 100%; } }
    @media screen and (max-width: 480px) {
      .sec02 .sec02_wrap01 .item_wrap .wrap02 .item {
        width: 48%; } }
    @media screen and (max-width: 480px) {
      .sec02 .sec02_wrap01 .item_wrap .wrap02 .item:nth-child(1) {
        width: 100%;
        text-align: center; }
        .sec02 .sec02_wrap01 .item_wrap .wrap02 .item:nth-child(1) .img {
          width: 48%;
          margin-inline: auto; } }
    .sec02 .sec02_wrap01 .item_wrap .wrap02 .item .img {
      margin-bottom: 8px; }
      @media screen and (max-width: 480px) {
        .sec02 .sec02_wrap01 .item_wrap .wrap02 .item .img {
          aspect-ratio: 28/24; }
          .sec02 .sec02_wrap01 .item_wrap .wrap02 .item .img img {
            width: 100%;
            height: 100%;
            object-fit: cover; } }
    .sec02 .sec02_wrap01 .item_wrap .wrap02 .item .text {
      line-height: 1.4; }
      @media screen and (max-width: 480px) {
        .sec02 .sec02_wrap01 .item_wrap .wrap02 .item .text {
          font-size: calc(12vw / 3.9); } }

.sec03 {
  padding: clamp(60px, calc(150vw / 12), 150px) 0 clamp(60px, calc(130vw / 12), 130px); }
  @media screen and (max-width: 480px) {
    .sec03 .ttl01 {
      text-align: center; } }
  .sec03 .item_wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: clamp(30px, calc(60vw / 12), 60px); }
    @media screen and (max-width: 480px) {
      .sec03 .item_wrap {
        flex-direction: column;
        row-gap: 20px; } }
    .sec03 .item_wrap .item {
      width: 46.97%; }
      @media screen and (max-width: 480px) {
        .sec03 .item_wrap .item {
          width: 100%; } }
      .sec03 .item_wrap .item .img {
        margin-bottom: 10px; }
        @media screen and (max-width: 480px) {
          .sec03 .item_wrap .item .img {
            aspect-ratio: 342/170; }
            .sec03 .item_wrap .item .img img {
              width: 100%;
              height: 100%;
              object-fit: cover; } }
      .sec03 .item_wrap .item .text {
        line-height: 1; }
        @media screen and (max-width: 480px) {
          .sec03 .item_wrap .item .text {
            text-align: center; } }
  .sec03 .sec03_wrap01 {
    background: #fff;
    padding: clamp(30px, calc(50vw / 12), 50px) 7.95%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    letter-spacing: 0.2em; }
    .sec03 .sec03_wrap01.rv {
      flex-direction: row-reverse; }
    @media screen and (max-width: 480px) {
      .sec03 .sec03_wrap01 {
        padding: 30px 15px;
        flex-direction: column;
        row-gap: 15px; }
        .sec03 .sec03_wrap01.rv {
          flex-direction: column; } }
    .sec03 .sec03_wrap01 .img_wrap {
      width: 46.81%; }
      @media screen and (max-width: 480px) {
        .sec03 .sec03_wrap01 .img_wrap {
          width: 100%; } }
      .sec03 .sec03_wrap01 .img_wrap .img {
        margin-bottom: 10px; }
      .sec03 .sec03_wrap01 .img_wrap .text {
        line-height: 1; }
        @media screen and (max-width: 480px) {
          .sec03 .sec03_wrap01 .img_wrap .text {
            text-align: center; } }
    .sec03 .sec03_wrap01 .text01 {
      padding-bottom: 1.5em;
      width: 45.75%;
      line-height: 2.5;
      letter-spacing: 0.2em; }
      @media screen and (max-width: 480px) {
        .sec03 .sec03_wrap01 .text01 {
          width: 100%;
          line-height: 1.8;
          letter-spacing: 0.1em;
          padding: 0; } }

.sec04 {
  padding: clamp(60px, calc(150vw / 12), 150px) 0 clamp(60px, calc(130vw / 12), 130px);
  background: #fff; }

.sec02_wrap02 {
  background: #fff;
  padding: 60px 20px;
  margin-bottom: 60px; }
  @media screen and (max-width: 480px) {
    .sec02_wrap02 {
      padding: 30px 20px;
      width: calc(100% + 40px);
      margin: 0 -20px 30px; } }
  .sec02_wrap02 .inn {
    max-width: 900px;
    margin-inline: auto; }
    .sec02_wrap02 .inn .box22 {
      display: flex;
      flex-direction: row-reverse;
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        .sec02_wrap02 .inn .box22 {
          display: block; } }
      .sec02_wrap02 .inn .box22 .img {
        width: calc(480% / 9); }
        @media screen and (max-width: 480px) {
          .sec02_wrap02 .inn .box22 .img {
            width: 100%;
            margin-bottom: 10px; } }
      .sec02_wrap02 .inn .box22 .txt {
        width: calc(380% / 9); }
        @media screen and (max-width: 480px) {
          .sec02_wrap02 .inn .box22 .txt {
            width: 100%; } }
        .sec02_wrap02 .inn .box22 .txt .t1 {
          font-size: clamp(12px, calc(16vw / 11.8), 16px);
          margin-bottom: 0.6em; }
          .sec02_wrap02 .inn .box22 .txt .t1 .l {
            font-size: 130%; }
          @media screen and (max-width: 480px) {
            .sec02_wrap02 .inn .box22 .txt .t1 {
              text-align: center;
              font-size: 14px; }
              .sec02_wrap02 .inn .box22 .txt .t1 .l {
                font-size: 100%; } }

@media screen and (max-width: 480px) {
  .sp_wide {
    width: calc(100% + 40px);
    margin: 0 -20px; } }

@media screen and (max-width: 480px) {
  .sp_s {
    font-size: 8px; } }

/*# sourceMappingURL=position.css.map */
