@charset "UTF-8";

/* ========================================
Reset CSS
適用範囲：#lp_contents 内のみ
======================================== */

/*
 * box-sizingを統一
 */
#lp_contents,
#lp_contents *,
#lp_contents *::before,
#lp_contents *::after {
    box-sizing: border-box;
}

/*
 * コンテンツ全体
 */
#lp_contents {
    margin: 0;
    padding: 0;
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

/*
 * 見出し・文章・リストなどの余白を初期化
 */
#lp_contents :where(
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    blockquote,
    figure,
    figcaption,
    dl,
    dt,
    dd,
    ul,
    ol,
    li
) {
    margin: 0;
    padding: 0;
}

/*
 * 見出し
 */
#lp_contents :where(
    h1,
    h2,
    h3,
    h4,
    h5,
    h6
) {
    font-size: inherit;
    font-weight: inherit;
}

/*
 * リスト
 */
#lp_contents :where(
    ul,
    ol
) {
    list-style: none;
}

/*
 * 画像・動画
 */
#lp_contents :where(
    img,
    picture,
    video,
    canvas,
    svg
) {
    display: block;
    max-width: 100%;
    height: auto;
}

/*
 * SVG
 */
#lp_contents svg {
    overflow: visible;
}

/*
 * テーブル
 */
#lp_contents table {
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
}

#lp_contents :where(
    th,
    td
) {
    padding: 0;
    font-weight: inherit;
    text-align: left;
    vertical-align: top;
}

/*
 * フォーム
 */
#lp_contents :where(
    button,
    input,
    select,
    textarea
) {
    margin: 0;
    padding: 0;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    background: none;
    border: 0;
    border-radius: 0;
}

#lp_contents button,
#lp_contents select {
    text-transform: none;
}

#lp_contents :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"]
) {
    cursor: pointer;
    appearance: none;
}

/*
 * テキストエリア
 */
#lp_contents textarea {
    resize: vertical;
}

/*
 * 非表示要素
 */
#lp_contents [hidden] {
    display: none !important;
}

/*
 * リンク
 */
#lp_contents a {
    color: inherit;
    text-decoration: none;
}

/*
 * 強調
 */
#lp_contents :where(
    strong,
    b
) {
    font-weight: bolder;
}

/*
 * 上付き・下付き文字
 */
#lp_contents :where(
    sub,
    sup
) {
    position: relative;
    font-size: .75em;
    line-height: 0;
    vertical-align: baseline;
}

#lp_contents sup {
    top: -.5em;
}

#lp_contents sub {
    bottom: -.25em;
}

#lp_contents *:focus {
    outline: none;
}

/* =====================================
全体設定
===================================== */

#lp_contents a {
    transition: .3s all ease;
}

#lp_contents a:hover {
    opacity: .6;
}

#lp_contents .sp {
    display: none !important;
}

#lp_contents {
    position: relative;
    margin: 0 auto;
    font-size: 18px;
    font-style: normal;
    color: #000;
    line-height: 1.67;
    text-align: left;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%; /* Chrome, Safari */
    -ms-text-size-adjust: 100%; /* Edge Mobile */
    -moz-text-size-adjust: 100%; /* firefox */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-feature-settings: "palt";
    letter-spacing: .1em;
}

#lp_contents img {
    max-width: 100%;
    height: auto;
}

#lp_contents .visual {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    background: url(../img/bg01.webp) no-repeat center;
}

#lp_contents .visual img {
    margin: 0 auto;
}

#lp_contents .cv01 {
    width: 100%;
    padding: 57px 0 82px;
    background: linear-gradient(118deg, #343434 0, #000000 100%);
}

#lp_contents .cv01 h2 {
    font-size: 44px;
    font-weight: bold;
    font-style: italic;
    color: #fff;
    text-align: center;
    line-height: 1;
}

#lp_contents .cv01 ul {
    margin: 51px auto 0;
    width: 100%;
    max-width: 1200px;
    display: flex;
    justify-content: space-between;
}

#lp_contents .cv01 ul li {
    width: 48.33%;
}

#lp_contents .cv01 ul li a {
    width: 100%;
    height: 90px;
    font-size: 24px;
    font-weight: bold;
    font-style: italic;
    color: #fff;
    line-height: 1;
    border-radius: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: .2em;
}

#lp_contents .cv01 ul li a.btn01 {
    background: url(../img/arrow01.webp) no-repeat right 6.896% center,linear-gradient(90deg, #8e3bd2 0, #bd008d 100%);
}

#lp_contents .cv01 ul li a.btn02 {
    background: url(../img/arrow01.webp) no-repeat center right 6.896%,linear-gradient(90deg,#db2827 0,#b30e0e 100%);
}

#lp_contents .nayami {
    width: 100%;
    height: 740px;
    padding: 60px 0 0;
    background: url(../img/bg02.webp) no-repeat center;
}

#lp_contents .nayami h2 {
    font-size: 40px;
    font-weight: 500;
    font-style: italic;
    color: #fff;
    text-align: center;
    line-height: 1.5;
}

#lp_contents .nayami ul {
    width: 1200px;
    font-size: 27px;
    font-weight: 500;
    font-style: italic;
    color: #fff;
    line-height: 1.4815;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 40px;
    row-gap: 78px;
    margin: 76px auto 0;
}

#lp_contents .nayami ul li {
    width: 580px;
    padding-left: 113px;
}

#lp_contents .nayami ul li strong {
    font-weight: 500;
    color: #ffec83;
}

#lp_contents .nayami ul li small {
    font-size: 80%;
}

#lp_contents .osusume {
    width: 100%;
    height: 2357px;
    background-image: url(../img/bg03.webp), url(../img/bg04.webp);
    background-position: center top, center bottom;
    background-repeat: no-repeat;
}

#lp_contents .osusume h2 {
    width: 100%;
    height: 100px;
    background: #000;
    font-size: 50px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    color: #fff000;
    text-align: center;
    padding-top: 25px;
}

#lp_contents .osusume h2 small {
    font-size: 80%;
    color: #fff;
}

#lp_contents .osusume img {
    margin: 21px auto;
}

#lp_contents .osusume h3 {
    width: 100%;
    height: 259px;
    background: linear-gradient(90deg,#000 0,#333 50%,#000 100%);
    font-size: 54px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    color: #fff000;
    text-align: center;
    padding-top: 68px;
    margin-top: -32px;
}

#lp_contents .osusume h3 small {
    font-size: 80%;
}

#lp_contents .osusume h3 span {
    font-size: 34px;
    color: #fff;
    display: table;
    margin: 0 auto 36px;
    padding: 0 38px;
    position: relative;
}

#lp_contents .osusume h3 span::before {
    content: "";
    width: 3px;
    height: 50px;
    background: #fff;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%) rotate(30deg);
}

#lp_contents .osusume h3 span::after {
    content: "";
    width: 3px;
    height: 50px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%) rotate(-30deg);
}

#lp_contents .osusume ul {
    width: 1200px;
    margin: 740px auto 0;
    display: flex;
    column-gap: 55px;
}

#lp_contents .osusume ul li {
    width: 360px;
    padding-top: 24px;
    font-size: 27px;
    font-weight: bold;
    font-style: italic;
    line-height: 1.4815;
    text-align: center;
}

#lp_contents .cv02 {
    width: 100%;
    padding: 0 0 46px;
    background: linear-gradient(118deg, #343434 0, #000000 100%);
}

