/*
Theme Name: Lightning Child 
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.6.1
*/

/* ============================================
   基本スタイル
   ============================================ */
body, html {
    background-color: #000000;
}
body {
    overflow: visible;
}
:root {
    --vk-color-text-body: #fff;
    --vk-color-text-link: #fff;
}

/* ============================================
   ヘッダー・フッター
   ============================================ */
div#site-header-container {
    background-color: #000000;
    max-width: 100%;
}
div#site-header-container .nav li a {
    color: #EAEAEA;
}
.site-header-logo a {
    color: #EAEAEA !important;
}

.site-footer {
    color: #FFFFFF !important;
    background-color: #000000;
}
.site-footer .nav li a {
    color: #EAEAEA;
}
.container.site-footer-copyright a {
    color: #1a73e8;
}

/* ============================================
   タイトルスタイル（.sc-ttl-lin）
   ============================================ */
.sc-ttl-lin {
    position: relative;
    display: flex;
    align-items: flex-end;
    padding-bottom: 4px;
    margin-bottom: 2em;
    margin-top: 3.5em;
}



.sc-ttl-lin-incline {
    background-color: rgb(255, 255, 255);
    position: relative;
    transform: skewX(140deg);
    transform-origin: left bottom;
    bottom: 0px;
    left: -3px;
    width: 3px;
}

.sc-ttl-lin::after {
    position: relative;
    background-color: rgb(255, 255, 255);
    content: "";
    height: 2px;
    width: calc(100% + 14px);
    flex: 1 1 0%;
    left: 8px;
}

@media screen and (min-width: 961px) {

    .sc-ttl-lin-incline {
        height: 17px;
    }
    .sc-ttl-lin::after {
        bottom: 15px;
        min-width: 80px;
    }
}

@media screen and (max-width: 960px) {
    .sc-ttl-lin-incline {
        height: 15px;
    }
    .sc-ttl-lin::after {
        bottom: 13px;
        min-width: 40px;
    }
}

/* ============================================
   商品カード・リスト表示
   ============================================ */
.wpneo-wrapper-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.wpneo-listings {
    flex-basis: calc(100% - 20px) / 3 !important;
    padding: 0;
}

.wpneo-listings.three {
    position: relative;
    overflow: hidden;
    background: #222;
    clip-path: polygon(
        0 0,
        100% 0,
        100% calc(100% - 20px),
        calc(100% - 20px) 100%,
        0 100%
    );
    margin-bottom: 12px;
    box-shadow: 0 2px 5px rgba(0,0,0,.1);
}

.wpneo-listings.first,
.wpneo-listings.last {
    padding: 0;
}

.wpneo-listings .wpneo-listing-content {
    margin-bottom: 0;
}

.wpneo-listings .wpneo-listing-content h4 {
    padding: 0;
    margin: 12px;
}

.wpneo-listings .wpneo-listing-content h4 a {
    font-size: 20px;
    font-weight: 500;
}

.wpneo-listings .wpneo-listing-content p.wpneo-author {
    font-size: 12px;
    border-bottom: 1px solid #e9e9e9;
}

.wpneo-listings .wpneo-listing-content h4,
.wpneo-listings .wpneo-listing-content p {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wpneo-listing-content,
.wpneo-listing-img,
.wpneo-raised-percent {
    border: none !important;
    background: none !important;
}

.wpneo-listing-img img {
    object-fit: cover;
}

p.wpneo-short-description {
    padding: 0px 20px 0px;
    margin-bottom: 0;
}

.wpneo-raised-percent {
    padding: 10px 0px 0;
}

.baker-card {
    clip-path: polygon(
        0 0,
        100% 0,
        100% calc(100% - 20px),
        calc(100% - 20px) 100%,
        0 100%
    );
}

/* ============================================
   ファンディングデータ表示
   ============================================ */
.wpneo-funding-data {
    display: flex;
    align-items: stretch;
    padding: 0;
    justify-content: space-around;
    flex-wrap: wrap;
}

.wpneo-time-remaining {
    order: 3 !important;
    clear: both;
}

.wpneo-fund-raised {
    clear: both;
}

.wpneo-funding-goal,
.wpneo-fund-raised,
.wpneo-time-remaining {
    display: block;
    flex-basis: 33.333%;
    width: 100%;
    flex: 1;
    min-width: 0;
    text-align: center;
}

.wpneo-funding-goal .wpneo-meta-desc,
.wpneo-fund-raised .wpneo-meta-desc,
.wpneo-time-remaining .wpneo-meta-desc {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 5px;
}


/* プログレスバー内のファンディングデータ */
.wpneo-raised-bar .wpneo-funding-data {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    column-gap: 20px;
    flex-wrap: nowrap !important;
}

.wpneo-raised-bar .wpneo-supporters,
.wpneo-raised-bar .wpneo-time-remaining {
    width: 100% !important;
    padding: 0 !important;
    text-align: left !important;
}

/* ============================================
   プログレスバー
   ============================================ */
#neo-progressbar {
    background-color: #ffffff;
    border-radius: 7px;
    height: 8px;
    overflow: visible;
    position: relative;
}

