/*! Writen  by SCSS */
@media screen and (max-width: 1700px) {
  .vpc1700 {
    display: none; } }
@media not screen, screen and (min-width: 1701px) {
  .vsp1700 {
    display: none; } }
@media screen and (max-width: 480px) {
  .inner_main {
    height: auto; } }
@media screen and (max-width: 480px) {
  .inner_main .img {
    object-fit: contain;
    width: 100%;
    height: auto; } }

.caption_area p .min {
  font-size: 70%; }

div.wrap {
  padding-top: 0 !important; }

.img_c {
  position: relative; }
  .img_c .copy {
    position: absolute;
    inset: 0;
    padding: 40px; }
    @media screen and (max-width: 480px) {
      .img_c .copy {
        padding: 15px; } }
    .img_c .copy .t01 {
      color: #fff;
      font-size: clamp(18px, calc(44vw / 10.8), 44px);
      font-size: clamp(18px, calc(60vw / 10.8), 60px);
      line-height: 1;
      letter-spacing: 0.04em;
      font-weight: 400;
      text-shadow: 0 0 8px rgba(0, 0, 0, 0.8); }
      @media screen and (max-width: 480px) {
        .img_c .copy .t01 {
          font-size: calc(23vw / 3.9);
          font-size: calc(28vw / 3.9); } }

.contents_wrap img {
  width: 100%; }

.min_img {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .min_img {
      flex-direction: column;
      gap: 15px; } }
  .min_img li {
    width: calc(290% / 8.9);
    position: relative; }
    @media screen and (max-width: 480px) {
      .min_img li {
        width: 100%; } }
    .min_img li .txt {
      position: absolute;
      inset: 0;
      padding: 10px 20px;
      display: flex; }
      @media screen and (max-width: 480px) {
        .min_img li .txt {
          padding: 5px 10px; } }
      .min_img li .txt.bt {
        align-items: flex-end; }
      .min_img li .txt p {
        color: #fff;
        font-size: clamp(18px, calc(30vw / 10.8), 30px);
        line-height: 1;
        letter-spacing: 0.04em;
        font-weight: 400;
        text-shadow: 0 0 8px rgba(0, 0, 0, 0.8); }
        @media screen and (max-width: 480px) {
          .min_img li .txt p {
            font-size: calc(24vw / 3.9);
            text-shadow: 0 0 7px black;
            line-height: 1.2; } }
        .min_img li .txt p .s {
          font-size: 90%; }
        .min_img li .txt p .l {
          font-size: 140%; }

.inn_box {
  background: #363432;
  padding: 6vh; }
  @media screen and (max-width: 1200px) {
    .inn_box {
      padding: 4vh; } }
  @media screen and (max-width: 600px) {
    .inn_box {
      padding: 15px;
      padding: 25px 20px; } }
  .inn_box .border_ttl {
    border: 1px solid #fff;
    color: #fff;
    margin-bottom: 3vw;
    padding: 0.7em  0.5em;
    font-size: calc(25vw/16);
    text-align: center;
    line-height: 1;
    letter-spacing: 0.075em; }
    @media screen and (max-width: 480px) {
      .inn_box .border_ttl {
        font-size: calc(15vw/3.9);
        line-height: 1.4;
        margin-bottom: 1.5em;
        margin-bottom: 2em; } }
  .inn_box .flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    color: #fff; }
  .inn_box .img_txt {
    margin-top: 0.5em;
    color: #fff;
    font-size: clamp(8px, calc(14vw / 10.8), 14px);
    font-size: clamp(9px, calc(15vw / 10.8), 15px); }
    @media screen and (max-width: 480px) {
      .inn_box .img_txt {
        font-size: calc(13vw / 3.9); } }

@media screen and (max-width: 480px) {
  .sp_inn {
    width: calc(100% - 40px);
    margin-inline: auto; } }

@media screen and (max-width: 480px) {
  .sp_wide {
    margin-left: -20px !important;
    margin-right: -20px !important;
    width: calc(100% + 40px) !important; } }

.color_w {
  color: #fff; }

.sec01 .box01 {
  margin-top: 10vh; }
  @media screen and (max-width: 480px) {
    .sec01 .box01 {
      margin-top: 10vw; } }
  .sec01 .box01 .flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    color: #fff;
    gap: 1vw 0; }
    @media screen and (max-width: 600px) {
      .sec01 .box01 .flex {
        gap: 40px 20px; } }
    .sec01 .box01 .flex .item {
      width: calc(275%/8.9); }
      @media screen and (max-width: 600px) {
        .sec01 .box01 .flex .item {
          width: calc(50% - 10px); } }

.sec02::before {
  display: none !important; }
