#ct_bg .contents01 .introArea02 > .bglayer01 {
  background: url(../../disneyprincess/common/images/bg01.jpg) no-repeat;
  background-attachment: fixed;
  background-position: center 0;
  background-size: cover; }
  @media screen and (max-width: 639px) {
    #ct_bg .contents01 .introArea02 > .bglayer01 {
      background: none; } }
#ct_bg .contents01 .mainContens01 {
  background: url("../images/bg_index01.jpg") no-repeat 50% 0/cover;
  background-attachment: fixed; }
  @media screen and (max-width: 639px) {
    #ct_bg .contents01 .mainContens01 {
      background: none; } }
  #ct_bg .contents01 .mainContens01 .mainArea01 .title01 {
    position: relative;
    text-align: center;
    background: url("../../disneyprincess/common/images/bg05.png") no-repeat 50% 0/2000px, url("../images/bg_index02.jpg") no-repeat 50% 50%/2000px; }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 .title01 {
        position: relative;
        z-index: 1;
        background: url("../../disneyprincess/common/images/bg05.png") no-repeat 50% 0/2000px, url("../images/bg_index02.jpg") no-repeat 50% 50%/cover; } }
    #ct_bg .contents01 .mainContens01 .mainArea01 .title01 span {
      display: inline-block; }
      @media screen and (max-width: 1200px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .title01 span {
          width: 67.55%; } }
      @media screen and (max-width: 639px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .title01 span {
          width: 100%;
          text-align: center; } }
    #ct_bg .contents01 .mainContens01 .mainArea01 .title01::after {
      content: '';
      position: absolute;
      bottom: -11px;
      left: 0;
      width: 100%;
      height: 22px;
      background: url("../../disneyprincess/common/images/bg03.png") repeat-x 0 0/auto 22px;
      z-index: 10; }
      @media screen and (max-width: 639px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .title01::after {
          bottom: -2vw;
          height: 4vw;
          background-size: auto 4vw; } }
  #ct_bg .contents01 .mainContens01 .mainArea01 .bnr01 {
    text-align: center;
    margin-top: 10px; }
    #ct_bg .contents01 .mainContens01 .mainArea01 .bnr01 a {
      display: inline-block; }
    #ct_bg .contents01 .mainContens01 .mainArea01 .bnr01 img {
      width: 460px; }
      @media screen and (max-width: 639px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .bnr01 img {
          width: 85vw; } }
  #ct_bg .contents01 .mainContens01 .mainArea01 .bnr02 {
    width: 69%;
    margin: 38px auto 0; }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 .bnr02 {
        width: 95vw;
        margin: 10vw auto 0; } }
    #ct_bg .contents01 .mainContens01 .mainArea01 .bnr02 a {
      display: block; }
  #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 {
    background: url("../images/bg_index03.png") no-repeat 50% 0/2000px;
    position: relative; }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01::before {
        content: "";
        position: absolute;
        top: 0vw;
        left: 0;
        width: 100%;
        height: 100%;
        background: url("../images/bg_index01.jpg") no-repeat 50% 0/1110px; }
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01::after {
        content: "";
        position: absolute;
        top: 0vw;
        left: 0;
        width: 100%;
        height: 100%;
        background: url("../images/bg_index03_sp.png") no-repeat 50% 0/100%; } }
    @media screen and (min-width: 640px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01.fixed-background {
        background-attachment: fixed; } }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01.fixed-background::before {
        position: fixed; } }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01.fixed-background.fixed-background-release::before {
        position: absolute; } }
    #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 {
      max-width: 1040px;
      margin: 0 auto;
      padding: 95px 20px 105px;
      position: relative;
      z-index: 11; }
      @media screen and (max-width: 639px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 {
          padding: 14.5vw 0 25.2vw; } }
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 section {
        position: relative;
        z-index: 11; }
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 .title02 {
        text-align: center;
        margin-bottom: 30px;
        position: relative;
        z-index: 11; }
        @media screen and (max-width: 639px) {
          #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 .title02 {
            margin-bottom: 3.5vw; } }
        @media screen and (max-width: 639px) {
          #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 .title02 img {
            width: 95vw; } }
        #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 .title02 .lesson {
          position: absolute;
          top: -15px;
          left: 50%;
          transform: translateX(-50%);
          color: #fff;
          display: inline-block;
          font-family: "Kaisei Decol", serif;
          font-weight: 700;
          font-style: normal;
          font-size: 3.2rem;
          line-height: 1;
          letter-spacing: -0.05em;
          background: linear-gradient(90deg, #f7c720 0%, #dfa04f 25%, #f7c720 50%, #dfa04f 75%, #f7c720 100%);
          border: 2px solid #fff;
          border-radius: 130px;
          padding: 6px 14px 10px 12px; }
          @media screen and (max-width: 639px) {
            #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 .title02 .lesson {
              font-size: 2.2rem; } }
      @media screen and (max-width: 639px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 .img01 {
          margin-left: 3.75vw;
          margin-right: 3.75vw; } }
      #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 section + section {
        margin-top: 100px; }
        @media screen and (max-width: 639px) {
          #ct_bg .contents01 .mainContens01 .mainArea01 > .inner01 > .inner02 section + section {
            margin-top: 13.5vw; } }
  #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby] {
    position: relative; }
    #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby]::before {
      content: attr(data-ruby);
      position: absolute;
      top: -1em;
      left: 50%;
      margin: auto;
      font-size: 1.0rem;
      transform: translateX(-50%);
      width: 2em; }
    #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby].ch01::before {
      width: 1em; }
    #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby].ch02::before {
      width: 2em; }
    #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby].ch03::before {
      width: 3em; }
    #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby].ch04::before {
      width: 4em; }
    #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby].ch05::before {
      width: 5em; }
    #ct_bg .contents01 .mainContens01 .mainArea01 [data-ruby].ch06::before {
      width: 6em; }
  #ct_bg .contents01 .mainContens01 .mainArea01 rt {
    display: none; }
  #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList01 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList01 {
        margin-left: 3.75vw;
        margin-right: 3.75vw; } }
    #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList01 li {
      width: 23.5%;
      background: #fff;
      border-radius: 20px;
      padding: 5px 0 9px; }
      @media screen and (max-width: 850px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList01 li {
          width: 48.6486486486%; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList01 li:nth-child(n + 3) {
            margin-top: 2.5vw; } }
      #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList01 li .tx01 {
        font-family: "M PLUS Rounded 1c", serif;
        font-weight: 500;
        font-style: normal;
        transform: rotate(0.03deg);
        font-size: 1.6rem;
        line-height: 1.65;
        padding: 0.55em 0.5em 0; }
        @media screen and (min-width: 640px) {
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList01 li .tx01 {
            text-align: center; } }
  #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-left: 9.5px;
    margin-right: 9.5px;
    margin-bottom: 15px; }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 {
        margin-top: 10.5vw;
        margin-left: 3.75vw;
        margin-right: 3.75vw;
        margin-bottom: 2.5vw; } }
    #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li {
      background: #fff;
      box-shadow: 0 0 10px 4px white;
      border-radius: 20px;
      padding: 5px 3px 9px;
      position: relative; }
      @media screen and (min-width: 640px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(1) {
          width: 48.3180428135%; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(1) .hdg01 {
            width: 322px; }
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(2) {
          width: 48.3180428135%;
          margin-top: 30px; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(2) .hdg01 {
            width: 322px; }
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(3) {
          width: 32.9255861366%;
          margin-top: 10px; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(3) .hdg01 {
            width: 324px; }
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(4) {
          width: 63.8124362895%;
          margin-top: 40px; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(4) .hdg01 {
            width: 572px; } }
      @media screen and (max-width: 1040px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(1) .hdg01 {
          width: 30.9615384615vw; }
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(2) {
          margin-top: 2.8846153846vw; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(2) .hdg01 {
            width: 30.9615384615vw; }
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(3) {
          margin-top: 0.9615384615vw; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(3) .hdg01 {
            width: 31.1538461538vw; }
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(4) {
          margin-top: 3.8461538462vw; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(4) .hdg01 {
            width: 55vw; } }
      @media screen and (max-width: 945px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(3) {
          margin-top: 3.1746031746vw; }
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(4) {
          margin-top: 5.291005291vw; } }
      @media screen and (max-width: 639px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li {
          padding: 5px 3px 15px; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(n + 2) {
            margin-top: 10vw; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(1) .hdg01 {
            width: 80.5vw; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(2) .hdg01 {
            width: 80.5vw; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(3) .hdg01 {
            width: 80.5vw; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(4) {
            margin-top: 15.5vw; }
            #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li:nth-child(4) .hdg01 {
              width: 85vw;
              top: -12.5vw; } }
      #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li .hdg01 {
        position: absolute;
        top: -25px;
        left: 50%;
        transform: translateX(-50%); }
        @media screen and (max-width: 639px) {
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li .hdg01 {
            top: -7.5vw; } }
      @media screen and (min-width: 640px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li .img.type02 {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li .img.type02 img {
            width: 49%; } }
      @media screen and (max-width: 639px) {
        #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li .img.type02 img + img {
          margin-top: 2.5vw; } }
      #ct_bg .contents01 .mainContens01 .mainArea01 .lessonList02 li .tx01 {
        text-align: center;
        font-family: "M PLUS Rounded 1c", serif;
        font-weight: 500;
        font-style: normal;
        transform: rotate(0.03deg);
        font-size: 1.6rem;
        line-height: 1.65;
        padding: 0.55em 0.5em 0; }
  #ct_bg .contents01 .mainContens01 .mainArea01 .note01 {
    font-family: "M PLUS Rounded 1c", serif;
    font-weight: 500;
    font-style: normal;
    transform: rotate(0.03deg);
    font-size: 1.2rem;
    line-height: 1.6; }
    #ct_bg .contents01 .mainContens01 .mainArea01 .note01.right {
      text-align: right; }
  #ct_bg .contents01 .mainContens01 .mainArea01 .frame02 {
    width: 80%;
    margin: 0 auto 38px; }
    @media screen and (max-width: 639px) {
      #ct_bg .contents01 .mainContens01 .mainArea01 .frame02 {
        width: 92.5vw; } }
  #ct_bg .contents01 .mainContens01 .mainArea01 .movieWrap01 {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden; }
    #ct_bg .contents01 .mainContens01 .mainArea01 .movieWrap01 iframe {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
  #ct_bg .contents01 .mainContens01 .mainArea01 .movieWrapVertical {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px; }
  #ct_bg .contents01 .mainContens01 .mainArea01 .movieWrap02 {
    position: relative;
    height: 0;
    padding-bottom: 177.75%;
    overflow: hidden; }
    #ct_bg .contents01 .mainContens01 .mainArea01 .movieWrap02 iframe {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