#lp_contents .cv02 h2 {
    width: 100%;
    background: linear-gradient(90deg, #505050 0, #4c4c4c 4.5%, #787878 50%, #4c4c4c 95.5%, #505050 100%);
    padding: 33px 0;
    font-size: 36px;
    font-weight: bold;
    font-style: italic;
    line-height: 1.2889;
    color: #fff;
    text-align: center;
}

#lp_contents .cv02 h2 span {
    background: url(../img/txt_bg01.webp) no-repeat center;
    background-size: contain;
    width: 522px;
    height: 50px;
    font-size: 30px;
    line-height: 1;
    padding-top: 9px;
    margin: 0 auto 10px;
    display: block;
}

#lp_contents .cv02 p {
    font-size: 38px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1;
    margin-top: 35px;
    color: #fff;
}

#lp_contents .cv02 p span {
    font-size: 39px;
    display: table;
    margin: 0 auto 20px;
    padding: 0 38px;
    position: relative;
}

#lp_contents .cv02 p span::before {
    content: "";
    width: 3px;
    height: 50px;
    background: #fff;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%) rotate(30deg);
}

#lp_contents .cv02 p span::after {
    content: "";
    width: 3px;
    height: 50px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%) rotate(-30deg);
}

#lp_contents .cv02 p span small {
    font-size: 80%;
}

#lp_contents .cv02 ul {
    margin: 26px auto 0;
    width: 100%;
    max-width: 1200px;
    display: flex;
    justify-content: space-between;
}

#lp_contents .cv02 ul li {
    width: 48.33%;
}

#lp_contents .cv02 ul li a {
    width: 100%;
    height: 143px;
    border-radius: calc(143px / 2);
    font-size: 24px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1;
    color: #fff;
    padding-top: 19px;
    display: block;
    position: relative;
}

#lp_contents .cv02 ul li a::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 12px solid transparent;
    border-left: 12px solid transparent;
    border-top: 17px solid #ffffff;
    border-bottom: 0;
    position: absolute;
    top: 68px;
    right: 26px;
}

#lp_contents .cv02 ul li:nth-child(1) a {
    background: linear-gradient(90deg,#8e3bd2 0,#bd008d 100%);
    filter: drop-shadow(0 10px 0 #5a0f4f);
}

#lp_contents .cv02 ul li:nth-child(2) a {
    background: linear-gradient(90deg,#df2927 0,#c40d0d 100%);
    filter: drop-shadow(0 10px 0 #720000);
}

#lp_contents .cv02 ul li:nth-child(1) a img {
    margin: 26px auto 0;
}

#lp_contents .cv02 ul li:nth-child(2) a img {
    margin: 12px auto 0;
    width: 152px;
}

#lp_contents .nextgear {
    width: 100%;
    background: url(../img/bg05.webp) no-repeat center top;
    padding: 68px 0 54px;
}

#lp_contents .nextgear h2 {
    font-size: 32px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1.5625;
    color: #3c3c3c;
}

#lp_contents .nextgear h2 img {
    margin: 40px auto 0;
}

#lp_contents .nextgear .txt-box {
    background: url(../img/bg06.webp) no-repeat center;
    width: 1089px;
    height: 453px;
    margin: 334px auto 0;
    padding-top: 145px;
}

#lp_contents .nextgear .txt-box h3 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    color: #3c3c3c;
}

#lp_contents .nextgear .txt-box p {
    font-size: 24px;
    font-weight: bold;
    line-height: 2.0833;
    text-align: center;
    color: #3c3c3c;
    width: 770px;
    margin: 40px auto 0;
}

#lp_contents .nextgear ul {
    width: 1200px;
    margin: 67px auto 0;
}

#lp_contents .nextgear ul li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

#lp_contents .nextgear ul li h4 {
    width: 100%;
    height: 87px;
    background: url(../img/bg07.webp) no-repeat center;
    font-size: 40px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    text-align: center;
    color: #fff;
    padding-top: 24px;
    margin-bottom: 16px;
}

#lp_contents .nextgear ul li .img-area {
    width: 277px;
}

#lp_contents .nextgear ul li .img-area img {
    margin: 0 0 0 auto;
}

#lp_contents .nextgear ul li .txt-area {
    width: 860px;
}

#lp_contents .nextgear ul li .txt-area p {
    font-size: 27px;
    font-weight: bold;
    line-height: 1.4815;
    color: #3c3c3c;
}

#lp_contents .nextgear ul li:nth-child(2) {
    margin-top: 23px;
}

#lp_contents .nextgear ul li:nth-child(2) h4 {
    background: url(../img/bg08.webp) no-repeat center;
    margin-bottom: 33px;
    order: 1;
}

#lp_contents .nextgear ul li:nth-child(2) .img-area {
    width: 431px;
    order: 3;
}

#lp_contents .nextgear ul li:nth-child(2) .img-area img {
    margin: 0;
}

#lp_contents .nextgear ul li:nth-child(2) .txt-area {
    width: 750px;
    padding-left: 60px;
    order: 2;
}

#lp_contents .casual {
    padding: 98px 0 109px;
    background: url(../img/txt01.webp) no-repeat center top, linear-gradient(90deg,#cfeef2 -10.5%,#f5e2f2 110.5%);
}

#lp_contents .casual h2 {
    font-size: 55px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1;
    color: #be008c;
}

#lp_contents .casual h2 span {
    font-size: 30px;
    display: block;
    background: url(../img/txt_bg02.webp) no-repeat center top;
    height: 66px;
    margin-bottom: 11px;
    padding-top: 10px;
}

#lp_contents .casual a {
    margin: 81px auto 0;
    display: flex;
    align-items: center;
    font-size: 35px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    color: #fff;
    width: 690px;
    height: 120px;
    padding: 0 0 .2em 42px;
    background: url(../img/arrow01.webp) no-repeat center right 29px ,linear-gradient(90deg,#8e3bd2 0,#bd008d 100%);
    border-radius: 60px;
}

#lp_contents .installment {
    width: 100%;
    height: 409px;
    margin: -27px auto 0;
    background: url(../img/bg09.webp) no-repeat center;
    padding: 66px 40px 0;
    position: relative;
    z-index: 1;
}

#lp_contents .installment h2 {
    font-size: 40px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1;
    color: #fff;
}

#lp_contents .installment h2 img {
    margin: 25px auto 0;
}

#lp_contents .installment p {
    font-size: 35px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1;
    color: #fff;
    margin-top: 54px;
}

#lp_contents .gtune {
    width: 100%;
    background: #000 url(../img/bg10.webp) no-repeat center top;
    padding: 78px 0 170px;
    margin-top: -13px;
    position: relative;
    z-index: 0;
}

#lp_contents .gtune h2 img {
    margin: 0 auto;
    width: 278px;
}

#lp_contents .gtune .concept-heading {
    width: 1200px;
    margin: 42px auto 0;
    font-size: 47px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
}

#lp_contents .gtune .concept-heading span {
    display: table;
    background: #000;
}

#lp_contents .gtune .concept-heading span:nth-child(1) {
    padding: 24px 44px 22px;
}

#lp_contents .gtune .concept-heading span:nth-child(2) {
    padding: 20px 44px 30px;
}

#lp_contents .gtune .concept-heading span:nth-child(3) {
    padding: 14px 44px 30px;
}

#lp_contents .gtune .pro-spec {
    margin-top: 84px;
}

