/* planContent */
#planContent .titleWrap:after {
  background: url(/img/lower/bg_plan.jpg) left center no-repeat;
  background-size: cover; }
#planContent .intro {
  padding: calc(111 / 648 * 100%) 0 0 0; }
  #planContent .intro .text {
    font-size: 2.2rem;
    line-height: 1.82;
    margin: 0 0 calc(92 / 648 * 100%) 0; }
  #planContent .intro .buttonArea {
    margin: 0 0 calc(111 / 648 * 100%) 0; }
    #planContent .intro .buttonArea .only {
      color: #ee5400;
      font-size: 2.6rem;
      line-height: 1;
      font-weight: 700;
      text-align: center;
      margin: 0 0 calc(40 / 648 * 100%) 0; }
    #planContent .intro .buttonArea .button {
      margin-bottom: calc(33 / 648 * 100%); }
    #planContent .intro .buttonArea .price {
      color: #333333;
      font-size: 2.4rem;
      line-height: 1;
      font-weight: 500;
      text-align: center; }
#planContent #courseArea {
  background: url(/img/lower/bg_plan_course_sp.png) center top no-repeat;
  background-size: contain; }
  #planContent #courseArea .contentInner {
    color: #333333; }
  #planContent #courseArea .title {
    font-size: 3.2rem;
    line-height: 1.75;
    font-weight: 700;
    text-align: center;
    text-decoration: underline;
    text-underline-offset: 0.4em;
    margin: 0 0 calc(28 / 648 * 100%) 0;
    padding: calc(92 / 648 * 100%) 0 0 0; }
  #planContent #courseArea .desc {
    font-size: 2.2rem;
    line-height: 1.82;
    text-align: center;
    margin: 0 0 calc(48 / 648 * 100%) 0; }
  #planContent #courseArea .point {
    margin: 0 0 calc(110 / 648 * 100%) 0; }
  #planContent #courseArea .block .blockTitle {
    width: calc(200 / 648 * 100%);
    color: #ffffff;
    font-size: 2.4rem;
    line-height: 1;
    text-align: center;
    background-color: #333333;
    margin: 0 auto calc(48 / 648 * 100%) auto;
    padding: 0.85em 0; }
  #planContent #courseArea .block .blockCont {
    margin: 0 0 calc(95 / 648 * 100%) 0; }
    #planContent #courseArea .block .blockCont .price {
      font-size: 3rem;
      line-height: 1;
      font-weight: 500;
      text-align: center; }
  #planContent #courseArea .block .table {
    border: 1px solid #cccccc; }
    #planContent #courseArea .block .table.table01 .row .head {
      flex-basis: calc(236 / 646 * 100%); }
    #planContent #courseArea .block .table.table01 .row .cont {
      flex-basis: calc(410 / 646 * 100%); }
    #planContent #courseArea .block .table.table02 .row .head {
      flex-basis: calc(291 / 646 * 100%); }
    #planContent #courseArea .block .table.table02 .row .cont {
      flex-basis: calc(355 / 646 * 100%); }
      #planContent #courseArea .block .table.table02 .row .cont .sub .subHead {
        flex-basis: calc(155 / 355 * 100%); }
      #planContent #courseArea .block .table.table02 .row .cont .sub .subCont {
        flex-basis: calc(200 / 355 * 100%); }
    #planContent #courseArea .block .table .bg {
      background-color: #f9f9f9; }
    #planContent #courseArea .block .table .row {
      display: flex;
      border-bottom: 1px solid #cccccc; }
      #planContent #courseArea .block .table .row:last-child {
        border-bottom: 0; }
      #planContent #courseArea .block .table .row .head {
        font-size: 2.1rem;
        line-height: 1.62;
        font-weight: 700;
        border-right: 1px solid #cccccc;
        box-sizing: border-box; }
      #planContent #courseArea .block .table .row .headText {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        width: 100%;
        height: 100%;
        padding: 2.3em 0.5em 2.3em 1.0em;
        box-sizing: border-box; }
        #planContent #courseArea .block .table .row .headText .expiry {
          display: block;
          flex-basis: 100%; }
      #planContent #courseArea .block .table .row .cont {
        display: flex;
        align-items: center;
        flex-wrap: wrap; }
        #planContent #courseArea .block .table .row .cont p {
          flex-basis: 100%;
          font-size: 2.1rem;
          line-height: 1.62;
          font-weight: 500; }
        #planContent #courseArea .block .table .row .cont .contText {
          padding: 2.3em 0.5em 2.3em 1.0em;
          box-sizing: border-box; }
        #planContent #courseArea .block .table .row .cont .sub {
          display: flex;
          flex-basis: 100%;
          border-bottom: 1px solid #cccccc; }
          #planContent #courseArea .block .table .row .cont .sub:last-child {
            border-bottom: 0; }
          #planContent #courseArea .block .table .row .cont .sub .subHead {
            font-size: 2.1rem;
            line-height: 1.62;
            font-weight: 700;
            border-right: 1px solid #cccccc;
            box-sizing: border-box; }
          #planContent #courseArea .block .table .row .cont .sub .subCont {
            display: flex;
            align-items: center;
            padding: 2.3em 0.5em 2.3em 1.0em;
            box-sizing: border-box; }
  #planContent #courseArea .buttonArea {
    margin: 0 0 calc(120 / 648 * 100%) 0; }

