@charset "UTF-8";
@import url(https://rainbow-apps.com/css/common.css);
/* ///////////////////////////
webfont
/////////////////////////// */
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans:300,400,600);
.mt0 {
  margin-top: 0px !important; }

.mt1 {
  margin-top: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mt2 {
  margin-top: 20px !important; }

.mt25 {
  margin-top: 25px !important; }

.mt3 {
  margin-top: 30px !important; }

.mt35 {
  margin-top: 35px !important; }

.mt4 {
  margin-top: 40px !important; }

.mt45 {
  margin-top: 45px !important; }

.mt5 {
  margin-top: 50px !important; }

.mt55 {
  margin-top: 55px !important; }

.mt6 {
  margin-top: 60px !important; }

.mt65 {
  margin-top: 65px !important; }

.mt7 {
  margin-top: 70px !important; }

.mt75 {
  margin-top: 75px !important; }

.mt8 {
  margin-top: 80px !important; }

.mt85 {
  margin-top: 85px !important; }

.mt9 {
  margin-top: 90px !important; }

.mt95 {
  margin-top: 95px !important; }

.mt10 {
  margin-top: 100px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.mb1 {
  margin-bottom: 10px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.mb2 {
  margin-bottom: 20px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.mb3 {
  margin-bottom: 30px !important; }

.mb35 {
  margin-bottom: 35px !important; }

.mb4 {
  margin-bottom: 40px !important; }

.mb45 {
  margin-bottom: 45px !important; }

.mb5 {
  margin-bottom: 50px !important; }

.mb55 {
  margin-bottom: 55px !important; }

.mb6 {
  margin-bottom: 60px !important; }

.mb65 {
  margin-bottom: 65px !important; }

.mb7 {
  margin-bottom: 70px !important; }

.mb75 {
  margin-bottom: 75px !important; }

.mb8 {
  margin-bottom: 80px !important; }

.mb85 {
  margin-bottom: 85px !important; }

.mb9 {
  margin-bottom: 90px !important; }

.mb95 {
  margin-bottom: 95px !important; }

.mb10 {
  margin-bottom: 100px !important; }

.mr0 {
  margin-right: 0px !important; }

.mr1 {
  margin-right: 10px !important; }

.mr15 {
  margin-right: 15px !important; }

.mr2 {
  margin-right: 20px !important; }

.mr25 {
  margin-right: 25px !important; }

.mr3 {
  margin-right: 30px !important; }

.mr35 {
  margin-right: 35px !important; }

.mr4 {
  margin-right: 40px !important; }

.mr45 {
  margin-right: 45px !important; }

.mr5 {
  margin-right: 50px !important; }

.mr55 {
  margin-right: 55px !important; }

.mr6 {
  margin-right: 60px !important; }

.mr65 {
  margin-right: 65px !important; }

.mr7 {
  margin-right: 70px !important; }

.mr75 {
  margin-right: 75px !important; }

.mr8 {
  margin-right: 80px !important; }

.mr85 {
  margin-right: 85px !important; }

.mr9 {
  margin-right: 90px !important; }

.mr95 {
  margin-right: 95px !important; }

.mr10 {
  margin-right: 100px !important; }

.ml0 {
  margin-left: 0px !important; }

.ml1 {
  margin-left: 10px !important; }

.ml15 {
  margin-left: 15px !important; }

.ml2 {
  margin-left: 20px !important; }

.ml25 {
  margin-left: 25px !important; }

.ml3 {
  margin-left: 30px !important; }

.ml35 {
  margin-left: 35px !important; }

.ml4 {
  margin-left: 40px !important; }

.ml45 {
  margin-left: 45px !important; }

.ml5 {
  margin-left: 50px !important; }

.ml55 {
  margin-left: 55px !important; }

.ml6 {
  margin-left: 60px !important; }

.ml65 {
  margin-left: 65px !important; }

.ml7 {
  margin-left: 70px !important; }

.ml75 {
  margin-left: 75px !important; }

.ml8 {
  margin-left: 80px !important; }

.ml85 {
  margin-left: 85px !important; }

.ml9 {
  margin-left: 90px !important; }

.ml95 {
  margin-left: 95px !important; }

.ml10 {
  margin-left: 100px !important; }

.pt0 {
  padding-top: 0px !important; }

.pt1 {
  padding-top: 10px !important; }

.pt15 {
  padding-top: 15px !important; }

.pt2 {
  padding-top: 20px !important; }

.pt25 {
  padding-top: 25px !important; }

.pt3 {
  padding-top: 30px !important; }

.pt35 {
  padding-top: 35px !important; }

.pt4 {
  padding-top: 40px !important; }

.pt45 {
  padding-top: 45px !important; }

.pt5 {
  padding-top: 50px !important; }

.pt55 {
  padding-top: 55px !important; }

.pt6 {
  padding-top: 60px !important; }

.pt65 {
  padding-top: 65px !important; }

.pt7 {
  padding-top: 70px !important; }

.pt75 {
  padding-top: 75px !important; }

.pt8 {
  padding-top: 80px !important; }

.pt85 {
  padding-top: 85px !important; }

.pt9 {
  padding-top: 90px !important; }

.pt95 {
  padding-top: 95px !important; }

.pt10 {
  padding-top: 100px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.pb1 {
  padding-bottom: 10px !important; }

.pb15 {
  padding-bottom: 15px !important; }

.pb2 {
  padding-bottom: 20px !important; }

.pb25 {
  padding-bottom: 25px !important; }

.pb3 {
  padding-bottom: 30px !important; }

.pb35 {
  padding-bottom: 35px !important; }

.pb4 {
  padding-bottom: 40px !important; }

.pb45 {
  padding-bottom: 45px !important; }

.pb5 {
  padding-bottom: 50px !important; }

.pb55 {
  padding-bottom: 55px !important; }

.pb6 {
  padding-bottom: 60px !important; }

.pb65 {
  padding-bottom: 65px !important; }

.pb7 {
  padding-bottom: 70px !important; }

.pb75 {
  padding-bottom: 75px !important; }

.pb8 {
  padding-bottom: 80px !important; }

.pb85 {
  padding-bottom: 85px !important; }

.pb9 {
  padding-bottom: 90px !important; }

.pb95 {
  padding-bottom: 95px !important; }

.pb10 {
  padding-bottom: 100px !important; }

.pr0 {
  padding-right: 0px !important; }

.pr1 {
  padding-right: 10px !important; }

.pr15 {
  padding-right: 15px !important; }

.pr2 {
  padding-right: 20px !important; }

.pr25 {
  padding-right: 25px !important; }

.pr3 {
  padding-right: 30px !important; }

.pr35 {
  padding-right: 35px !important; }

.pr4 {
  padding-right: 40px !important; }

.pr45 {
  padding-right: 45px !important; }

.pr5 {
  padding-right: 50px !important; }

.pr55 {
  padding-right: 55px !important; }

.pr6 {
  padding-right: 60px !important; }

.pr65 {
  padding-right: 65px !important; }

.pr7 {
  padding-right: 70px !important; }

.pr75 {
  padding-right: 75px !important; }

.pr8 {
  padding-right: 80px !important; }

.pr85 {
  padding-right: 85px !important; }

.pr9 {
  padding-right: 90px !important; }

.pr95 {
  padding-right: 95px !important; }

.pr10 {
  padding-right: 100px !important; }

.pl0 {
  padding-left: 0px !important; }

.pl1 {
  padding-left: 10px !important; }

.pl15 {
  padding-left: 15px !important; }

.pl2 {
  padding-left: 20px !important; }

.pl25 {
  padding-left: 25px !important; }

.pl3 {
  padding-left: 30px !important; }

.pl35 {
  padding-left: 35px !important; }

.pl4 {
  padding-left: 40px !important; }

.pl45 {
  padding-left: 45px !important; }

.pl5 {
  padding-left: 50px !important; }

.pl55 {
  padding-left: 55px !important; }

.pl6 {
  padding-left: 60px !important; }

.pl65 {
  padding-left: 65px !important; }

.pl7 {
  padding-left: 70px !important; }

.pl75 {
  padding-left: 75px !important; }

.pl8 {
  padding-left: 80px !important; }

.pl85 {
  padding-left: 85px !important; }

.pl9 {
  padding-left: 90px !important; }

.pl95 {
  padding-left: 95px !important; }

.pl10 {
  padding-left: 100px !important; }

#header .navi-btm .nav-course .parent {
  background-position: center top; }

#header .navi-btm .nav-course .parent span {
  color: #3f98d5; }

.calendar-container {
  position: relative !important;
  padding-bottom: 65%;
  padding-top: 30px;
  height: 0px; }

.calendar-container iframe,
.calendar-container object,
.calendar-container embed {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 500px !important; }

@media screen and (max-width: 460px) {
  .calendar-container {
    padding-bottom: 75%; } }
.entry-content img, #content embed, #content object, #content iframe, #content video {
  border: 1px solid #eeeeee !important;
  padding: 6px !important;
  background-color: rgba(230, 230, 230, 0.4) !important;
  border-radius: 3px; }

@media screen and (max-width: 700px) {
  iframe[src*="calendar"] {
    width: 100% !important;
    height: 400px !important; } }
@media screen and (max-width: 540px) {
  iframe[src*="calendar"] {
    width: 100% !important;
    height: 300px !important; } }
@media screen and (max-width: 320px) {
  .calendar-container {
    padding-bottom: 100%; }

  iframe[src*="calendar"] {
    width: 300px !important;
    height: 300px !important; } }
.h1-area {
  background-color: #3f98d5; }
  .h1-area img {
    width: 54px; }

.top-btn ul,
.bottom-btn ul {
  width: 90%;
  margin: 0 auto;
  overflow: hidden; }
  .top-btn ul li,
  .bottom-btn ul li {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    vertical-align: middle;
    width: 49%; }
    .top-btn ul li a,
    .bottom-btn ul li a {
      text-align: center;
      border-radius: 5px 5px 0 0;
      -webkit-border-radius: 5px 5px 0 0;
      -moz-border-radius: 5px 5px 0 0;
      display: block;
      padding: 15px 0; }
      .top-btn ul li a img,
      .bottom-btn ul li a img {
        width: 55px;
        vertical-align: middle;
        margin-right: 20px; }
      .top-btn ul li a span,
      .bottom-btn ul li a span {
        letter-spacing: 4px;
        font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
        color: #fff;
        font-size: 18px;
        vertical-align: middle; }
  .top-btn ul .left a,
  .bottom-btn ul .left a {
    margin-right: 2%;
    background-color: #c1c3c3; }
  .top-btn ul .right a,
  .bottom-btn ul .right a {
    background-color: #3fb7d5;
    cursor: default; }

.bottom-btn {
  border-top: 3px solid #3fb7d5; }
  .bottom-btn ul li a {
    border-radius: 0 0 5px 5px;
    -webkit-border-radius: 0 0 5px 5px;
    -moz-border-radius: 0 0 5px 5px; }

section {
  max-width: 800px;
  width: 94%;
  padding: 6% 3%;
  margin: 0 auto; }
  section p {
    text-align: left; }

section.class {
  max-width: 1050px; }

.main-area {
  background-color: #3fb7d5;
  margin-bottom: 50px; }
  .main-area p {
    color: #fff;
    text-align: center; }
  .main-area .icon {
    width: 93px;
    margin: 0 auto 10px; }
  .main-area h2 {
    letter-spacing: 5px;
    text-align: center;
    font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
    font-size: 35px;
    color: #fff;
    margin-bottom: 10px; }
  .main-area .colorful-line {
    width: 460px;
    margin: 0 auto 10px; }
  .main-area .catch {
    font-size: 25px;
    margin-bottom: 30px; }
  .main-area .flowChart {
    width: 78%;
    margin: 1% auto 5%; }
  .main-area .sub-catch {
    font-size: 16px; }

article h3 {
  letter-spacing: 6px;
  font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
  color: #fff;
  font-size: 28px;
  text-align: center;
  padding: 10px 0;
  background-color: #444;
  width: 95%;
  margin: 0 auto; }

.point {
  max-width: 900px; }
  .point .number-box {
    overflow: hidden;
    margin-bottom: 70px; }
    .point .number-box .title img,
    .point .number-box .title span {
      display: inline-block;
      *display: inline;
      *zoom: 1;
      vertical-align: middle; }
    .point .number-box .title img {
      width: 64px;
      margin-right: 30px; }
    .point .number-box .title span {
      letter-spacing: 1px;
      font-size: 25px;
      font-weight: bold;
      font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO"; }
    .point .number-box .left-text {
      float: left;
      width: 67%;
      margin: 25px 0 0 95px; }
      .point .number-box .left-text .link-text {
        margin-top: 50px;
        letter-spacing: 4px; }
        .point .number-box .left-text .link-text a {
          background: url(https://rainbow-apps.com/images/common/arrow_blue.png) 0 center no-repeat;
          -webkit-background-size: 9px auto;
          -moz-background-size: 9px auto;
          -o-background-size: 9px auto;
          background-size: 9px auto;
          padding-left: 15px; }
        .point .number-box .left-text .link-text a:hover {
          text-decoration: underline; }
    .point .number-box .right-img {
      float: right;
      width: 18%;
      max-width: 130px; }
  .point .nb2 .title span {
    letter-spacing: 5px; }

.flow {
  overflow: hidden;
  max-width: 1100px; }
  .flow .step-box {
    width: 27%;
    float: left;
    position: relative;
    padding: 5% 0 0 4%;
    margin-left: -2%; }
    .flow .step-box .img {
      margin-bottom: 10px; }
    .flow .step-box .title {
      font-size: 20px;
      font-weight: bold;
      margin-bottom: 10px; }
    .flow .step-box .step-number {
      position: absolute;
      top: 0;
      left: 0;
      width: 30%; }
  .flow .step-box.first {
    margin-left: 0; }
  .flow .arrow {
    width: 30px;
    float: left;
    padding: 15% 0 10% 2%; }
  .flow .notice {
    clear: both;
    text-align: center;
    font-size: 13px;
    padding: 80px 0 0; }

.cashback {
  width: 60%; }

.school {
  padding-top: 0;
  max-width: 1100px; }
  .school ul {
    overflow: hidden;
    padding: 40px 0 0;
    width: 100%;
    margin: 0 auto;
    text-align: center; }
    .school ul li {
      width: 60%;
      margin: 0 auto; }
      .school ul li span {
        display: inline-block;
        *display: inline;
        *zoom: 1;
        vertical-align: middle; }
      .school ul li a {
        padding: 18px 0;
        display: block;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        border-radius: 10px;
        color: #fff; }
      .school ul li .lL {
        width: 19%;
        text-align: right; }
        .school ul li .lL img {
          width: 60px; }
      .school ul li .cC {
        text-align: left;
        width: 58%;
        font-size: 20px;
        padding-left: 3%;
        letter-spacing: 4px; }
      .school ul li .rR {
        width: 6%;
        text-align: right; }
        .school ul li .rR img {
          width: 24px; }
    .school ul .btn-career a {
      background-color: #3f98d5;
      border: 4px solid #61b5ef; }
    .school ul .btn-usually a {
      background-color: #3fb7d5;
      border: 4px solid #84e0e8; }
  .school .anno {
    padding-top: 20px;
    text-align: left; }
    .school .anno li {
      text-indent: -1em;
      padding-left: 1em;
      font-size: 13px; }

.syllabus {
  max-width: 980px; }
  .syllabus table {
    margin-top: 5%; }
    .syllabus table tr {
      border-bottom: 1px solid #fff; }
    .syllabus table tr:nth-child(odd) th, .syllabus table tr:nth-child(odd) td {
      background-color: #ebf7c6; }
    .syllabus table tr:nth-child(odd) .number {
      background-color: #3fb7d5; }
    .syllabus table tr:nth-child(even) th, .syllabus table tr:nth-child(even) td {
      background-color: #fff; }
    .syllabus table tr:nth-child(even) .number {
      background-color: #3fb7d5; }
    .syllabus table th, .syllabus table td {
      text-align: left;
      vertical-align: middle;
      padding: 1% 2%; }
    .syllabus table td.number {
      color: #fff;
      font-size: 30px;
      width: 8%;
      text-align: center; }
    .syllabus table th {
      font-size: 20px;
      width: 30%;
      font-weight: normal; }

.graph table {
  width: 100%;
  margin-top: 0; }
  .graph table th {
    width: 20%;
    text-align: center;
    color: #fff;
    font-weight: normal;
    border-bottom: 1px solid #fff;
    padding: 1.5% 2% 1%; }
  .graph table td {
    background-color: #fff !important;
    border: 1px solid #e5e6e6; }
    .graph table td a:hover {
      text-decoration: underline; }

/* ==========================================================
	SP 920px以下
========================================================== */
@media screen and (max-width: 920px) {
  .h1-area img {
    width: 27px; }

  .top-btn ul,
  .bottom-btn ul {
    width: 95%; }
    .top-btn ul li a,
    .bottom-btn ul li a {
      padding: 4% 0;
      font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO"; }
      .top-btn ul li a img,
      .bottom-btn ul li a img {
        width: 30px;
        display: block;
        margin: 0 auto; }
      .top-btn ul li a span,
      .bottom-btn ul li a span {
        font-size: 14px; }

  section {
    padding: 10% 3%; }

  .main-area .icon {
    width: 45px;
    margin: 0 auto 10px; }
  .main-area h2 {
    font-size: 25px; }
  .main-area .colorful-line {
    width: 100%;
    margin: 0 auto 20px; }
  .main-area .catch {
    font-size: 16px;
    margin-bottom: 20px; }
  .main-area .sub-catch {
    font-size: 14px; }

  article h3 {
    font-size: 19px; }

  .point .number-box {
    overflow: hidden;
    margin-bottom: 30px; }
    .point .number-box .title img,
    .point .number-box .title span {
      display: inline-block;
      *display: inline;
      *zoom: 1;
      vertical-align: middle; }
    .point .number-box .title img {
      width: 12%;
      margin-right: 2%; }
    .point .number-box .title span {
      font-size: 17px;
      width: 80%;
      letter-spacing: 1px; }
    .point .number-box .left-text {
      float: left;
      width: 70%;
      margin: 10px 0 0 0; }
      .point .number-box .left-text .link-text {
        margin-top: 30px; }
    .point .number-box .right-img {
      float: right;
      width: 18%;
      max-width: 130px; }

  .flow .step-box {
    padding: 5% 0 0 3%; }
  .flow .sp_none {
    display: block; }
  .flow .sp {
    display: none; }

  #contents .flow .step-box .title {
    line-height: 1.3; }

  .syllabus {
    max-width: 1100px; }
    .syllabus table th, .syllabus table td {
      text-align: left;
      vertical-align: middle;
      padding: 5px; }
    .syllabus table td.number {
      font-size: 16px;
      width: 9%; }
    .syllabus table th {
      font-size: 14px;
      width: 35%;
      padding: 10px; } }
/* ==========================================================
	SP 770px以下
========================================================== */
@media screen and (max-width: 770px) {
  .point .number-box .title img {
    width: 8%; }

  .point .number-box .left-text {
    padding-left: 10%; } }
/* ==========================================================
	SP 720px以下
========================================================== */
@media screen and (max-width: 720px) {
  .flow .sp_none {
    display: none; }
  .flow .sp {
    display: block; }
  .flow .step-box {
    width: 96%;
    float: none;
    position: relative;
    padding: 5% 0 0 4%;
    margin: 0 0 20px; }
    .flow .step-box .title {
      font-size: 16px;
      margin-bottom: 10px; }
    .flow .step-box .step-number {
      width: 25%; }
  .flow .step-box.first {
    margin-left: 0; }
  .flow .arrow {
    width: 30px;
    margin: 0 auto;
    float: none;
    padding: 10px 0; }
  .flow .notice {
    padding: 30px 0 0; } }
/* ==========================================================
	SP 640px以下
========================================================== */
@media screen and (max-width: 640px) {
  .school ul li {
    width: 100%; }

  .school ul li .cC {
    text-align: center;
    width: 62%;
    font-size: 18px;
    letter-spacing: 4px;
    padding: 0; }

  .school ul li a {
    padding: 12px 0; }

  .school ul li .lL {
    width: 19%; }

  .cashback {
    width: 90%; }

  .main-area h2 {
    font-size: 20px; }

  .main-area .colorful-line {
    margin-bottom: 0; }

  .top-btn ul li a span, .bottom-btn ul li a span {
    letter-spacing: 2px; }

  .point .number-box .title span {
    letter-spacing: 1px; }

  .point .number-box .left-text .link-text {
    font-size: 14px;
    letter-spacing: 1px; }

  .main-area .flowChart {
    width: 90%; } }