#lp_contents .gtune .pro-spec h4 {
    font-size: 30px;
    font-weight: bold;
    font-style: italic;
    line-height: 1.733;
    text-align: center;
    color: #fff;
}

#lp_contents .gtune .pro-spec p {
    font-size: 23px;
    font-weight: bold;
    line-height: 2.1739;
    text-align: center;
    color: #fff;
    margin-top: 38px;
}

#lp_contents .gtune ul {
    width: 1200px;
    margin: 78px auto 0;
    display: flex;
    justify-content: space-between;
}

#lp_contents .gtune ul li {
    width: 560px;
    height: 194px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-size: 44px;
    font-style: italic;
    font-weight: bold;
    line-height: 1.22485;
    text-align: center;
    color: #fff;
    text-shadow: 2px 3.46px 0 #000, 0 0 30px rgba(255, 255, 255, .5);
}

#lp_contents .gtune ul li small {
    font-size: 55%;
    display: block;
    margin-top: 8px;
}

#lp_contents .gtune .lineup-heading {
    font-size: 55px;
    font-style: italic;
    font-weight: bold;
    line-height: 1.273;
    text-align: center;
    color: #fff;
    margin: 102px 0 46px;
}

#lp_contents .gtune .lineup-heading strong {
    font-size: 40px;
    font-style: italic;
    line-height: 1;
    display: block;
}

#lp_contents .gtune .lineup-heading span {
    font-size: 40px;
    font-style: italic;
    line-height: 1;
    color: #dc2828;
    display: block;
    margin: 94px 0 54px;
}

#lp_contents .gtune a {
    margin: 63px auto 0;
    display: flex;
    align-items: center;
    font-size: 35px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    color: #fff;
    width: 690px;
    height: 120px;
    padding: 0 0 .2em 76px;
    background: url(../img/arrow01.webp) no-repeat center right 29px ,linear-gradient(90deg,#dc2828 0,#b40e0e 100%);
    border-radius: 60px;
}

#lp_contents .comparison {
    width: 100%;
    height: 1817px;
    background: url(../img/bg11.webp) no-repeat center;
    margin-top: -29px;
    padding-top: 624px;
    position: relative;
    z-index: 10;
}

#lp_contents .comparison h2 {
    font-size: 53px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    text-align: center;
    color: #fff;
    letter-spacing: .1em;
}

#lp_contents .comparison h2 small {
    font-size: 80%;
}

#lp_contents .comparison h2 span {
    padding-top: 14px;
    background-position: top left 33px;
    background-repeat: repeat-x;
    background-size: 58px 9px;
    background-image: radial-gradient(circle 4.5px at 4.5px 4.5px,#fff 0,#fff 4.5px,transparent 4.5px);
}

#lp_contents .comparison p img {
    margin: 50px auto 0;
    filter: drop-shadow(0 0 21px rgba(0, 0, 0, .08));
}

#lp_contents .game {
    width: 100%;
    padding-bottom: 96px;
    background: #d2d2d2;
}

#lp_contents .game h2 {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 35px), calc(50% + 30px) calc(100% - 35px), 50% 100%, calc(50% - 30px) calc(100% - 35px), 0 calc(100% - 35px));
    background: linear-gradient(302deg,#3d3d3d 0,#252625 100%);
    background-size: 110% 110%;
    background-position: center;
    background-repeat: no-repeat;
    font-size: 35px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    text-align: center;
    color: #fff;
    padding: 36px 0 66px;
}

#lp_contents .game .slide {
    width: 728px;
    margin: 20px auto 0;
}

#lp_contents .game .slide .slide-item {
    width: 728px;
    margin: 0 auto;
    padding: 0 40px;
}

#lp_contents .game .slide .slide-item h3 {
    font-weight: bold;
    font-style: italic;
    line-height: 1.2857;
    text-align: center;
    color: #1e1e1e;
    width: 379px;
    height: 79px;
    background: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    clip-path: polygon(22px 0, calc(100% - 22px) 0, 100% 50%, calc(100% - 22px) 100%, 22px 100%, 0 50%);
    margin: 44px auto 0;
}

#lp_contents .game .slide .slide-item .title-xl {
    font-size: 35px;
}

#lp_contents .game .slide .slide-item .title-lg {
    font-size: 30px;
}

#lp_contents .game .slide .slide-item .title-md {
    font-size: 29px;
}

#lp_contents .game .slide .slide-item .title-sm {
    font-size: 27px;
}

#lp_contents .game .slide .slide-item .title-xs {
    font-size: 21px;
}

#lp_contents .game .slide .slide-item h3 span {
    width: 329px;
    height: 73px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: .2em;
    clip-path: polygon(21px 0, calc(100% - 21px) 0, 100% 50%, calc(100% - 21px) 100%, 21px 100%, 0 50%);
}

#lp_contents .slick-prev,
#lp_contents .slick-next {
    top: 110px;
    width: 66px;
    height: 62px;
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0);
    text-indent: -9999px;
}

#lp_contents .slick-prev {
    left: -1px;
}

#lp_contents .slick-next {
    right: -1px;
}

#lp_contents .slick-next::before,
#lp_contents .slick-prev::before {
    width: 66px;
    height: 62px;
    border-top: none;
    border-right: none;
    transform: rotate(0);
    display: block;
    top: 0;
    left: 0;
}

#lp_contents .slick-prev::before {
    background: url(../img/prev01.webp) no-repeat center;
    background-size: contain;
}

#lp_contents .slick-next::before {
    background: url(../img/next01.webp) no-repeat center;
    background-size: contain;
}

#lp_contents .slick-dots {
    bottom: -67px;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}

#lp_contents .slick-dots li {
    width: 15px;
    height: 15px;
    margin: 0 9px !important;
}

#lp_contents .slick-dots li button {
    width: 15px;
    height: 15px;
    text-indent: -9999px;
}

#lp_contents .slick-dots li button::before {
    width: 15px;
    height: 15px;
    background: #fff;
    border-radius: 50%;
}

#lp_contents .slick-dots li.slick-active button::before {
    background: #323232;
    border: none;
    margin-top: 0;
}

#lp_contents .support {
    width: 100%;
    background: url(../img/bg12.webp) repeat center;
    padding: 83px 0 271px;
}

#lp_contents .support h2 img {
    margin: 0 auto;
}

#lp_contents .support ul {
    margin: 66px auto 0;
    width: 100%;
    max-width: 1200px;
}

#lp_contents .support ul li {
    display: flex;
    justify-content: space-between;
}

#lp_contents .support ul li:nth-child(even) {
    flex-direction: row-reverse;
}

#lp_contents .support ul li + li {
    margin-top: 95px;
}

#lp_contents .support ul li .txt-area {
    width: 700px;
}

#lp_contents .support ul li .txt-area h3 {
    padding-left: 160px;
    font-size: 55px;
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    color: #080808;
    display: flex;
    flex-direction: column;
    gap: 9px;
    align-items: flex-start;
    overflow: visible;
    white-space: nowrap;
}

#lp_contents .support ul li:nth-child(n+2) .txt-area h3 {
    font-size: 50px;
}

#lp_contents .support ul li:nth-child(2) .txt-area h3 {
    padding-left: 190px;
}

#lp_contents .support ul li:nth-child(3) .txt-area h3 {
    padding-left: 218px;
}

#lp_contents .support ul li:nth-child(4) .txt-area h3 {
    padding-left: 245px;
}

#lp_contents .support ul li:nth-child(5) .txt-area h3 {
    padding-left: 204px;
}

