.header .band {
  background-color: #27a3dc; }

@media (min-width: 768px) {
  .container {
    width: 1030px;
    max-width: 1030px; }

  main, footer, .header {
    position: relative;
    overflow: visible !important; }

  .anchor_link {
    padding-bottom: 50px;
    margin-top: -50px; } }
@media (max-width: 767.98px) {
  main {
    position: relative; }

  .container {
    width: 100%; }

  .anchor_link {
    padding-bottom: 150px;
    margin-top: -150px; }

  #footer {
    margin: 0 0 102px 0; } }
.app_main .app_main_inner .deco_wankeru > span {
  position: absolute; }
.app_main .app_main_inner .fl_btn_a01 > a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.75), transparent);
  transform: skewX(-25deg);
  z-index: 1;
  opacity: 0;
  animation: fl_btn_a01_shine 3s infinite; }
@keyframes fl_btn_a01_shine {
  0% {
    left: -200%;
    opacity: 0; }
  50% {
    left: 100%;
    opacity: 1; }
  100% {
    left: 200%;
    opacity: 0; } }
@media (min-width: 768px) {
  .app_main {
    height: 720px; }
    .app_main .logo {
      position: absolute;
      top: 30px;
      left: 25px;
      z-index: 3; }
      .app_main .logo img {
        width: 170px; }
    .app_main::before {
      content: "";
      background: url("../images/main/back_pc.jpg") no-repeat center/cover;
      background-position: center bottom;
      position: absolute;
      width: 100%;
      height: 760px; }
    .app_main .app_main_inner {
      width: 850px;
      height: 720px;
      margin: 0 auto;
      padding-top: 40px;
      display: flex;
      flex-direction: column;
      align-items: center;
      z-index: 2;
      position: relative; }
      .app_main .app_main_inner .bird {
        position: absolute;
        top: 25px;
        right: calc(50% - 357px); }
        .app_main .app_main_inner .bird img {
          width: 143px; }
      .app_main .app_main_inner .ribbon {
        width: 550px;
        margin: 0 auto; }
      .app_main .app_main_inner h1 {
        margin-top: -45px;
        position: relative; }
        .app_main .app_main_inner h1::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          width: 0;
          height: 100%;
          background: linear-gradient(transparent 60%, #ffffbc 60%);
          z-index: -1;
          animation: app_main_h1_marker_pc 1s .5s ease-out forwards; }
  @keyframes app_main_h1_marker_pc {
    to {
      width: 100%; } }
      .app_main .app_main_inner .period {
        width: 420px;
        margin: 20px auto 0; }
      .app_main .app_main_inner .deco_coin {
        position: absolute;
        width: 935px;
        top: 10px; }
      .app_main .app_main_inner .deco_wankeru > span:nth-child(1) {
        width: 330px;
        bottom: -160px;
        right: calc(50% + 200px); }
      .app_main .app_main_inner .deco_wankeru > span:nth-child(2) {
        width: 320px;
        bottom: -160px;
        left: calc(50% + 205px); }
      .app_main .app_main_inner .fl_btn_a01 {
        margin: 54px 0 0 0; }
        .app_main .app_main_inner .fl_btn_a01 > a {
          width: 420px;
          height: 90px;
          font-size: 30px;
          background-image: radial-gradient(circle at center, rgba(255, 255, 200, 0.9) 0%, rgba(255, 223, 100, 0.6) 60%, transparent 100%), linear-gradient(to bottom, #ffe000 0%, #ffc200 50%, #ff9900 100%);
          border: 2px solid #004ea2;
          color: #004ea2 !important; }
          .app_main .app_main_inner .fl_btn_a01 > a::after {
            content: "";
            background-image: url("../images/yajirushi_blue.svg");
            width: 26px;
            height: 26px;
            background-size: 26px 26px;
            display: block;
            position: absolute;
            top: 0;
            right: 15px; } }
@media (max-width: 767.98px) {
  .app_main {
    height: auto;
    width: 100%;
    margin: 0 auto;
    z-index: 1;
    position: relative; }
    .app_main .logo {
      position: absolute;
      top: 13px;
      left: 10px; }
      .app_main .logo img {
        width: 82px; }
    .app_main::before {
      content: "";
      background: url("../images/main/back_sp.jpg") no-repeat center/cover;
      background-position: center bottom;
      position: absolute;
      width: 100%;
      height: 100vh;
      left: 0; }
    .app_main .app_main_inner {
      max-width: 540px;
      height: auto;
      margin: 0 auto;
      padding: 40px 0 190px;
      display: flex;
      flex-direction: column;
      align-items: center;
      z-index: 4;
      position: relative; }
      .app_main .app_main_inner .bird {
        position: absolute;
        top: 15px;
        right: 10px;
        z-index: 11; }
        .app_main .app_main_inner .bird img {
          width: 68px; }
      .app_main .app_main_inner .ribbon {
        width: 90%;
        margin: 0 auto -15px;
        z-index: 10; }
      .app_main .app_main_inner h1 {
        width: 90%;
        margin: 0 auto;
        z-index: 10;
        text-align: center; }
        .app_main .app_main_inner h1 > span {
          display: block;
          position: relative; }
          .app_main .app_main_inner h1 > span::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 0;
            height: 100%;
            background: linear-gradient(transparent 60%, #ffffbc 60%);
            z-index: -1;
            animation: app_main_h1_marker_sp 1s .5s ease-out forwards; }
  @keyframes app_main_h1_marker_sp {
    to {
      width: 100%; } }
        .app_main .app_main_inner h1 .ttl1 {
          width: 100%; }
        .app_main .app_main_inner h1 .ttl2 {
          width: 98%; }
      .app_main .app_main_inner .period {
        width: 70%;
        margin: 20px auto 0; }
      .app_main .app_main_inner .deco_coin {
        position: absolute;
        width: 100%;
        top: 20%;
        left: -10px; }
      .app_main .app_main_inner .deco_wankeru > span:nth-child(1) {
        width: 128px;
        bottom: 0;
        right: calc(50% + 10px); }
      .app_main .app_main_inner .deco_wankeru > span:nth-child(2) {
        width: 124px;
        bottom: 0;
        left: calc(50% + 10px); }
      .app_main .app_main_inner .fl_btn_a01 {
        margin: 20px 0 0 0;
        position: sticky;
        bottom: 0; }
        .app_main .app_main_inner .fl_btn_a01 > a {
          width: 90%;
          max-width: 317px;
          height: 70px;
          font-size: 24px;
          background-image: radial-gradient(circle at center, rgba(255, 255, 200, 0.9) 0%, rgba(255, 223, 100, 0.6) 60%, transparent 100%), linear-gradient(to bottom, #ffe000 0%, #ffc200 50%, #ff9900 100%);
          border: 2px solid #004ea2;
          color: #004ea2 !important;
          margin: 0 auto; }
          .app_main .app_main_inner .fl_btn_a01 > a::after {
            content: "";
            background-image: url("../images/yajirushi_blue.svg");
            width: 20px;
            height: 20px;
            background-size: 20px 20px;
            display: block;
            position: absolute;
            top: 0;
            right: 15px; } }
.pink_back {
  background: linear-gradient(to bottom, transparent 0%, transparent 10vw, #fdf1f4 10vw, #fdf1f4 100%);
  position: relative;
  z-index: 3; }
  .pink_back .wave {
    background-image: url("../images/wave.png");
    background-size: cover;
    width: 100%;
    height: 30vw;
    position: absolute;
    top: -86px; }
  .pink_back > .container {
    position: relative;
    z-index: 2; }
    .pink_back > .container > .app_lead {
      text-align: center; }
      .pink_back > .container > .app_lead > .wankeru {
        display: flex;
        justify-content: center;
        align-items: flex-end; }
    .pink_back > .container > .app_DL_top {
      display: flex;
      flex-direction: column;
      align-items: center;
      transition: transform 0.8s cubic-bezier(0.5, 1.65, 0.58, 1);
      transform: translateY(100%); }
      .pink_back > .container > .app_DL_top > span:nth-child(2) {
        width: 200px;
        transform: rotate(10deg); }
      .pink_back > .container > .app_DL_top.inview {
        transform: translateY(0); }
    .pink_back > .container > .app_DL {
      background-color: #ff7d88;
      z-index: 1;
      position: relative; }
      .pink_back > .container > .app_DL > .app_DL_inner {
        background-color: #fff; }
        .pink_back > .container > .app_DL > .app_DL_inner > div small {
          color: #7b7b7b;
          line-height: 1.7em; }
      .pink_back > .container > .app_DL > .coupon {
        color: #fff;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        margin: 25px 0 0 0;
        position: relative;
        width: 100%; }
        .pink_back > .container > .app_DL > .coupon > div {
          width: 50%;
          position: relative; }
        .pink_back > .container > .app_DL > .coupon span {
          display: flex;
          justify-content: center;
          align-items: center; }
          .pink_back > .container > .app_DL > .coupon span img {
            width: 20px;
            height: 20px;
            margin: 0 10px; }

@media (min-width: 768px) {
  .pink_back {
    padding-bottom: 75px; }
    .pink_back > .container > .bnr_land {
      width: 595px;
      margin: 0 auto;
      padding: 30px 0 0 0;
      transition: transform .8s .5s ease-out, opacity .8s .5s ease-out;
      transform: translateY(-10px);
      opacity: 0; }
      .pink_back > .container > .bnr_land.inview {
        transform: translateY(0);
        opacity: 1; }
    .pink_back > .container > .app_lead {
      margin: -330px auto 75px;
      width: 530px; }
      .pink_back > .container > .app_lead > .wankeru {
        gap: 8px;
        margin-bottom: 10px; }
        .pink_back > .container > .app_lead > .wankeru > span {
          width: 40px; }
          .pink_back > .container > .app_lead > .wankeru > span:nth-child(2) {
            width: 72px; }
      .pink_back > .container > .app_lead .app_lead_p1 {
        font-size: 19px;
        margin: 0 0 5px 0;
        position: relative;
        display: inline-block;
        padding: 0 25px; }
        .pink_back > .container > .app_lead .app_lead_p1::before, .pink_back > .container > .app_lead .app_lead_p1::after {
          content: "";
          position: absolute;
          bottom: 0;
          width: 2px;
          height: 28px;
          background: #004ea2; }
        .pink_back > .container > .app_lead .app_lead_p1::before {
          transform: rotate(-30deg);
          left: 0; }
        .pink_back > .container > .app_lead .app_lead_p1::after {
          transform: rotate(30deg);
          right: 0; }
      .pink_back > .container > .app_lead .app_lead_p2 {
        font-size: 32px;
        position: relative;
        display: inline-block; }
        .pink_back > .container > .app_lead .app_lead_p2::after {
          content: "";
          background-image: url("../images/main/border.png");
          position: absolute;
          bottom: 0;
          left: 0;
          width: 527px;
          height: 8px;
          background-size: 527px 8px; }
      .pink_back > .container > .app_lead small {
        font-size: 14px;
        display: block;
        margin: 5px 0 0 0; }
    .pink_back > .container > .app_DL_top {
      width: 340px;
      margin: 80px auto -150px; }
      .pink_back > .container > .app_DL_top > span:nth-child(2) {
        width: 200px;
        margin-top: -40px; }
    .pink_back > .container > .app_DL {
      width: 900px;
      margin: 0 auto 110px;
      border-radius: 30px;
      padding: 25px; }
      .pink_back > .container > .app_DL > .app_DL_deco {
        position: absolute;
        top: -100px;
        left: calc(50% - 355px); }
        .pink_back > .container > .app_DL > .app_DL_deco img {
          width: 710px; }
      .pink_back > .container > .app_DL > .app_DL_inner {
        border-radius: 50px;
        padding: 0 25px; }
        .pink_back > .container > .app_DL > .app_DL_inner .top {
          display: flex;
          justify-content: center;
          align-items: center;
          text-align: center;
          padding: 10px 0 0 0;
          border-bottom: 2px solid #C5C6C6;
          gap: 5px; }
          .pink_back > .container > .app_DL > .app_DL_inner .top > div:nth-child(1) {
            width: 200px; }
          .pink_back > .container > .app_DL > .app_DL_inner .top > div:nth-child(2) {
            font-size: 29px; }
        .pink_back > .container > .app_DL > .app_DL_inner .bottom {
          display: flex;
          padding: 40px 0; }
          .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) {
            font-size: 14px;
            margin-left: 20px; }
            .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) a {
              display: inline-block;
              width: 245px; }
            .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) > small {
              margin-top: 40px;
              display: block; }
          .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(2) {
            width: 200px;
            margin-left: 40px; }
      .pink_back > .container > .app_DL > .coupon {
        font-size: 29px; }
        .pink_back > .container > .app_DL > .coupon > div {
          width: 100%;
          display: flex;
          margin: 0 0 0 40px; }
        .pink_back > .container > .app_DL > .coupon > .coupon_img {
          width: 255px;
          height: auto;
          position: absolute;
          right: 55px;
          top: -55px; }
    .pink_back > .container > .bottom_banner {
      text-align: center;
      margin: 0 0 10px 0; }
      .pink_back > .container > .bottom_banner p {
        font-size: 29px;
        position: relative;
        display: inline-block;
        padding: 0 20px;
        margin: 0 auto; }
        .pink_back > .container > .bottom_banner p::before, .pink_back > .container > .bottom_banner p::after {
          content: "";
          position: absolute;
          bottom: 0;
          width: 2px;
          height: 40px;
          background: #004ea2; }
        .pink_back > .container > .bottom_banner p::before {
          transform: rotate(-30deg);
          left: 0; }
        .pink_back > .container > .bottom_banner p::after {
          transform: rotate(30deg);
          right: 0; }
    .pink_back > .container > .bnr_members {
      width: 900px;
      margin: 0 auto; } }
@media (min-width: 1200px) {
  .wave {
    top: -90px !important; } }
@media (min-width: 1300px) {
  .wave {
    top: -100px !important; } }
@media (max-width: 767.98px) {
  .pink_back {
    padding-bottom: 20px;
    margin: -60px 0 0 0; }
    .pink_back .wave {
      background-image: url("../images/wave_sp.png");
      background-size: cover;
      width: 100%;
      height: 46vw;
      position: absolute;
      top: -12vw; }
    .pink_back > .container > .bnr_land {
      width: 100%;
      margin: 0 auto;
      padding: 30px 0 0 0;
      transition: transform .8s .5s ease-out, opacity .8s .5s ease-out;
      transform: translateY(-10px);
      opacity: 0; }
      .pink_back > .container > .bnr_land.inview {
        transform: translateY(0);
        opacity: 1; }
    .pink_back > .container > .app_lead {
      margin: 10px auto 42px;
      width: 100%; }
      .pink_back > .container > .app_lead > .wankeru {
        gap: 8px;
        margin-bottom: 5px; }
        .pink_back > .container > .app_lead > .wankeru > span {
          width: 25px; }
          .pink_back > .container > .app_lead > .wankeru > span:nth-child(2) {
            width: 45px; }
      .pink_back > .container > .app_lead .app_lead_p1 {
        font-size: 13px;
        margin: 0;
        position: relative;
        display: inline-block;
        padding: 0 10px; }
        .pink_back > .container > .app_lead .app_lead_p1::before, .pink_back > .container > .app_lead .app_lead_p1::after {
          content: "";
          position: absolute;
          bottom: 0;
          width: 2px;
          height: 22px;
          background: #004ea2; }
        .pink_back > .container > .app_lead .app_lead_p1::before {
          transform: rotate(-30deg);
          left: 0; }
        .pink_back > .container > .app_lead .app_lead_p1::after {
          transform: rotate(30deg);
          right: 0; }
      .pink_back > .container > .app_lead .app_lead_p2 {
        font-size: 20px;
        position: relative;
        display: inline-block; }
        .pink_back > .container > .app_lead .app_lead_p2::after {
          content: "";
          background-image: url("../images/main/border_sp.png");
          position: absolute;
          bottom: -5px;
          left: 0;
          width: 100%;
          height: 8px;
          background-size: 100% 8px; }
      .pink_back > .container > .app_lead small {
        font-size: 11px;
        display: block;
        margin: 10px 0 0 0; }
    .pink_back > .container > .app_DL_top {
      width: 100%;
      margin: 60px auto -86px; }
      .pink_back > .container > .app_DL_top > span:nth-child(1) {
        width: 168px;
        position: relative;
        top: -20px; }
      .pink_back > .container > .app_DL_top > span:nth-child(2) {
        width: 114px;
        margin-top: -40px; }
    .pink_back > .container > .app_DL {
      width: 100%;
      margin: 0 auto 43px;
      border-radius: 15px;
      padding: 12px; }
      .pink_back > .container > .app_DL > .app_DL_deco img {
        width: 100%; }
      .pink_back > .container > .app_DL > .app_DL_deco .deco1 {
        width: 47px;
        height: 47px;
        position: absolute;
        top: -55px;
        left: calc(50% - 150px); }
      .pink_back > .container > .app_DL > .app_DL_deco .deco2 {
        width: 47px;
        height: 47px;
        position: absolute;
        top: -65px;
        right: calc(50% - 130px); }
      .pink_back > .container > .app_DL > .app_DL_inner {
        border-radius: 25px;
        padding: 0 10px; }
        .pink_back > .container > .app_DL > .app_DL_inner .top {
          display: flex;
          justify-content: center;
          align-items: center;
          text-align: center;
          padding: 10px 0 0 0;
          border-bottom: 2px solid #C5C6C6;
          gap: 5px; }
          .pink_back > .container > .app_DL > .app_DL_inner .top > div:nth-child(1) {
            width: 118px; }
          .pink_back > .container > .app_DL > .app_DL_inner .top > div:nth-child(2) {
            font-size: 18px; }
        .pink_back > .container > .app_DL > .app_DL_inner .bottom {
          display: flex;
          padding: 15px 10px 20px; }
          .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) {
            font-size: 14px;
            margin-left: 0; }
            .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) > div {
              display: flex;
              justify-content: space-between; }
              .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) > div > a {
                display: inline-block;
                width: 48%; }
            .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) > p {
              margin: 12px 0 0 0; }
              .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(1) > p small {
                display: block;
                text-indent: -1em;
                padding-left: 1em; }
          .pink_back > .container > .app_DL > .app_DL_inner .bottom > div:nth-child(2) {
            width: 200px;
            margin-left: 40px; }
      .pink_back > .container > .app_DL > .coupon {
        font-size: 17px;
        margin: 15px auto 0 !important;
        max-width: 322px; }
        .pink_back > .container > .app_DL > .coupon > div {
          width: 50%;
          position: relative; }
        .pink_back > .container > .app_DL > .coupon span {
          position: absolute;
          left: 120px;
          top: 2px; }
          .pink_back > .container > .app_DL > .coupon span img {
            width: 16px;
            height: 16px;
            margin: 0 5px; }
        .pink_back > .container > .app_DL > .coupon > .coupon_img {
          width: 157px;
          height: auto;
          position: absolute;
          right: -6px;
          top: -36px; }
    .pink_back > .container > .bottom_banner {
      text-align: center;
      margin: 0 0 10px 0; }
      .pink_back > .container > .bottom_banner p {
        font-size: 19px;
        position: relative;
        display: inline-block;
        padding: 0 15px;
        margin: 0 auto; }
        .pink_back > .container > .bottom_banner p::before, .pink_back > .container > .bottom_banner p::after {
          content: "";
          position: absolute;
          bottom: 0;
          width: 2px;
          height: 30px;
          background: #004ea2; }
        .pink_back > .container > .bottom_banner p::before {
          transform: rotate(-30deg);
          left: 0; }
        .pink_back > .container > .bottom_banner p::after {
          transform: rotate(30deg);
          right: 0; }
    .pink_back > .container > .bnr_members {
      width: calc(100% + 30px);
      margin: 0 auto;
      position: relative;
      left: -15px; } }
@media (max-width: 540px) {
  .pink_back {
    padding-bottom: 20px;
    margin: -60px 0 0 0; }
    .pink_back .wave {
      background-image: url("../images/wave_sp.png");
      background-size: cover;
      width: 100%;
      height: 46vw;
      position: absolute;
      top: -12vw; } }
@media (max-width: 374px) {
  .pink_back .app_lead_p2 {
    font-size: 17px !important; } }
#readMoreBlock .readMoreInner {
  position: relative; }
  #readMoreBlock .readMoreInner > h2 {
    font-weight: bold;
    color: #013bb2;
    position: absolute;
    left: 0;
    right: 0;
    width: fit-content;
    margin: auto;
    background-color: #fdf1f4;
    padding: 0 10px;
    z-index: 1; }
  #readMoreBlock .readMoreInner .readMoreContainer {
    position: relative;
    height: auto;
    max-height: 250px;
    overflow: hidden;
    transition: max-height 0.6s; }
    #readMoreBlock .readMoreInner .readMoreContainer::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      z-index: 0;
      display: block;
      width: 100%;
      height: 100%;
      transition: 1s;
      background: linear-gradient(to bottom, transparent 40%, #fdf1f4 100%);
      pointer-events: none; }
    #readMoreBlock .readMoreInner .readMoreContainer.show:after {
      z-index: -1;
      opacity: 0; }
    #readMoreBlock .readMoreInner .readMoreContainer > .box {
      border: 2px solid #013bb2;
      color: #000000;
      font-weight: normal;
      line-height: 1.7em; }
      #readMoreBlock .readMoreInner .readMoreContainer > .box dl > dt {
        color: #004ea2;
        font-weight: bold; }
      #readMoreBlock .readMoreInner .readMoreContainer > .box ul li {
        text-indent: -1em;
        padding-left: 1em; }
  #readMoreBlock .readMoreInner .readMoreBtn {
    color: #013bb2 !important;
    background-color: #fff;
    cursor: pointer;
    box-shadow: 0px 5px 5px 0px rgba(0, 78, 162, 0.4); }
    #readMoreBlock .readMoreInner .readMoreBtn::after {
      background: url("../images/yajirushi_blue.svg") no-repeat center/100%;
      transform: rotate(90deg); }

