@charset "UTF-8";
/*読み込み*/
html {
  font-size: 62.5%;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  word-wrap: break-word; }

body {
  font-size: 1.4rem;
  margin: 0;
  padding: 0; }
  @media only screen and (min-width: 750px) {
    body {
      font-size: 1.6rem; } }

*,
*::before,
*::after {
  box-sizing: border-box; }

h1, h2, h3, div, p, ul, li {
  margin: 0;
  padding: 0; }

li {
  list-style: none; }

img {
  width: 100%;
  height: auto;
  line-height: 0;
  vertical-align: bottom; }

a:hover {
  opacity: 0.8; }

.only_pc {
  display: none; }
  @media only screen and (min-width: 750px) {
    .only_pc {
      display: inline; } }

.only_sp {
  display: inline; }
  @media only screen and (min-width: 750px) {
    .only_sp {
      display: none; } }

@media only screen and (min-width: 1200px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; } }

@media only screen and (min-width: 420px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; } }
/*ヘッダー*/
.header {
  background: #FFF; }
  .header__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 13.333vw;
    padding: 0 2.666vw 0 3.466vw;
    margin: 0 auto; }
    @media only screen and (min-width: 750px) {
      .header__inner {
        width: 100%;
        height: calc(70/960 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .header__inner {
        width: 960px;
        height: 70px;
        padding: 0 19px 0 50px; } }
    .header__inner .logo_ora2 {
      width: 13.066vw; }
      @media only screen and (min-width: 750px) {
        .header__inner .logo_ora2 {
          width: calc(72/960 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .header__inner .logo_ora2 {
          width: 72px; } }
    .header__inner .logo_sunstar {
      width: 21.333vw; }
      @media only screen and (min-width: 750px) {
        .header__inner .logo_sunstar {
          width: calc(142/960 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .header__inner .logo_sunstar {
          width: 142px; } }

/*kv*/
.kv {
  position: relative;
  width: 100%;
  padding: 2vw 0 0 0;
  margin: 0 auto;
  overflow-x: hidden; }
  @media only screen and (min-width: 750px) {
    .kv {
      padding: calc(27/1200 * 100vw) 0 0 0; } }
  @media only screen and (min-width: 1200px) {
    .kv {
      width: 1200px;
      padding: 27px 0 0 0;
      overflow-x: inherit; } }
  .kv h1 {
    width: 86.93vw;
    margin: 0 auto; }
    @media only screen and (min-width: 750px) {
      .kv h1 {
        width: calc(1010/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .kv h1 {
        width: 1010px; } }
  .kv .note {
    width: 29em;
    color: #FFF;
    font-size: 1.86vw;
    margin: -0.5em 0 0 3.6vw; }
    @media only screen and (min-width: 750px) {
      .kv .note {
        font-size: calc(14/1200 * 100vw);
        margin: calc(-28/1200 * 100vw) 0 0 calc(250/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .kv .note {
        font-size: 1.4rem;
        margin: -28px 0 0 250px; } }
  .kv .kv_ph01 {
    position: absolute;
    width: 39.6vw;
    top: 42.26vw;
    left: 4.66vw; }
    @media only screen and (min-width: 750px) {
      .kv .kv_ph01 {
        width: calc(232/1200 * 100%);
        top: calc(410/1200 * 100vw);
        left: calc(-7/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .kv .kv_ph01 {
        width: 232px;
        top: 410px;
        left: -7px; } }
  .kv .kv_ph02 {
    position: absolute;
    width: 48vw;
    top: 42.26vw;
    right: 2.933vw; }
    @media only screen and (min-width: 750px) {
      .kv .kv_ph02 {
        width: calc(277/1200 * 100%);
        top: calc(410/1200 * 100vw);
        right: calc(-7/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .kv .kv_ph02 {
        width: 277px;
        top: 410px;
        right: -7px; } }
  .kv .period {
    width: 86vw;
    margin: 70.26vw auto 0; }
    @media only screen and (min-width: 750px) {
      .kv .period {
        width: calc(668/1200 * 100vw);
        margin: calc(48/1200 * 100vw) auto 0 calc(254/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .kv .period {
        width: 668px;
        margin: 48px auto 0 254px; } }
  .kv .kv_bt {
    width: 73.73vw;
    margin: 3.46vw auto 0; }
    @media only screen and (min-width: 750px) {
      .kv .kv_bt {
        width: calc(553/1200 * 100vw);
        margin: calc(52/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .kv .kv_bt {
        width: 553px;
        margin: 52px auto 0; } }
    .kv .kv_bt a:hover {
      opacity: 1;
      filter: saturate(148%); }
  .kv .course_ti {
    width: 68vw;
    margin: 5.73vw auto 0; }
    @media only screen and (min-width: 750px) {
      .kv .course_ti {
        width: calc(510/1200 * 100vw);
        margin: calc(36/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .kv .course_ti {
        width: 510px;
        margin: 36px auto 0; } }
  .kv .course_select {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 93.33vw;
    margin: 2.53vw auto 0; }
    @media only screen and (min-width: 750px) {
      .kv .course_select {
        width: calc(1080/1200 * 100vw);
        margin: calc(18/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .kv .course_select {
        width: 1080px;
        margin: 18px auto 0; } }
    .kv .course_select li {
      position: relative;
      width: 46vw;
      height: 61.34vw; }
      @media only screen and (min-width: 750px) {
        .kv .course_select li {
          width: calc(530/1200 * 100vw);
          height: calc(372/1200 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .kv .course_select li {
          width: 530px;
          height: 372px; } }
      .kv .course_select li .bt_detail {
        position: absolute;
        width: 41.6vw;
        bottom: 2.66vw;
        left: 0;
        right: 0;
        margin: auto; }
        @media only screen and (min-width: 750px) {
          .kv .course_select li .bt_detail {
            width: calc(260/1200 * 100vw);
            bottom: calc(23/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .kv .course_select li .bt_detail {
            width: 260px;
            bottom: 23px; } }
    .kv .course_select .note {
      width: 100%;
      height: auto;
      margin: 0.5em 0 0 0;
      color: #FFF;
      font-size: 1.86vw;
      text-align: right; }
      @media only screen and (min-width: 750px) {
        .kv .course_select .note {
          font-size: calc(14/1200 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .kv .course_select .note {
          font-size: 1.4rem; } }

/*course_a*/
.course_a {
  position: relative;
  background-color: #ebf5ff;
  width: 93.33vw;
  padding: 12.53vw 0 7.2vw;
  margin: 0 auto;
  border: #012169 solid 0.8vw; }
  @media only screen and (min-width: 750px) {
    .course_a {
      width: calc(1080/1200 * 100vw);
      padding: calc(102/1200 * 100vw) 0 calc(34/1200 * 100vw);
      border: #012169 solid calc(6/1200 * 100vw); } }
  @media only screen and (min-width: 1200px) {
    .course_a {
      width: 1080px;
      padding: 102px 0 34px 0;
      border: #012169 solid 6px; } }
  .course_a .course_ti {
    position: absolute;
    width: 72vw;
    margin: 0 auto;
    top: -6.8vw;
    left: 0;
    right: 0; }
    @media only screen and (min-width: 750px) {
      .course_a .course_ti {
        width: calc(540/1200 * 100vw);
        top: calc(-51/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .course_a .course_ti {
        width: 540px;
        top: -51px; } }
  .course_a .cont {
    width: 86.66vw;
    margin: 0 auto; }
    @media only screen and (min-width: 750px) {
      .course_a .cont {
        width: calc(960/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .course_a .cont {
        width: 960px; } }
    .course_a .cont .prod_ti {
      width: 100%;
      margin: 8.4vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_a .cont .prod_ti {
          margin: calc(60/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_a .cont .prod_ti {
          margin: 60px auto 0; } }
    .course_a .cont .prize {
      width: 100%;
      margin: 0vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_a .cont .prize {
          margin: calc(0/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_a .cont .prize {
          margin: 0px auto 0; } }
    .course_a .cont .prod {
      width: 100%;
      margin: 3.86vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_a .cont .prod {
          margin: calc(29/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_a .cont .prod {
          margin: 29px auto 0; } }
    .course_a .cont .x2 {
      width: 100%;
      margin: 0vw auto 0; }
    .course_a .cont .prod_text {
      width: 100%;
      color: #012169;
      font-size: 2.93vw;
      text-align: center;
      font-weight: bold;
      line-height: 1.6em;
      margin: 1.7em auto 0; }
      @media only screen and (min-width: 750px) {
        .course_a .cont .prod_text {
          font-size: calc(19/1200 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .course_a .cont .prod_text {
          font-size: 1.9rem; } }
    .course_a .cont .prod_link {
      width: 82.666vw;
      margin: 4.4vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_a .cont .prod_link {
          width: calc(720/1200 * 100vw);
          margin: calc(30/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_a .cont .prod_link {
          width: 720px;
          margin: 30px auto 0; } }
      .course_a .cont .prod_link li a {
        display: block;
        width: 100%;
        border-radius: 10em;
        background-color: #2e56a8;
        background-image: url("../img/link_acc.svg");
        background-repeat: no-repeat;
        background-size: 1.6vw auto;
        background-position: right 4.533vw center;
        font-size: 2.8vw;
        line-height: 1.45em;
        padding: 0.8em;
        color: #FFF;
        font-weight: bold;
        text-align: center;
        text-decoration: none;
        filter: drop-shadow(0.53vw 0.53vw 0 rgba(0, 0, 0, 0.1)); }
        @media only screen and (min-width: 750px) {
          .course_a .cont .prod_link li a {
            padding: 0.5em;
            background-size: 0.67em auto;
            font-size: calc(18/1200 * 100vw);
            filter: drop-shadow(calc(4/1200 * 100vw) calc(4/1200 * 100vw) 0 rgba(0, 0, 0, 0.1)); } }
        @media only screen and (min-width: 1200px) {
          .course_a .cont .prod_link li a {
            background-position: right 4.533vw center;
            font-size: 1.8rem;
            filter: drop-shadow(4px 4px 0 rgba(0, 0, 0, 0.1)); } }
      .course_a .cont .prod_link li + li {
        margin-top: 4vw; }
        @media only screen and (min-width: 750px) {
          .course_a .cont .prod_link li + li {
            margin-top: calc(30/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .course_a .cont .prod_link li + li {
            margin-top: 30px; } }
      .course_a .cont .prod_link li + .plus, .course_a .cont .prod_link .plus + li {
        margin-top: 0.8em; }
      .course_a .cont .prod_link .plus img {
        display: block;
        width: 3.2vw;
        margin: 0 auto; }
        @media only screen and (min-width: 750px) {
          .course_a .cont .prod_link .plus img {
            width: calc(24/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .course_a .cont .prod_link .plus img {
            width: 24px; } }
    .course_a .cont .buy_link {
      width: 82.666vw;
      margin: 4.4vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_a .cont .buy_link {
          display: flex;
          justify-content: space-between;
          width: 100%;
          margin: calc(30/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_a .cont .buy_link {
          margin: 30px auto 0; } }
      .course_a .cont .buy_link li a {
        display: block;
        width: 100%; }
        @media only screen and (min-width: 750px) {
          .course_a .cont .buy_link li a {
            width: calc(310/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .course_a .cont .buy_link li a {
            width: 310px; } }
      .course_a .cont .buy_link li + li {
        margin-top: 4vw; }
        @media only screen and (min-width: 750px) {
          .course_a .cont .buy_link li + li {
            margin-top: 0; } }

/*course_b*/
.course_b {
  position: relative;
  background-color: #ebf5ff;
  width: 93.33vw;
  padding: 15vw 0 7.2vw;
  margin: 14vw auto 0;
  border: #dda45b solid 0.8vw; }
  @media only screen and (min-width: 750px) {
    .course_b {
      width: calc(1080/1200 * 100vw);
      padding: calc(116/1200 * 100vw) 0 calc(34/1200 * 100vw);
      border: #dda45b solid calc(6/1200 * 100vw);
      margin: calc(95/1200 * 100vw) auto 0; } }
  @media only screen and (min-width: 1200px) {
    .course_b {
      width: 1080px;
      padding: 116px 0 34px 0;
      border: #dda45b solid 6px;
      margin: 95px auto 0; } }
  .course_b .course_ti {
    position: absolute;
    width: 72vw;
    margin: 0 auto;
    top: -6.8vw;
    left: 0;
    right: 0; }
    @media only screen and (min-width: 750px) {
      .course_b .course_ti {
        width: calc(540/1200 * 100vw);
        top: calc(-51/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .course_b .course_ti {
        width: 540px;
        top: -51px; } }
  .course_b .cont {
    width: 86.66vw;
    margin: 0 auto; }
    @media only screen and (min-width: 750px) {
      .course_b .cont {
        width: calc(960/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .course_b .cont {
        width: 960px; } }
    .course_b .cont .prize {
      width: 100%;
      margin: 0vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .prize {
          margin: calc(0/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .prize {
          margin: 0px auto 0; } }
    .course_b .cont .prod_ti {
      width: 100%;
      margin: 4vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .prod_ti {
          margin: calc(34/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .prod_ti {
          margin: 34px auto 0; } }
    .course_b .cont .prod {
      width: 100%;
      margin: 3.86vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .prod {
          margin: calc(29/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .prod {
          margin: 29px auto 0; } }
    .course_b .cont .x3 {
      width: 100%;
      margin: 0vw auto 0; }
    .course_b .cont .x2 {
      width: 100%;
      margin: 4vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .x2 {
          margin: calc(30/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .x2 {
          margin: 30px auto 0; } }
    .course_b .cont .prod_text {
      width: 100%;
      color: #012169;
      font-size: 2.93vw;
      text-align: center;
      font-weight: bold;
      line-height: 1.6em;
      margin: 1.7em auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .prod_text {
          font-size: calc(19/1200 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .prod_text {
          font-size: 1.9rem; } }
    .course_b .cont .prod_link {
      width: 82.666vw;
      margin: 4.4vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .prod_link {
          width: calc(720/1200 * 100vw);
          margin: calc(30/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .prod_link {
          width: 720px;
          margin: 30px auto 0; } }
      .course_b .cont .prod_link li a {
        display: block;
        width: 100%;
        border-radius: 10em;
        background-color: #2e56a8;
        background-image: url("../img/link_acc.svg");
        background-repeat: no-repeat;
        background-size: 1.6vw auto;
        background-position: right 4.533vw center;
        font-size: 2.8vw;
        line-height: 1.45em;
        padding: 0.8em;
        color: #FFF;
        font-weight: bold;
        text-align: center;
        text-decoration: none;
        filter: drop-shadow(0.53vw 0.53vw 0 rgba(0, 0, 0, 0.1)); }
        @media only screen and (min-width: 750px) {
          .course_b .cont .prod_link li a {
            padding: 0.5em;
            background-size: 0.67em auto;
            font-size: calc(18/1200 * 100vw);
            filter: drop-shadow(calc(4/1200 * 100vw) calc(4/1200 * 100vw) 0 rgba(0, 0, 0, 0.1)); } }
        @media only screen and (min-width: 1200px) {
          .course_b .cont .prod_link li a {
            background-position: right 4.533vw center;
            font-size: 1.8rem;
            filter: drop-shadow(4px 4px 0 rgba(0, 0, 0, 0.1)); } }
      .course_b .cont .prod_link li + li {
        margin-top: 4vw; }
        @media only screen and (min-width: 750px) {
          .course_b .cont .prod_link li + li {
            margin-top: calc(30/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .course_b .cont .prod_link li + li {
            margin-top: 30px; } }
      .course_b .cont .prod_link li + .plus, .course_b .cont .prod_link .plus + li {
        margin-top: 0.8em; }
      .course_b .cont .prod_link .plus img {
        display: block;
        width: 3.2vw;
        margin: 0 auto; }
        @media only screen and (min-width: 750px) {
          .course_b .cont .prod_link .plus img {
            width: calc(24/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .course_b .cont .prod_link .plus img {
            width: 24px; } }
    .course_b .cont .buy_ti {
      width: 100%;
      margin: 8vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .buy_ti {
          margin: calc(60/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .buy_ti {
          margin: 60px auto 0; } }
    .course_b .cont .buy_link {
      width: 82.666vw;
      margin: 4.4vw auto 0; }
      @media only screen and (min-width: 750px) {
        .course_b .cont .buy_link {
          display: flex;
          justify-content: space-between;
          width: 100%;
          margin: calc(30/1200 * 100vw) auto 0; } }
      @media only screen and (min-width: 1200px) {
        .course_b .cont .buy_link {
          margin: 30px auto 0; } }
      .course_b .cont .buy_link li a {
        display: block;
        width: 100%; }
        @media only screen and (min-width: 750px) {
          .course_b .cont .buy_link li a {
            width: calc(310/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .course_b .cont .buy_link li a {
            width: 310px; } }
      .course_b .cont .buy_link li + li {
        margin-top: 4vw; }
        @media only screen and (min-width: 750px) {
          .course_b .cont .buy_link li + li {
            margin-top: 0; } }

/*method*/
.method {
  position: relative;
  background-color: #ebf5ff;
  width: 93.33vw;
  margin: 0 auto 0; }
  @media only screen and (min-width: 750px) {
    .method {
      width: calc(1080/1200 * 100vw); } }
  @media only screen and (min-width: 1200px) {
    .method {
      width: 1080px; } }
  .method .method_ti {
    width: 100%;
    margin: 0 auto; }
    @media only screen and (min-width: 750px) {
      .method .method_ti {
        width: calc(700/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .method .method_ti {
        width: 700px; } }
  .method .step {
    position: relative;
    margin: 7.6vw auto 0; }
    @media only screen and (min-width: 750px) {
      .method .step {
        margin: calc(57/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .method .step {
        margin: 57px auto 0; } }
    .method .step .bt_line {
      position: absolute;
      width: 72vw;
      top: 104.53vw;
      left: 0;
      right: 0;
      margin: auto; }
      @media only screen and (min-width: 750px) {
        .method .step .bt_line {
          display: none; } }
  .method .method_note {
    font-size: 2.4vw;
    margin: 1.7em auto 0;
    text-align: center;
    line-height: 1.7em; }
    @media only screen and (min-width: 750px) {
      .method .method_note {
        font-size: calc(18/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .method .method_note {
        font-size: 1.8rem; } }
  .method .receipt {
    width: 100%;
    margin: 8.4vw auto 0; }
    @media only screen and (min-width: 750px) {
      .method .receipt {
        margin: calc(60/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .method .receipt {
        margin: 60px auto 0; } }
  .method .bt_apply {
    width: 71.2vw;
    margin: 7.2vw auto 0; }
    @media only screen and (min-width: 750px) {
      .method .bt_apply {
        width: calc(534/1200 * 100vw);
        margin: calc(53/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .method .bt_apply {
        width: 534px;
        margin: 53px auto 0; } }

/*応募規約*/
dl.terms {
  width: 90.666vw;
  margin: 10.666vw auto 0; }
  @media only screen and (min-width: 750px) {
    dl.terms {
      width: calc(1080/1200 * 100vw);
      margin: calc(80/1200 * 100vw) auto 0; } }
  @media only screen and (min-width: 1200px) {
    dl.terms {
      width: 1080px;
      margin: 80px auto 0; } }

dl.terms dt {
  display: flex;
  align-items: center;
  background: #9d9d9e;
  border-radius: 3.2vw;
  text-align: center;
  padding: 1.2em 1em 1.2em 1em;
  background-image: url("../img/rule_open.svg");
  background-repeat: no-repeat;
  background-position: right 4.6vw center;
  background-size: 5.33vw auto;
  margin: 0 0;
  cursor: pointer;
  height: 9.33vw; }
  @media only screen and (min-width: 750px) {
    dl.terms dt {
      border-radius: calc(10/1200 * 100vw);
      height: calc(70/1200 * 100vw);
      background-size: calc(40/1200 * 100vw) auto;
      background-position: right calc(60/1200 * 100vw) center; } }
  @media only screen and (min-width: 1200px) {
    dl.terms dt {
      border-radius: 10px;
      height: 70px;
      background-size: 40px auto;
      background-position: right 60px center; } }
  dl.terms dt img {
    width: 18vw;
    margin: 0 auto 0; }
    @media only screen and (min-width: 750px) {
      dl.terms dt img {
        width: calc(135/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      dl.terms dt img {
        width: 135px; } }
  dl.terms dt.active {
    background-image: url("../img/rule_close.svg"); }

dl.terms dd {
  background: #edeeee;
  display: none;
  padding: 2em 0.5em 1.5em 1.5em;
  margin: 0 0 0 0;
  min-height: 2em;
  border-radius: 2.133vw; }
  @media only screen and (min-width: 750px) {
    dl.terms dd {
      border-radius: calc(20/1020 * 100vw);
      padding: 2em 2em 2em 4em; } }
  @media only screen and (min-width: 1200px) {
    dl.terms dd {
      border-radius: 20px; } }
  dl.terms dd.active {
    display: block; }
  dl.terms dd .inner {
    padding-right: 1em;
    padding-bottom: 1em;
    overflow-y: scroll;
    height: 65vw; }
    @media only screen and (min-width: 750px) {
      dl.terms dd .inner {
        padding-right: 1.5em;
        height: calc(550/1020 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      dl.terms dd .inner {
        height: 550px; } }
    dl.terms dd .inner p {
      font-size: 3vw;
      line-height: 1.5em; }
      @media only screen and (min-width: 750px) {
        dl.terms dd .inner p {
          font-size: calc(16/1020 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        dl.terms dd .inner p {
          font-size: 1.6rem; } }
    dl.terms dd .inner h3 {
      font-size: 3.8vw;
      text-align: left;
      border-bottom: solid 1px #000;
      padding: 0em 0em 0.2em;
      margin-top: 2em; }
      @media only screen and (min-width: 750px) {
        dl.terms dd .inner h3 {
          font-size: calc(18/1020 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        dl.terms dd .inner h3 {
          font-size: 1.8rem; } }
    dl.terms dd .inner h3 + h4 {
      margin-top: 1em; }
    dl.terms dd .inner h3:first-child {
      margin-top: 0; }
    dl.terms dd .inner h4 {
      font-size: 3.4vw;
      margin: 1.5em 0 0 0;
      font-weight: bold; }
      @media only screen and (min-width: 750px) {
        dl.terms dd .inner h4 {
          font-size: calc(18/1020 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        dl.terms dd .inner h4 {
          font-size: 1.8rem; } }
    dl.terms dd .inner h3 + p, dl.terms dd .inner h3 + ul, dl.terms dd .inner ol + p, dl.terms dd .inner ul + p {
      margin-top: 1em; }
    dl.terms dd .inner ul + ul {
      margin-top: 2em; }
    dl.terms dd .inner p + p {
      margin-top: 0.5em; }
    dl.terms dd .inner ul.stylenone {
      font-size: 3vw; }
      @media only screen and (min-width: 750px) {
        dl.terms dd .inner ul.stylenone {
          font-size: calc(16/1020 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        dl.terms dd .inner ul.stylenone {
          font-size: 1.6rem; } }
      dl.terms dd .inner ul.stylenone li {
        padding-left: 1em;
        text-indent: -1em; }
        dl.terms dd .inner ul.stylenone li.note {
          text-indent: 0;
          list-style: none; }
    dl.terms dd .inner ul.styledisc li {
      list-style: disc;
      margin-left: 1.5em;
      font-size: 3vw;
      line-height: 1.5em; }
      @media only screen and (min-width: 750px) {
        dl.terms dd .inner ul.styledisc li {
          font-size: calc(16/1020 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        dl.terms dd .inner ul.styledisc li {
          font-size: 1.6rem; } }
      dl.terms dd .inner ul.styledisc li.note {
        text-indent: -1em;
        list-style: none;
        margin-top: 0.5em; }

/*FAQ*/
.qa {
  width: 93.33vw;
  margin: 7vw auto 0; }
  @media only screen and (min-width: 750px) {
    .qa {
      width: calc(1080/1200 * 100vw);
      margin: calc(52/1200 * 100vw) auto 0; } }
  @media only screen and (min-width: 1200px) {
    .qa {
      width: 1080px;
      margin: 52px auto 0; } }
  .qa h2 {
    width: 100%;
    margin: 0 auto 0; }
    @media only screen and (min-width: 750px) {
      .qa h2 {
        width: calc(700/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .qa h2 {
        width: 700px; } }
  .qa dl.question {
    width: 100%;
    background: #FFF;
    border-radius: 1.6vw;
    margin: 5.333vw auto 0; }
    @media only screen and (min-width: 750px) {
      .qa dl.question {
        border-radius: calc(12/1200 * 100vw);
        margin: calc(40/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .qa dl.question {
        border-radius: 12px;
        margin: 40px auto 0; } }
  .qa dl.question + dl.question {
    margin: 4vw auto 0; }
    @media only screen and (min-width: 750px) {
      .qa dl.question + dl.question {
        margin: calc(30/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .qa dl.question + dl.question {
        margin: 30px auto 0; } }
  .qa dl.question dt {
    display: flex;
    align-items: center;
    padding: 3vw 10vw 2.8vw 0;
    background-image: url("../img/qa_open.svg");
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 1.5em auto;
    margin: 0 4.6vw;
    cursor: pointer; }
    .qa dl.question dt.active {
      background-image: url("../img/qa_close.svg"); }
    @media only screen and (min-width: 750px) {
      .qa dl.question dt {
        padding: calc(24/1200 * 100vw) calc(70/1200 * 100vw) calc(22/1200 * 100vw) calc(10/1200 * 100vw);
        margin: 0 calc(60/1200 * 100vw) !important;
        background-size: 2.5em auto; } }
    @media only screen and (min-width: 1200px) {
      .qa dl.question dt {
        padding: 24px 70px 22px 10px;
        margin: 0 60px !important; } }
    .qa dl.question dt .q_icon {
      width: 5.33vw;
      margin-right: 1em; }
      @media only screen and (min-width: 750px) {
        .qa dl.question dt .q_icon {
          width: calc(40/1200 * 100vw);
          margin-right: 1.5em; } }
      @media only screen and (min-width: 1200px) {
        .qa dl.question dt .q_icon {
          width: 40px; } }
    .qa dl.question dt .q_text {
      color: #012169;
      font-size: 3.2vw;
      line-height: 1.28em;
      font-weight: bold; }
      @media only screen and (min-width: 750px) {
        .qa dl.question dt .q_text {
          font-size: calc(24/1200 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .qa dl.question dt .q_text {
          font-size: 2.4rem; } }
  .qa dl.question dd {
    display: none;
    padding: 0 0 4vw;
    margin: 0 4.6vw;
    min-height: 2em; }
    @media only screen and (min-width: 750px) {
      .qa dl.question dd {
        padding: 0 0 calc(20/1200 * 100vw) calc(0/1200 * 100vw);
        margin: 0 calc(60/1200 * 100vw) !important; } }
    @media only screen and (min-width: 1200px) {
      .qa dl.question dd {
        padding: 0 0 20px 0px;
        margin: 0 60px !important; } }
    .qa dl.question dd.active {
      display: block; }
    .qa dl.question dd .a_inner {
      border-top: 1px solid #012169;
      padding: 1em 0 0 0; }
      .qa dl.question dd .a_inner h3 {
        font-size: 3.2vw;
        font-weight: bold; }
        @media only screen and (min-width: 750px) {
          .qa dl.question dd .a_inner h3 {
            font-size: calc(18/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .qa dl.question dd .a_inner h3 {
            font-size: 1.8rem; } }
      .qa dl.question dd .a_inner p {
        font-size: 3vw;
        line-height: 1.5em; }
        @media only screen and (min-width: 750px) {
          .qa dl.question dd .a_inner p {
            font-size: calc(16/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .qa dl.question dd .a_inner p {
            font-size: 1.6rem; } }
        .qa dl.question dd .a_inner p.note {
          margin-left: 1em;
          text-indent: -1em; }
      .qa dl.question dd .a_inner p + p {
        margin-top: 0.5em; }
      .qa dl.question dd .a_inner p + p.note {
        margin-top: 0.8em; }
      .qa dl.question dd .a_inner .note + .note {
        margin-top: 0.3em; }
      .qa dl.question dd .a_inner p + h3 {
        margin-top: 1em; }
      .qa dl.question dd .a_inner ul li {
        list-style: disc;
        font-size: 2.8vw;
        margin: 0.3em 0 0 1.5em;
        line-height: 1.3em; }
        @media only screen and (min-width: 750px) {
          .qa dl.question dd .a_inner ul li {
            font-size: calc(16/1200 * 100vw); } }
        @media only screen and (min-width: 1200px) {
          .qa dl.question dd .a_inner ul li {
            font-size: 1.6rem; } }
        .qa dl.question dd .a_inner ul li:first-child {
          margin-top: 0.5em; }
      .qa dl.question dd .a_inner ol {
        padding-left: 0;
        margin: 0.3em 0 0 1.5em; }
        .qa dl.question dd .a_inner ol li {
          list-style: decimal;
          text-indent: 0em;
          font-size: 3vw;
          margin-top: 0.5em;
          line-height: 1.5em; }
          @media only screen and (min-width: 750px) {
            .qa dl.question dd .a_inner ol li {
              font-size: calc(16/1200 * 100vw); } }
          @media only screen and (min-width: 1200px) {
            .qa dl.question dd .a_inner ol li {
              font-size: 1.6rem; } }
      .qa dl.question dd .a_inner ul + h3, .qa dl.question dd .a_inner ul + p, .qa dl.question dd .a_inner ol + h3 {
        margin-top: 1em; }

/*inquiry*/
.inquiry {
  width: 93.33vw;
  margin: 7.8vw auto 0; }
  @media only screen and (min-width: 750px) {
    .inquiry {
      width: calc(1080/1200 * 100%);
      margin: calc(58/1200 * 100vw) auto 0; } }
  @media only screen and (min-width: 1200px) {
    .inquiry {
      width: 1080px;
      margin: 58px auto 0; } }
  .inquiry .inquiry_ti {
    width: 100%;
    margin: 0 auto; }
    @media only screen and (min-width: 750px) {
      .inquiry .inquiry_ti {
        width: calc(700/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .inquiry .inquiry_ti {
        width: 700px; } }
  .inquiry .inquiry_name {
    text-align: center;
    font-size: 3.2vw;
    font-weight: bold;
    margin: 5.2vw auto 0; }
    @media only screen and (min-width: 750px) {
      .inquiry .inquiry_name {
        font-size: calc(24/1200 * 100%);
        margin: calc(30/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .inquiry .inquiry_name {
        font-size: 2.4rem;
        margin: 30px auto 0; } }
  .inquiry .freecall {
    display: block;
    width: 62.8vw;
    margin: 4vw auto 0; }
    @media only screen and (min-width: 750px) {
      .inquiry .freecall {
        width: calc(349/1200 * 100vw);
        margin: calc(32/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .inquiry .freecall {
        width: 349px;
        margin: 32px auto 0; } }
  .inquiry .recept {
    display: block;
    width: 93vw;
    margin: 5vw auto 0;
    text-align: center; }
    @media only screen and (min-width: 750px) {
      .inquiry .recept {
        width: calc(780/1200 * 100%);
        margin: calc(30/1200 * 100vw) auto 0; } }
    @media only screen and (min-width: 1200px) {
      .inquiry .recept {
        width: 780px;
        margin: 30px auto 0; } }
    .inquiry .recept .recept_date {
      font-size: 2.4vw;
      line-height: 1.75em; }
      @media only screen and (min-width: 750px) {
        .inquiry .recept .recept_date {
          font-size: calc(18/1200 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .inquiry .recept .recept_date {
          font-size: 1.8rem; } }
    .inquiry .recept .recept_time {
      font-size: 3.4vw;
      margin-top: 0em; }
      @media only screen and (min-width: 750px) {
        .inquiry .recept .recept_time {
          font-size: calc(18/1200 * 100vw); } }
      @media only screen and (min-width: 1200px) {
        .inquiry .recept .recept_time {
          font-size: 1.8rem; } }
    .inquiry .recept .recept_note {
      font-size: 2.4vw;
      margin-top: 0em;
      line-height: 1.75em; }
      @media only screen and (min-width: 750px) {
        .inquiry .recept .recept_note {
          font-size: calc(18/1200 * 100vw);
          margin-top: 0; } }
      @media only screen and (min-width: 1200px) {
        .inquiry .recept .recept_note {
          font-size: 1.8rem; } }

.wrap {
  width: 100%;
  background-color: #314279;
  background-image: url("../img/bg_kv_sp.webp"), url("../img/bg_body_sp.png");
  background-size: 100% auto,100% auto;
  background-repeat: no-repeat,repeat-y;
  background-position: top center,top center; }
  @media only screen and (min-width: 750px) {
    .wrap {
      background-image: url("../img/bg_kv_pc.webp"), url("../img/bg_body_pc.png");
      background-size: 100% auto,100% auto; } }
  @media only screen and (min-width: 1200px) {
    .wrap {
      background-image: url("../img/bg_kv_pcl.webp"), url("../img/bg_body_pcl.png");
      background-size: auto auto, auto auto; } }
  @media only screen and (min-width: 2000px) {
    .wrap {
      background-size: 100% auto,auto auto; } }

.light {
  width: 100%;
  background-size: 100% auto;
  background-repeat: repeat-y;
  background-position: top center;
  padding: 11.73vw 0 8vw; }
  @media only screen and (min-width: 750px) {
    .light {
      background-image: url("../img/bg_light_pc.png");
      background-size: 100% auto;
      padding: calc(142/1200 * 100vw) 0 calc(60/1200 * 100vw); } }
  @media only screen and (min-width: 1200px) {
    .light {
      background-image: url("../img/bg_light_pcl.png");
      background-size: auto auto;
      padding: 142px 0 60px; } }

.l_blue {
  width: 100%;
  background: #ebf5ff; }
  .l_blue__inner {
    width: 93.33vw;
    margin: 0 auto;
    padding: 7.73vw 0 20vw; }
    @media only screen and (min-width: 750px) {
      .l_blue__inner {
        width: calc(1080/1200 * 100vw);
        padding: calc(58/1200 * 100vw) 0 calc(105/1200 * 100vw); } }
    @media only screen and (min-width: 1200px) {
      .l_blue__inner {
        width: 1080px;
        padding: 58px 0 105px 0; } }

.ptop {
  position: fixed;
  bottom: 3vw;
  right: 3vw;
  width: 19.7vw; }
  @media only screen and (min-width: 750px) {
    .ptop {
      width: calc(110/960 * 100vw);
      bottom: calc(15/960 * 100vw);
      right: calc(15/960 * 100vw); } }
  @media only screen and (min-width: 1200px) {
    .ptop {
      width: 110px;
      bottom: 15px;
      right: 15px; } }