#lp_contents .support ul li:nth-child(1) .txt-area h3 {
    background: url(../img/icon02.webp) no-repeat center left 10px;
}

#lp_contents .support ul li:nth-child(2) .txt-area h3 {
    background: url(../img/icon03.webp) no-repeat center left 15px;
}

#lp_contents .support ul li:nth-child(3) .txt-area h3 {
    background: url(../img/icon04.webp) no-repeat center left 7px;
}

#lp_contents .support ul li:nth-child(4) .txt-area h3 {
    background: url(../img/icon05.webp) no-repeat center left 25px;
}

#lp_contents .support ul li:nth-child(5) .txt-area h3 {
    background: url(../img/icon06.webp) no-repeat center left 10px;
}

#lp_contents .support ul li .txt-area h3 span {
    display: inline-block;
    position: relative;
    padding: 9px 19px 20px 12px;
    z-index: 0;
}

#lp_contents .support ul li .txt-area h3 span::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #ffd400;
    transform: skewX(-10deg);
    z-index: -1;
}

#lp_contents .support ul li .txt-area h3 span small {
    font-size: 45px;
}

#lp_contents .support ul li .txt-area h3 span strong {
    font-size: 170%;
    font-weight: bold;
    font-style: italic;
    position: relative;
}

#lp_contents .support ul li:nth-child(1) .txt-area h3 span strong::before {
    content: "※";
    font-size: 18px;
    font-weight: bold;
    font-style: italic;
    position: absolute;
    top: 17px;
    right: -15px;
}

#lp_contents .support ul li:nth-child(3) .txt-area h3 span strong::before {
    content: "※";
    font-size: 18px;
    font-weight: bold;
    font-style: italic;
    position: absolute;
    top: 17px;
    right: -15px;
}

#lp_contents .support ul li:nth-child(4) .txt-area h3 span strong::before {
    content: "※";
    font-size: 18px;
    font-weight: bold;
    font-style: italic;
    position: absolute;
    top: 17px;
    right: -15px;
}

#lp_contents .support ul li .txt-area h3 span strong small {
    font-size: 70.59%;
}

#lp_contents .support ul li .txt-area p {
    padding-left: 10px;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.67;
    color: #080808;
    margin-top: 46px;
}

#lp_contents .support ul li:nth-child(even) .txt-area p {
    padding-left: 44px;
}

#lp_contents .support ul li .txt-area p small {
    font-size: 75%;
    display: block;
}

#lp_contents .support ul li .img-area {
    width: 500px;
}

#lp_contents .check {
    width: 100%;
    height: 700px;
    background: url(../img/bg13.webp) no-repeat center;
    margin-top: -180px;
    padding: 34px 0 0;
}

#lp_contents .check p {
    font-size: 39px;
    font-weight: bold;
    font-style: italic;
    line-height: 1.3461;
    text-align: center;
    color: #fff;
}

#lp_contents .check p span {
    font-size: 46px;
    font-weight: bold;
    line-height: 1;
    color: #080808;
    display: block;
    margin-top: 170px;
}

#lp_contents .check p span strong {
    font-size: 119%;
    font-weight: bold;
    font-style: italic;
    color: #fff000;
    position: relative;
    padding: 4px 19px 6px 18px;
    z-index: 0;
}

#lp_contents .check p span strong::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #000;
    transform: skewX(-20deg);
    z-index: -1;
}

#lp_contents .check dl {
    width: 1200px;
    height: 164px;
    margin: 52px auto 0;
    border-radius: 20px;
    background: #fff;
    display: flex;
    justify-content: space-between;
}

#lp_contents .check dl dt {
    padding: 0 56px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-size: 32px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1.4375;
}

#lp_contents .check dl dt span {
    background-image: linear-gradient(to top, transparent 10%, rgba(254, 229, 0, 1) 10%, rgba(254, 229, 0, 1) 30%, transparent 30%);
}

#lp_contents .check dl dd {
    padding: 0 56px;
    border-left: 3px solid #fff000;
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.5;
}

#lp_contents .percentage {
    width: 100%;
    background: linear-gradient(90deg,#fff000 -5%,#fcd700 105%);
    margin-top: -13px;
    padding: 62px 0 73px;
}

#lp_contents .percentage h2 {
    font-size: 55px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1;
}

#lp_contents .percentage h2 small {
    font-size: 30px;
    line-height: 1.33;
    margin: 0 auto 25px;
    position: relative;
    padding: 0 30px;
    display: table;
}

#lp_contents .percentage h2 small::before {
    content: "";
    width: 4px;
    height: 86px;
    background: #000;
    transform: rotate(25.2deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 0;
}

#lp_contents .percentage h2 small::after {
    content: "";
    width: 4px;
    height: 86px;
    background: #000;
    transform: rotate(-25.2deg) translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
}

#lp_contents .percentage img {
    margin: 17px auto 0;
}

#lp_contents .percentage .box {
    width: 1200px;
    margin: 7px auto 0;
    background-image: url(../img/icon07.webp), url(../img/bg12.webp);
    background-repeat: no-repeat, repeat;
    background-position: center left 49px, center;
    border-radius: 20px;
    padding: 50px 130px 50px 468px;
    display: flex;
    align-items: center;
    font-size: 27px;
    font-weight: bold;
    line-height: 1.67;
}

#lp_contents .faq {
    width: 100%;
    padding: 89px 0 73px;
}

#lp_contents .faq h2 {
    font-size: 55px;
    font-weight: bold;
    font-style: italic;
    text-align: center;
    color: #3c3c3c;
    line-height: 1;
}

#lp_contents .faq dl {
    margin: 64px auto 0;
    width: 900px;
}

#lp_contents .faq dl div + div {
    margin-top: 56px;
}

#lp_contents .faq dl div dt {
    font-size: 28px;
    font-weight: bold;
    color: #3c3c3c;
    line-height: 1.35;
    padding: 42px 120px 32px;
    width: 100%;
    min-height: 110px;
    background: #ececec url(../img/icon08.webp) no-repeat center left 22px;
    position: relative;
    cursor: pointer;
}

#lp_contents .faq dl div dt::before {
    content: "";
    width: 35px;
    height: 3px;
    background: #000;
    position: absolute;
    top: 50%;
    right: 28px;
    transform: translateY(-50%);
}

#lp_contents .faq dl div dt::after {
    content: "";
    width: 3px;
    height: 35px;
    background: #000;
    position: absolute;
    top: 50%;
    right: 44px;
    transform: translateY(-50%);
    transition: transform .3s;
}

#lp_contents .faq dl div dt.active::after {
    opacity: 0;
}

#lp_contents .faq dl div dd {
    font-size: 20px;
    font-weight: bold;
    color: #3c3c3c;
    line-height: 2;
    padding-top: 26px;
    display: none;
}

#lp_contents .faq dl div dd a {
    text-decoration: underline;
}

#lp_contents .note {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 32px 40px;
}

#lp_contents .note ul li {
    font-size: 18px;
    font-weight: bold;
    color: #3c3c3c;
    line-height: 1.6;
    padding-left: 1em;
    text-indent: -1em;
    letter-spacing: 0.075em;
}