@media (min-width: 768px) {
  #readMoreBlock .readMoreInner > h2 {
    top: -15px;
    font-size: 30px; }
  #readMoreBlock .readMoreInner .readMoreContainer .box {
    width: 900px;
    margin: 0 auto;
    border-radius: 50px;
    padding: 70px 60px;
    font-size: 14px; }
    #readMoreBlock .readMoreInner .readMoreContainer .box > p {
      margin-bottom: 20px; }
    #readMoreBlock .readMoreInner .readMoreContainer .box dl > dt {
      font-size: 18px;
      margin: 25px 0 10px; }
    #readMoreBlock .readMoreInner .readMoreContainer .box .sm_ul_mt {
      margin: 20px 0 0 0; }
  #readMoreBlock .readMoreInner .fl_btn_a01 {
    margin: 0 auto; }
  #readMoreBlock .readMoreInner .readMoreBtn {
    margin: 20px 0 auto; }
  #readMoreBlock .readMoreInner .readMoreBtn.show::after {
    transform: rotate(270deg); } }
@media (max-width: 767.98px) {
  #readMoreBlock .readMoreInner > h2 {
    top: -15px;
    font-size: 21px; }
  #readMoreBlock .readMoreInner .readMoreContainer .box {
    width: 100%;
    margin: 0 auto;
    border-radius: 25px;
    padding: 38px 20px 22px;
    font-size: 13px; }
    #readMoreBlock .readMoreInner .readMoreContainer .box > p {
      margin-bottom: 20px; }
    #readMoreBlock .readMoreInner .readMoreContainer .box dl > dt {
      font-size: 15px;
      margin: 22px 0 8px; }
    #readMoreBlock .readMoreInner .readMoreContainer .box .sm_ul {
      font-size: 11px; }
      #readMoreBlock .readMoreInner .readMoreContainer .box .sm_ul .sm_ul_mt {
        margin: 20px 0 0 0; }
  #readMoreBlock .readMoreInner .fl_btn_a01 {
    margin: 0 auto; }
  #readMoreBlock .readMoreInner .readMoreBtn {
    margin: 20px 0 auto; }
  #readMoreBlock .readMoreInner .readMoreBtn.show::after {
    transform: rotate(270deg); } }
