/*! Writen  by SCSS */
@keyframes move {
  0% {
    transform: translateY(30px); }
  100% {
    transform: translateY(-30px); } }
@keyframes move_min {
  0% {
    transform: translateY(20px); }
  100% {
    transform: translateY(-20px); } }
@keyframes circle {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(720deg); } }
.sec_plan {
  position: relative;
  background: url("../images/main.jpg") top center/100% auto no-repeat; }
  .sec_plan .main_border {
    padding-top: 15.63%; }
    .sec_plan .main_border::before, .sec_plan .main_border::after {
      content: "";
      display: block;
      position: absolute;
      line-height: 0;
      z-index: 1;
      pointer-events: none;
      width: 312.5%;
      padding-top: 312.5%;
      left: -106.25%;
      top: 0;
      background: url("../images/main_border.svg") center/cover no-repeat; }
    .sec_plan .main_border::before {
      margin-top: 14.59%;
      animation: circle 80s linear infinite,move 60s linear infinite alternate; }
      @media screen and (max-width: 480px) {
        .sec_plan .main_border::before {
          margin-top: 5%; } }
    .sec_plan .main_border::after {
      margin-top: -280.67%;
      animation: circle 70s linear infinite,move 40s linear infinite alternate-reverse; }
      @media screen and (max-width: 480px) {
        .sec_plan .main_border::after {
          margin-top: -290%; } }
  .sec_plan::before {
    content: "";
    display: block;
    position: absolute;
    width: 156.25%;
    padding-top: 156.25%;
    top: 0;
    margin-top: 15.63%;
    left: -28.12%;
    right: -28.12%;
    background: #fff;
    border-radius: 100%; }
  .sec_plan .bg_cap {
    bottom: auto;
    top: 0;
    margin-top: 27.09%; }
    @media screen and (max-width: 480px) {
      .sec_plan .bg_cap {
        margin-top: 0; } }

.plan_outer {
  padding-top: 4.69%;
  position: relative;
  z-index: 1; }
  @media screen and (max-width: 480px) {
    .plan_outer {
      padding-top: 40px; } }
  .plan_outer .plan_main_wrap {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 10.16%;
    color: #333;
    text-align: center; }
    @media screen and (max-width: 480px) {
      .plan_outer .plan_main_wrap {
        padding-bottom: 40px; } }
    .plan_outer .plan_main_wrap .main_head {
      max-width: 132px;
      width: 11%;
      margin-inline: auto;
      line-height: 0; }
      @media screen and (max-width: 480px) {
        .plan_outer .plan_main_wrap .main_head {
          width: 16.5%; } }
    .plan_outer .plan_main_wrap .inner_sub_head {
      margin-top: 2em; }
      @media screen and (max-width: 480px) {
        .plan_outer .plan_main_wrap .inner_sub_head {
          margin-top: 1em;
          letter-spacing: 0.2em; } }
  .plan_outer .plan_inner {
    background: #fff;
    padding-bottom: 5.21%; }
  .plan_outer .inner {
    max-width: 1600px; }
    .plan_outer .inner .plan_list {
      align-items: flex-start; }
      @media screen and (max-width: 480px) {
        .plan_outer .inner .plan_list {
          width: 80%;
          margin-inline: auto;
          flex-direction: column;
          gap: 25px 0; } }
      .plan_outer .inner .plan_list .item {
        max-width: 500px;
        width: 31.25%;
        line-height: 0; }
        @media screen and (max-width: 480px) {
          .plan_outer .inner .plan_list .item {
            width: 100%; } }
        .plan_outer .inner .plan_list .item a {
          display: block;
          position: relative; }
          .plan_outer .inner .plan_list .item a::after {
            content: "";
            display: block;
            position: absolute;
            inset: -2%;
            background: url("../images/button_circle.png") center/cover no-repeat;
            transition-property: opacity;
            transition-timing-function: ease-in-out;
            transition-duration: 0.5s;
            opacity: 0;
            animation: circle 20s linear infinite; }
          @media (hover: hover) {
            .plan_outer .inner .plan_list .item a:hover::after {
              opacity: 1; } }

.caption_area {
  position: relative;
  z-index: 1; }

/*# sourceMappingURL=style.css.map */