@media screen and (max-width: 768px) {

    #lp_contents .sp {
        display: block !important;
    }

    #lp_contents .pc {
        display: none !important;
    }
    
    body {
        min-width: inherit;
    }
    
    #lp_contents {
        container-type: inline-size;
    }

    #lp_contents .visual img {
        width: 100%;
    }

    #lp_contents .cv01 {
        padding: 7.6cqw 0 6.8cqw;
    }

    #lp_contents .cv01 h2 {
        font-size: 5.33cqw;
    }

    #lp_contents .cv01 ul {
        margin: 6.533cqw auto 0;
        width: 92cqw;
        flex-wrap: wrap;
        gap: 5.467cqw;
    }

    #lp_contents .cv01 ul li {
        width: 100%;
    }

    #lp_contents .cv01 ul li a {
        height: 16cqw;
        font-size: 4.67cqw;
        border-radius: 8cqw;
        padding-bottom: 0;
        justify-content: flex-start;
    }

    #lp_contents .cv01 ul li a.btn01 {
        background: url(../img/arrow01.webp) no-repeat right 3.733cqw center,linear-gradient(90deg, #8e3bd2 0, #bd008d 100%);
        background-size: 4.133cqw auto, 100% auto;
        padding-left: 5.6cqw;
    }

    #lp_contents .cv01 ul li a.btn02 {
        background: url(../img/arrow01.webp) no-repeat center right 3.733cqw,linear-gradient(90deg,#db2827 0,#b30e0e 100%);
        background-size: 4.133cqw auto, 100% auto;
        padding-left: 9.867cqw;
    }

    #lp_contents .nayami {
        height: 130.4cqw;
        padding: 7.067cqw 0 0;
        background: url(../img/sp/bg02.webp) no-repeat center;
        background-size: 100% auto;
    }

    #lp_contents .nayami h2 {
        font-size: 6.67cqw;
    }

    #lp_contents .nayami ul {
        width: 100%;
        font-size: 4cqw;
        gap: 5.9cqw;
        margin: 8cqw auto 0;
    }

    #lp_contents .nayami ul li {
        width: 100%;
        padding-left: 31.733cqw;
    }

    #lp_contents .nayami ul li:nth-child(even) {
        padding-left: 15.33cqw;
    }

    #lp_contents .osusume {
        height: 436.8cqw;
        background-image: url(../img/sp/bg04.webp);
        background-position: center bottom;
        background-repeat: no-repeat;
        background-size: 100% auto;
    }

    #lp_contents .osusume h2 {
        height: 17.64cqw;
        font-size: 9.33cqw;
        padding-top: 3.8cqw;
    }

    #lp_contents .osusume img {
        margin: 0 auto;
    }

    #lp_contents .osusume h3 {
        height: 41.867cqw;
        font-size: 9.33cqw;
        line-height: 1.2142857;
        padding-top: 5.33cqw;
        margin-top: 0;
    }

    #lp_contents .osusume h3 span {
        font-size: 6cqw;
        line-height: 1;
        margin: 0 auto 2.267cqw;
        padding: 0 6.67cqw;
    }

    #lp_contents .osusume h3 span::before {
        width: .4cqw;
        height: 8.267cqw;
    }

    #lp_contents .osusume h3 span::after {
        width: .4cqw;
        height: 8.267cqw;
    }

    #lp_contents .osusume ul {
        width: 90.4cqw;
        margin: 97.33cqw 0 0 4cqw;
        column-gap: 3.6cqw;
    }

    #lp_contents .osusume ul li {
        width: 27.867cqw;
        padding-top: 3.2cqw;
        font-size: 3.6cqw;
        letter-spacing: 0;
    }

    #lp_contents .cv02 {
        padding: 0 0 6.8cqw;
    }

    #lp_contents .cv02 h2 {
        padding: 3.867cqw 0;
        font-size: 6cqw;
    }

    #lp_contents .cv02 h2 span {
        width: 85.733cqw;
        height: 8.133cqw;
        font-size: 4.933cqw;
        padding-top: 1.867cqw;
        margin: 0 auto 2cqw;
    }

    #lp_contents .cv02 p {
        font-size: 6.67cqw;
        margin-top: 5.2cqw;
    }

    #lp_contents .cv02 p span {
        font-size: 6.67cqw;
        margin: 0 auto 4cqw;
        padding: 0 6.67cqw;
    }

    #lp_contents .cv02 p span::before {
        width: .4cqw;
        height: 8.267cqw;
    }

    #lp_contents .cv02 p span::after {
        width: .4cqw;
        height: 8.267cqw;
    }

    #lp_contents .cv02 ul {
        margin: 7.2cqw auto 0;
        width: 92cqw;
    }

    #lp_contents .cv02 ul li {
        width: 47.1%;
    }

    #lp_contents .cv02 ul li a {
        height: 39.067cqw;
        border-radius: 2.67cqw;
        font-size: 4.67cqw;
        line-height: 1.342857;
        display: flex;
        flex-direction: column-reverse;
        justify-content: flex-end;
    }

    #lp_contents .cv02 ul li a::before {
        border-right: 2.2cqw solid transparent;
        border-left: 2.2cqw solid transparent;
        border-top: 3.067cqw solid #ffffff;
        top: auto;
        bottom: 1.467cqw;
        right: auto;
        left: 50%;
        transform: translateX(-50%);
    }

    #lp_contents .cv02 ul li:nth-child(1) a {
        filter: drop-shadow(0 1.33cqw 0 #5a0f4f);
        padding-top: 5.6cqw;
    }

    #lp_contents .cv02 ul li:nth-child(2) a {
        filter: drop-shadow(0 1.33cqw 0 #720000);
        padding-top: 3.6cqw;
    }

    #lp_contents .cv02 ul li:nth-child(1) a img {
        margin: 0 auto 3.733cqw;
        width: 34.533cqw;
    }

    #lp_contents .cv02 ul li:nth-child(2) a img {
        margin: 0 auto 1.867cqw;
        width: 17.33cqw;
    }

    #lp_contents .nextgear {
        background: url(../img/sp/bg05.webp) no-repeat center top;
        background-size: 100% auto;
        padding: 9.067cqw 0 9.6cqw;
    }

    #lp_contents .nextgear h2 {
        font-size: 4.267cqw;
    }

    #lp_contents .nextgear h2 img {
        margin: 5.467cqw auto 0;
        width: 71.33cqw;
    }

    #lp_contents .nextgear .txt-box {
        background: url(../img/sp/bg06.webp) no-repeat center;
        background-size: 100% auto;
        width: 100%;
        height: 48.4cqw;
        margin: 56.4cqw auto 0;
        padding-top: 7.33cqw;
    }

    #lp_contents .nextgear .txt-box h3 {
        font-size: 4.267cqw;
    }

    #lp_contents .nextgear .txt-box p {
        font-size: 3.2cqw;
        width: 100%;
        margin: 5.33cqw auto 0;
        letter-spacing: .075em;
    }

    #lp_contents .nextgear ul {
        width: 100%;
        margin: 13.733cqw auto 0;
    }

    #lp_contents .nextgear ul li {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }

    #lp_contents .nextgear ul li h4 {
        height: 11.6cqw;
        background: url(../img/sp/bg07.webp) no-repeat center left;
        background-size: auto 11.6cqw;
        font-size: 5.33cqw;
        padding: 2.8cqw 0 0 1.33cqw;
        margin-bottom: 3.467cqw;
    }

    #lp_contents .nextgear ul li .img-area {
        width: 25.733cqw;
    }

    #lp_contents .nextgear ul li .img-area img {
        width: 18.8cqw;
    }

    #lp_contents .nextgear ul li .txt-area {
        width: 69.33cqw;
    }

    #lp_contents .nextgear ul li .txt-area p {
        font-size: 3.6cqw;
    }

    #lp_contents .nextgear ul li:nth-child(2) {
        margin-top: 5.733cqw;
    }

    #lp_contents .nextgear ul li:nth-child(2) h4 {
        background: url(../img/sp/bg08.webp) no-repeat center right;
        background-size: auto 11.6cqw;
        margin-bottom: 4.8cqw;
    }

    #lp_contents .nextgear ul li:nth-child(2) .img-area {
        width: 31.33cqw;
    }

    #lp_contents .nextgear ul li:nth-child(2) .img-area img {
        width: 100%;
    }

    #lp_contents .nextgear ul li:nth-child(2) .txt-area {
        width: 68cqw;
        padding-left: 4.67cqw;
        letter-spacing: .06em;
    }

    #lp_contents .casual {
        padding: 8cqw 0 12cqw;
        background: url(../img/sp/txt01.webp) no-repeat center top, linear-gradient(90deg,#cfeef2 -10.5%,#f5e2f2 110.5%);
        background-size: 100% auto, 100% 100%;
    }

    #lp_contents .casual h2 {
        font-size: 6.267cqw;
        background: url(../img/sp/txt_bg02.webp) no-repeat center top;
        background-size: 100% auto;
        width: 100%;
        height: 23.867cqw;
        color: #fff;
    }

    #lp_contents .casual h2 span {
        font-size: 5.33cqw;
        background: none;
        height: auto;
        margin-bottom: 6.133cqw;
        padding-top: 1.867cqw;
        color: #be008c;
    }

    #lp_contents .casual a {
        margin: 7.733cqw auto 0;
        font-size: 4.67cqw;
        width: 92cqw;
        height: 16cqw;
        padding: 0 0 .1em 5.6cqw;
        background: url(../img/arrow01.webp) no-repeat center right 3.6cqw ,linear-gradient(90deg,#8e3bd2 0,#bd008d 100%);
        background-size: 4.133cqw auto, 100% 100%;
        border-radius: 8cqw;
    }

    #lp_contents .installment {
        height: 54.533cqw;
        margin: -3.6cqw auto 0;
        background: url(../img/sp/bg09.webp) no-repeat center;
        background-size: 100% auto;
        padding: 8.7cqw 0 0;
    }

    #lp_contents .installment h2 {
        font-size: 5.33cqw;
    }

    #lp_contents .installment h2 img {
        margin: 3.6cqw auto 0;
        width: 93.2cqw;
    }

    #lp_contents .installment p {
        font-size: 4.67cqw;
        margin-top: 7.2cqw;
    }

    #lp_contents .gtune {
        height: auto;
        aspect-ratio: 750 / 2059;
        background: #000 url(../img/sp/bg10.webp) no-repeat center top;
        background-size: 100% auto;
        padding: 10.267cqw 0 14.133cqw;
        margin-top: -1.6cqw;
    }

    #lp_contents .gtune h2 img {
        width: 37.067cqw;
    }

    #lp_contents .gtune .concept-heading {
        width: 100%;
        margin: 9.2cqw auto 0;
        font-size: 5.33cqw;
        line-height: 1.875;
    }

    #lp_contents .gtune .concept-heading span {
        background: transparent;
    }

    #lp_contents .gtune .concept-heading span:nth-child(1) {
        padding: 0 8.933cqw;
    }

    #lp_contents .gtune .concept-heading span:nth-child(2) {
        padding: 0 8.933cqw;
    }

    #lp_contents .gtune .concept-heading span:nth-child(3) {
        padding: 0 8.933cqw;
    }

    #lp_contents .gtune .pro-spec {
        margin-top: 53.867cqw;
    }

    #lp_contents .gtune .pro-spec h4 {
        font-size: 4.267cqw;
        line-height: 1.5625;
    }

    #lp_contents .gtune .pro-spec p {
        font-size: 3.2cqw;
        line-height: 2.0833;
        width: 84cqw;
        margin: 7.733cqw auto 0;
        letter-spacing: .08em;
    }

    #lp_contents .gtune ul {
        width: 92cqw;
        margin: 16.5cqw auto 0;
    }

    #lp_contents .gtune ul li {
        width: 48%;
        height: 23.733cqw;
        font-size: 5.33cqw;
        line-height: 1.375;
    }

    #lp_contents .gtune ul li:nth-child(2) {
        font-size: 4.67cqw;
        line-height: 1.4;
    }

    #lp_contents .gtune ul li small {
        margin-top: 0;
    }

    #lp_contents .gtune .lineup-heading {
        font-size: 7.33cqw;
        margin: 11cqw 0 12cqw;
    }

    #lp_contents .gtune .lineup-heading strong {
        font-size: 5.33cqw;
    }

    #lp_contents .gtune .lineup-heading span {
        font-size: 5.33cqw;
        margin: 13.067cqw 0 7.2cqw;
    }

    #lp_contents .gtune a {
        margin: 9.6cqw auto 0;
        font-size: 4.67cqw;
        width: 92cqw;
        height: 16cqw;
        padding: 0 0 .1em 5.6cqw;
        background: url(../img/arrow01.webp) no-repeat center right 3.6cqw ,linear-gradient(90deg,#dc2828 0,#b40e0e 100%);
        background-size: 4.133cqw auto, 100% 100%;
        border-radius: 8cqw;
    }

    #lp_contents .comparison {
        height: auto;
        aspect-ratio: 750 / 1934;
        background: url(../img/sp/bg11.webp) no-repeat center;
        background-size: 100% auto;
        margin-top: -3.733cqw;
        padding-top: 82.8cqw;
    }

    #lp_contents .comparison h2 {
        font-size: 7.067cqw;
    }

    #lp_contents .comparison h2 span {
        padding-top: 1.867cqw;
        background-position: top left 4.4cqw;
        background-repeat: repeat-x;
        background-size: 7.733cqw 1.2cqw;
        background-image: radial-gradient(circle .6cqw at .6cqw .6cqw,#fff 0,#fff .6cqw,transparent .6cqw);
    }

    #lp_contents .comparison p img {
        margin: 6.533cqw auto 0;
        width: 92cqw;
        filter: drop-shadow(0 0 2.8cqw rgba(0, 0, 0, .08));
    }

    #lp_contents .game {
        padding-bottom: 12.4cqw;
    }

    #lp_contents .game h2 {
        clip-path: polygon(0 0, 100% 0, 100% calc(100% - 4.67cqw), calc(50% + 4cqw) calc(100% - 4.67cqw), 50% 100%, calc(50% - 4cqw) calc(100% - 4.67cqw), 0 calc(100% - 4.67cqw));
        font-size: 4.67cqw;
        padding: 4.533cqw 0 9.33cqw;
    }

    #lp_contents .game .slide {
        width: 100%;
        margin: 2.67cqw auto 0;
    }

    #lp_contents .game .slide .slide-item {
        width: 100cqw;
        padding: 0 6.8cqw;
    }

    #lp_contents .game .slide .slide-item h3 {
        width: 50.533cqw;
        height: 10.533cqw;
        clip-path: polygon(2.933cqw 0, calc(100% - 2.933cqw) 0, 100% 50%, calc(100% - 2.933cqw) 100%, 2.933cqw 100%, 0 50%);
        margin: 5.867cqw auto 0;
    }

    #lp_contents .game .slide .slide-item .title-xl {
        font-size: 4.67cqw;
    }

    #lp_contents .game .slide .slide-item .title-lg {
        font-size: 4cqw;
    }

    #lp_contents .game .slide .slide-item .title-md {
        font-size: 3.867cqw;
    }

    #lp_contents .game .slide .slide-item .title-sm {
        font-size: 3.6cqw;
    }

    #lp_contents .game .slide .slide-item .title-xs {
        font-size: 2.8cqw;
    }

    #lp_contents .game .slide .slide-item h3 span {
        width: 43.867cqw;
        height: 9.733cqw;
        padding-bottom: .1em;
        clip-path: polygon(2.8cqw 0, calc(100% - 2.8cqw) 0, 100% 50%, calc(100% - 2.8cqw) 100%, 2.8cqw 100%, 0 50%);
    }

    #lp_contents .slick-prev,
    #lp_contents .slick-next {
        top: 14.67cqw;
        width: 8.8cqw;
        height: 8.267cqw;
    }

    #lp_contents .slick-prev {
        left: 1.6cqw;
    }

    #lp_contents .slick-next {
        right: 1.6cqw;
    }

    #lp_contents .slick-next::before,
    #lp_contents .slick-prev::before {
        width: 8.8cqw;
        height: 8.267cqw;
    }

    #lp_contents .slick-dots {
        bottom: -9.067cqw;
    }

    #lp_contents .slick-dots li {
        width: 2cqw;
        height: 2cqw;
        margin: 0 1.2cqw !important;
    }

    #lp_contents .slick-dots li button {
        width: 2cqw;
        height: 2cqw;
    }

    #lp_contents .slick-dots li button::before {
        width: 2cqw;
        height: 2cqw;
    }

    #lp_contents .support {
        background: url(../img/bg12.webp) repeat center;
        background-size: 5.6cqw auto;
        padding: 10cqw 0 46.933cqw;
    }

    #lp_contents .support h2 img {
        width: 84.267cqw;
    }

    #lp_contents .support ul {
        margin: 11.467cqw auto 0;
        width: 100%;
    }

    #lp_contents .support ul li {
        display: block;
        position: relative;
    }

    #lp_contents .support ul li + li {
        margin-top: 7.6cqw;
    }

    #lp_contents .support ul li .txt-area {
        width: 100%;
        position: relative;
        z-index: 10;
    }

    #lp_contents .support ul li .txt-area h3 {
        padding: 30.67cqw 0 0 4cqw;
        font-size: 7.33cqw;
        gap: 1.2cqw;
    }

    #lp_contents .support ul li:nth-child(n+2) .txt-area h3 {
        font-size: 6.67cqw;
    }

    #lp_contents .support ul li:nth-child(2) .txt-area h3 {
        padding-left: 4cqw;
    }

    #lp_contents .support ul li:nth-child(3) .txt-area h3 {
        padding-left: 4cqw;
    }

    #lp_contents .support ul li:nth-child(4) .txt-area h3 {
        padding-left: 4cqw;
    }

    #lp_contents .support ul li:nth-child(5) .txt-area h3 {
        padding-left: 4cqw;
    }

    #lp_contents .support ul li:nth-child(1) .txt-area h3 {
        background: url(../img/icon02.webp) no-repeat top .533cqw left 7.533cqw;
        background-size: 17.733cqw auto;
    }

    #lp_contents .support ul li:nth-child(2) .txt-area h3 {
        background: url(../img/icon03.webp) no-repeat top left 7.067cqw;
        background-size: 20cqw auto;
    }

    #lp_contents .support ul li:nth-child(3) .txt-area h3 {
        background: url(../img/icon04.webp) no-repeat top 6.4cqw left 3.2cqw;
        background-size: 23.6cqw auto;
    }

    #lp_contents .support ul li:nth-child(4) .txt-area h3 {
        background: url(../img/icon05.webp) no-repeat top 2.933cqw left 2.4cqw;
        background-size: 24.267cqw auto;
    }

    #lp_contents .support ul li:nth-child(5) .txt-area h3 {
        background: url(../img/icon06.webp) no-repeat top 1.467cqw left 1.067cqw;
        background-size: 22.267cqw auto;
    }

    #lp_contents .support ul li .txt-area h3 span {
        padding: 1.2cqw 2.533cqw 2.67cqw 1.6cqw;
    }

    #lp_contents .support ul li .txt-area h3 span small {
        font-size: 6cqw;
    }

    #lp_contents .support ul li:nth-child(1) .txt-area h3 span strong::before {
        font-size: 2.4cqw;
        top: 2.267cqw;
        right: -2cqw;
    }

    #lp_contents .support ul li:nth-child(3) .txt-area h3 span strong::before {
        font-size: 2.4cqw;
        top: 2.267cqw;
        right: -2cqw;
    }

    #lp_contents .support ul li:nth-child(4) .txt-area h3 span strong::before {
        font-size: 2.4cqw;
        top: 2.267cqw;
        right: -2cqw;
    }

    #lp_contents .support ul li .txt-area p {
        padding-left: 0;
        font-size: 3.2cqw;
        margin-top: 4.8cqw;
        text-align: center;
    }

    #lp_contents .support ul li:nth-child(even) .txt-area p {
        padding-left: 0;
    }

    #lp_contents .support ul li .txt-area p small {
        width: 92cqw;
        margin: 0 auto;
        text-align: right;
    }

    #lp_contents .support ul li .img-area {
        width: 66.67cqw;
        position: absolute;
        top: 0;
        right: 4cqw;
    }

    #lp_contents .check {
        height: 127.867cqw;
        background: url(../img/sp/bg13.webp) no-repeat center;
        background-size: 100% auto;
        margin-top: -34.4cqw;
        padding: 6.133cqw 0 0;
    }

    #lp_contents .check p {
        font-size: 6.933cqw;
    }

    #lp_contents .check p span {
        font-size: 8cqw;
        margin-top: 16.533cqw;
    }

    #lp_contents .check p span strong {
        font-size: 100%;
        padding: 1.6cqw 2.533cqw 1.8cqw 2.4cqw;
        margin-bottom: 4cqw;
        display: inline-block;
    }

    #lp_contents .check dl {
        width: 92cqw;
        height: auto;
        margin: 6.933cqw auto 0;
        border-radius: 2.67cqw;
        flex-direction: column;
    }

    #lp_contents .check dl dt {
        padding: 6.933cqw 0 0;
        display: block;
        font-size: 6.67cqw;
        line-height: 1;
    }

    #lp_contents .check dl dt span {
        background-image: linear-gradient(to top, rgba(254, 229, 0, 1) 30%, transparent 30%);
    }

    #lp_contents .check dl dd {
        padding: 4cqw 0 5.867cqw;
        border-left: none;
        display: block;
        text-align: center;
        font-size: 4cqw;
        line-height: 1.67;
    }

    #lp_contents .percentage {
        margin-top: -1.733cqw;
        padding: 9.867cqw 0 9.33cqw;
    }

    #lp_contents .percentage h2 {
        font-size: 7.33cqw;
    }

    #lp_contents .percentage h2 small {
        font-size: 4cqw;
        margin: 0 auto 3.733cqw;
        padding: 0 4cqw;
    }

    #lp_contents .percentage h2 small::before {
        width: .267cqw;
        height: 11.467cqw;
    }

    #lp_contents .percentage h2 small::after {
        width: .267cqw;
        height: 11.467cqw;
    }

    #lp_contents .percentage img {
        margin: 5.067cqw 0 0 4cqw;
        width: 90.933cqw;
    }

    #lp_contents .percentage .box {
        width: 92cqw;
        margin: 4.133cqw auto 0;
        background-image: url(../img/sp/icon07.webp), url(../img/bg12.webp);
        background-repeat: no-repeat, repeat;
        background-position: center left 5.6cqw, center;
        background-size: 20.533cqw auto, 5.6cqw auto;
        border-radius: 2.67cqw;
        padding: 3.6cqw 6.67cqw 3.6cqw 29.733cqw;
        font-size: 3.6cqw;
    }

    #lp_contents .faq {
        padding: 11.733cqw 0 11.2cqw;
    }

    #lp_contents .faq h2 {
        font-size: 7.33cqw;
    }

    #lp_contents .faq dl {
        margin: 8.533cqw auto 0;
        width: 92cqw;
    }

    #lp_contents .faq dl div + div {
        margin-top: 7.2cqw;
    }

    #lp_contents .faq dl div dt {
        font-size: 4.533cqw;
        line-height: 1.32353;
        padding: 1.733cqw 15.2cqw;
        min-height: 15.6cqw;
        background: #ececec url(../img/icon08.webp) no-repeat center left 2.8cqw;
        background-size: 9.33cqw auto;
    }

    #lp_contents .faq dl div dt::before {
        width: 4.67cqw;
        height: .4cqw;
        right: 3.733cqw;
    }

    #lp_contents .faq dl div dt::after {
        width: .4cqw;
        height: 4.67cqw;
        right: 5.867cqw;
    }

    #lp_contents .faq dl div dd {
        font-size: 3.33cqw;
        padding-top: 4cqw;
    }
    
    #lp_contents .note {
        max-width: 92vw;
        padding: 5.467vw 0;
    }

    #lp_contents .note ul li {
        font-size: 2.4vw;
    }

}