.sec02 .box02 {
  background: #dee6ec;
  margin-bottom: 10vh; }
  @media screen and (max-width: 480px) {
    .sec02 .box02 {
      margin-bottom: 10vw; } }
  .sec02 .box02 .border_ttl {
    border-color: #333;
    color: #333; }
  .sec02 .box02 .flex {
    color: #333; }
    @media screen and (max-width: 600px) {
      .sec02 .box02 .flex {
        flex-direction: column;
        gap: 20px 0; } }
    .sec02 .box02 .flex .item {
      width: calc(275%/8.9);
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 600px) {
        .sec02 .box02 .flex .item {
          width: 100%; } }
      .sec02 .box02 .flex .item .imgs {
        width: calc(117%/2.55); }
        .sec02 .box02 .flex .item .imgs .cap {
          padding: 7px 5px; }
      .sec02 .box02 .flex .item .txts {
        width: calc(119%/2.55);
        width: calc(122%/2.55); }
    .sec02 .box02 .flex .t1 {
      font-weight: bold;
      font-size: clamp(12px, calc(14vw / 10.8), 14px);
      font-size: clamp(13px, calc(15vw / 10.8), 15px);
      margin-bottom: 0.2em; }
    .sec02 .box02 .flex .t2 {
      font-size: clamp(12px, calc(13vw / 10.8), 13px);
      font-size: clamp(12px, calc(14vw / 10.8), 14px);
      line-height: 1.85;
      letter-spacing: -0.03em; }
      @media screen and (max-width: 600px) {
        .sec02 .box02 .flex .t2 {
          line-height: 1.61;
          letter-spacing: 0; } }
.sec02 .box03 .flex {
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1vw 0; }
  @media screen and (max-width: 600px) {
    .sec02 .box03 .flex {
      flex-direction: column;
      gap: 20px 0; } }
  .sec02 .box03 .flex .item {
    width: calc(430%/8.9); }
    @media screen and (max-width: 600px) {
      .sec02 .box03 .flex .item {
        width: 100%; } }
  @media screen and (max-width: 600px) {
    .sec02 .box03 .flex .img_txt {
      text-align: center; } }

.sec03 {
  background: linear-gradient(to bottom, #e1dbbe 0%, #d4c780 100%);
  padding: 3vw 0; }
  .sec03::before, .sec03::after {
    display: none !important; }
  .sec03 .inner.inner2 {
    width: calc(100% - 6vw); }
  .sec03 .txts {
    text-align: center;
    margin-bottom: 4vh; }
    .sec03 .txts .t2 {
      font-size: clamp(11px, calc(16vw / 10.8), 16px); }
      @media screen and (max-width: 480px) {
        .sec03 .txts .t2 {
          font-size: calc(14vw/3.9); } }
  .sec03 .flex {
    justify-content: space-between;
    margin-bottom: 50px; }
    @media screen and (max-width: 768px) {
      .sec03 .flex {
        flex-wrap: wrap;
        gap: 20px 4%;
        justify-content: center;
        margin-bottom: 30px; } }
    @media screen and (max-width: 600px) {
      .sec03 .flex {
        flex-direction: column;
        align-items: center;
        gap: 40px 0; } }
    .sec03 .flex .item {
      width: calc(324%/10.2); }
      @media screen and (max-width: 768px) {
        .sec03 .flex .item {
          width: 48%; } }
      @media screen and (max-width: 600px) {
        .sec03 .flex .item {
          width: 100%;
          max-width: 300px; } }
      @media screen and (max-width: 480px) {
        .sec03 .flex .item img {
          width: calc(100% - 40px);
          margin: 0 auto;
          display: block; } }
      .sec03 .flex .item .img_txt {
        margin-top: 1em;
        font-size: clamp(8px, calc(11vw / 10.8), 12px);
        line-height: 1.4; }
        @media screen and (max-width: 480px) {
          .sec03 .flex .item .img_txt {
            text-align: center;
            font-size: calc(12vw/3.9); } }

.sec04 .p_btns {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 900px;
  margin: 0 auto 50px;
  gap: 40px 0; }
  @media screen and (max-width: 600px) {
    .sec04 .p_btns {
      flex-direction: column;
      gap: 40px 0;
      align-items: center;
      margin-bottom: 30px; } }
  .sec04 .p_btns figure {
    display: block;
    width: calc(435% / 9); }
    @media screen and (max-width: 600px) {
      .sec04 .p_btns figure {
        width: 80% !important; } }
    .sec04 .p_btns figure.center {
      width: 100%; }
      @media screen and (min-width: 601px) {
        .sec04 .p_btns figure.center a {
          width: calc(435%/9);
          margin: 0 auto; } }
    .sec04 .p_btns figure a {
      display: block;
      background: #fff; }

.mb_common {
  margin-bottom: 10vh; }
  @media screen and (max-width: 480px) {
    .mb_common {
      margin-bottom: 10vw; } }

.sec05::after {
  height: auto !important;
  padding-bottom: calc(1380%/12.8); }
  @media screen and (max-width: 480px) {
    .sec05::after {
      padding-bottom: calc(1000% / 4.8); } }
.sec05 .img501 .cap {
  left: calc(78% / 10.4);
  bottom: calc(32% / 5.43); }
  @media screen and (max-width: 480px) {
    .sec05 .img501 .cap {
      bottom: calc(15% / 5.43); } }
.sec05 .list_img {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .sec05 .list_img .in_item {
    width: calc(437%/8.9); }
    .sec05 .list_img .in_item:nth-child(1) {
      width: 100%; }
  .sec05 .list_img p {
    font-size: calc(18vw/16);
    line-height: 1.5;
    margin: 0.8em 0;
    display: flex;
    align-items: baseline; }
    .sec05 .list_img p .no {
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 90%;
      width: 1.3em;
      height: 1.3em;
      border-radius: 50%;
      background: #e6b111;
      color: #333;
      margin-right: 0.3em;
      padding: 0.3em; }
    @media screen and (max-width: 480px) {
      .sec05 .list_img p {
        font-size: calc(10vw / 3.9); } }
.sec05 .list_txt {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  padding: 40px 0;
  border-bottom: solid 1px #fff;
  border-top: solid 1px #fff;
  display: flex;
  gap: 30px;
  margin-top: 40px; }
  @media screen and (max-width: 480px) {
    .sec05 .list_txt {
      display: block;
      width: fit-content;
      margin-inline: auto;
      padding: 0;
      border-bottom: none;
      border-top: none; } }
  @media screen and (max-width: 480px) {
    .sec05 .list_txt ul {
      width: fit-content; } }
  @media screen and (max-width: 480px) {
    .sec05 .list_txt ul li {
      width: fit-content; } }
  .sec05 .list_txt ul li p {
    font-size: clamp(10px, calc(16vw / 12), 16.5px);
    line-height: 1.8;
    display: flex;
    align-items: baseline;
    color: #fff; }
    .sec05 .list_txt ul li p .no {
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 75%;
      width: 1.5em;
      height: 1.5em;
      border-radius: 50%;
      background: #e6b111;
      margin-right: 0.3em; }
    @media screen and (max-width: 480px) {
      .sec05 .list_txt ul li p {
        font-size: calc(9vw / 3.9); } }

.cap_l {
  font-size: 11px; }
  @media screen and (max-width: 480px) {
    .cap_l {
      font-size: 9px; } }

.sec06 {
  padding: 0;
  margin-top: 10vh; }
  @media screen and (max-width: 480px) {
    .sec06 {
      margin-top: 10vw; } }
  .sec06 .inner {
    max-width: 1080px; }
  .sec06 .sec02_wrap {
    position: relative;
    padding: clamp(30px, 3.704vw, 40px) 4.63%; }
    @media screen and (max-width: 480px) {
      .sec06 .sec02_wrap {
        padding: 25px 30px; } }
    .sec06 .sec02_wrap::after {
      content: '';
      position: absolute;
      inset: 0;
      border: 1px solid #999999;
      pointer-events: none; }
    .sec06 .sec02_wrap .item {
      display: flex;
      justify-content: space-between;
      margin-bottom: clamp(20px, 3.704vw, 40px); }
      @media screen and (max-width: 480px) {
        .sec06 .sec02_wrap .item {
          margin-bottom: 30px; } }
      @media screen and (max-width: 480px) {
        .sec06 .sec02_wrap .item {
          flex-wrap: wrap;
          row-gap: 20px; } }
      .sec06 .sec02_wrap .item:nth-last-child(1) {
        margin-bottom: 0; }
      .sec06 .sec02_wrap .item .text_wrap {
        width: calc(580%/9.8); }
        @media screen and (max-width: 480px) {
          .sec06 .sec02_wrap .item .text_wrap {
            width: 100%; } }
        .sec06 .sec02_wrap .item .text_wrap .ttl {
          line-height: 1;
          border-bottom: 1px solid #999999;
          padding-bottom: 1em;
          margin-bottom: 0.7em;
          font-size: clamp(20px, 2.408vw, 26px);
          letter-spacing: 0.1em; }
          @media screen and (max-width: 480px) {
            .sec06 .sec02_wrap .item .text_wrap .ttl {
              font-size: calc(15.5vw / 3.9);
              margin-bottom: 0.7em;
              padding-bottom: 0.7em; } }
      .sec06 .sec02_wrap .item .img {
        width: calc(351%/9.8);
        text-align: center; }
        @media screen and (max-width: 480px) {
          .sec06 .sec02_wrap .item .img {
            width: 100%;
            width: calc(100% - 45px);
            margin: 0 auto; } }
        .sec06 .sec02_wrap .item .img img {
          width: 100%; }

/*# sourceMappingURL=plan.css.map */
