@charset "UTF-8";

.clearfix::after,
.lp-list-anchor::after {
  display: block;
  clear: both;
  content: "";
}

.lp-hdg-lv2,
.lp-hdg-lv3-01,
.sub-hdg,
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content .link-text,
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content > .col-inner__bottom-layout > .link-text-bottom,
.lp-accordion .btn-accordion,
.lp-prize-table tbody :where(td) {
  font-family: "Clarimo UD PE DemiBold", "UD Shin Go Conde90 DB", sans-serif;
  font-weight: bold;
}

.lp-box-01 > .inner > .col p {
  font-family: "Clarimo UD PE DemiBold", "UD Shin Go DemiBold", sans-serif;
  font-weight: bold;
}

/* =========================================================
 Unique
========================================================= */
/* =========================================================
 Strucure
========================================================= */
body > .wrapper {
  overflow-x: hidden;
}

.break-content-full {
  width: 100vw;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

.wrapper.type-01 {
  background-color: #f6f6f6;
  margin-bottom: 54px;
  padding: 40px 0 44px;
}

.lp-sec-01 {
  margin-bottom: 0;
}

.lp-sec-02 {
  background-color: #edf8ff;
  margin-bottom: 0;
  padding: 40px 0;
}

.lp-sec-03 {
  padding-bottom: 50px;
}

.lp-sec-detail {
  margin-bottom: 80px;
}

.lp-sec > .main-content {
  min-width: 890px;
  max-width: 1200px;
  margin: 0 auto;
}

.lp-sec-02 > .main-content {
  padding-right: 20px;
  padding-left: 40px;
}

.lp-sec > .main-content > *:first-child {
  margin-top: 0;
}

/* =========================================================
 Main Visual
========================================================= */
.lp-main-visual {
  font-size: 0;
  line-height: 0;
  margin-bottom: 10px;
}

/* =========================================================
 Anchor
========================================================= */
.lp-link-anchor-01 > .list-link-anchor {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
.lp-link-anchor-01 > .list-link-anchor > li {
  display: inline-block;
}
.lp-link-anchor-01 > .list-link-anchor > li > a:hover,
.lp-link-anchor-01 > .list-link-anchor > li > a:focus {
  opacity: .7;
}

.lp-link-anchor-01.col3 > .list-link-anchor > li {
  position: relative;
  width: 33.33333%;
}
.lp-link-anchor-01.col3 > .list-link-anchor > li .m-icon {
  position: absolute;
  bottom: 18%;
  left: 60%;
}

.lp-link-anchor-01.col2 > .list-link-anchor {
  justify-content: space-between;
}
.lp-link-anchor-01.col2 > .list-link-anchor > li {
  width: 49%;
}

/* =========================================================
 Modules
========================================================= */
.lp-hdg-wrapper-lv2 {
  margin-top: 65px;
  margin-bottom: 40px;
  border-bottom: 5px solid #3670c6;
}
.lp-hdg-wrapper-lv2.type-gutter-large {
  margin-top: 100px;
}

.lp-hdg-lv2 {
  font-size: 36px;
  letter-spacing: -2px;
  position: relative;
  padding-bottom: 10px;
}
.lp-hdg-lv2::before {
  background-repeat: no-repeat;
  background-position: left center;
  position: absolute;
  top: -10px;
  bottom: 0;
  left: 0;
  display: block;
  width: 50px;
  height: 50px;
  margin: auto;
  content: "";
}
.lp-hdg-lv2.type-01 {
  padding-left: 59px;
}
.lp-hdg-lv2.type-01::before {
  background-image: url("/feature/pc-special/point_present_5000/images/bg-hdg-01.png");
  background-size: 44px auto;
}
.lp-hdg-lv2.type-02 {
  padding-left: 48px;
}
.lp-hdg-lv2.type-02::before {
  background-image: url("/feature/pc-special/point_present_5000/images/bg-hdg-02.png");
  background-size: 33px auto;
}
.lp-hdg-lv2.type-03 {
  padding-left: 58px;
}
.lp-hdg-lv2.type-03::before {
  background-image: url("/feature/pc-special/point_present_5000/images/bg-hdg-03.png");
  background-size: 43px auto;
}
.lp-hdg-lv3-01 {
  font-size: 22px;
}

.sub-hdg {
  font-size: 28px;
  text-align: center;
}
.sub-hdg .txt-em {
  color: #3670c6;
}

.lp-box-01.layout-panel-flex.col3 > .inner > .col {
  text-align: center;
  background-color: #fff;
  width: 32.2656%;
  margin: 12px;
  margin-right: .5172%;
  margin-left: .5172%;
  padding: 135px 20px 20px;
}

.lp-box-01 > .inner > .col:nth-child(1) {
  background: #fff url("/feature/pc-special/point_present_5000/images/ico-01.png") no-repeat top 40px center;
}

.lp-box-01 > .inner > .col:nth-child(2) {
  background: #fff url("/feature/pc-special/point_present_5000/images/ico-02.png") no-repeat top 50px center;
}

.lp-box-01 > .inner > .col:nth-child(3) {
  background: #fff url("/feature/pc-special/point_present_5000/images/ico-03.png") no-repeat top 42px center;
}

.lp-box-01 > .inner > .col p {
  font-size: 20px;
}
.lp-box-01 > .inner > .col p b {
  color: #3670c6;
}

.lp-box-flex-01.col2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}
.lp-box-flex-01.col2 > .col {
  width: 49%;
}
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content {
  text-align: center;
  background-color: #01916d;
  padding: 20px 0;
}
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content .link-text {
  font-size: 28px;
  color: #fff;
}
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content > .col-inner__bottom-layout {
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content > .col-inner__bottom-layout > .link-text-bottom {
  font-size: 14px;
  color: #01916d;
  background-color: #fff;
  padding: 10px 25px;
  border-radius: 18px;
}
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content:hover,
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content:focus,
.lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content:active {
  opacity: .7;
}

/* =========================================================
 Section01
========================================================= */
.lp-sec-01 > .main-content {
  padding-top: 17px;
  padding-bottom: 22px;
}

/* =========================================================
 Section02
========================================================= */
/* =========================================================
 Section03
========================================================= */
.lp-sec-03 > .main-content {
  padding-top: 50px;
}
.lp-sec-03 > .main-content p {
  margin-bottom: 20px;
}
.lp-sec-03 > .main-content .image {
  margin-top: 20px;
  margin-bottom: 35px;
}

/* =========================================================
 Section detail
========================================================= */
.lp-sec-detail {
  margin: 0 auto;
}
.lp-sec-detail p {
  margin-bottom: 15px;
}
.lp-sec-detail .layout-panel-flex {
  padding-right: 20px;
  padding-left: 30px;
}

.lp-sec-detail .layout-panel-flex .list-order-01.type-02 {
  padding-top: 15px;
}
.lp-sec-detail .layout-panel-flex .list-order-01.type-02 > li {
  font-size: 14px;
}

/* =========================================================
 Other
========================================================= */
.fs-16 {
  font-size: 16px !important;
}

.fs-18 {
  font-size: 18px !important;
}

.lh-0 {
  line-height: 0 !important;
}

.lh-1 {
  line-height: .5 !important;
}

.lh-2 {
  line-height: 1 !important;
}

.lh-3 {
  line-height: 1.5 !important;
}

.lh-4 {
  line-height: 2 !important;
}

.brackets-01::before {
  content: "【";
}

.brackets-01::after {
  content: "】";
}

.lp-point-01 {
  text-align: center;
  margin-bottom: 30px;
}

/* =========================================================
Accordion
========================================================= */
.lp-accordion .btn-accordion {
  font-size: 24px;
  background-image: url("/common/renew/images/icon-accordion-02-off.png");
  background-repeat: no-repeat;
  background-position: left top 8px;
  position: relative;
  padding-left: 37px;
}
.lp-accordion .btn-accordion[aria-expanded=true] {
  background-image: url("/common/renew/images/icon-accordion-02-on.png");
}
.lp-accordion .box-accordion-inner > :first-child {
  margin-top: 24px;
}
.lp-accordion .box-accordion-inner.break-content-full .lp-sec-03 {
  padding-bottom: 0;
}
.lp-accordion .box-accordion-inner.break-content-full .lp-sec-03 > .main-content {
  padding-right: 20px;
  padding-left: 20px;
}
.lp-accordion + .lp-accordion {
  margin-top: 48px;
}

/* =========================================================
unique table
========================================================= */
.lp-prize-table {
  margin-top: 50px;
}
.lp-prize-table + * {
  margin-top: 28px;
}
.lp-prize-table + .btn-wrapper {
  max-width: 923px;
  margin-right: auto;
  margin-left: auto;
}
.lp-prize-table-body {
  width: 100%;
  max-width: 923px;
  margin: 0 auto;
}
.lp-prize-table-inner {
  position: relative;
  margin-left: 20px;
}
.lp-prize-table-inner > :first-child {
  margin-top: 0;
}
.lp-prize-table-inner > :last-child {
  margin-bottom: 0;
}
.lp-prize-table-inner.type-num-title {
  color: #fff;
  margin-left: 0;
  padding: 10px 15px;
}
.lp-prize-table-inner.type-texture-OR::after {
  background-image: url("/feature/pc-special/point_present_5000/images/table/index-table-texture-01.png");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(100% - 12px);
  display: block;
  width: 42px;
  height: 42px;
  margin: auto 0;
  content: "";
}
.lp-prize-table :where(table) {
  table-layout: fixed;
}
.lp-prize-table :where(table, td, th) {
  border-spacing: 0;
  border-collapse: collapse;
}
.lp-prize-table :where(td, th) > :first-child {
  margin-top: 0;
}
.lp-prize-table :where(td, th) > :last-child {
  margin-bottom: 0;
}
.lp-prize-table thead :where(th, td) {
  text-align: center;
}
.lp-prize-table thead .lp-prize-table-inner {
  padding-right: 6px;
  padding-left: 6px;
}
.lp-prize-table tbody {
  background-color: #edf8ff;
}
.lp-prize-table tbody :where(td) {
  font-size: 20px;
  color: #005280;
}
.lp-prize-table tbody > tr:first-child {
  border-top: 9px solid #fff;
}
.lp-prize-table tbody > tr:not(:first-child) {
  border-top: 15px solid #fff;
}
.lp-prize-table tbody .lp-prize-table-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 204px;
}
.lp-prize-table tbody .lp-prize-table-inner:not(.type-num-title) {
  align-items: center;
  padding-bottom: 6px;

  row-gap: 15px;
}
.lp-prize-table tbody .lp-prize-table-inner.type-num-title {
  justify-content: flex-end;
  padding-bottom: 30px;
}
.lp-prize-table-img-layout {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;

  column-gap: 17px;
}
.lp-prize-table-col-num {
  width: 208px;
}
.lp-prize-table-row-prize-1 :where(td) {
  background-color: #edf8ff;
}
.lp-prize-table-row-prize-2 :where(td) {
  background-color: #dff3ff;
}
.lp-prize-table-row-prize-3 :where(td) {
  background-color: #c8ebff;
}
.lp-prize-table-title-num {
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  background-color: #b9ddff;
  position: relative;
  padding: 5px 5px 10px;
}
.lp-prize-table-title-num::before,
.lp-prize-table-title-num::after {
  position: absolute;
  display: block;
  content: "";
}
.lp-prize-table-title-num::before {
  background-color: #fff;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
}
.lp-prize-table-title-num::after {
  top: calc(100% - 10px);
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -10px;
  border: solid transparent;
  border-width: 10px;
  border-top-color: #b9ddff;
}
.lp-prize-table-title-a,
.lp-prize-table-title-b,
.lp-prize-table-title-c {
  padding-top: 20px;
  padding-bottom: 17px;
}
.lp-prize-table-title-a {
  background-color: #ffeec2;
}
.lp-prize-table-title-b {
  background-color: #dcdcdc;
}
.lp-prize-table-title-c {
  background-color: #ffe3d5;
}
.lp-prize-table-bg-blue-dark {
  background-color: #014e7b;
}
.lp-prize-table-bg-blue-light {
  background-color: #5ea0df;
}
.lp-prize-table-bg-blue {
  background-color: #378fe3;
}
.lp-prize-table .adjust-image {
  margin-left: -20px;
}

.lp-layout-capture {
  display: -ms-grid;
  display: grid;
  margin-top: 20px;

  -ms-grid-columns: (1fr)[2];

  grid-template-columns: repeat(2, 1fr);
  -ms-grid-rows: auto;
  grid-template-rows: auto;
  gap: 47px 28px;
}
.lp-layout-capture .content > :first-child {
  margin-top: 0;
}
.lp-layout-capture .capture {
  margin-top: 10px;
}
.lp-layout-capture > .col {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.lp-layout-capture > .col > :first-child {
  margin-top: 0;
}

/* =========================================================
clearFix
========================================================= */

@media screen and (min-width: 767px) {
  .list-order-03 {
    line-height: 2;
  }
}

@media screen and (max-width: 767px) {
  .lp-sec-02 {
    padding: 20px 0 30px;
  }
  .lp-sec > .main-content {
    min-width: 100%;
  }
  .lp-main-visual {
    margin-bottom: 20px;
  }
  .lp-link-anchor-01 > .list-link-anchor {
    flex-direction: column;
  }
  .lp-link-anchor-01 > .list-link-anchor > li {
    width: 100%;
  }
  .lp-link-anchor-01 > .list-link-anchor > li + li {
    margin-top: 10px;
  }
  .lp-link-anchor-01.col3 > .list-link-anchor > li {
    width: 100%;
  }
  .lp-link-anchor-01.col3 > .list-link-anchor > li + li {
    margin-top: 10px;
  }
  .lp-link-anchor-01.col2 > .list-link-anchor > li {
    width: 100%;
  }
  .lp-link-anchor-01.col2 > .list-link-anchor > li + li {
    margin-top: 10px;
  }
  .lp-hdg-wrapper-lv2 {
    margin-bottom: 30px;
    border-bottom: 4px solid #3670c6;
  }
  .lp-hdg-lv2 {
    font-size: 26px;
    line-height: 1.3;
    padding: 0 0 10px 44px;
  }
  .lp-hdg-lv2::before {
    width: 40px;
    height: 40px;
  }
  .lp-hdg-lv2.type-01,
  .lp-hdg-lv2.type-02,
  .lp-hdg-lv2.type-03 {
    background-size: 40px;
  }
  .sub-hdg {
    font-size: 20px;
  }
  .lp-box-01.layout-panel-flex.col3 > .inner > .col {
    text-align: left;
    width: 100%;
    margin: 0;
    padding: 20px 20px 20px 98px;
  }
  .lp-box-01.layout-panel-flex.col3 > .inner > .col + .col {
    margin-top: 10px;
  }
  .lp-box-01 > .inner > .col:nth-child(1) {
    background-position: left 10px center;
    background-size: 86px;
  }
  .lp-box-01 > .inner > .col:nth-child(2) {
    background-position: left 18px center;
    background-size: 72px;
  }
  .lp-box-01 > .inner > .col:nth-child(3) {
    background-position: left 10px center;
    background-size: 86px;
  }
  .lp-box-01 > .inner > .col p {
    font-size: 14px;
  }
  .lp-box-flex-01.col2 > .col {
    width: 100%;
    margin: 0;
  }
  .lp-box-flex-01.col2 > .col + .col {
    margin-top: 15px;
  }
  .lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content .link-text {
    font-size: 18px;
  }
  .lp-box-flex-01.col2 > .col > .col-inner > .col-inner__content {
    padding: 20px 10px;
  }
  .lp-sec-01 > .main-content {
    padding-top: 44px;
    padding-bottom: 15px;
  }
  .lp-sec-detail .layout-panel-flex {
    padding-right: 0;
    padding-left: 0;
  }
  .lp-point-01 {
    margin-bottom: 20px;
  }
}