/* mouse追加 */
/* ===================================
共通
=================================== */

/* LP側の影響を解除 */
#lp_contents .b-wire_ng-itemlist .b-wire_ng-r_goods,
#lp_contents .b-wire_gt-itemlist .b-wire_gt-r_goods {
    all: unset;
}

#lp_contents .b-wire_ng_wrapper,
#lp_contents .b-wire_gt_wrapper {
    margin-top: 81px;
    max-width: 100%;
}

#lp_contents .b-wire_ng-itemlist .b-wire_ng_list,
#lp_contents .b-wire_gt-itemlist .b-wire_gt_list {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 2%;
    padding: 1em 0;
}

#lp_contents .b-wire_ng-itemlist .b-wire_ng_list .b-wire_ng_list__item,
#lp_contents .b-wire_gt-itemlist .b-wire_gt_list .b-wire_gt_list__item {
    background: #fff;
    width: calc((100% - 2%) / 3);
    padding: 1.5em 1em;
    position: relative;
    display: flex;
}

/* 右下三角 共通 */
#lp_contents .b-wire_ng-itemlist .b-wire_ng_list__item::after,
#lp_contents .b-wire_gt-itemlist .b-wire_gt_list__item::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50px;
    height: 50px;
    clip-path: polygon(100% 0, 100% 100%, 0 100%);
}