@media (min-width: 768px) {
  .side_banner {
    position: sticky;
    text-align: right;
    right: 0;
    top: calc(50% - 185px);
    z-index: 10;
    width: 194px;
    margin: 0 0 0 auto; }
    .side_banner > div:first-child {
      width: 194px;
      margin: 0 0 0 auto; }
      .side_banner > div:first-child img {
        width: 130px; }
    .side_banner > div:last-child img {
      width: 194px; }

  .bottom_entry {
    display: none; } }
@media (max-width: 767.98px) {
  .side_banner {
    display: none; }

  .bottom_entry {
    display: none;
    background-color: #fff;
    position: fixed;
    bottom: 0;
    z-index: 10;
    padding: 15px 0 15px;
    border-top: 2px solid #004ea2;
    box-shadow: 0px -3px 5px 0px rgba(141, 141, 141, 0.3); }
    .bottom_entry > a {
      width: 90%;
      max-width: 317px;
      height: 70px;
      font-size: 24px;
      background-image: radial-gradient(circle at center, rgba(255, 255, 200, 0.9) 0%, rgba(255, 223, 100, 0.6) 60%, transparent 100%), linear-gradient(to bottom, #ffe000 0%, #ffc200 50%, #ff9900 100%);
      border: 2px solid #004ea2;
      color: #004ea2 !important;
      margin: 0 auto; }
      .bottom_entry > a::after {
        content: "";
        background-image: url("../images/yajirushi_blue.svg");
        width: 20px;
        height: 20px;
        background-size: 20px 20px;
        display: block;
        position: absolute;
        top: 0;
        right: 15px; }
      .bottom_entry > a::before {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.75), transparent);
        transform: skewX(-25deg);
        z-index: 1;
        opacity: 0;
        animation: fl_btn_a01_shine 3s infinite; }
  @keyframes fl_btn_a01_shine {
    0% {
      left: -200%;
      opacity: 0; }
    50% {
      left: 100%;
      opacity: 1; }
    100% {
      left: 200%;
      opacity: 0; } }
  .bottom_entry.show {
    display: block; } }
