﻿  * {
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
  }

  html,
  body,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  ul,
  ol,
  dl,
  li,
  dt,
  dd,
  p,
  div,
  span,
  img,
  a,
  table,
  tr,
  th,
  td {
      margin: 0;
      padding: 0;
      border: 0;
      font-weight: normal;
      font-size: 100%;
      vertical-align: baseline;
  }

  header,
  footer,
  nav,
  div,
  article,
  aside,
  figure,
  figcaption {
      display: block;
  }

  body {
      font-family: "LEMON MILK Pro FTR", "AXIS Std", "Noto Sans JP";
      color: #333;
      background: #fff;
      font-size: 14px;
      line-height: 1;
      padding-bottom: 70px;
  }

  body.menu-open .contents {
      position: relative;
      width: 100%;
      overflow: hidden;
  }

  ol,
  ul {
      list-style: none;
      list-style-type: none;
  }

  a {
      font-size: 14px;
      color: #333;
      transition: opacity 0.3s;
      text-decoration: underline;
  }

  a:hover {
      opacity: 0.7;
  }

  img {
      width: 100%;
      height: auto;
  }

  p {
      line-height: 1.5;
      font-size: 14px;
      font-weight: 400;
  }

  sup {
      font-size: 14px;
  }

  .inner {
      max-width: 500px;
      padding: 0 15px;
      margin: 0 auto;
  }

  .div-title {
      position: relative;
      text-align: center;
  }

  .div-title span {
      position: relative;
      display: inline-block;
      font-size: 20px;
      font-weight: 600;
      line-height: 1.5;
  }

  .div-title span::before {
      content: "=";
      position: absolute;
      left: -15px;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      font-size: 14px;
      font-weight: 500;
  }

  .div-title span::after {
      content: "=";
      position: absolute;
      right: -15px;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      font-size: 14px;
      font-weight: 500;
  }

  .common-button {
      text-align: center;
      max-width: 285px;
      width: 100%;
      margin: 0 auto;
      border: 2px solid #333;
      border-radius: 16px;
  }

  .common-button a {
      display: inline-block;
      width: 100%;
      font-size: 14px;
      font-weight: 600;
      padding: 13px 5px;
  }

  .bg-yellow {
      background: #FFFA01;
  }

  .bg-grey {
      background: #F0F0F0;
      padding-top: 40px;
  }

  .textNotice {
      font-size: 14px;
      font-weight: 400;
      color: #333;
      line-height: 1.5;
  }

  .p-hdg--h2 {
      margin-bottom: 10px;
      font-size: 25px;
      text-align: center;
      color: #163765;
  }

  .p-hdg--h3 {
      margin-bottom: 20px;
      color: #163765;
      text-align: center;
      font-size: 20px;
  }

  .p-btn.is-navy a,
  .p-btn.is-navy button {
      background-color: #004898;
      box-shadow: 0 3px #333;
      color: #fff;
  }


  @media screen and (min-width: 768px) {
      .pc_block {
          display: block !important;
      }

      .background-contents,
      .contents {
          display: none !important;
      }

      .p-hdg--h2 {
          margin-bottom: 20px;
          font-size: 25px;
          text-align: center;
          color: #163765;
      }

      .point-item__text {
          margin-top: 20px;
          max-width: 300px;
          margin-left: auto;
      }

      .tab_item_1,
      .tab_item_2 {
          width: calc(100% / 2);
          height: 50px;
          line-height: 50px;
          text-align: center;
          display: block;
          float: left;
          padding: 0 10px;
          transition: all 0.2s ease;
      }

      #unlimited_data_pc_content img {
          max-width: 900px;
      }

      #data-top-up_pc_content img {
          max-width: 758px;
      }

      /*選択されているタブのコンテンツのみを表示*/
      #unlimited_data_pc:checked~#unlimited_data_pc_content,
      #data-top-up_pc:checked~#data-top-up_pc_content {
          display: block;
      }

      /*選択されているタブのスタイルを変える*/
      #unlimited_data_pc:checked+.tab_item_1 {
          background-image: url(/cms/povo/img/lp/japan_sim/09_tab_pc.png);
          background-size: 131px;
          background-repeat: no-repeat;
          background-position: center;
      }

      #unlimited_data_pc:checked+.tab_item_1 img {
          display: none;
      }


      #data-top-up_pc:checked+.tab_item_2 {
          background-image: url(/cms/povo/img/lp/japan_sim/07_tab_pc.png);
          background-size: 97px;
          background-repeat: no-repeat;
          background-position: center;
      }

      #data-top-up_pc:checked+.tab_item_2 img {
          display: none;
      }

      .tab_item_1 img {
          max-width: 130px;
          padding-top: 10px;
      }

      .tab_item_2 img {
          max-width: 95px;
      }

      .floating {
          position: fixed;
          bottom: 0;
          width: 100%;
          background: rgba(255, 255, 255, .8);
          padding: 15px 5px;
          z-index: 99;
      }

      .content__text {
          max-width: 700px;
          text-align: center;
          margin: 0 auto;
      }
  }

  @media screen and (max-width: 767px) {
      .pc_block {
          display: none !important;
      }

      .contents {
          display: block !important;
      }

      .floating {
          position: fixed;
          bottom: 0;
          width: 100%;
          max-width: 375px;
          background: rgba(255, 255, 255, .8);
          padding: 15px 5px;
          z-index: 99;
      }

      .block {
          padding-bottom: 40px;
      }
  }

  .contents {
      position: relative;
      width: 100%;
      /* max-width: 375px; */
      height: 100%;
      background: #fff;
      margin: 0 auto;
      z-index: 2;
  }

  /* @media screen and (max-width: 500px) {
                      .contents {
                        max-width: 100%;
                      }
                    } */

  .langage {
      padding: 5px 0;
  }

  .langBtn {
      position: relative;
      max-width: 120px;
      margin-left: auto;
  }

  .langBtn__items {
      display: none;
      width: 100%;
      max-width: 120px;
      position: absolute;
      background: #5b5b5b;
      padding: 5px;
      border-radius: 5px;
      z-index: 10;
  }

  .langBtn__item {
      margin-bottom: 10px;
  }

  .langBtn__item:last-child {
      margin-bottom: 0;
  }

  .langBtn__item a {
      color: #fff;
  }

  .bg-blue {
      position: relative;
      background: #E0ECFB;
      padding-top: 45px;
      overflow: hidden;
  }

  .bg-blue::before {
      content: "";
      width: 100px;
      height: 100px;
      border-radius: 100px;
      background: #f0f7ff;
      position: absolute;
      top: 35%;
      left: -30px;
      z-index: 1;
  }

  .bg-blue::after {
      content: "";
      width: 70px;
      height: 70px;
      border-radius: 100px;
      background: #f0f7ff;
      position: absolute;
      top: 45%;
      right: -15px;
  }

  .point {
      position: relative;
      /* margin-bottom: 60px; */
      z-index: 5;
      padding: 30px 0;
  }

  .point__title {
      margin: 0 auto 20px;
      max-width: 280px;
  }

  .point-item {
      background: #fff;
      margin-bottom: 40px;
      border-radius: 7px;
      border: 1px solid #3F7CC6;
  }

  .point-item__img {
      margin-bottom: 10px;
  }

  .point-item__heading {
      display: flex;
      align-items: center;
      background: #3F7CC6;
      border-radius: 7px 7px 0 0;
      border-bottom: 1px solid #3F7CC6;
  }

  .point-item__headingImg {
      text-align: center;
      width: 25%;
      background: #fff;
      padding: 7px;
      border-top-left-radius: 7px;
  }

  .point-item__headingText {
      width: 75%;
      padding: 15px 10px;
  }

  .point-item__headingText h2 {
      color: #fff;
      font-size: 13px;
  }

  .point-item__body {
      padding: 17px 15px;
  }

  .pointSub-item__img {
      margin-bottom: 20px;
  }

  /*タブ切り替え全体のスタイル*/
  .tabs {
      margin-top: 50px;
      margin: 0 auto;
  }

  /*タブのスタイル*/
  .tab_item_1,
  .tab_item_2 {
      width: calc(100% / 2);
      height: 50px;
      line-height: 50px;
      text-align: center;
      display: block;
      float: left;
      padding: 0 10px;
      transition: all 0.2s ease;
  }

  /* .tab_item_1:hover,
                  .tab_item_2:hover {
                      opacity: 0.75;
                  } */

  .tab_button {
      display: flex;
      justify-content: space-around;
  }

  /*ラジオボタンを全て消す*/
  input[name="tab_item"] {
      display: none;
  }

  /*ラジオボタンを全て消す*/
  input[name="tab_item_pc"] {
      display: none;
  }

  /*タブ切り替えの中身のスタイル*/
  .tab_content {
      display: none;
      padding: 20px 10px 0;
      clear: both;
      overflow: hidden;
      text-align: center;
  }


  /*選択されているタブのコンテンツのみを表示*/
  #unlimited_data_sp:checked~#unlimited_data_sp_content,
  #data-top-up_sp:checked~#data-top-up_sp_content {
      display: block;
  }

  /*選択されているタブのスタイルを変える*/
  #unlimited_data_sp:checked+.tab_item_1 {
      background-image: url(/cms/povo/img/lp/japan_sim/08_tab.png);
      background-size: 80%;
      background-repeat: no-repeat;
      background-position: center;
  }

  #unlimited_data_sp:checked+.tab_item_1 img {
      display: none;
  }


  #data-top-up_sp:checked+.tab_item_2 {
      background-image: url(/cms/povo/img/lp/japan_sim/09_tab.png);
      background-size: 125px;
      background-repeat: no-repeat;
      background-position: center;
  }

  #data-top-up_sp:checked+.tab_item_2 img {
      display: none;
  }

  /* .tab_item_2 img {
            margin-top: 10px;
            padding: 0 10px;
          } */

  .p-slider-step_stepnum {
      background-color: #004898;
      color: #fff;
  }

  .p-slider-step_cols {
      justify-content: space-evenly;
  }

  .p-slider-step_coltxt {
      font-size: 12px;
  }

  .p-slider-step_stepnum {
      font-size: 12px;
  }

  .swiper-horizontal>.swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal,
  .swiper-pagination-custom,
  .swiper-pagination-fraction {
      top: initial;
      bottom: -25px;
  }

  .swiper-pagination-bullet {
      background: #fff;
      opacity: initial;
      border: 1px solid #333;
  }

  .swiper-pagination-bullet-active {
      background: #333;
  }

  .swiper-button-next,
  .swiper-button-prev {
      top: initial;
      bottom: -30px;
      width: 20px;
      height: 20px;
  }

  .swiper-button-prev:after {
      content: "";
      background-image: url(/cms/povo/lp_secondary/img/arrowPrev.png);
      background-repeat: no-repeat;
      background-size: cover;
      width: 20px;
      height: 20px;
  }

  .swiper-button-next:after {
      content: "";
      background-image: url(/cms/povo/lp_secondary/img/arrowNext.png);
      background-repeat: no-repeat;
      background-size: cover;
      width: 20px;
      height: 20px;
  }

  .pointsSlider .swiper-button-prev,
  .pointsSlider .swiper-rtl .swiper-button-next {
      left: calc(50% - 55px);
  }

  .pointsSlider .swiper-button-next,
  .pointsSlider .swiper-rtl .swiper-button-prev {
      right: calc(50% - 55px);
  }

  .sliderWrapper {
      position: relative;
      margin-bottom: 35px;
  }

  .swiper01 {
      width: 100%;
      overflow: hidden;
  }

  .plan {
      position: relative;
      z-index: 5;
      padding: 40px 0 70px;
  }

  .plan__title {
      max-width: 140px;
      width: 100%;
      margin: 0 auto 30px;
  }

  .plan__img01 {
      max-width: 242px;
      width: 100%;
      margin: 0 auto 20px;
  }

  .plan__img02 {
      margin-bottom: 20px;
  }



  @media screen and (max-width: 500px) {
      .floating {
          max-width: 100%;
      }
  }

  .p-btn a,
  .p-btn button {
      font-size: 14px;
      min-height: 40px;
      /* color: #fff;
                      background: #4466b8; */
  }

  @media screen and (min-width: 950px) {

      .p-btn a,
      .p-btn button {
          max-width: 270px;
          min-height: 45px;
          font-size: 14px;
          line-height: 1.5;
      }
  }

  .middle__div {
      padding: 60px 0;
      background: #F0F0F0;
  }

  .bottom__div {
      padding: 60px 0 30px;
  }

  .block {
      padding: 30px 0;
  }

  .div__title {
      max-width: 500px;
      margin: 0 auto 20px;
  }

  .div__contents {
      max-width: 500px;
      margin: 0 auto 20px;
  }

  #textToCopy {
      border: 2px solid #767778;
      font-weight: 600;
      font-family: 'Noto Sans JP';
      padding: 7px 0;
      text-align: center;
      border-radius: 5px;
      font-size: 14px;
      letter-spacing: 1px;
  }

  #textToCopy_1 {
      border: 2px solid #767778;
      font-weight: 600;
      font-family: 'Noto Sans JP';
      padding: 7px 0;
      text-align: center;
      border-radius: 5px;
      font-size: 14px;
      letter-spacing: 1px;
  }

  .p-btn.is-thin {
      font-family: 'Noto Sans JP';
      font-size: 16px;
      color: #464749;
  }

  img {
      width: 100%;
      height: auto;
  }

  .info_date {
      text-align: right;
  }