/* 白い┘ */
#lp_contents .b-wire_ng-itemlist .b-wire_ng_list__item::before,
#lp_contents .b-wire_gt-itemlist .b-wire_gt_list__item::before {
    content: "";
    position: absolute;
    right: 8px;
    bottom: 8px;
    width: 20px;
    height: 20px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    z-index: 1;
    transition: 0.3s ease;
}

#lp_contents .b-wire_ng-itemlist .b-wire_ng_list__item:hover::before,
#lp_contents .b-wire_gt-itemlist .b-wire_gt_list__item:hover::before {
    transform: translate(3px, 3px);
}

/* リンク */
#lp_contents .b-wire_ng_list__item a,
#lp_contents .b-wire_gt_list__item a {
    color: #000;
    text-decoration: none;
}

/* カード */
#lp_contents .b-wire_ng-r_goods,
#lp_contents .b-wire_gt-r_goods {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* 画像 */
#lp_contents .b-wire_ng-r_goods__image,
#lp_contents .b-wire_gt-r_goods__image {
    text-align: center;
    margin-bottom: 10px;
}

#lp_contents .b-wire_ng-r_goods__image img,
#lp_contents .b-wire_gt-r_goods__image img {
    max-width: 100%;
    height: auto;
    margin: auto;
}

/* 本文 */
#lp_contents .b-wire_ng-r_goods__body,
#lp_contents .b-wire_gt-r_goods__body {
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* 商品名 */
#lp_contents .b-wire_ng-r_goods__name,
#lp_contents .b-wire_gt-r_goods__name {
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 5px 0;
    border-top: solid 2px #000;
    border-bottom: solid 2px #000;
}