#neo-progressbar .progress-bar-fill {
    height: 100%;
    border-radius: 7px;
    transition: width 0.3s ease-in-out;
    min-width: 2px;
}

#neo-progressbar>div,
.wpneo-links li a:hover,
.wpneo-links li.active a,
ul.wpneo-crowdfunding-update li:hover span.round-circle {
    height: auto;
}

.wpneo-raised-bar {
    margin-bottom: 20px;
}

.wpneo-progress-container {
    position: relative;
    margin-bottom: 15px;
}

.progress-percent-tag {
    position: absolute;
    top: -8px;
    background: linear-gradient(135deg, #ff6b35, #f7931e);
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: bold;
    z-index: 2;
    white-space: nowrap;
}

.wpneo-current-amount {
    margin-bottom: 15px;
}

.wpneo-currency-symbol {
    color: #999;
    font-size: 14px;
    margin-right: 4px;
}

.wpneo-amount-label {
    color: #999;
    font-size: 14px;
}

.wpneo-amount-value {
    font-weight: bold;
    color: #ff4f45;
    margin-bottom: 0px;
}

.wpneo-goal-label {
    color: #999;
    font-size: 14px;
}

.wpneo-goal-value {
    color: #ff4f45;
    font-size: 14px;
}

.wpneo-meta-header {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.wpneo-icon {
    font-size: 20px;
    margin-right: 8px;
}

.wpneo-meta-name {
    font-size: 14px !important;
    font-weight: 500;
}

.wpneo-meta-value {
    font-size: 28px;
    font-weight: bold;
    color: #fff;
    line-height: 1.2;
}

/* ============================================
   キャンペーン詳細ページ
   ============================================ */
.wpneo-list-details {
    display: flex;
    align-items: flex-start;
    overflow: visible;
}

.wpneo-campaign-single-left-info {
    flex: 1;
    margin-right: 30px;
    border-radius: 0px !important;
    background-color: #000;
}

.wpneo-campaign-summary {
    flex: 0 0 380px;
    position: sticky;
    top: 100px;
}

.wpneo-campaign-summary-inner .woocommerce {
    padding: 0;
}

.wpneo-campaign-summary-sp {
    display: none;
}

.wpneo-tab-content-wrapper {
    flex: 1;
}

.wpneo-tab-content {
    width: 100%;
}

#content,
#wrapper,
.site-content {
    overflow: visible !important;
    transform: none !important;
}

.wpneo_donate_button {
    margin: 0;
    width: 100%;
}

/* ============================================
   タブ
   ============================================ */
.wpneo-tabs-menu li {
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #e9e9e9;
}

.wpneo-tabs-menu li.wpneo-current {
    background-color: #FFFFFF;
}

.wpneo-tabs-menu li.wpneo-current a {
    color: #000;
}

.wpneo-tab {
    background-color: transparent;
}

.reviews_tab {
    display: none;
}

/* ============================================
   単一商品ページ
   ============================================ */
.single-product h1,
.single-product h2,
.single-product h3 {
    color: #FFFFFF;
   margin-bottom: 12px;
}

.single-product .wpneo-tab h1 {
    background-image: linear-gradient(135deg, #90F7EC 10%, #32CCBC 100%);
    padding: 5px 10px;
}

.single-product .wpneo-tab h2 {
    padding: 5px;
    position: relative;
}

.single-product .wpneo-tab h2:after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 2px;
    background: #3DB4D0;
    background: linear-gradient(90deg, rgba(61, 180, 208, 1) 0%, rgba(61, 180, 208, 1) 30%, rgba(199, 199, 199, 1) 30%, rgba(199, 199, 199, 1) 100%);
    position: absolute;
    bottom: -1px;
    left: 0;
}
.single-product .wpneo-tab h3 {
    padding: 5px;
    position: relative;
}
.single-product .wpneo-tab h3:after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1px;
    background: #fff;
    position: absolute;
    bottom: -1px;
    left: 0;
}

.single-product .wpneo-tab h3 {
    color: #000;
}

.single-product .wpneo-tab .tab-description h3 {
    color: #fff;
}

.single-product .wpneo-tab p {
    color: #fefefe !important;
}

.wpneo-single-short-description h2 {
    color: #000;
}

.wpneo-post-img .woocommerce-product-gallery__image {
    width: 48%;
}

.wpneo-post-img .woocommerce-product-gallery__wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

/* ============================================
   リワード
   ============================================ */
.tab-rewards-wrapper {
    min-width: 500px;
    box-sizing: border-box;
    padding: 0;
    margin-bottom: 10px;
}

.tab-rewards-wrapper .wpneo-shadow {
    display: flex;
    gap: 20px;
    align-items: center;
}

.tab-rewards-wrapper .wpneo-shadow p {
    color: #333 !important;
}

.tab-rewards-wrapper .wpneo-rewards-image {
    flex: 0 0 400px;
}

.tab-rewards-wrapper .wpneo-rewards-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

.tab-rewards-wrapper .tab-rewards-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.tab-rewards-wrapper .tab-rewards-content div {
    color: #333;
}

.tab-rewards-wrapper .tab-rewards-content h3 {
    margin-top: 0;
    color: #333 !important;
}

/* ============================================
   その他のコンポーネント
   ============================================ */
.wpcf-share .social-icon {
    width: 50px;
    height: 50px;
    margin: 0 10px;
}

.social-icon {
    padding: 3px;
}

.wpneo-location-wrapper {
    display: none;
}

.wpneo-location {
    display: none !important;
}

.supporter-count {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    margin-left: 8px;
    display: inline-block;
    min-width: 20px;
    text-align: center;
}


/* ============================================
   WooCommerce
   ============================================ */
.woocommerce-MyAccount-navigation ul li a {
    color: #fff;
}

.woocommerce input[type=number],
.woocommerce input[type=text] {
    color: #000 !important;
}

.comment-form-comment textarea {
    color: #000 !important;
}

.woocommerce table.shop_table thead th {
    color: #333333;
}

.woocommerce table.shop_table .product-name a {
    color: #FFFFFF;
}

.woocommerce-review-section {
   background-color: #000000 !important;
   color: #FFFFFF;
}

p.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
    color: #FFFFFF;
}

