/*! Writen  by SCSS */
h1 {
  margin-bottom: 0; }

.p-summary {
  padding-bottom: 30px; }

.contents_wrap {
  padding: 0; }
  .contents_wrap .container {
    padding: 0; }
  .contents_wrap .main .copy {
    max-width: 370px;
    width: 30.84%;
    margin-inline: auto;
    line-height: 0; }
    @media screen and (max-width: 480px) {
      .contents_wrap .main .copy {
        width: 60%;
        margin-top: 15px; } }
  .contents_wrap .sec0 .inner {
    max-width: 1380px; }
  .contents_wrap .sec0 .ttl {
    text-align: center; }
    @media screen and (max-width: 480px) {
      .contents_wrap .sec0 .ttl {
        margin-inline: auto;
        width: 56%; } }
  .contents_wrap .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: 0.8em; }
    @media screen and (max-width: 480px) {
      .contents_wrap .sec0 .p_ttl {
        font-size: calc(18vw / 3.9);
        letter-spacing: 0.1em;
        margin-bottom: 1em; } }
  .contents_wrap .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) {
      .contents_wrap .sec0 .p_lead {
        font-size: calc(13vw / 3.9);
        letter-spacing: 0.1em; } }
  .contents_wrap .sec0 .m_ttl {
    font-size: clamp(14px, calc(29vw / 13.8), 29px);
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.8;
    margin-bottom: 1em; }
    @media screen and (max-width: 480px) {
      .contents_wrap .sec0 .m_ttl {
        font-size: calc(16vw / 3.9); } }
  .contents_wrap .sec0 .s_ttl {
    font-size: clamp(14px, calc(26vw / 13.8), 26px);
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.8;
    margin-bottom: 1em; }
    @media screen and (max-width: 480px) {
      .contents_wrap .sec0 .s_ttl {
        font-size: calc(18vw / 3.9); } }
  .contents_wrap .sec0 .img3 {
    display: flex;
    justify-content: center;
    max-width: 936px;
    margin-inline: auto; }
    @media screen and (max-width: 480px) {
      .contents_wrap .sec0 .img3 {
        flex-direction: column;
        gap: 15px; } }
    .contents_wrap .sec0 .img3 li {
      width: calc(558% / 9.36); }
      @media screen and (max-width: 480px) {
        .contents_wrap .sec0 .img3 li {
          width: 100%; } }
      .contents_wrap .sec0 .img3 li .cap_l {
        font-size: clamp(12px, calc(14vw / 13.8), 14px);
        margin-top: 3px;
        text-align: center; }
  @media screen and (max-width: 480px) {
    .contents_wrap .sec0 .sld1 img {
      width: 600px;
      max-width: none; } }
  .contents_wrap .sec0 .cap1 {
    bottom: 8%; }
  .contents_wrap .sec1 {
    padding: 90px 0;
    overflow: hidden;
    clip-path: inset(0 0 0 0); }
    @media screen and (max-width: 480px) {
      .contents_wrap .sec1 {
        padding: 50px 0; } }
    .contents_wrap .sec1::after {
      pointer-events: none;
      content: "";
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100lvh;
      height: 100vh;
      background: url("../images/concept/bg1.jpg") center center/cover; }
    .contents_wrap .sec1 .inner {
      max-width: 1290px; }
    .contents_wrap .sec1 .box {
      position: relative;
      z-index: 5;
      display: flex;
      flex-direction: column;
      gap: 80px; }
      @media screen and (max-width: 480px) {
        .contents_wrap .sec1 .box {
          gap: 65px; } }
      .contents_wrap .sec1 .box li {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: calc(50% / 12.9); }
        @media screen and (max-width: 480px) {
          .contents_wrap .sec1 .box li {
            flex-direction: column;
            gap: 20px; } }
        .contents_wrap .sec1 .box li .img {
          width: calc(700% / 12.9); }
          @media screen and (max-width: 480px) {
            .contents_wrap .sec1 .box li .img {
              width: 100%;
              margin-bottom: 20px; } }
        .contents_wrap .sec1 .box li .txt {
          text-align: left; }
          @media screen and (max-width: 480px) {
            .contents_wrap .sec1 .box li .txt {
              width: 100%;
              text-align: center; } }
          .contents_wrap .sec1 .box li .txt .t1 {
            font-size: clamp(20px, calc(35vw / 12.9), 35px);
            font-weight: 500;
            line-height: 1;
            margin-bottom: 0.5em;
            color: #aea05b; }
            @media screen and (max-width: 480px) {
              .contents_wrap .sec1 .box li .txt .t1 {
                font-size: calc(20vw / 3.9); } }
          .contents_wrap .sec1 .box li .txt .t2 {
            font-size: clamp(16px, calc(30vw / 12.9), 30px);
            font-weight: 600;
            line-height: 1.8;
            letter-spacing: 0.15em;
            margin-bottom: 1em;
            color: #00471d; }
            @media screen and (max-width: 480px) {
              .contents_wrap .sec1 .box li .txt .t2 {
                font-size: calc(17vw / 3.9);
                margin-bottom: 1em; } }
          .contents_wrap .sec1 .box li .txt .t3 {
            font-size: clamp(10px, calc(15vw / 12.9), 15px);
            font-weight: 600;
            line-height: 1;
            text-align: center; }
            @media screen and (max-width: 480px) {
              .contents_wrap .sec1 .box li .txt .t3 {
                font-size: calc(13vw / 3.9); } }
            .contents_wrap .sec1 .box li .txt .t3 a {
              display: inline-block;
              text-decoration: none;
              letter-spacing: 0.05em;
              transition: all 0.3s ease-in-out 0s;
              padding: 0.8em 3em;
              background: rgba(165, 155, 129, 0.7);
              transition: all 0.3s ease-in-out 0s; }
              .contents_wrap .sec1 .box li .txt .t3 a p {
                color: #fff;
                padding: 0.3em 1em;
                border-right: solid 1px #fff;
                border-left: solid 1px #fff;
                transition: all 0.3s ease-in-out 0s; }
              .contents_wrap .sec1 .box li .txt .t3 a:hover {
                background: #fff; }
                .contents_wrap .sec1 .box li .txt .t3 a:hover p {
                  color: rgba(165, 155, 129, 0.7);
                  border-right: solid 1px rgba(165, 155, 129, 0.7);
                  border-left: solid 1px rgba(165, 155, 129, 0.7); }
        @media screen and (max-width: 480px) {
          .contents_wrap .sec1 .box li .bn {
            width: 80%;
            margin-inline: auto; } }
        .contents_wrap .sec1 .box li:nth-child(2n) {
          flex-direction: row-reverse; }
          @media screen and (max-width: 480px) {
            .contents_wrap .sec1 .box li:nth-child(2n) {
              flex-direction: column; } }
        .contents_wrap .sec1 .box li:nth-child(1) .t1 img {
          width: calc(176% / 5.4); }
          @media screen and (max-width: 480px) {
            .contents_wrap .sec1 .box li:nth-child(1) .t1 img {
              width: calc(176% / 4.7); } }
        .contents_wrap .sec1 .box li:nth-child(2) .t1 img {
          width: calc(90% / 5.4); }
          @media screen and (max-width: 480px) {
            .contents_wrap .sec1 .box li:nth-child(2) .t1 img {
              width: calc(90% / 4.7); } }
        .contents_wrap .sec1 .box li:nth-child(3) .t1 img {
          width: calc(146% / 5.4); }
          @media screen and (max-width: 480px) {
            .contents_wrap .sec1 .box li:nth-child(3) .t1 img {
              width: calc(146% / 4.7); } }

/*# sourceMappingURL=concept.css.map */