@media screen and (min-width: 769px) {
  #planContent .titleWrap:after {
    background: url(/img/lower/bg_plan.jpg) center center no-repeat;
    background-size: cover; }
  #planContent .intro {
    padding: calc(76 / 1400 * 100%) 0 0 0; }
    #planContent .intro .text {
      width: calc(1000 / 1400 * 100%);
      max-width: 680px;
      font-size: 1.5rem;
      line-height: 1.87;
      text-align: center;
      margin: 0 auto calc(62 / 1400 * 100%) auto; }
    #planContent .intro .buttonArea {
      margin: 0 0 calc(100 / 1400 * 100%) 0; }
      #planContent .intro .buttonArea .only {
        font-size: 1.8rem;
        line-height: 1;
        font-weight: 500;
        margin: 0 0 calc(28 / 1400 * 100%) 0; }
      #planContent .intro .buttonArea .button {
        margin-bottom: calc(33 / 1400 * 100%); }
      #planContent .intro .buttonArea .price {
        font-size: 1.8rem;
        line-height: 1; }
  #planContent #courseArea {
    background: url(/img/lower/bg_plan_course.png) center top no-repeat;
    background-size: contain; }
    #planContent #courseArea .contentInner {
      max-width: 1260px; }
    #planContent #courseArea .title {
      font-size: 2.2rem;
      line-height: 1.55;
      text-underline-offset: 0.4em;
      text-decoration-thickness: 2px;
      margin: 0 0 calc(4 / 1240 * 100%) 0;
      padding: calc(52 / 1240 * 100%) 0 0 0; }
    #planContent #courseArea .desc {
      font-size: 1.6rem;
      line-height: 2.13;
      margin: 0 0 calc(34 / 1240 * 100%) 0; }
    #planContent #courseArea .point {
      width: calc(1000 / 1240 * 100%);
      max-width: 672px;
      margin: 0 auto calc(67 / 1240 * 100%) auto; }
    #planContent #courseArea .block .blockTitle {
      width: calc(160 / 1240 * 100%);
      font-size: 1.8rem;
      line-height: 1;
      font-weight: 500;
      margin: 0 auto calc(48 / 1240 * 100%) auto;
      padding: 0.78 0; }
    #planContent #courseArea .block .blockCont {
      margin: 0 0 calc(60 / 1240 * 100%) 0; }
      #planContent #courseArea .block .blockCont .price {
        font-size: 1.8rem;
        line-height: 1; }
    #planContent #courseArea .block .table {
      max-width: 890px;
      margin: auto;
      border: 0;
      border-top: 1px solid #cccccc;
      border-bottom: 1px solid #cccccc; }
      #planContent #courseArea .block .table.table01 .row .head {
        flex-basis: calc(360 / 890 * 100%); }
      #planContent #courseArea .block .table.table01 .row .cont {
        flex-basis: calc(530 / 890 * 100%); }
      #planContent #courseArea .block .table.table02 .row .head {
        flex-basis: calc(297 / 890 * 100%); }
      #planContent #courseArea .block .table.table02 .row .headText {
        justify-content: center;
        padding: 1.2em 0 1.2em 0; }
      #planContent #courseArea .block .table.table02 .row .cont {
        flex-basis: calc(593 / 890 * 100%); }
        #planContent #courseArea .block .table.table02 .row .cont .sub .subHead {
          flex-basis: calc(273 / 593 * 100%); }
        #planContent #courseArea .block .table.table02 .row .cont .sub .subCont {
          flex-basis: calc(320 / 593 * 100%); }
      #planContent #courseArea .block .table .row .head {
        font-size: 1.8rem;
        line-height: 1.56; }
      #planContent #courseArea .block .table .row .headText {
        text-align: center;
        padding: 1.2em 0.5em 1.2em 2.7em; }
        #planContent #courseArea .block .table .row .headText .expiry {
          flex-basis: 100%; }
      #planContent #courseArea .block .table .row .cont p {
        font-size: 1.6rem;
        line-height: 1.75;
        font-weight: 500; }
      #planContent #courseArea .block .table .row .cont .contText {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        min-height: calc(28 / 16 * 3em + 1.2em + 1.2em);
        padding: 1.2em 0.5em 1.2em 3.4em; }
      #planContent #courseArea .block .table .row .cont .sub:last-child {
        border-bottom: 0; }
      #planContent #courseArea .block .table .row .cont .sub .subHead {
        font-size: 1.8rem;
        line-height: 1.56;
        font-weight: 500; }
      #planContent #courseArea .block .table .row .cont .sub .subCont {
        padding: 2.0em 0.5em 1.9em 4.3em; }
    #planContent #courseArea .buttonArea {
      margin: 0 0 calc(121 / 1240 * 100%) 0;
      padding: calc(22 / 1240 * 100%) 0 0 0; } }