.wp-block-button.is-style-outline>.wp-block-button__link {
    color: #FFFFFF;
}

.wc-block-grid__product-title {
    color: #FFFFFF;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: #000;
}

.wp-block-table.is-style-stripes tbody tr th {
    float: left;
    max-width: 150px;
}

/* 商品詳細ページタブ */
.wpneo-tabs-menu {
display: flex;
flex-wrap: wrap;
}
.wpneo-tabs-menu li {
   clear: both;
   margin: 0;
}
/* ============================================
   レスポンシブ対応
   ============================================ */
/*  */
@media (max-width: 769px) {
   body {
      overflow: hidden;
   }
}
/* スライダー */
@media (min-width: 769px) {
    .ltg-slide picture img {
        object-fit: cover;
    }
}

@media (max-width: 1024px) {
    .ltg-slide picture img {
        height: auto !important;
    }
}
/* 商品詳細ページタブ */
@media screen and (max-width: 768px) {
   .wpneo-tabs-menu li a {
      font-size: 14px;
   }
}
/* 商品カード */
@media screen and (min-width: 1024px) {
    .wpneo-listings.three {
        width: 32%;
        margin-right: 10px;
    }
}

@media screen and (max-width: 1024px) {
    .wpneo-listings.three {
        width: 49%;
    }
    .wpneo-listings.three:nth-of-type(2n+1) {
        margin-right: 6px;
    }
    h2 {
        font-size: 1.5rem;
    }
    .wpneo-icon {
        display: block;
    }
    .wpneo-meta-value {
        font-size: 1.25rem !important;
    }
    .wpneo-meta-name {
        font-size: 1rem !important;
        color: #fff !important;
    }
    .wpneo-listings .wpneo-listing-content h4 {
        margin-left: 0px !important;
    }
    .wpneo-listings .wpneo-listing-content h4 a {
        font-size: 15px !important;
    }
    .wpneo-raised-bar {
        padding: 5px !important;
        margin: 10px 3px !important;
    }
}


