@media screen and (min-width: 1024px) {
    .visible-md, .visible-sm {
      display: none
    }
    .visible-lg {
      display: inherit
    }
  }
  
  @media screen and (min-width: 750px)and (max-width: 1023px) {
    .visible-lg, .visible-sm {
      display: none
    }
    .visible-md {
      display: inherit
    }
  }
  
  @media screen and (max-width: 749px) {
    .visible-lg, .visible-md {
      display: none
    }
    .visible-sm {
      display: inherit
    }
  }
  
  html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: rgba(0, 0, 0, 0)
  }
  
  * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.5;
    letter-spacing: .05em
  }
  
  @media screen and (min-width: 750px) {
    html {
      font-size: 10px
    }
  }
  
  @media screen and (max-width: 749px) {
    html {
      font-size: 2.66666vw
    }
  }
  
  body {
    width: 100%;
    overflow-x: hidden;
    background: #fff;
    font-family: "Noto Sans JP", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    color: #444
  }
  
  main {
    display: block
  }
  
  li {
    list-style-type: none
  }
  
  a {
    text-decoration: none;
    color: inherit
  }
  
  @media screen and (min-width: 750px) {
    a {
      -webkit-transition: all .3s;
      transition: all .3s
    }
    a::before, a::after {
      -webkit-transition: all .3s;
      transition: all .3s
    }
  }
  
  img {
    vertical-align: bottom;
    max-width: 100%;
    height: auto
  }
  
  svg {
    width: 100%;
    height: auto
  }
  
  sup {
    font-size: .5em;
    vertical-align: super
  }
  
  input, button, textarea, select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
  }
  
  table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%
  }
  
  address {
    font-style: normal
  }
  
  @media screen and (min-width: 750px) {
    .l-inner-lg {
      width: 90%;
      max-width: 1200px;
      margin: 0 auto
    }
  }
  
  @media screen and (max-width: 749px) {
    .l-inner-lg {
      padding: 0 1.5rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .l-inner-md {
      width: 90%;
      max-width: 1100px;
      margin: 0 auto
    }
  }
  
  @media screen and (max-width: 749px) {
    .l-inner-md {
      padding: 0 1.5rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .l-inner-ex {
      width: 90%;
      max-width: 840px;
      margin: 0 auto
    }
  }
  
  @media screen and (max-width: 749px) {
    .l-inner-ex {
      padding: 0 1.5rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .l-inner-sm {
      width: 90%;
      max-width: 920px;
      margin: 0 auto
    }
  }
  
  @media screen and (max-width: 749px) {
    .l-inner-sm {
      padding: 0 1.5rem
    }
  }
  
  html {
    scroll-behavior: smooth
  }
  
  .head {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    -webkit-transition: all .3s;
    transition: all .3s
  }
  
  .head.-bgWhite {
    background-color: rgba(255, 255, 255, .6)
  }
  
  .hd__inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  
  @media screen and (min-width: 750px) {
    .hd__inner {
      padding: 4rem 0
    }
  }
  
  @media screen and (max-width: 749px) {
    .hd__inner {
      padding: 2rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .hd__logo {
      width: 25rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .hd__logo {
      width: 20rem
    }
  }
  
  .hd__cv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
  }
  
  @media screen and (max-width: 749px) {
    .hd__cv {
      position: fixed;
      width: 100%;
      bottom: 0;
      left: 0;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      display: none
    }
  }
  
  .hd__anc {
    display: block;
    background-color: #95ac4c;
    color: #fff;
    font-size: 1.6rem;
    padding: 1.2rem 0;
    border-radius: 2.5rem
  }
  
  @media screen and (min-width: 750px) {
    .hd__anc+.hd__anc {
      margin-left: 2rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .hd__anc+.hd__anc {
      margin-top: 1.5rem;
      margin-bottom: 1rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .hd__anc {
      width: 24rem
    }
    .hd__anc:hover {
      opacity: .6
    }
  }
  
  @media screen and (max-width: 749px) {
    .hd__anc {
      width: 85%;
      margin-left: auto;
      margin-right: auto
    }
  }
  
  .-first.is-hide {
    visibility: hidden
  }
  
  .top {
    width: 100%;
    height: 100vh
  }
  
  .topSlide__item {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100vh;
    position: relative
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__item:nth-child(4) {
      background-image: url(../img/top_img01.webp)
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__item:nth-child(4) {
      background-image: url(../img/top_img01-sp.webp)
    }
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__item:nth-child(2) {
      background-image: url(../img/top_img02.webp)
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__item:nth-child(2) {
      background-image: url(../img/top_img02-sp.webp)
    }
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__item:nth-child(3) {
      background-image: url(../img/top_img03.webp)
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__item:nth-child(3) {
      background-image: url(../img/top_img03-sp.webp)
    }
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__item:nth-child(1) {
      background-image: url(../img/top_img04.webp)
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__item:nth-child(1) {
      background-image: url(../img/top_img04-sp.webp)
    }
  }
 
  @media screen and (min-width: 750px) {
    .topSlide__item:nth-child(5) {
      background-image: url(../img/top_img05.webp)
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__item:nth-child(5) {
      background-image: url(../img/top_img05-sp.webp)
    }
  }

  @media screen and (min-width: 750px) {
    html:not(.webp) .topSlide__item:nth-child(4) {
      background-image: url(../img/top_img01.jpg)
    }
  }
  
  @media screen and (max-width: 749px) {
    html:not(.webp) .topSlide__item:nth-child(4) {
      background-image: url(../img/top_img01-sp.jpg)
    }
  }
  
  @media screen and (min-width: 750px) {
    html:not(.webp) .topSlide__item:nth-child(2) {
      background-image: url(../img/top_img02.jpg)
    }
  }
  
  @media screen and (max-width: 749px) {
    html:not(.webp) .topSlide__item:nth-child(2) {
      background-image: url(../img/top_img02-sp.jpg)
    }
  }
  
  @media screen and (min-width: 750px) {
    html:not(.webp) .topSlide__item:nth-child(3) {
      background-image: url(../img/top_img03.jpg)
    }
  }
  
  @media screen and (max-width: 749px) {
    html:not(.webp) .topSlide__item:nth-child(3) {
      background-image: url(../img/top_img03-sp.jpg)
    }
  }
  
  @media screen and (min-width: 750px) {
    html:not(.webp) .topSlide__item:nth-child(1) {
      background-image: url(../img/top_img04.jpg)
    }
  }
  
  @media screen and (max-width: 749px) {
    html:not(.webp) .topSlide__item:nth-child(1) {
      background-image: url(../img/top_img04-sp.jpg)
    }
  }
  
  @media screen and (min-width: 750px) {
    html:not(.webp) .topSlide__item:nth-child(5) {
      background-image: url(../img/top_img05.jpg)
    }
  }
  
  @media screen and (max-width: 749px) {
    html:not(.webp) .topSlide__item:nth-child(5) {
      background-image: url(../img/top_img05-sp.jpg)
    }
  }

  .topSlide__txtbox {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: rgba(255, 255, 255, .6)
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__txtbox {
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%)
    }
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__txtbox.-mv01 {
      top: 50%;
      left: 75%
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__txtbox.-mv01 {
      top: 15%;
      left: 50%
    }
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__txtbox.-mv02 {
      top: 50%;
      left: 75%
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__txtbox.-mv02 {
      top: 15%;
      left: 60%
    }
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__txtbox.-mv03 {
      top: 50%;
      right: 65%
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__txtbox.-mv03 {
      top: 15%;
      right: 60%
    }
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__txtbox.-mv04 {
      top: 50%;
      right: 65%
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__txtbox.-mv04 {
      top: 15%;
      right: 55%
    }
  }
  
  .topSlide__txt {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: .2em;
    position: relative;
    padding: 3rem 1.5rem;
    font-family: "Noto Serif JP", sans-serif
  }
  
  @media screen and (min-width: 750px) {
    .topSlide__txt {
      font-size: 3rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .topSlide__txt {
      font-size: 2.1rem
    }
  }
  
  .about {
    padding-bottom: 11rem
  }
  
  .about__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 11rem
  }
  
  .about__ttl {
    text-align: center;
    font-family: "Noto Serif JP", sans-serif;
    font-size: 3.2rem;
    margin-bottom: 5rem
  }
  
  .about__sup {
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 2rem
  }
  
  .about__logo {
    width: 320px;
    margin: 0 auto
  }
  
  .about__cont {
    width: 100%;
    background-color: rgba(149, 172, 76, .05);
    padding: 8rem 0
  }
  
  .aboutCont__inner {
    width: 100%;
    background-color: #fff;
    border-radius: 1.6rem;
    text-align: center
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__inner {
      padding: 6rem;
      -webkit-filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3))
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__inner {
      padding: 4rem 2rem;
      -webkit-filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3))
    }
  }
  
  .aboutCont__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__head {
      margin-bottom: 6rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__head {
      margin-bottom: 4rem
    }
  }
  
  .aboutCont__sup {
    font-size: 2rem
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__sup {
      margin-bottom: 1rem
    }
  }
  
  .aboutCont__ttl {
    font-weight: bold;
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__ttl {
      font-size: 4rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__ttl {
      font-size: 3.2rem;
      margin-bottom: 1rem
    }
  }
  
  .aboutCont__en {
    font-size: 1.4rem;
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    font-weight: 700
  }
  
  .aboutCont__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 3rem
  }
  
  .aboutCont__topttl {
    font-weight: bold;
    margin-bottom: 1rem
  }
  
  .aboutCont__topttl .-blue {
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__topttl {
      font-size: 3.6rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__topttl {
      font-size: 2.8rem
    }
  }
  
  .aboutCont__topsub {
    font-size: 2rem
  }
  
  .aboutCont__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 4rem
  }
  
  .aboutCont__flex.-naked {
    text-align: center;
    max-width: 60rem;
    margin: 0 auto
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__flex.-naked {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__flex.-naked {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__flex {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap
    }
  }
  
  .aboutCont__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    border: 3px solid #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__box {
      max-width: 392px;
      width: 50%;
      padding: 3rem;
      border-radius: 2rem;
      margin: 0 1rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__box {
      width: 100%;
      padding: 3rem 0;
      border-radius: 2rem;
      margin-bottom: 1rem
    }
  }
  
  .aboutCont__navy {
    background-color: rgba(149, 172, 76, .15);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    border-right: 2px solid #fff
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__navy {
      width: 50%;
      padding: 3rem 2.8rem 3rem 6rem;
      border-radius: 1.6rem 0 0 1.6rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__navy {
      width: 100%;
      padding: 3rem 2rem;
      border-radius: 1.6rem;
      margin-bottom: 1rem
    }
  }
  
  .aboutCont__green {
    background-color: rgba(149, 172, 76, .15);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    border-radius: 0 1.6rem 1.6rem 0;
    text-align: center;
    border-left: 2px solid #fff
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__green {
      width: 50%;
      padding: 3rem 6rem 3rem 2.8rem;
      border-radius: 0 1.6rem 1.6rem 0
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__green {
      width: 100%;
      padding: 3rem 2rem;
      border-radius: 1.6rem
    }
  }
  
  .aboutCont__img {
    margin-bottom: 2rem
  }
  
  .aboutCont__txt {
    font-weight: 500;
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__txt {
      font-size: 2rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__txt {
      font-size: 1.8rem
    }
  }
  
  .aboutCont__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  
  .aboutCont__btnSup {
    font-weight: bold;
    margin-bottom: 2rem;
    text-align: center
  }
  
  .aboutCont__btnSup .-blue {
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__btnSup {
      font-size: 2.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__btnSup {
      font-size: 2.4rem
    }
  }
  
  .aboutCont__pop {
    position: absolute;
    background-color: #95be41;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    padding: 1rem 0
  }
  
  @media screen and (min-width: 750px) {
    .aboutCont__pop {
      width: 116px;
      height: 116px;
      top: -2rem;
      right: 1rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__pop {
      width: 102px;
      height: 102px;
      top: -3rem;
      right: -2rem
    }
  }
  
  .popHead {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.1
  }
  
  .popCont {
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    line-height: 1.1
  }
  
  @media screen and (min-width: 750px) {
    .popCont {
      font-size: 2.4rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .popCont {
      font-size: 1.8rem
    }
  }
  
  .popCont .popNum {
    font-weight: 700;
    line-height: 1.1
  }
  
  @media screen and (min-width: 750px) {
    .popCont .popNum {
      font-size: 4rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .popCont .popNum {
      font-size: 3rem
    }
  }
  
  .popBtm {
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    font-weight: 700;
    line-height: 1.1
  }
  
  @media screen and (min-width: 750px) {
    .popBtm {
      font-size: 2.5rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .popBtm {
      font-size: 1.9rem
    }
  }
  
  .aboutCont__plan {
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 1.5rem
  }
  
  .aboutCont__price {
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0;
    margin-bottom: 1.5rem
  }
  
  @media screen and (max-width: 749px) {
    .aboutCont__price {
      white-space: nowrap
    }
  }
  
  .aboutCont__price .-num {
    font-size: 4rem;
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    font-weight: 700
  }
  
  .aboutCont__price .-small {
    font-size: 1rem
  }
  
  .btn {
    display: block;
    width: 100%;
    max-width: 27rem
  }
  
  @media screen and (min-width: 750px) {
    .btn:hover {
      opacity: .6
    }
  }
  
  @media screen and (max-width: 749px) {
    .btn+.btn {
      margin-top: 2rem
    }
  }
  
  .btn.planTable__btn {
    margin: 1rem auto;
    -webkit-transition: .3s;
    transition: .3s
  }
  
  @media screen and (min-width: 750px) {
    .btn.planTable__btn {
      width: 24rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .btn.planTable__btn {
      width: 254px
    }
  }
  
  @media screen and (min-width: 750px) {
    .btn.planTable__btn:hover {
      opacity: .6
    }
  }
  
  .point {
    background-color: rgba(149, 172, 76, .05);
    padding-bottom: 10rem
  }
  
  .point__top {
    position: relative;
    background-image: url(../img/point_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
  }
  
  @media screen and (min-width: 750px) {
    .point__top {
      min-height: 60rem;
      margin-bottom: -20rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .point__top {
      min-height: 425px;
      margin-bottom: -3rem
    }
  }
  
  html:not(.webp) .point__top {
    background-image: url(../img/point_bg.jpg)
  }
  
  .pointTop__ttl {
    position: absolute;
    top: 50%;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    color: #fff;
    font-family: "Noto Serif JP", sans-serif;
    white-space: nowrap;
    letter-spacing: .2em;
    -webkit-filter: drop-shadow(0 0 6px rgba(149, 172, 76, 0.75));
    filter: drop-shadow(0 0 6px rgba(149, 172, 76, 0.75))
  }
  
  @media screen and (min-width: 750px) {
    .pointTop__ttl {
      right: 20%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      font-size: 4.2rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .pointTop__ttl {
      right: 50%;
      -webkit-transform: translate(50%, -50%);
      transform: translate(50%, -50%);
      font-size: 2.4rem
    }
  }
  
  .point__cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1200px;
    width: 100%;
    position: relative
  }
  
  @media screen and (min-width: 750px) {
    .point__cont {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin: 0 auto 10rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .point__cont {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      padding: 0 1.5rem;
      margin: 0 auto
    }
  }
  
  .point__item {
    background-color: #fff;
    border-radius: 1.6rem;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content
  }
  
  @media screen and (min-width: 750px) {
    .point__item:nth-child(2) {
      margin-top: 15rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .point__item:nth-child(3) {
      margin-top: 30rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .point__item {
      width: 30%;
      padding: 6rem;
      -webkit-filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3))
    }
  }
  
  @media screen and (max-width: 749px) {
    .point__item {
      width: 100%;
      margin-bottom: 3rem;
      padding: 5.7rem;
      -webkit-filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3))
    }
  }
  
  .pointItem__num {
    font-size: 2.4rem;
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    font-weight: 700;
    color: #95ac4c;
    line-height: 1;
    margin-bottom: 4rem;
    position: relative
  }
  
  .pointItem__num::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    height: 3rem;
    -webkit-transform: translateY(-50%) scale(-1);
    transform: translateY(-50%) scale(-1);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
  }
  
  .pointItem__num.-point01 {
    padding-left: 3rem
  }
  
  .pointItem__num.-point01::before {
    width: 2rem;
    background-image: url(../img/point01_deco.svg)
  }
  
  .pointItem__num.-point02 {
    padding-left: 4rem
  }
  
  .pointItem__num.-point02::before {
    width: 3rem;
    background-image: url(../img/point02_deco.svg)
  }
  
  .pointItem__num.-point03 {
    padding-left: 5rem
  }
  
  .pointItem__num.-point03::before {
    width: 4rem;
    background-image: url(../img/point03_deco.svg)
  }
  
  .pointItem__ttl {
    font-weight: 500;
    line-height: 1;
    margin-bottom: 4rem
  }
  
  .pointItem__ttl .-blue {
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    font-weight: 700;
    color: #95ac4c;
    letter-spacing: 0
  }
  
  @media screen and (min-width: 750px) {
    .pointItem__ttl .-blue {
      font-size: 4.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .pointItem__ttl .-blue {
      font-size: 4.5rem
    }
  }
  
  @media screen and (min-width: 750px) {
    .pointItem__ttl {
      font-size: 2.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .pointItem__ttl {
      font-size: 2.6rem
    }
  }
  
  .pointItem__txt {
    line-height: 2
  }
  
  @media screen and (min-width: 750px) {
    .pointItem__txt {
      font-size: 1.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .pointItem__txt {
      font-size: 1.4rem;
      text-align: justify
    }
  }
  
  .point__btm {
    max-width: 720px;
    margin: 0 auto
  }
  
  @media screen and (max-width: 749px) {
    .point__btm {
      padding: 0 1.5rem
    }
  }
  
  .pointBtm__item {
    background-color: #fff;
    border-radius: 1.6rem;
    padding: 6rem
  }
  
  @media screen and (min-width: 750px) {
    .pointBtm__item {
      -webkit-filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3))
    }
  }
  
  @media screen and (max-width: 749px) {
    .pointBtm__item {
      -webkit-filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3))
    }
  }
  
  .pointBtm__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  
  .pointBtm__num {
    font-size: 2.4rem;
    color: #95ac4c;
    line-height: 1;
    margin-bottom: 4rem;
    position: relative;
    padding-left: 3rem;
    font-weight: 500
  }
  
  .pointBtm__num::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    height: 3rem;
    -webkit-transform: translateY(-50%) scale(-1);
    transform: translateY(-50%) scale(-1);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(../img/point01_deco.svg);
    width: 2rem
  }
  
  .pointBtm__num .-en {
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    font-weight: 700
  }
  
  .pointBtm__cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  
  @media screen and (max-width: 749px) {
    .pointBtm__cont {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column
    }
  }
  
  @media screen and (min-width: 750px) {
    .pointBtm__info {
      width: 50%;
      padding-right: 3rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .pointBtm__info {
      width: 100%
    }
  }
  
  @media screen and (min-width: 750px) {
    .pointBtm__info+.pointBtm__info {
      padding-right: 0;
      padding-left: 3rem;
      border-left: 1px solid #95ac4c
    }
  }
  
  @media screen and (max-width: 749px) {
    .pointBtm__info+.pointBtm__info {
      width: 100%;
      margin-top: 8rem;
      position: relative
    }
    .pointBtm__info+.pointBtm__info::after {
      content: "";
      position: absolute;
      top: -4rem;
      left: 20%;
      width: 60%;
      height: 1px;
      background: #95ac4c
    }
  }
  
  .plan {
    background-color: #f2f2f2;
    padding: 10rem 0
  }
  
  .plan__body {
    background-color: #fff;
    -webkit-filter: drop-shadow(0 8px 33px rgba(149, 172, 76, 0.33));
    filter: drop-shadow(0 8px 33px rgba(149, 172, 76, 0.33))
  }
  
  @media screen and (min-width: 1024px) {
    .plan__body {
      border-radius: 4rem;
      padding: 12rem
    }
    .plan__body.-sp {
      display: none
    }
  }
  
  @media screen and (max-width: 1023px) {
    .plan__body {
      border-radius: 2.4rem;
      border: 2px solid #95ac4c;
      padding-bottom: 2rem;
      margin-top: 8rem
    }
    .plan__body.-pc {
      display: none
    }
  }
  
  @media screen and (min-width: 1200px) {
    .plan__body {
      overflow-x: scroll
    }
  }
  
  .plan__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  
  @media screen and (min-width: 1024px) {
    .plan__head {
      margin-bottom: 12rem
    }
  }
  
  @media screen and (max-width: 1023px) {
    .plan__head {
      margin-bottom: 3rem
    }
  }
  
  .plan__ttl {
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .plan__ttl {
      font-size: 4rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .plan__ttl {
      font-size: 2.8rem
    }
  }
  
  .plan__cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
  }
  
  .plan__nowrap {
    width: 33.3%;
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px)
  }
  
  .plan__nowrapItem {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 6rem;
    height: 10rem;
    font-size: 1.8rem
  }
  
  .plan__nowrapItem:not(:first-child) {
    border-top: 1px solid #ccc
  }
  
  .plan__wrap {
    width: 66.6%;
    border: 3px solid #95ac4c;
    border-radius: 3rem;
    position: relative;
    -webkit-filter: drop-shadow(0 10px 45px rgba(0, 0, 0, 0.25));
    filter: drop-shadow(0 10px 45px rgba(0, 0, 0, 0.25));
    background-color: #fff
  }
  
  .plan__wrapDeco {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(-50%, -30%);
    transform: translate(-50%, -30%)
  }
  
  .plan__wrapHead {
    background: #95ac4c;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 2.4rem 2.4rem 0 0;
    padding: 2rem 0 1.5rem;
    margin-bottom: 4rem
  }
  
  .plan__wrapTtl {
    color: #fff;
    font-size: 3.6rem
  }
  
  .plan__wrapSub {
    color: #fff;
    font-size: 1.8rem
  }
  
  .plan__wrapCv {
    margin-bottom: 6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  
  .plan__wrapBtn {
    display: block;
    width: 80%;
    max-width: 27rem;
    margin: 0 auto 2rem
  }
  
  .plan__wrapTxt {
    text-align: center
  }
  
  @media screen and (min-width: 1024px) {
    .plan__wrapTxt {
      font-size: 2rem
    }
  }
  
  @media screen and (max-width: 1023px) {
    .plan__wrapTxt {
      font-size: 1.6rem
    }
  }
  
  .plan__wrapTxt .-red {
    color: #f85656;
    font-weight: bold
  }
  
  @media screen and (min-width: 1024px) {
    .plan__wrapTxt .-red {
      font-size: 2.8rem
    }
  }
  
  @media screen and (max-width: 1023px) {
    .plan__wrapTxt .-red {
      font-size: 2.2rem
    }
  }
  
  .plan__wrapFlex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 10rem
  }
  
  .plan__wrapFlex:not(:first-child) {
    border-top: 1px solid #ccc
  }
  
  .plan__wrapItem {
    width: 50%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  
  .plan__wrapYen {
    font-weight: bold;
    font-size: 1.8rem
  }
  
  .plan__wrapYen .-big {
    font-size: 3.6rem
  }
  
  .plan__wrapYenSub {
    font-size: 1.6rem
  }
  
  .plan__wrapBg {
    background-color: #fff;
    border: 1px solid #95ac4c;
    border-radius: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center
  }
  
  @media screen and (min-width: 1024px) {
    .plan__wrapBg {
      width: 90%;
      height: 80%
    }
  }
  
  @media screen and (max-width: 1023px) {
    .plan__wrapBg {
      width: 100%
    }
  }
  
  .plan__wrapOther {
    font-size: 1.6rem
  }
  
  .plan__wrapOther .-ora {
    color: #f63;
    font-weight: bold
  }
  
  .plan__wrapOther .-big {
    font-size: 2rem;
    font-weight: bold;
    color: #95ac4c
  }
  
  .plan__wrapItemTxt {
    font-size: 1.6rem;
    text-align: center;
    padding: 0 4%;
    line-height: 1.8
  }
  
  .plan__wrapItemTxt .-ora {
    color: #f63
  }
  
  .planSp__head {
    background-color: #95ac4c;
    position: relative;
    padding: 3rem 0 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 2rem 2rem 0 0;
    margin-bottom: 3rem
  }
  
  .planSp__ttl {
    font-size: 2.8rem;
    color: #fff
  }
  
  .planSp__sub {
    font-size: 1.8rem;
    color: #fff
  }
  
  .planSp__wrapDeco {
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }
  
  .planSp__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 1.5rem
  }
  
  .planSp__btn {
    margin-bottom: 2rem
  }
  
  .planSp__box {
    width: 100%;
    margin-top: 2.4rem
  }
  
  .planSp__boxTtl {
    font-size: 1.8rem;
    text-align: center;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: .8rem 0
  }
  
  .planSp__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 1.5rem
  }
  
  .planSp__item {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center
  }
  
  .planSp__txt {
    font-size: 1.6rem
  }
  
  .planSp__txt .-ora {
    color: #f63
  }
  
  .btn__flat {
    display: block;
    max-width: 36rem;
    background-color: #95ac4c;
    margin: 0 auto;
    border-radius: 2.9rem;
    padding: 1.5rem 0;
    font-size: 1.8rem;
    font-weight: 500;
    color: #fff;
    border: 2px solid rgba(0, 0, 0, 0);
    text-align: center
  }
  
  @media screen and (min-width: 750px) {
    .btn__flat:hover {
      background-color: #fff;
      color: #95ac4c;
      border: 2px solid #95ac4c
    }
  }
  
  .step {
    padding: 8rem 0
  }
  
  .step__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 6rem
  }
  
  .step__ttl {
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .step__ttl {
      font-size: 4rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__ttl {
      font-size: 2.8rem
    }
  }
  
  .step__lead {
    text-align: center;
    font-weight: 500;
    margin-bottom: 8rem
  }
  
  @media screen and (min-width: 750px) {
    .step__lead {
      font-size: 3.6rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__lead {
      font-size: 2.4rem
    }
  }
  
  .step__lead .-blue {
    color: #95ac4c
  }
  
  .step__cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 6rem
  }
  
  @media screen and (min-width: 750px) {
    .step__cont {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__cont {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center
    }
  }
  
  .step__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    border: 3px solid #95ac4c;
    border-radius: 2rem;
    padding: 3rem;
    position: relative;
    -webkit-filter: drop-shadow(0 0 1.8rem rgba(149, 172, 76, 0.18));
    filter: drop-shadow(0 0 1.8rem rgba(149, 172, 76, 0.18))
  }
  
  @media screen and (min-width: 750px) {
    .step__item {
      width: 27.5833333333%
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__item {
      width: 80%;
      margin-bottom: 4rem
    }
  }
  
  .step__step {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: #95ac4c;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 50%
  }
  
  @media screen and (min-width: 750px) {
    .step__step {
      width: 8.8rem;
      height: 8.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__step {
      width: 6rem;
      height: 6rem
    }
  }
  
  .step__en {
    color: #fff;
    line-height: 1;
    margin-bottom: .6rem
  }
  
  @media screen and (min-width: 750px) {
    .step__en {
      font-size: 1.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__en {
      font-size: 1.2rem
    }
  }
  
  .step__num {
    color: #fff;
    line-height: 1
  }
  
  @media screen and (min-width: 750px) {
    .step__num {
      font-size: 3.6rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__num {
      font-size: 2.4rem
    }
  }
  
  .step__img {
    margin-bottom: 2rem
  }
  
  .step__txt {
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
    color: #95ac4c;
    margin-top: auto
  }
  
  .step__btm {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  
  .step__btmTxt {
    font-weight: 500;
    margin-bottom: 1rem
  }
  
  @media screen and (min-width: 750px) {
    .step__btmTxt {
      font-size: 3.6rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .step__btmTxt {
      font-size: 2.4rem
    }
  }
  
  .step__btmWarn {
    font-size: 2rem;
    color: #f85656;
    margin-bottom: 2rem
  }
  
  .step__btn+.step__btn {
    margin-top: 2rem
  }
  
  @media screen and (min-width: 750px) {
    .step__btn:hover {
      opacity: .6
    }
  }
  
  .news {
    background-color: rgba(149, 172, 76, .05)
  }
  
  @media screen and (min-width: 750px) {
    .news {
      padding: 8rem 0
    }
  }
  
  @media screen and (max-width: 749px) {
    .news {
      padding: 5rem 0
    }
  }
  
  .news__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 4rem
  }
  
  .news__ttl {
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .news__ttl {
      font-size: 4rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .news__ttl {
      font-size: 2.8rem
    }
  }
  
  .news__cont {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  
  @media screen and (max-width: 749px) {
    .news__cont {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap
    }
  }
  
  .news__item {
    max-width: 270px
  }
  
  @media screen and (min-width: 750px) {
    .news__item {
      width: 22.5%
    }
  }
  
  @media screen and (max-width: 749px) {
    .news__item {
      width: 47%;
      margin-bottom: 3rem
    }
  }
  
  .newsItem__img {
    margin-bottom: 2rem
  }
  
  .newsItem__ttl {
    font-weight: 500;
    margin-bottom: 1rem
  }
  
  @media screen and (min-width: 750px) {
    .newsItem__ttl {
      font-size: 2rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .newsItem__ttl {
      font-size: 1.4rem
    }
  }
  
  .newsItem__txt {
    line-height: 2
  }
  
  @media screen and (min-width: 750px) {
    .newsItem__txt {
      font-size: 1.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .newsItem__txt {
      font-size: 1.2rem
    }
  }
  
  .course {
    background-color: rgba(149, 172, 76, .05);
    padding-bottom: 10rem
  }
  
  .course__top {
    position: relative;
    background-image: url(../img/course_bg.webp);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover
  }
  
  @media screen and (min-width: 750px) {
    .course__top {
      min-height: 48rem;
      margin-bottom: -15rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .course__top {
      min-height: 425px;
      margin-bottom: -3rem
    }
  }
  
  html:not(.webp) .course__top {
    background-image: url(../img/course_bg.jpg)
  }
  
  .courseTop__ttl {
    position: absolute;
    top: 20%;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #fff;
    font-family: "Noto Serif JP", sans-serif;
    white-space: nowrap;
    letter-spacing: .2em;
    -webkit-filter: drop-shadow(0 0 6px rgba(149, 172, 76, 0.75));
    filter: drop-shadow(0 0 6px rgba(149, 172, 76, 0.75))
  }
  
  @media screen and (min-width: 750px) {
    .courseTop__ttl {
      font-size: 4.2rem;
      left: 15%
    }
  }
  
  @media screen and (max-width: 749px) {
    .courseTop__ttl {
      font-size: 2.4rem;
      right: 10%
    }
  }
  
  .course__cont {
    max-width: 700px;
    width: 100%;
    background-color: #fff;
    border-radius: 1.6rem
  }
  
  @media screen and (min-width: 750px) {
    .course__cont {
      padding: 6rem 2rem;
      margin-left: auto;
      margin-right: 0;
      -webkit-filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3))
    }
  }
  
  @media screen and (max-width: 749px) {
    .course__cont {
      padding: 4rem 2rem;
      -webkit-filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3))
    }
  }
  
  .courseCont__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
  }
  
  .courseCont__plan {
    font-weight: 500;
    position: relative
  }
  
  @media screen and (min-width: 750px) {
    .courseCont__plan {
      font-size: 2.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .courseCont__plan {
      font-size: 2rem
    }
  }
  
  .courseCont__plan::before, .courseCont__plan::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 2px;
    height: 100%;
    background: #444
  }
  
  .courseCont__plan::before {
    left: 0;
    -webkit-transform: translate(-2rem, -50%) rotate(-30deg);
    transform: translate(-2rem, -50%) rotate(-30deg)
  }
  
  .courseCont__plan::after {
    right: 0;
    -webkit-transform: translate(2rem, -50%) rotate(30deg);
    transform: translate(2rem, -50%) rotate(30deg)
  }
  
  .courseCont__price {
    font-weight: 500;
    margin-bottom: 3rem;
    line-height: 1.7
  }
  
  @media screen and (min-width: 750px) {
    .courseCont__price {
      font-size: 2.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .courseCont__price {
      font-size: 2rem
    }
  }
  
  .courseCont__price .-blue {
    color: #95ac4c;
    font-weight: bold
  }
  
  .qanda {
    background-color: rgba(149, 172, 76, .05);
    padding-bottom: 10rem
  }
  
  .qanda__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 4rem
  }
  
  .qanda__ttl {
    color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .qanda__ttl {
      font-size: 4rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .qanda__ttl {
      font-size: 2.8rem
    }
  }
  
  .qanda__list {
    width: 100%;
    border-bottom: 1px solid #444;
    margin-bottom: 4rem
  }
  
  .qanda__item {
    border-top: 1px solid #444;
    position: relative
  }
  
  .qanda__item::before, .qanda__item::after {
    content: "";
    position: absolute;
    top: 3.2rem;
    right: 1.6rem;
    width: 2.8rem;
    background-color: #444
  }
  
  @media screen and (min-width: 750px) {
    .qanda__item::before, .qanda__item::after {
      height: .1rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .qanda__item::before, .qanda__item::after {
      height: .2rem
    }
  }
  
  .qanda__item::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: all .3s;
    transition: all .3s
  }
  
  .qanda__item.is-open::before {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
  }
  
  .qanda__q {
    padding: 2rem 6rem;
    position: relative;
    cursor: pointer
  }
  
  @media screen and (min-width: 750px) {
    .qanda__q {
      font-size: 1.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .qanda__q {
      font-size: 1.4rem
    }
  }
  
  .qanda__q::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 3rem;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 1.6rem;
    height: 1.6rem;
    background-image: url(../img/qanda_q.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
  }
  
  .qanda__a {
    font-size: 1.8rem;
    padding: 2rem 6rem;
    position: relative;
    border-top: 1px solid rgba(68, 68, 68, .3);
    display: none;
    cursor: pointer
  }
  
  @media screen and (min-width: 750px) {
    .qanda__a {
      font-size: 1.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .qanda__a {
      font-size: 1.4rem
    }
  }
  
  .qanda__a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 3rem;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 1.6rem;
    height: 1.6rem;
    background-image: url(../img/qanda_a.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
  }
  
  .next {
    position: relative;
    padding-bottom: 10rem
  }
  
  .next::before {
    position: absolute;
    top: -5rem;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 5rem;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(68, 68, 68, 0)), to(rgba(68, 68, 68, 0.16)));
    background-image: linear-gradient(rgba(68, 68, 68, 0) 0%, rgba(68, 68, 68, 0.16) 100%)
  }
  
  .next__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    margin-bottom: 5rem
  }
  
  @media screen and (min-width: 750px) {
    .next__head {
      padding-top: 5rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .next__head {
      padding-top: 3rem;
      padding-left: 10rem
    }
  }
  
  .next__head::before {
    content: "";
    position: absolute;
    top: 0;
    height: 100%;
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    background-color: #95ac4c
  }
  
  @media screen and (min-width: 750px) {
    .next__head::before {
      width: 5rem;
      right: calc(100% + 5rem);
      -webkit-transform-origin: bottom right;
      transform-origin: bottom right
    }
  }
  
  @media screen and (max-width: 749px) {
    .next__head::before {
      width: 2.6rem;
      left: 0;
      -webkit-transform-origin: top left;
      transform-origin: top left
    }
  }
  
  .next__ttl {
    font-weight: 200;
    -webkit-transform-origin: left;
    transform-origin: left
  }
  
  @media screen and (min-width: 750px) {
    .next__ttl {
      font-size: 10rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .next__ttl {
      font-size: 5.2rem
    }
  }
  
  .next__en {
    font-family: "Montserrat", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
    font-weight: 700;
    line-height: 1
  }
  
  @media screen and (min-width: 750px) {
    .next__en {
      font-size: 3.6rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .next__en {
      font-size: 1.8rem
    }
  }
  
  .nextCont__ttl {
    font-weight: 500;
    margin-bottom: 4rem
  }
  
  @media screen and (min-width: 750px) {
    .nextCont__ttl {
      font-size: 2.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .nextCont__ttl {
      font-size: 2rem
    }
  }
  
  .nextCont__txt {
    line-height: 2;
    margin-bottom: 4rem
  }
  
  @media screen and (min-width: 750px) {
    .nextCont__txt {
      font-size: 1.8rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .nextCont__txt {
      font-size: 1.4rem
    }
  }
  
  .next_movie {
    width: 100%;
    aspect-ratio: 16/9
  }
  
  .next_movie iframe {
    width: 100%;
    height: 100%;
    border-radius: 1rem
  }
  
  @media screen and (min-width: 750px) {
    .next_movie iframe {
      -webkit-filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 16px 20px rgba(149, 172, 76, 0.3))
    }
  }
  
  @media screen and (max-width: 749px) {
    .next_movie iframe {
      -webkit-filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3));
      filter: drop-shadow(0 8px 10px rgba(149, 172, 76, 0.3))
    }
  }
  
  .cv {
    background-color: rgba(149, 172, 76, .05)
  }
  
  @media screen and (min-width: 750px) {
    .cv {
      padding: 8rem 0
    }
  }
  
  @media screen and (max-width: 749px) {
    .cv {
      padding: 6rem 0
    }
  }
  
  .cv__cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  
  @media screen and (min-width: 750px) {
    .cv__cont {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center
    }
  }
  
  @media screen and (max-width: 749px) {
    .cv__cont {
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column
    }
  }
  
  @media screen and (min-width: 750px) {
    .cv__item {
      width: 50%;
      text-align: center
    }
  }
  
  @media screen and (max-width: 749px) {
    .cv__item {
      width: 100%;
      text-align: center
    }
  }
  
  .cvItem__telSup {
    font-size: 2rem;
    font-weight: 500
  }
  
  @media screen and (max-width: 749px) {
    .cvItem__telSup {
      margin-bottom: 1rem
    }
  }
  
  .cvItem__tel {
    font-size: 3.1rem;
    font-weight: 500
  }
  
  @media screen and (max-width: 749px) {
    .cvItem__tel {
      margin-bottom: 1rem
    }
  }
  
  .cvItem__telSub {
    font-size: 1.4rem
  }
  
  .cvItem__btnSup {
    font-size: 1.6rem
  }
  
  @media screen and (min-width: 750px) {
    .cvItem__btnSup {
      margin-bottom: 1rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .cvItem__btnSup {
      margin-bottom: 2rem
    }
  }
  
  @media screen and (max-width: 749px) {
    .foot {
      margin-bottom: 13rem
    }
  }
  
  .ft__inner {
    padding-top: 8rem;
    padding-bottom: 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 1rem solid #95ac4c
  }
  
  .ft__sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 5rem
  }
  
  .ftSns__item {
    width: 6rem;
    margin: 0 1.5rem
  }
  
  .ft__logo {
    width: 200px;
    margin-bottom: 6rem
  }
  
  .ft__copy {
    font-size: 1.2rem
  }