@charset "UTF-8";
@media not all and (min-width: 768px) {
  :root {
    --u: min(0.25vw, 1px);
  }
  body {
    font-size: calc(14 * var(--u));
  }
  .u-pc,
  .u-br-pc {
    display: none;
  }
  .l-header {
    height: calc(73 * var(--u));
    background: var(--c-white);
  }
  .l-header__inner {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 calc(16 * var(--u));
  }
  .l-header__logo img {
    display: block;
    width: calc(96 * var(--u));
    height: calc(48 * var(--u));
    object-fit: contain;
  }
  .sec-fv {
    background: var(--c-camp-bg);
    padding: calc(20 * var(--u)) calc(24 * var(--u));
  }
  .sec-fv__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(20 * var(--u));
    width: 100%;
  }
  .sec-fv__group {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(32 * var(--u));
    width: 100%;
  }
  .sec-fv__head {
    display: flex;
    flex-direction: column;
    gap: calc(10 * var(--u));
    width: 100%;
    color: var(--c-navy);
    text-align: center;
  }
  .sec-fv__catch {
    font-size: calc(28 * var(--u));
    font-weight: 700;
    line-height: calc(39 * var(--u));
    letter-spacing: calc(0.56 * var(--u));
  }
  .sec-fv__sub {
    height: calc(20 * var(--u));
    font-size: calc(14 * var(--u));
    font-weight: 400;
    line-height: calc(20 * var(--u));
  }
  .sec-fv__sub-strong {
    font-size: calc(20 * var(--u));
    font-weight: 700;
    text-decoration: underline;
    text-decoration-thickness: 9.5%;
    text-underline-offset: calc(4 * var(--u));
    position: relative;
    top: calc(1 * var(--u));
  }
  .sec-fv__card {
    width: calc(266.667 * var(--u));
  }
  .sec-fv__card img {
    display: block;
    width: 100%;
    height: calc(168.533 * var(--u));
    border-radius: calc(10.667 * var(--u));
    object-fit: contain;
  }
  .c-badge {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(10 * var(--u));
    width: 100%;
    padding: calc(12.8 * var(--u)) calc(17.067 * var(--u));
    background: var(--c-badge);
    border-radius: calc(10 * var(--u));
    color: var(--c-white);
    overflow: hidden;
  }
  .c-badge__lead {
    font-size: calc(26 * var(--u));
    font-weight: 700;
    line-height: 1;
  }
  .c-badge__lead em {
    color: var(--c-yellow);
    font-style: normal;
  }
  .c-badge__point {
    position: relative;
    display: block;
    width: calc(317 * var(--u));
    height: calc(40 * var(--u));
  }
  .c-badge__point > * {
    position: absolute;
  }
  .c-badge__sub {
    top: calc(21 * var(--u));
    left: 0;
    font-size: calc(12 * var(--u));
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
  }
  .c-badge__sub:last-child {
    left: calc(281 * var(--u));
  }
  .c-badge__vp {
    top: 0;
    left: calc(42 * var(--u));
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(4 * var(--u));
    width: calc(98.875 * var(--u));
  }
  .c-badge__vplabel {
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: 1;
    white-space: nowrap;
  }
  .c-badge__vplogo {
    display: block;
    width: calc(99 * var(--u));
    height: calc(26 * var(--u));
  }
  .c-badge__num {
    top: calc(16 * var(--u));
    left: calc(144 * var(--u));
    display: flex;
    align-items: center;
    height: calc(22 * var(--u));
    color: var(--c-yellow);
    font-size: calc(26 * var(--u));
    font-weight: 900;
    line-height: calc(19 * var(--u));
    white-space: nowrap;
  }
  .c-badge__figure {
    font-family: var(--f-en);
    font-weight: 600;
    font-size: calc(32 * var(--u));
    line-height: calc(22 * var(--u));
  }
  .c-badge__pill {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: calc(4 * var(--u)) calc(12.204 * var(--u));
    background: var(--c-white);
    border-radius: calc(50 * var(--u));
    color: var(--c-badge);
    font-size: calc(10 * var(--u));
    font-weight: 700;
    line-height: 1;
    letter-spacing: calc(1 * var(--u));
    white-space: nowrap;
  }
  .sec-fv__cta {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-fv__cta .c-btn-entry {
    padding: calc(16 * var(--u)) 0;
    font-size: calc(15 * var(--u));
  }
  .sec-fv__note {
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: 1.5;
    color: var(--c-note);
  }
  .c-note--gray {
    line-height: calc(17 * var(--u));
  }
  .sec-points {
    display: flex;
    flex-direction: column;
    gap: calc(40 * var(--u));
    padding: calc(40 * var(--u)) calc(24 * var(--u)) calc(48 * var(--u));
    background: var(--c-white);
    border-radius: calc(20 * var(--u)) calc(20 * var(--u)) 0 0;
  }
  .sec-points__cols {
    display: flex;
    flex-direction: column;
    gap: calc(64 * var(--u));
    width: 100%;
  }
  .sec-pt1 {
    display: flex;
    flex-direction: column;
    gap: calc(32 * var(--u));
  }
  .sec-pt1__head {
    width: 100%;
  }
  .sec-pt1__title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: calc(34 * var(--u));
    font-weight: 700;
    line-height: calc(48 * var(--u));
    color: var(--c-navy);
  }
  .sec-pt1__title-l2 {
    margin-top: calc(-3 * var(--u));
    margin-left: calc(186 * var(--u));
  }
  .sec-pt1__body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(14 * var(--u));
    width: 100%;
  }
  .sec-pt1__detail {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-pt1__row {
    display: flex;
    align-items: center;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-pt1__icon {
    display: block;
    flex-shrink: 0;
    width: calc(71 * var(--u));
    height: calc(64 * var(--u));
  }
  .sec-pt1__icon img {
    display: block;
    width: 100%;
    height: 100%;
  }
  .sec-pt1__texts {
    display: flex;
    flex-direction: column;
    gap: calc(8 * var(--u));
    width: 100%;
  }
  .sec-pt1__figure {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(4 * var(--u));
    width: 100%;
  }
  .sec-pt1__figure-head {
    display: flex;
    align-items: center;
    gap: calc(8 * var(--u));
  }
  .sec-pt1__figure-text {
    font-size: calc(14 * var(--u));
    font-weight: 700;
    line-height: 1;
    color: var(--c-text);
    white-space: nowrap;
  }
  .sec-pt1__slash {
    position: relative;
    display: block;
    flex-shrink: 0;
    width: calc(12 * var(--u));
    height: calc(22 * var(--u));
  }
  .sec-pt1__slash img {
    position: absolute;
    top: calc(-0.3586 * var(--u));
    left: calc(-0.6588 * var(--u));
    display: block;
    width: calc(13.3168 * var(--u));
    height: calc(22.7183 * var(--u));
    max-width: none;
  }
  .sec-pt1__slash--l {
    transform: scaleX(-1);
  }
  .sec-pt1__figure-body {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-pt1__flow {
    display: flex;
    align-items: center;
    gap: calc(8.533 * var(--u));
    width: 100%;
    height: calc(78.667 * var(--u));
    padding: calc(12.8 * var(--u));
    background: var(--c-figure-bg);
    border-radius: calc(5 * var(--u));
    overflow: hidden;
  }
  .sec-pt1__flow-box {
    display: flex;
    flex: 1 0 0;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: calc(8 * var(--u));
    background: var(--c-white);
    border-radius: calc(8.533 * var(--u));
    color: var(--c-navy);
    font-size: calc(12 * var(--u));
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
  }
  .sec-pt1__flow-box--on {
    background: var(--c-blue);
    color: var(--c-white);
  }
  .sec-pt1__flow-arrow {
    flex-shrink: 0;
    font-size: calc(10 * var(--u));
    font-weight: 700;
    line-height: 1.5;
    color: var(--c-blue);
  }
  .sec-pt2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(14 * var(--u));
  }
  .sec-pt2__body {
    display: flex;
    flex-direction: column;
    gap: calc(40 * var(--u));
    width: 100%;
  }
  .sec-pt2__row {
    display: flex;
    align-items: center;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-pt2__icon {
    display: block;
    flex-shrink: 0;
    width: calc(64 * var(--u));
    height: calc(64 * var(--u));
  }
  .sec-pt2__icon img {
    display: block;
    width: 100%;
    height: 100%;
  }
  .sec-pt2__list {
    display: flex;
    flex-direction: column;
    gap: calc(24 * var(--u));
    width: 100%;
  }
  .sec-pt2__item {
    display: flex;
    flex-direction: column;
    gap: calc(12 * var(--u));
    width: 100%;
  }
  .sec-pt2__item-title {
    font-size: calc(16 * var(--u));
    font-weight: 700;
    line-height: 1;
    color: var(--c-text);
  }
  .sec-pt2__item-desc {
    font-size: calc(16 * var(--u));
    font-weight: 400;
    line-height: calc(29 * var(--u));
    letter-spacing: calc(-0.8 * var(--u));
    text-align: justify;
    color: var(--c-text);
  }
  .sec-pt2__item-desc2 {
    text-align: left;
  }
  .sec-pt2__list .c-hr {
    margin: calc(-0.75 * var(--u)) 0;
  }
  .sec-pt3 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(8 * var(--u));
  }
  .sec-pt3__body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(14 * var(--u));
    width: 100%;
  }
  .sec-pt3__detail {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-pt3__row {
    display: flex;
    align-items: center;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-pt3__icon {
    display: block;
    flex-shrink: 0;
    width: calc(95 * var(--u));
    height: calc(64 * var(--u));
  }
  .sec-pt3__icon img {
    display: block;
    width: 100%;
    height: 100%;
  }
  .sec-camp {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(40 * var(--u));
    padding: calc(48 * var(--u)) calc(24 * var(--u));
    background: var(--c-camp-bg);
  }
  .sec-camp__body {
    display: flex;
    flex-direction: column;
    gap: calc(40 * var(--u));
    width: 100%;
  }
  .sec-camp__badge {
    width: 100%;
  }
  .sec-camp__group {
    display: flex;
    flex-direction: column;
    gap: calc(24 * var(--u));
    width: 100%;
  }
  .sec-camp__detail {
    width: 100%;
  }
  .sec-camp__table {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
  }
  .sec-camp__row {
    display: flex;
    flex-direction: column;
    gap: calc(10 * var(--u));
    width: 100%;
    padding-bottom: calc(15 * var(--u));
    border-bottom: calc(1 * var(--u)) solid var(--c-white);
  }
  .sec-camp__th {
    font-size: calc(14 * var(--u));
    font-weight: 700;
    line-height: 1;
    color: var(--c-blue);
  }
  .sec-camp__td {
    width: 100%;
  }
  .sec-camp__stack {
    display: flex;
    flex-direction: column;
    gap: calc(10 * var(--u));
  }
  .sec-camp__val {
    font-size: calc(14 * var(--u));
    font-weight: 400;
    line-height: calc(24 * var(--u));
    color: var(--c-text);
  }
  .sec-camp__note {
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: 1.6;
    color: var(--c-note-gray);
  }
  .sec-camp__foot {
    width: 100%;
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: calc(-0.2 * var(--u));
    color: var(--c-note-gray);
  }
  .sec-svc {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(24 * var(--u));
    padding: calc(48 * var(--u)) calc(24 * var(--u));
    background: var(--c-white);
  }
  .sec-svc__list {
    display: flex;
    flex-direction: column;
    gap: calc(24 * var(--u));
    width: 100%;
  }
  .sec-svc__item {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-svc__title {
    width: 100%;
    font-size: calc(20 * var(--u));
    font-weight: 700;
    line-height: 1;
    color: var(--c-blue);
  }
  .sec-svc__desc {
    width: 100%;
    font-size: calc(14 * var(--u));
    font-weight: 400;
    line-height: calc(24 * var(--u));
    color: var(--c-text);
  }
  .sec-svc__em {
    font-weight: 700;
    color: var(--c-blue);
  }
  .sec-spec {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(40 * var(--u));
    padding: calc(48 * var(--u)) calc(24 * var(--u)) calc(40 * var(--u));
    background: var(--g-spec-bg);
  }
  .sec-spec__list {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
    width: 100%;
  }
  .sec-spec__row {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: calc(10 * var(--u));
    width: 100%;
    padding-bottom: calc(16 * var(--u));
  }
  .sec-spec__row::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: calc(1 * var(--u));
    background: var(--c-white);
  }
  .sec-spec__row--pay {
    gap: calc(16 * var(--u));
  }
  .sec-spec__row--last {
    padding-bottom: 0;
  }
  .sec-spec__row--last::after {
    content: none;
  }
  .sec-spec__label {
    font-size: calc(14 * var(--u));
    font-weight: 700;
    line-height: 1;
    color: var(--c-blue);
  }
  .sec-spec__body {
    width: 100%;
  }
  .sec-spec__body--note,
  .sec-spec__block {
    display: flex;
    flex-direction: column;
    gap: calc(4 * var(--u));
  }
  .sec-spec__body--stack {
    display: flex;
    flex-direction: column;
    gap: calc(10 * var(--u));
  }
  .sec-spec__text {
    font-size: calc(14 * var(--u));
    font-weight: 400;
    line-height: calc(24 * var(--u));
    color: var(--c-text);
  }
  .sec-spec__note {
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: 1.6;
    color: var(--c-note-gray);
  }
  .sec-spec__pays {
    display: flex;
    align-items: center;
    gap: calc(8 * var(--u));
  }
  .sec-spec__pay {
    flex-shrink: 0;
  }
  .sec-spec__pay--apple {
    width: calc(80.5 * var(--u));
    height: calc(51.52 * var(--u));
  }
  .sec-spec__pay--google {
    width: calc(80.5 * var(--u));
    height: calc(48.604 * var(--u));
  }
  .sec-spec__pay--samsung {
    width: calc(75 * var(--u));
    height: calc(34 * var(--u));
  }
  .sec-spec__pay--etc {
    width: calc(92 * var(--u));
    height: calc(34 * var(--u));
  }
  .sec-cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(24 * var(--u));
    padding: calc(40 * var(--u)) calc(24 * var(--u));
    background: var(--c-blue);
  }
  .sec-cta__catch {
    width: 100%;
    font-size: calc(24 * var(--u));
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    color: var(--c-white);
  }
  .sec-cta__box {
    display: flex;
    flex-direction: column;
    gap: calc(12 * var(--u));
    width: 100%;
  }
  .sec-cta .c-btn-entry {
    padding: calc(16 * var(--u)) 0;
    font-size: calc(20 * var(--u));
  }
  .sec-cta__note {
    width: 100%;
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: 1.5;
    color: var(--c-note-white);
  }
  .sec-faq {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(40 * var(--u));
    padding: calc(80 * var(--u)) calc(24 * var(--u)) 0;
  }
  .sec-faq__item {
    width: 100%;
  }
  .sec-faq__q {
    display: flex;
    align-items: center;
    gap: calc(24 * var(--u));
    width: 100%;
    text-align: left;
    color: var(--c-blue);
  }
  .sec-faq__q-inner,
  .sec-faq__qtext,
  .sec-faq__a-inner > .sec-faq__atext,
  .sec-faq__a-stack {
    flex: 1 0 0;
    min-width: 0;
  }
  .sec-faq__q-inner {
    display: flex;
    gap: calc(16 * var(--u));
    align-items: flex-start;
  }
  .sec-faq__mark {
    flex-shrink: 0;
    font-family: var(--f-en);
    font-weight: 400;
    font-size: calc(16 * var(--u));
    line-height: 1.6;
    color: inherit;
  }
  .sec-faq__qtext {
    font-size: calc(14 * var(--u));
    font-weight: 700;
    line-height: calc(22 * var(--u));
    color: inherit;
  }
  .sec-faq__icon {
    flex-shrink: 0;
    width: calc(21 * var(--u));
    font-family: var(--f-mincho);
    font-weight: 400;
    font-size: calc(26 * var(--u));
    line-height: 1;
    text-align: center;
    color: inherit;
  }
  .sec-faq__icon::before {
    content: "＋";
  }
  .sec-faq__item.is-open .sec-faq__icon::before {
    content: "−";
  }
  .sec-faq__a {
    overflow: hidden;
    color: var(--c-text);
    transition: height 300ms var(--fade-easing);
  }
  .sec-faq__a-inner {
    display: flex;
    gap: calc(16 * var(--u));
    align-items: flex-start;
    padding-top: calc(12 * var(--u));
  }
  .sec-faq__a-stack {
    display: flex;
    flex-direction: column;
    gap: calc(8 * var(--u));
  }
  .sec-faq__atext {
    font-size: calc(14 * var(--u));
    font-weight: 400;
    line-height: calc(24 * var(--u));
    color: inherit;
  }
  .sec-faq__note {
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: 1.6;
    color: var(--c-note-gray);
  }
  .sec-notice {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(40 * var(--u));
    padding: calc(64 * var(--u)) calc(24 * var(--u));
  }
  .sec-notice .c-sec-head__title {
    line-height: calc(45 * var(--u));
  }
  .sec-notice__list {
    width: 100%;
    font-size: calc(11 * var(--u));
    font-weight: 400;
    line-height: calc(18 * var(--u));
    color: var(--c-note-gray);
  }
  .sec-kasikin {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(40 * var(--u));
    padding: calc(63 * var(--u)) calc(24 * var(--u)) calc(110 * var(--u));
    border-top: calc(1 * var(--u)) solid var(--c-note-gray);
    margin-top: calc(-1 * var(--u));
    color: var(--c-text);
  }
  .sec-kasikin__title {
    width: 100%;
    font-size: calc(20 * var(--u));
    font-weight: 700;
    line-height: calc(30 * var(--u));
  }
  .sec-kasikin__body {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--u));
    width: 100%;
    font-size: calc(14 * var(--u));
    font-weight: 400;
    line-height: calc(24 * var(--u));
  }
  .sec-kasikin__text {
    display: flex;
    flex-direction: column;
    gap: calc(24 * var(--u));
  }
  .sec-kasikin__strong {
    font-weight: 700;
  }
  .sec-kasikin__org {
    display: flex;
    align-items: center;
    gap: calc(8 * var(--u));
  }
  .sec-kasikin__logo {
    flex-shrink: 0;
    width: calc(36 * var(--u));
    height: auto;
  }
  .sec-kasikin__link a {
    color: var(--c-link);
    text-decoration: underline;
  }
  .l-float {
    padding: calc(16 * var(--u)) calc(20 * var(--u));
  }
  .l-float__inner {
    display: flex;
    align-items: center;
    width: 100%;
  }
  .l-float__btn {
    display: flex;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    gap: calc(10 * var(--u));
    padding: calc(11 * var(--u)) calc(24 * var(--u)) calc(12 * var(--u));
    background: var(--c-pink);
    border-radius: 999px;
    font-family: var(--f-round);
    font-size: calc(14 * var(--u));
    font-weight: 700;
    line-height: calc(15 * var(--u));
    letter-spacing: calc(0.5 * var(--u));
    color: var(--c-white);
    white-space: nowrap;
  }
  .l-float__btn-arrow {
    flex-shrink: 0;
    width: calc(6 * var(--u));
    height: calc(12 * var(--u));
  }
  .l-exit__panel {
    width: calc(240 * var(--u));
    padding: calc(20 * var(--u));
    border-radius: calc(16 * var(--u));
    gap: calc(24 * var(--u));
  }
  .l-exit__close {
    font-size: calc(10 * var(--u));
    font-weight: 400;
    line-height: calc(15 * var(--u));
  }
  .l-exit__body {
    gap: calc(16 * var(--u));
  }
  .l-exit__lead {
    gap: calc(10 * var(--u));
    color: var(--c-white);
  }
  .l-exit__title {
    font-size: calc(20 * var(--u));
    font-weight: 700;
    line-height: calc(30 * var(--u));
  }
  .l-exit__text {
    font-size: calc(12 * var(--u));
    font-weight: 400;
    line-height: calc(18 * var(--u));
  }
  .l-exit__action {
    gap: calc(10 * var(--u));
  }
  .l-exit__btn {
    padding: calc(12 * var(--u)) 0;
    border-radius: 999px;
    font-size: calc(14 * var(--u));
    font-weight: 700;
    line-height: calc(21 * var(--u));
  }
}