/* キャンペーン詳細ページ */
@media screen and (min-width: 1024px) {
    .wpneo-campaign-single-left-info {
        width: 96%;
    }
    .wpneo-campaign-summary {
        width: 38%;
    }
}

@media screen and (max-width: 1024px) {
    .tab-campaign-story-left,
    .tab-campaign-story-right,
    .wpneo-campaign-single-left-info,
    .wpneo-campaign-summary {
        width: 100%;
    }
    .wpneo-campaign-summary {
        padding: 0;
    }
    .wpneo-campaign-single-left-info {
        float: none;
    }
    .woocommerce div.product {
/*         padding: 0 20px; */
    }
    .wpneo-list-details {
      padding: 0 15px;
      display: block;
    }
}

@media screen and (max-width: 960px) {
    .woocommerce div.product {
        order: 2;
    }
    .wpneo-campaign-single-left-info {
        flex: 0 0 100%;
        margin-right: 30px;
    }
    .wpneo-campaign-summary {
        display: none;
    }
    .wpneo-campaign-summary-sp {
        display: block;
    }
    .tab-rewards-wrapper .wpneo-shadow {
        flex-direction: column;
    }
    .tab-rewards-wrapper .wpneo-rewards-image {
        flex: 0 0 auto;
        width: 100%;
        max-width: 100%;
    }
    .tab-rewards-wrapper {
        min-width: auto;
    }
}

@media screen and (max-width: 768px) {
/*     .wpneo-list-details {
      display: block;
    }
    .woocommerce div.product {
        order: 2;
    }
    .wpneo-campaign-single-left-info {
        flex: 0 0 100%;
        margin-right: 30px;
    }
    .wpneo-campaign-summary {
        display: none;
    }
    .wpneo-campaign-summary-sp {
        display: block;
    }
    .tab-rewards-wrapper .wpneo-shadow {
        flex-direction: column;
    }
    .tab-rewards-wrapper .wpneo-rewards-image {
        flex: 0 0 auto;
        width: 100%;
        max-width: 100%;
    }
    .tab-rewards-wrapper {
        min-width: auto;
    } */
}
/* SPハンバーガー */
.vk-mobile-nav-menu-btn {
   background-image: url(https://cloud.aimingservice-marui.com/wp-content/uploads/2025/11/sp-hamburger.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
   opacity: 1;
   background-color: transparent;
   border: none;
}
.vk-mobile-nav-menu-btn.menu-open {
   border: none;
   background-color: transparent;
}

/* スマホ表示の際のプロジェクトを応援するボタン */
.sp-show-btn {
   display: none;
}
@media screen and (max-width: 768px) {
   .single-product .sp-show-btn {
      position: fixed;
      bottom: 0;
      left: 0;
      z-index: 999;
      display: block;
      background-color: #000000;
      text-align: center;
      width: 100%;
      padding: 20px;
   }
   .single-product .sp-show-btn button {
      display: inline-block;
      width: 95%;
      background-color: #007D68;
      color: #FFFFFF;
      padding: 10px 30px;
      transition: .3s;
      border-radius: 4px;
   }
   .single-product .sp-show-btn button:hover {
      background-color: #339C58;
      transition: .3s;
   }
   .single-product .container.site-footer-copyright {
       padding-bottom: 100px;
   }
}


/* 調整 */
@media screen and (max-width: 960px) {
   .wpneo-tab-content {
      padding: 15px 0;
   }
}


/* ✅ PCで表示、スマホで非表示 */
.pc-viewer {
    display: block;
}

/* ✅ スマホで表示、PCで非表示 */
.sp-viewer {
    display: none;
}

/* ▼ ここからブレイクポイント（スマホ幅 768px 以下） */
@media screen and (max-width: 768px) {

    .pc-viewer {
        display: none;
    }

    .sp-viewer {
        display: block;
    }
}