/*! Writen  by SCSS */
.breadlist {
  display: none; }

div.wrap {
  padding-top: 0 !important; }

.ttl_wrap {
  padding-bottom: 50px; }
  @media screen and (max-width: 480px) {
    .ttl_wrap {
      padding-bottom: 40px; } }

.sec01 .sec01_wrap {
  position: relative;
  margin-bottom: 30px;
  max-width: 958px;
  margin: 0 auto; }
  .sec01 .sec01_wrap .link_list {
    position: absolute;
    inset: 0; }
    @media screen and (max-width: 480px) {
      .sec01 .sec01_wrap .link_list {
        right: auto;
        width: 500px;
        pointer-events: none; } }
    .sec01 .sec01_wrap .link_list li {
      position: absolute;
      z-index: 99; }
      .sec01 .sec01_wrap .link_list li a {
        display: block;
        width: 100%;
        height: 100%;
        opacity: 0; }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_wrap .link_list li a {
            pointer-events: all; } }
        .sec01 .sec01_wrap .link_list li a::before {
          content: '';
          position: absolute;
          inset: 0;
          background: linear-gradient(45deg, #1c688f 0%, #174b2f 100%); }
        @media (hover: hover) {
          .sec01 .sec01_wrap .link_list li a:hover {
            opacity: .5; } }
    .sec01 .sec01_wrap .link_list .type_a {
      width: calc(85% / 10.91);
      height: calc(373% / 4.51);
      left: calc(3% / 10.91);
      top: 0; }
    .sec01 .sec01_wrap .link_list .type_b {
      width: calc(85% / 10.91);
      height: calc(373% / 4.51);
      left: calc(87% / 10.91);
      top: 0; }
    .sec01 .sec01_wrap .link_list .type_d {
      width: calc(85% / 10.91);
      height: calc(207% / 4.51);
      left: calc(256% / 10.91);
      top: calc(166% / 4.51); }
    .sec01 .sec01_wrap .link_list .type_gg {
      width: calc(85% / 10.91);
      height: calc(42% / 4.51);
      left: calc(509% / 9.56);
      top: calc(373% / 4.51); }
    .sec01 .sec01_wrap .link_list .type_h {
      width: calc(85% / 10.91);
      height: calc(207% / 4.51);
      left: calc(583% / 9.56);
      top: calc(167% / 4.51); }
    .sec01 .sec01_wrap .link_list .type_i {
      width: calc(85% / 10.91);
      height: calc(248% / 4.51);
      right: calc(256% / 10.91);
      top: calc(125% / 4.51); }
    .sec01 .sec01_wrap .link_list .type_l {
      width: calc(85% / 10.91);
      height: calc(208% / 4.51);
      right: 1px;
      top: calc(166% / 4.51); }
    .sec01 .sec01_wrap .link_list .type_lg {
      width: calc(85% / 10.91);
      height: calc(42% / 4.51);
      right: 1px;
      top: calc(372% / 4.51); }
    .sec01 .sec01_wrap .link_list .type_o {
      width: calc(85% / 10.91);
      height: calc(47% / 4.51);
      height: calc(42% / 4.51);
      left: calc(171% / 10.91);
      top: calc(1% / 4.51); }
    .sec01 .sec01_wrap .link_list .type_nr {
      width: calc(85% / 10.91);
      height: calc(42% / 4.51);
      right: calc(86% / 10.91);
      top: calc(124% / 4.51); }
  .sec01 .sec01_wrap .img {
    line-height: 0; }
    .sec01 .sec01_wrap .img .cap_box {
      position: relative; }
      .sec01 .sec01_wrap .img .cap_box .cap_r {
        position: absolute;
        top: 100%;
        right: 0; }
.sec01 .kukaku {
  max-width: 600px;
  margin: 0 auto 60px; }
  @media screen and (max-width: 480px) {
    .sec01 .kukaku {
      margin-bottom: 40px; } }
  .sec01 .kukaku .cap_r {
    padding-right: calc(31%/6); }

.sec02 {
  margin-bottom: 70px; }
  .sec02 .inner {
    max-width: 1090px;
    padding: 0;
    width: calc(100% - 40px);
    margin-inline: auto; }
  .sec02 .sec02_list {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    row-gap: clamp(20px, calc(30vw / 10.91), 30px);
    column-gap: calc(33% / 10); }
    .sec02 .sec02_list li {
      width: 48%;
      line-height: 0; }
      @media screen and (max-width: 480px) {
        .sec02 .sec02_list li {
          width: 100%; } }
      .sec02 .sec02_list li a {
        position: relative;
        width: 100%;
        height: 100%;
        display: block;
        /*color: #fff;
        padding: 25px cal_per(530,20);
        padding-left: cal_per(530,30);
        display: flex;
        justify-content: space-between;
        align-items: center;
        background: #000;
        transition: background 0.3s ease-in-out 0s;*/
        			/*	&::before {
        					content: '';
        					position: absolute;
        					inset: 0;
        					z-index: -1;
        					background: linear-gradient(45deg, #1c688f 0%, #174b2f 100%);
        				}
        				@include hover {
        					background: none;
        				}
        				@include mq($br_tb){
        					padding-inline: 15px;
        				}
        				@include mq($br_sp){
        					padding: 15px 25px;
        				}
        				.type {
        					width: cal_per(460,90);
        					position: relative;
        					//width: fit-content;
        					line-height: 1;
        					font-size: clamp(28px, calc(44vw / 10.91), 44px);
        					padding-right: cal_per(460,25);
        					display: flex;
        					align-items: center;
        					column-gap: 5px;
        					@include mq($br_sp){
        						width: cal_per(460,100);
        						column-gap: 3px;
        					}
        					&::after, &::before {
        						content: '';
        						width: 1px;
        						height: 100%;
        						background-color: #fff;
        						position: absolute;
        						right: 3px;
        						max-height: 86px;
        					}
        					&::after {
        						right: 0;
        					}
        					.small {
        						font-size: 40%;
        					}
        				}
        				.text {
        					line-height: 1;
        					display: flex;
        					flex-direction: column;
        					row-gap: 5px;
        					.text_in_01 {
        						font-size: clamp(18px, calc(32vw / 10.91), 32px);
        						display: flex;
        						align-items: baseline;
        						letter-spacing: 0.08em;
        						.big {
        							font-size: 140%;
        						}
        						.big02 {
        							font-size: 115%;
        							letter-spacing: 0.125em;
        						}
        					}
        					.text_in_02 {
        						font-size: clamp(12px, calc(32vw / 10.91), 28px);
        						display: flex;
        						align-items: baseline;
        						@include mq($br_sp){
        							font-size: 18px;
        						}
        						.small {
        							font-size: 65%;
        							margin-right: 10px;
        							transform: translateY(-3px);
        							@include mq($br_sp){
        								transform: translateY(0);
        							}
        						}
        						.big {
        							font-size: 140%;
        						}
        						.ls {
        							letter-spacing: 0.25em;
        							display: flex;
        							align-items: baseline;
        						}
        					}
        				}
        				.icon {
        					width: cal_per(460,35);
        					aspect-ratio: 1;
        					max-width: 35px;
        					display: block;
        					img {
        						width: 100%;
        						height: 100%;
        					}
        
        				}*/ }
        .sec02 .sec02_list li a .img {
          position: relative;
          inset: 0;
          transition: opacity 0.3s ease-in-out,visibility 0.3s ease-in-out; }
          .sec02 .sec02_list li a .img.on {
            position: absolute;
            opacity: 0;
            visibility: hidden; }
        @media (hover: hover) {
          .sec02 .sec02_list li a:hover .img.on {
            opacity: 1;
            visibility: visible; } }
  .sec02 .bg {
    background: #f9f8f5;
    max-width: 1400px;
    margin-inline: auto;
    padding: 40px 0; }
    @media screen and (max-width: 480px) {
      .sec02 .bg {
        padding: 50px 0; } }
  .sec02 .type_wrap {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .sec02 .type_wrap {
        flex-direction: column;
        row-gap: 30px; } }
    .sec02 .type_wrap .ttl_wrap {
      padding: 0; }
      .sec02 .type_wrap .ttl_wrap .sec_ttl {
        line-height: 1.28;
        letter-spacing: 0; }
    .sec02 .type_wrap.i_type .img_wrap {
      width: 40.19%;
      margin-left: -3.1%; }
      @media screen and (max-width: 480px) {
        .sec02 .type_wrap.i_type .img_wrap {
          display: flex;
          flex-direction: column-reverse;
          gap: 20px 0;
          width: 100%;
          margin-left: 0; } }
      @media screen and (max-width: 480px) {
        .sec02 .type_wrap.i_type .img_wrap .img01 {
          margin-inline: auto;
          width: 100%; } }
      .sec02 .type_wrap.i_type .img_wrap .ttl_img {
        width: 73.29%;
        margin-inline: auto; }
    .sec02 .type_wrap.i_type .in_box {
      width: 57.8%;
      display: flex;
      flex-direction: column;
      row-gap: clamp(30px, 3.334vw, 40px);
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        .sec02 .type_wrap.i_type .in_box {
          width: 100%; } }
      .sec02 .type_wrap.i_type .in_box .ttl_wrap {
        text-align: left;
        padding: 0; }
        .sec02 .type_wrap.i_type .in_box .ttl_wrap .sec_lead {
          letter-spacing: 0.04em; }
      .sec02 .type_wrap.i_type .in_box .wrap_in {
        padding: 25px;
        background: #f4f2eb; }
        @media screen and (max-width: 480px) {
          .sec02 .type_wrap.i_type .in_box .wrap_in {
            padding: 20px; } }
        .sec02 .type_wrap.i_type .in_box .wrap_in .read_lg {
          font-size: clamp(12px, calc(15.5vw / 12.7), 15.5px);
          letter-spacing: 0;
          font-weight: 400; }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap_in .read_lg {
              font-size: calc(13vw / 3.9); } }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap_in .read_lg.sp_center {
              text-align: center;
              line-height: 1.65;
              font-size: calc(14vw / 3.9);
              letter-spacing: 0.1em; } }
      .sec02 .type_wrap.i_type .in_box .wrap01 {
        display: grid;
        grid-template-columns: 33.63% 32.07% 31.9%;
        align-items: flex-start;
        align-content: start;
        grid-auto-flow: dense;
        justify-content: space-between;
        align-items: flex-end; }
        @media screen and (max-width: 480px) {
          .sec02 .type_wrap.i_type .in_box .wrap01 {
            grid-template-columns: repeat(2, 1fr);
            column-gap: 5px;
            row-gap: 5px; } }
        .sec02 .type_wrap.i_type .in_box .wrap01 .read {
          grid-column: 2/4;
          grid-row: 1/2;
          margin-left: 1em;
          font-size: clamp(12px, 1.167vw, 14px); }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap01 .read {
              margin-left: 0;
              grid-column: 2/3;
              grid-row: auto; } }
          .sec02 .type_wrap.i_type .in_box .wrap01 .read.read_lg {
            font-size: clamp(12px, calc(15.5vw / 12.7), 15.5px); }
            @media screen and (max-width: 480px) {
              .sec02 .type_wrap.i_type .in_box .wrap01 .read.read_lg {
                font-size: calc(13vw / 3.9); } }
        .sec02 .type_wrap.i_type .in_box .wrap01 .img01 {
          grid-row: span 2; }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap01 .img01 {
              grid-row: auto; } }
      .sec02 .type_wrap.i_type .in_box .wrap02 .img_in {
        display: flex;
        justify-content: center;
        gap: 10px;
        align-items: center; }
        @media screen and (max-width: 480px) {
          .sec02 .type_wrap.i_type .in_box .wrap02 .img_in {
            flex-direction: column;
            max-width: 200px;
            margin-inline: auto; } }
        .sec02 .type_wrap.i_type .in_box .wrap02 .img_in .icon {
          width: 8px;
          height: 16px;
          background: #595656;
          clip-path: polygon(100% 50%, 0 0, 0 100%); }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap02 .img_in .icon {
              width: 16px;
              height: 8px;
              clip-path: polygon(50% 100%, 0 0, 100% 0); } }
        .sec02 .type_wrap.i_type .in_box .wrap02 .img_in .img {
          width: 39.66%; }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap02 .img_in .img {
              width: 100%; } }
      @media screen and (min-width: 481px) {
        .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap {
          display: flex;
          column-gap: 20px;
          justify-content: center; } }
      @media screen and (max-width: 480px) {
        .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap {
          display: flex;
          flex-wrap: wrap;
          column-gap: 4.26%;
          row-gap: clamp(20px, 3.334vw, 40px); } }
      .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap .item {
        text-align: center; }
        @media screen and (max-width: 480px) {
          .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap .item {
            width: 47.87%; } }
        .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap .item .img {
          max-width: 142px;
          margin-inline: auto; }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap .item .img {
              margin: 0;
              max-width: 100%; } }
        .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap .item .cap_l {
          line-height: 1.4;
          margin-top: 0.5em;
          font-size: clamp(10px, calc(13vw / 12.7), 13px); }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.i_type .in_box .wrap02 .item_wrap .item .cap_l {
              line-height: 1.65;
              font-size: clamp(12px, 1.167vw, 14px); } }
    .sec02 .type_wrap.gm2_type {
      flex-direction: row-reverse;
      justify-content: space-between;
      align-items: center; }
      @media screen and (max-width: 480px) {
        .sec02 .type_wrap.gm2_type {
          flex-direction: column; } }
      .sec02 .type_wrap.gm2_type .img_wrap {
        width: 46.79%;
        margin-right: -1.1%; }
        @media screen and (max-width: 480px) {
          .sec02 .type_wrap.gm2_type .img_wrap {
            display: flex;
            flex-direction: column-reverse;
            gap: 20px 0;
            width: 100%;
            margin-right: 0; } }
        .sec02 .type_wrap.gm2_type .img_wrap .ttl_img {
          width: 69.22%;
          margin-right: auto;
          margin-left: 17.65%;
          margin-top: -10%; }
          @media screen and (max-width: 480px) {
            .sec02 .type_wrap.gm2_type .img_wrap .ttl_img {
              margin-left: auto;
              margin-top: 0; } }
      .sec02 .type_wrap.gm2_type .in_box {
        width: 53.67%; }
        @media screen and (max-width: 480px) {
          .sec02 .type_wrap.gm2_type .in_box {
            width: 100%; } }
        .sec02 .type_wrap.gm2_type .in_box .ttl_wrap {
          margin-bottom: clamp(30px, 5.834vw, 70px); }
          .sec02 .type_wrap.gm2_type .in_box .ttl_wrap .sec_ttl {
            line-height: 1.28;
            text-align: left;
            letter-spacing: 0; }
          .sec02 .type_wrap.gm2_type .in_box .ttl_wrap .sec_lead {
            text-align: left;
            font-size: clamp(12px, calc(18vw / 12.7), 18px);
            margin-right: -9%; }
            @media screen and (max-width: 480px) {
              .sec02 .type_wrap.gm2_type .in_box .ttl_wrap .sec_lead {
                margin-right: 0; } }
        .sec02 .type_wrap.gm2_type .in_box .item_wrap {
          display: flex;
          flex-wrap: wrap;
          column-gap: 4.26%;
          row-gap: clamp(20px, 3.334vw, 40px); }
          .sec02 .type_wrap.gm2_type .in_box .item_wrap .item {
            width: 47.87%; }
            .sec02 .type_wrap.gm2_type .in_box .item_wrap .item .read {
              margin-top: 0.5em;
              text-align: center;
              line-height: 1.2;
              line-height: 1.65;
              font-size: clamp(12px, 1.167vw, 14px); }
              @media screen and (max-width: 480px) {
                .sec02 .type_wrap.gm2_type .in_box .item_wrap .item .read {
                  text-align: left; } }

.sec03 {
  margin-bottom: 130px; }
  @media screen and (max-width: 480px) {
    .sec03 {
      margin-bottom: 80px; } }

@media screen and (max-width: 480px) {
  .swipe1 img {
    width: 500px;
    max-width: 500px; } }
@media screen and (max-width: 480px) {
  .label {
    width: 70%;
    margin-inline: auto; } }

/*# sourceMappingURL=plan.css.map */