/* 説明文 */
#lp_contents .b-wire_ng-r_goods__summary,
#lp_contents .b-wire_gt-r_goods__summary {
    font-size: 16px;
    line-height: 1.5;
}

/* 価格 */
#lp_contents .b-wire_ng-r_goods__price,
#lp_contents .b-wire_gt-r_goods__price {
    margin-top: auto;
}

#lp_contents .b-wire_ng-price,
#lp_contents .b-wire_gt-price {
    font-weight: bold;
    font-size: 1.75em;
    margin-top: 10px;
}

/* 詳細リンク非表示 */
#lp_contents .b-wire_ng-r_goods__nav,
#lp_contents .b-wire_gt-r_goods__nav {
    display: none;
}

/* ===================================
NEXTGEAR
=================================== */

#lp_contents .b-wire_ng-itemlist .b-wire_ng_list__item {
    filter: drop-shadow(0 8px 15px rgba(0, 0, 0, 0.15))
        drop-shadow(0 2px 4px rgba(0, 0, 0, 0.15));
}

#lp_contents .b-wire_ng-itemlist .b-wire_ng_list__item::after {
    background: #be008c;
}

#lp_contents .b-wire_ng-price {
    color: #be008c;
}

/* ===================================
G TUNE
=================================== */

#lp_contents .b-wire_gt-itemlist .b-wire_gt_list__item {
    filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.12))
        drop-shadow(0 0 20px rgba(216, 32, 32, 0.15));
}

#lp_contents .b-wire_gt-itemlist .b-wire_gt_list__item::after {
    background: #d82020;
}

#lp_contents .b-wire_gt-price {
    color: #d7000f;
}

@media screen and (max-width: 768px) {
    #lp_contents .b-wire_ng_wrapper,
    #lp_contents .b-wire_gt_wrapper {
        margin: 9.6cqw auto 0;
    }

    #lp_contents .b-wire_ng-itemlist .b-wire_ng_list,
    #lp_contents .b-wire_gt-itemlist .b-wire_gt_list {
        display: block;
    }

    #lp_contents .b-wire_ng-itemlist .b-wire_ng_list .b-wire_ng_list__item,
    #lp_contents .b-wire_gt-itemlist .b-wire_gt_list .b-wire_gt_list__item {
        width: 100%;
        margin-bottom: 20px;
    }

    #lp_contents
        .b-wire_ng-itemlist
        .b-wire_ng_list
        .b-wire_ng_list__item:last-child,
    #lp_contents
        .b-wire_gt-itemlist
        .b-wire_gt_list
        .b-wire_gt_list__item:last-child {
        margin-bottom: 0;
    }
}
