@charset "UTF-8";

/**
 * Salon de Mirror - Scalp Treatment Page Styles
 */

/* ========================================
   Scalp Hero Section
   ======================================== */



.page h1.title {
              }

/* ========================================
   Scalp Hero Section
   ======================================== */

h2.border {
    font-size: 27px;
    text-align: center;
    padding: 11px 33px;
    background-color: #e8f5e9;
    border-left: 2px solid #66cc00;
    border-right: 2px solid #66cc00;
    font-weight: 500;
    color: #1a533b;
    display: inline-block;
    margin: auto;
    margin-bottom: 6rem;
}

.page h1.title {
    font-family: "Zen Old Mincho", serif !important;
    text-align: center;
    font: normal normal normal 32px/44px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #7EBE53;
    opacity: 1;
    margin-bottom: 0;
    font-size: 30px;
}
p.subtitle {
    margin-top: 0;
    position: relative;
    /* color: #999; */
}

.hero-inner {
    display: flex;
}



p.subtitle:before {
    content: "";
    display: block;
    position: absolute;
    width: 90px;
    height: 3px;
    background: #7cbf52;
    bottom: 0;
    right: 50%;
    transform: translate(50%, 0px);
}


.scalp-hero {
    /* background-color: #f5f5f5; */
    padding: 60px 0;
}

.scalp-hero .wrap {
    /* display: grid; */
    /* grid-template-columns: 1fr 1fr; */
    /* gap: 60px; */
    /* align-items: center; */
}

.scalp-hero-left {
    text-align: center;
    width: 50%;
    padding: 5%;
}

.scalp-title {
    font-size: 48px;
    color: #66cc00;
    font-weight: bold;
    margin-bottom: 10px;
}

.scalp-subtitle {
}

.hero-product {
    margin-top: 13rem;
    text-align: left;
    width: 80%;
    max-width: 260px;
    left: -3rem;
    position: relative;
}

.scalp-hero-product img {
    max-width: 100%;
    height: auto;
}

.scalp-hero-right {
    background-color: #e8f5e9;
    padding: 5%;
    width: 50%;
}

.hero-box h2 {
    font-size: 24px;
    color: #333;
    margin-bottom: 20px;
    line-height: 1.6;
    text-align: center;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) 20px/33px var(--unnamed-font-family-zenoldmincho-bold);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-1b533b);
    text-align: center;
    font: normal normal normal 20px/33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.hero-image {
    padding: 20px 0;
}

.scalp-hero-image img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

.scalp-hero-description {
    margin-top: 20px;
}

.scalp-hero-description p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 15px;
}

/* ========================================
   Recommended Section
   ======================================== */
.scalp-recommended {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-recommended h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    text-align: center;
    font: normal normal normal 24px / 33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.recommended-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin: auto;
    max-width: 800px;
}

.recommended-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px;
    /* background-color: #fafafa; */
    border-radius: 4px;
}

.recommended-item img {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.recommended-item span {
    font-size: 18px;
    color: #333;
    font-weight: 600;
}


/* ========================================
   Schedule Section
   ======================================== */
.scalp-schedule {
    padding: 60px 0;
    /* background-color: #f5f5f5; */
}

.scalp-schedule h2 {
    /* font-size: 27px; */
    /* text-align: center; */
    /* padding: 11px 33px; */
    /* background-color: #e8f5e9; */
    /* border-left: 2px solid #66cc00; */
    /* border-right: 2px solid #66cc00; */
    /* font-weight: 500; */
    /* color: #1a533b; */
    /* display: inline-block; */
    /* margin: auto; */
    /* margin-bottom: 6rem; */
}

.schedule-inner {
    display: flex;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 60px;
}

.schedule-left p {
    font-size: 16px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 20px;
}

.schedule-note {
    background-color: #e8f5e9;
    padding: 20px;
    border-radius: 4px;
    margin-top: 20px;
}

.schedule-note p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
}

.schedule-flow {
    position: relative;
}

.flow-label {
    display: block;
    text-align: center;
    margin-bottom: 20px;
    padding: 8px 16px;
    background-color: #e8f5e9;
    border-left: 4px solid #66cc00;
    font-weight: bold;
    color: #333;
}

.flow-steps {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 20px;
}

.step {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.step-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #c8e6c9;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    color: #fff;
}

.step-circle.active {
    background-color: #66cc00;
}

.step-label {
    font-size: 12px;
    color: #fff;
}

.step-time {
    font-size: 12px;
    color: #999;
    margin-top: 8px;
}

.step-arrow {
    font-size: 24px;
    color: #999;
}

.course-label {
    text-align: center;
    font-size: 14px;
    color: #666;
    border-top: 2px solid #66cc00;
    padding-top: 15px;
}

.before-after {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 40px;
}

.before-after img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

/* ========================================
   Comparison Table
   ======================================== */
.scalp-comparison {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-comparison h2 {
    /* font-size: 32px; */
    /* text-align: center; */
    /* margin-bottom: 40px; */
    /* color: #333; */
    /* padding-left: 4px; */
    /* border-left: 4px solid #66cc00; */
}

.comparison-table {
    overflow-x: auto;
    max-width: 800px;
    width: 90%;
    margin: auto;
}

.comparison-table table {
    width: 100%;
    border-collapse: collapse;
    border-collapse: separate; 
    border-spacing: 11px;       
}

.comparison-table thead {
    background-color: #f5f5f5;
}

.comparison-table th {
    padding: 18px 15px;
    text-align: center;
    font-weight: bold;
    /* border: 1px solid #ddd; */
    font-size: 14px;
    background: white;
}

.comparison-table th.procell {
    /* background-color: #c8e6c9; */
    color: #333;
}

.comparison-table td {
    padding:  18px 15px;
    /* border: 1px solid #ddd; */
    font-size: 14px;
    text-align: center;
    background: #eff6ed;
}

.comparison-table td.label {
    background-color: #b3b3b5;
    font-weight: bold;
    text-align: center;
    width: 35%;
    color: white;
}

.comparison-table td.procell {
    background-color: #7ebe53;
    font-weight: bold;
}

/* ========================================
   Precautions Section
   ======================================== */
.scalp-precautions {
    padding: 60px 0;
}

.scalp-precautions h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #4f7b66;
    /* padding-left: 4px; */
    /* border-left: 4px solid #66cc00; */
    text-align: center;
}

.precautions-box {
    max-width: 800px;
    margin: 0 auto;
    background-color: #ffffff;
    border: 2px solid #7ebe53;
    border-radius: 4px;
    padding: 40px;
}

.precautions-box ul {
    padding: 0;
    list-style: disc;
}

.precautions-box li {
    font-size: 19px;
    color: #1a533b;
    line-height: 1.8;
    margin-bottom: 20px;
    padding-left: 10px;
    position: relative;
    font-weight: 500;
}

.precautions-box li::before {

    position: absolute;
    left: 0;
    color: #66cc00;
    font-weight: bold;
}


/* ========================================
   Pricing Section
   ======================================== */
.scalp-pricing {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-pricing h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    /* color: #333; */
    /* padding-left: 4px; */
    /* border-left: 4px solid #66cc00; */
}

.pricing-content {
    max-width: 450px;
    margin: 0 auto 40px;
    font-weight: bold;
}

.pricing-item {
    margin-bottom: 30px;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem;
}

.pricing-label {
    font-size: 20px;
    color: #555;
    margin-bottom: 10px;
}

.pricing-original {
    font-size: 18px;
    /* color: #999; */
    text-decoration: line-through;
    margin-bottom: 10px;
}

.pricing-discount {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
    width: 100%;
}

.campaign {
    background-color: #87c45c;
    color: #fff;
    padding: 6px 20px;
    /* border-radius: 4px; */
    font-size: 20px;
    font-weight: bold;
    margin-top: 5px;
}

.price {
    font-size: 32px;
    color: #88c45c;
    text-decoration: underline;
    font-weight: 500;
}

.pricing-price {
    font-size: 18px;
    color: #333;
    /* font-weight: bold; */
    margin-bottom: 20px;
    text-align: right;
}

.monitor {
    font-size: 12px;
    /* color: #999; */
    font-weight: normal;
}

.per-session {
    display: block;
    font-size: 14px;
    color: #999;
    margin-top: 5px;
    right: -0.8em;
    position: relative;
}

.cta-button {
    display: block;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    background-color: #0088b4;
    color: #fff;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    font-size: 18px;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.cta-button:hover {
    background-color: #006688;
}


@media (max-width: 768px) {
    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .before-after {
        grid-template-columns: repeat(2, 1fr);
    }

    .scalp-title {
        font-size: 36px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 24px;
    }

    .comparison-table th,
    .comparison-table td {
        font-size: 12px;
        padding: 10px;
    }

    .precautions-box {
        padding: 20px;
    }

    .precautions-box li {
        font-size: 14px;
    }

    .flow-steps {
        gap: 10px;
    }

    .step-circle {
        width: 50px;
        height: 50px;
        font-size: 16px;
    }

    .step-arrow {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .before-after {
        grid-template-columns: 1fr;
    }

    .scalp-title {
        font-size: 28px;
    }

    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .scalp-hero-right {
        padding: 20px;
    }

    .scalp-hero-box h2 {
        font-size: 20px;
    }

    .scalp-hero-description p {
        font-size: 13px;
        line-height: 1.7;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .recommended-item {
        padding: 12px;
    }

    .recommended-item span {
        font-size: 14px;
    }

    .precautions-box {
        padding: 15px;
        border: 2px solid #66cc00;
    }

    .precautions-box li {
        font-size: 13px;
        margin-bottom: 15px;
        line-height: 1.6;
    }

    .precautions-box li span {
        font-size: 12px;
    }

    .cta-button {
        font-size: 16px;
        padding: 16px;
    }

    .comparison-table {
        font-size: 11px;
    }

    .comparison-table th,
    .comparison-table td {
        font-size: 11px;
        padding: 8px 4px;
    }

    .flow-steps {
        gap: 8px;
        flex-wrap: wrap;
    }

    .step-circle {
        width: 45px;
        height: 45px;
        font-size: 14px;
    }

    .step-arrow {
        font-size: 14px;
    }

    .step-time {
        font-size: 11px;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .schedule-left p {
        font-size: 14px;
    }

    .schedule-note p {
        font-size: 12px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .pricing-item {
        margin-bottom: 25px;
    }

    .pricing-label {
        font-size: 15px;
    }

    .pricing-price {
        font-size: 24px;
    }

    .price {
        font-size: 26px;
    }

    .campaign {
        font-size: 13px;
        padding: 5px 10px;
    }

    .per-session {
        font-size: 12px;
    }

    .flow-label {
        font-size: 13px;
        margin-bottom: 15px;
    }

    .scalp-hero-product {
        margin-top: 20px;
    }

    .scalp-hero-image {
        margin: 15px 0;
    }

    .scalp-subtitle {/**
 * Salon de Mirror - Scalp Treatment Page Styles
 */

/* ========================================
   Scalp Hero Section
   ======================================== */

.page h1.title {
    /* width: 244px; */
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-32)/var(--unnamed-line-spacing-44) var(--unnamed-font-family-zenoldmincho-bold);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-7ebe53);
    text-align: center;
    font: normal normal normal 32px/44px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #7EBE53;
    opacity: 1;
}
p.subtitle {
    margin-top: 0;
    position: relative;
}

.hero-inner {
    display: flex;
}



p.subtitle:before {
    content: "";
    display: block;
    position: absolute;
    width: 90px;
    height: 3px;
    background: #7cbf52;
    bottom: 0;
    right: 50%;
    transform: translate(50%, 0px);
}


.scalp-hero {
    /* background-color: #f5f5f5; */
    /* padding: 60px 0; */
}

.scalp-hero .wrap {
    /* display: grid; */
    /* grid-template-columns: 1fr 1fr; */
    /* gap: 60px; */
    /* align-items: center; */
}

.scalp-hero-left {
    text-align: center;
    width: 50%;
    padding: 5%;
}

.scalp-title {
    font-size: 48px;
    color: #66cc00;
    font-weight: bold;
    margin-bottom: 10px;
}

.scalp-subtitle {
    font-size: 16px;
    color: #999;
    margin-bottom: 30px;
    padding-bottom: 15px;
    /* border-bottom: 2px solid #66cc00; */
    display: inline-block;
}

.hero-product {
    margin-top: 13rem;
    text-align: left;
    width: 80%;
}

.scalp-hero-product img {
    max-width: 100%;
    height: auto;
}

.scalp-hero-right {
    background-color: #e8f5e9;
    padding: 5%;
    border-radius: 8px;
    width: 50%;
}

.hero-box h2 {
    font-size: 24px;
    color: #333;
    margin-bottom: 20px;
    line-height: 1.6;
    text-align: center;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) 20px/33px var(--unnamed-font-family-zenoldmincho-bold);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-1b533b);
    text-align: center;
    font: normal normal normal 20px/33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.hero-image {
    padding: 20px 0;
}

.scalp-hero-image img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

.scalp-hero-description {
    margin-top: 20px;
}

.scalp-hero-description p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 15px;
}

/* ========================================
   Recommended Section
   ======================================== */
.scalp-recommended {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-recommended h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    text-align: center;
    font: normal normal normal 24px / 33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.recommended-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.recommended-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px;
    background-color: #fafafa;
    border-radius: 4px;
}

.recommended-item img {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.recommended-item span {
    font-size: 16px;
    color: #333;
    font-weight: 600;
}

/* ========================================
   Schedule Section
   ======================================== */
.scalp-schedule {
    padding: 60px 0;
    background-color: #f5f5f5;
}

.scalp-schedule h2 {
    font-size: 27px;
    text-align: center;
    padding: 11px 33px;
    background-color: #e8f5e9;
    border-left: 2px solid #66cc00;
    border-right: 2px solid #66cc00;
    font-weight: 500;
    color: #1a533b;
    display: inline-block;
    margin: auto;
    margin-bottom: 3rem;
}

.schedule-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 60px;
}

.schedule-left p {
    font-size: 16px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 20px;
}

.schedule-note {
    background-color: #e8f5e9;
    padding: 20px;
    border-radius: 4px;
    margin-top: 20px;
}

.schedule-note p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
}

.schedule-flow {
    position: relative;
}

.flow-label {
    display: block;
    text-align: center;
    margin-bottom: 20px;
    padding: 8px 16px;
    background-color: #e8f5e9;
    border-left: 4px solid #66cc00;
    font-weight: bold;
    color: #333;
}

.flow-steps {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 20px;
}

.step {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.step-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #c8e6c9;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    color: #fff;
}

.step-circle.active {
    background-color: #66cc00;
}

.step-label {
    font-size: 12px;
    color: #fff;
}

.step-time {
    font-size: 12px;
    color: #999;
    margin-top: 8px;
}

.step-arrow {
    font-size: 24px;
    color: #999;
}

.course-label {
    text-align: center;
    font-size: 14px;
    color: #666;
    border-top: 2px solid #66cc00;
    padding-top: 15px;
}

.before-after {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: 40px;
}

.before-after img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

/* ========================================
   Comparison Table
   ======================================== */
.scalp-comparison {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-comparison h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    padding-left: 4px;
    border-left: 4px solid #66cc00;
}

.comparison-table {
    overflow-x: auto;
}

.comparison-table table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 10px;
}

.comparison-table thead {
    background-color: #f5f5f5;
}

.comparison-table th {
    padding: 15px;
    text-align: center;
    font-weight: bold;
    border: 1px solid #ddd;
    font-size: 14px;
}

.comparison-table th.procell {
    background-color: #c8e6c9;
    color: #333;
}

.comparison-table td {
    padding: 15px;
    /* border: 1px solid #ddd; */
    font-size: 14px;
    text-align: center;
}

.comparison-table td.label {
    background-color: #b2b2b4;
    font-weight: 500;
    text-align: center;
    color: white;
}

.comparison-table td.procell {
    background-color: #e8f5e9;
    font-weight: bold;
}

/* ==============================================
   ÃƒÂ¦Ã‚Â¯Ã¢â‚¬ÂÃƒÂ¨Ã‚Â¼Ã†â€™ÃƒÂ¨Ã‚Â¡Ã‚Â¨ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ£Ã†â€™Ã¢â‚¬Â¡ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¶ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¤ÃƒÂ£Ã†â€™Ã‚Â³ (ProCell Table)
   ============================================== */

/* ÃƒÂ£Ã†â€™Ã¢â‚¬Â ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ£Ã†â€™Ã¢â‚¬â€œÃƒÂ£Ã†â€™Ã‚Â«ÃƒÂ¥Ã¢â‚¬Â¦Ã‚Â¨ÃƒÂ¤Ã‚Â½Ã¢â‚¬Å“ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ£Ã†â€™Ã‚Â©ÃƒÂ£Ã†â€™Ã†â€™ÃƒÂ£Ã†â€™Ã¢â‚¬ËœÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ¯Ã‚Â¼Ã‹â€ ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¹ÃƒÂ£Ã†â€™Ã…Â¾ÃƒÂ£Ã†â€™Ã¢â‚¬ÂºÃƒÂ£Ã‚ÂÃ‚Â§ÃƒÂ¦Ã‚Â¨Ã‚ÂªÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¹ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¯ÃƒÂ£Ã†â€™Ã‚Â­ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ£Ã†â€™Ã‚Â«ÃƒÂ£Ã‚ÂÃ¢â‚¬Â¢ÃƒÂ£Ã‚ÂÃ¢â‚¬ÂºÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬Â¹ÃƒÂ§Ã¢â‚¬ÂÃ‚Â¨ÃƒÂ¯Ã‚Â¼Ã¢â‚¬Â° */
.comparison-table-wrapper {
    width: 100%;
    overflow-x: auto; /* ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¹ÃƒÂ£Ã†â€™Ã…Â¾ÃƒÂ£Ã†â€™Ã¢â‚¬ÂºÃƒÂ£Ã‚ÂÃ‚Â§ÃƒÂ£Ã‚ÂÃ‚Â¯ÃƒÂ£Ã‚ÂÃ‚Â¿ÃƒÂ¥Ã¢â‚¬Â¡Ã‚ÂºÃƒÂ£Ã‚ÂÃ…Â¸ÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬Â°ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¹ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¯ÃƒÂ£Ã†â€™Ã‚Â­ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ£Ã†â€™Ã‚Â« */
    margin-bottom: 60px;
}

.comparison-table {
    width: 100%;
    min-width: 600px; /* ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¹ÃƒÂ£Ã†â€™Ã…Â¾ÃƒÂ£Ã†â€™Ã¢â‚¬ÂºÃƒÂ£Ã‚ÂÃ‚Â§ÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬Å¡ÃƒÂ£Ã‚ÂÃ¢â‚¬Å“ÃƒÂ£Ã¢â‚¬Å¡Ã…â€™ÃƒÂ¤Ã‚Â»Ã‚Â¥ÃƒÂ¤Ã‚Â¸Ã…Â ÃƒÂ£Ã‚ÂÃ‚Â¯ÃƒÂ§Ã‚Â¸Ã‚Â®ÃƒÂ£Ã¢â‚¬Å¡Ã‚ÂÃƒÂ£Ã‚ÂÃ‚ÂªÃƒÂ£Ã‚ÂÃ¢â‚¬Å¾ */
    border-collapse: separate; /* ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â»ÃƒÂ£Ã†â€™Ã‚Â«ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ©Ã…Â¡Ã¢â€žÂ¢ÃƒÂ©Ã¢â‚¬â€œÃ¢â‚¬Å“ÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬â„¢ÃƒÂ¤Ã‚Â½Ã…â€œÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬Â¹ÃƒÂ£Ã‚ÂÃ…Â¸ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â */
    border-spacing: 4px; /* ÃƒÂ§Ã¢â€žÂ¢Ã‚Â½ÃƒÂ£Ã‚ÂÃ¢â‚¬Å¾ÃƒÂ©Ã…Â¡Ã¢â€žÂ¢ÃƒÂ©Ã¢â‚¬â€œÃ¢â‚¬Å“ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ¥Ã‚Â¤Ã‚ÂªÃƒÂ£Ã‚ÂÃ¢â‚¬Â¢ */
    margin: 0 auto;
    font-size: 14px;
    text-align: center;
    line-height: 1.5;
}

/* --- ÃƒÂ£Ã†â€™Ã‹Å“ÃƒÂ£Ã†â€™Ã†â€™ÃƒÂ£Ã†â€™Ã¢â€šÂ¬ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ¯Ã‚Â¼Ã‹â€ 1ÃƒÂ¨Ã‚Â¡Ã…â€™ÃƒÂ§Ã¢â‚¬ÂºÃ‚Â®ÃƒÂ¯Ã‚Â¼Ã¢â‚¬Â°ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ¨Ã‚Â¨Ã‚Â­ÃƒÂ¥Ã‚Â®Ã…Â¡ --- */
.comparison-table th {
    background-color: #fff; /* ÃƒÂ¨Ã†â€™Ã…â€™ÃƒÂ¦Ã¢â€žÂ¢Ã‚Â¯ÃƒÂ§Ã¢â€žÂ¢Ã‚Â½ */
    color: #333;
    padding: 20px 10px;
    font-weight: bold;
    vertical-align: middle;
    border: none;
}

.comparison-table .th-label {
    background-color: transparent; /* ÃƒÂ¥Ã‚Â·Ã‚Â¦ÃƒÂ¤Ã‚Â¸Ã…Â ÃƒÂ£Ã‚ÂÃ‚Â¯ÃƒÂ§Ã‚Â©Ã‚ÂºÃƒÂ¦Ã‚Â¬Ã¢â‚¬Å¾ */
}

/* ÃƒÂ£Ã†â€™Ã‚Â­ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â´ÃƒÂ©Ã‚Â¢Ã‚Â¨ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ£Ã†â€™Ã¢â‚¬Â ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â­ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¹ÃƒÂ£Ã†â€™Ã‹â€ ÃƒÂ¨Ã‚Â£Ã¢â‚¬Â¦ÃƒÂ©Ã‚Â£Ã‚Â¾ÃƒÂ¯Ã‚Â¼Ã‹â€ ÃƒÂ§Ã¢â‚¬ÂÃ‚Â»ÃƒÂ¥Ã†â€™Ã‚ÂÃƒÂ£Ã‚ÂÃ…â€™ÃƒÂ£Ã‚ÂÃ¢â‚¬Å¡ÃƒÂ£Ã¢â‚¬Å¡Ã…â€™ÃƒÂ£Ã‚ÂÃ‚Â°imgÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¿ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â°ÃƒÂ£Ã‚ÂÃ‚Â ÃƒÂ£Ã‚ÂÃ¢â‚¬ËœÃƒÂ£Ã‚ÂÃ‚Â§OKÃƒÂ¯Ã‚Â¼Ã¢â‚¬Â° */
.logo-text {
    font-size: 24px;
    color: #555;
    line-height: 1;
    display: inline-block;
}
.logo-text small {
    display: block;
    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
}


/* --- ÃƒÂ£Ã†â€™Ã¢â‚¬Â¡ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¿ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â»ÃƒÂ£Ã†â€™Ã‚Â«ÃƒÂ¯Ã‚Â¼Ã‹â€ tdÃƒÂ¯Ã‚Â¼Ã¢â‚¬Â°ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ¥Ã¢â‚¬Â¦Ã‚Â±ÃƒÂ©Ã¢â€šÂ¬Ã…Â¡ÃƒÂ¨Ã‚Â¨Ã‚Â­ÃƒÂ¥Ã‚Â®Ã…Â¡ --- */
.comparison-table td {
    padding: 20px 10px;
    vertical-align: middle;
}

/* 1ÃƒÂ¥Ã‹â€ Ã¢â‚¬â€ÃƒÂ§Ã¢â‚¬ÂºÃ‚Â®ÃƒÂ¯Ã‚Â¼Ã…Â¡ÃƒÂ©Ã‚Â Ã¢â‚¬Â¦ÃƒÂ§Ã¢â‚¬ÂºÃ‚Â®ÃƒÂ£Ã†â€™Ã‚Â©ÃƒÂ£Ã†â€™Ã¢â€žÂ¢ÃƒÂ£Ã†â€™Ã‚Â«ÃƒÂ¯Ã‚Â¼Ã‹â€ ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â°ÃƒÂ£Ã†â€™Ã‚Â¬ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ¨Ã†â€™Ã…â€™ÃƒÂ¦Ã¢â€žÂ¢Ã‚Â¯ÃƒÂ£Ã†â€™Ã‚Â»ÃƒÂ§Ã¢â€žÂ¢Ã‚Â½ÃƒÂ¦Ã¢â‚¬â€œÃ¢â‚¬Â¡ÃƒÂ¥Ã‚Â­Ã¢â‚¬â€ÃƒÂ¯Ã‚Â¼Ã¢â‚¬Â° */
.comparison-table .td-label {
    background-color: #b0b0b0;
    color: #fff;
    width: 18%; /* ÃƒÂ¥Ã‚Â¹Ã¢â‚¬Â¦ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ¨Ã‚ÂªÃ‚Â¿ÃƒÂ¦Ã¢â‚¬Â¢Ã‚Â´ */
    white-space: nowrap;
}

/* 2ÃƒÂ¥Ã‹â€ Ã¢â‚¬â€ÃƒÂ§Ã¢â‚¬ÂºÃ‚Â®ÃƒÂ£Ã†â€™Ã‚Â»4ÃƒÂ¥Ã‹â€ Ã¢â‚¬â€ÃƒÂ§Ã¢â‚¬ÂºÃ‚Â®ÃƒÂ¯Ã‚Â¼Ã…Â¡ÃƒÂ©Ã¢â€šÂ¬Ã…Â¡ÃƒÂ¥Ã‚Â¸Ã‚Â¸ÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ©Ã‚Â Ã¢â‚¬Â¦ÃƒÂ§Ã¢â‚¬ÂºÃ‚Â®ÃƒÂ¯Ã‚Â¼Ã‹â€ ÃƒÂ¨Ã¢â‚¬â€œÃ¢â‚¬Å¾ÃƒÂ£Ã‚ÂÃ¢â‚¬Å¾ÃƒÂ£Ã†â€™Ã¢â€žÂ¢ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¸ÃƒÂ£Ã†â€™Ã‚Â¥/ÃƒÂ§Ã‚Â·Ã¢â‚¬ËœÃƒÂ¨Ã†â€™Ã…â€™ÃƒÂ¦Ã¢â€žÂ¢Ã‚Â¯ÃƒÂ¯Ã‚Â¼Ã¢â‚¬Â° */
.comparison-table td {
    background-color: #f2f6f0; /* ÃƒÂ¨Ã¢â‚¬â€œÃ¢â‚¬Å¾ÃƒÂ£Ã‚ÂÃ¢â‚¬Å¾ÃƒÂ¨Ã¢â‚¬Â°Ã‚Â² */
    color: #333;
    width: 27%;
}

/* 3ÃƒÂ¥Ã‹â€ Ã¢â‚¬â€ÃƒÂ§Ã¢â‚¬ÂºÃ‚Â®ÃƒÂ¯Ã‚Â¼Ã…Â¡ProCellÃƒÂ¯Ã‚Â¼Ã‹â€ ÃƒÂ¥Ã‚Â¼Ã‚Â·ÃƒÂ¨Ã‚ÂªÃ‚Â¿ÃƒÂ£Ã†â€™Ã‚Â»ÃƒÂ§Ã‚Â·Ã¢â‚¬ËœÃƒÂ¨Ã†â€™Ã…â€™ÃƒÂ¦Ã¢â€žÂ¢Ã‚Â¯ÃƒÂ¯Ã‚Â¼Ã¢â‚¬Â° */
.comparison-table .td-procell {
    background-color: #92bd68; /* ÃƒÂ§Ã¢â‚¬ÂÃ‚Â»ÃƒÂ¥Ã†â€™Ã‚ÂÃƒÂ£Ã‚ÂÃ‚Â«ÃƒÂ¨Ã‚Â¿Ã¢â‚¬ËœÃƒÂ£Ã‚ÂÃ¢â‚¬Å¾ÃƒÂ§Ã‚Â·Ã¢â‚¬ËœÃƒÂ¨Ã¢â‚¬Â°Ã‚Â² */
    color: #000; /* ÃƒÂ¦Ã¢â‚¬â€œÃ¢â‚¬Â¡ÃƒÂ¥Ã‚Â­Ã¢â‚¬â€ÃƒÂ¨Ã¢â‚¬Â°Ã‚Â²ÃƒÂ£Ã‚ÂÃ‚Â¯ÃƒÂ©Ã‚Â»Ã¢â‚¬â„¢ */
    font-weight: bold;
    width: 27%;
}

/* ÃƒÂ£Ã†â€™Ã‹Å“ÃƒÂ£Ã†â€™Ã†â€™ÃƒÂ£Ã†â€™Ã¢â€šÂ¬ÃƒÂ£Ã†â€™Ã‚Â¼ÃƒÂ£Ã‚ÂÃ‚Â®ProCellÃƒÂ©Ã†â€™Ã‚Â¨ÃƒÂ¥Ã‹â€ Ã¢â‚¬Â ÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬Å¡ÃƒÂ¥Ã‚Â¹Ã¢â‚¬Â¦ÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬â„¢ÃƒÂ¥Ã‚ÂÃ‹â€ ÃƒÂ£Ã¢â‚¬Å¡Ã‚ÂÃƒÂ£Ã‚ÂÃ¢â‚¬ÂºÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬Â¹ */
.comparison-table .th-procell {
    width: 27%;
}


/* --- ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¹ÃƒÂ£Ã†â€™Ã…Â¾ÃƒÂ£Ã†â€™Ã¢â‚¬ÂºÃƒÂ¨Ã‚Â¡Ã‚Â¨ÃƒÂ§Ã‚Â¤Ã‚ÂºÃƒÂ£Ã‚ÂÃ‚Â®ÃƒÂ¨Ã‚ÂªÃ‚Â¿ÃƒÂ¦Ã¢â‚¬Â¢Ã‚Â´ --- */
@media (max-width: 768px) {
    .comparison-table {
        min-width: 500px; /* ÃƒÂ¥Ã‚Â°Ã¢â‚¬ËœÃƒÂ£Ã‚ÂÃ¢â‚¬â€ÃƒÂ§Ã¢â‚¬Â¹Ã‚Â­ÃƒÂ£Ã¢â‚¬Å¡Ã‚ÂÃƒÂ£Ã¢â‚¬Å¡Ã¢â‚¬Â¹ */
        font-size: 12px;
    }
    
    .comparison-table td, 
    .comparison-table th {
        padding: 10px 5px;
    }
    
    .logo-text {
        font-size: 18px;
    }
}

/* ========================================
   Precautions Section
   ======================================== */
.scalp-precautions {
    padding: 60px 0;
    background-color: #f5f5f5;
}

.scalp-precautions h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    padding-left: 4px;
    border-left: 4px solid #66cc00;
}

.precautions-box {
    max-width: 800px;
    margin: 0 auto;
    background-color: #ffffff;
    border: 2px solid #66cc00;
    border-radius: 4px;
    padding: 40px;
}

.precautions-box ul {
    list-style: none;
    padding: 0;
}

.precautions-box li {
    font-size: 16px;
    color: #333;
    line-height: 1.8;
    margin-bottom: 20px;
    padding-left: 20px;
    position: relative;
}

.precautions-box li::before {
    content: 'ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€šÃ‚Â¢';
    position: absolute;
    left: 0;
    color: #66cc00;
    font-weight: bold;
}

.precautions-box li span {
    display: block;
    font-size: 14px;
    color: #999;
    margin-top: 5px;
}

/* ========================================
   Pricing Section
   ======================================== */
.scalp-pricing {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-pricing h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    padding-left: 4px;
    border-left: 4px solid #66cc00;
}

.pricing-content {
    max-width: 800px;
    margin: 0 auto 40px;
}

.pricing-item {
    margin-bottom: 30px;
    text-align: center;
}

.pricing-label {
    font-size: 16px;
    color: #555;
    margin-bottom: 10px;
}

.pricing-original {
    font-size: 18px;
    color: #999;
    text-decoration: line-through;
    margin-bottom: 10px;
}

.pricing-discount {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
}

.campaign {
    background-color: #66cc00;
    color: #fff;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: bold;
}

.price {
    font-size: 32px;
    color: #333;
    font-weight: bold;
}

.pricing-price {
    font-size: 28px;
    color: #333;
    font-weight: bold;
    margin-bottom: 20px;
}

.monitor {
    font-size: 12px;
    color: #999;
}

.per-session {
    display: block;
    font-size: 14px;
    color: #999;
    margin-top: 5px;
}

.cta-button {
    display: block;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    background-color: #0088b4;
    color: #fff;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    font-size: 18px;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.cta-button:hover {
    background-color: #006688;
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 768px) {
    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .before-after {
        grid-template-columns: repeat(2, 1fr);
    }

    .scalp-title {
        font-size: 36px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 24px;
    }

    .comparison-table th,
    .comparison-table td {
        font-size: 12px;
        padding: 10px;
    }

    .precautions-box {
        padding: 20px;
    }

    .precautions-box li {
        font-size: 14px;
    }

    .flow-steps {
        gap: 10px;
    }

    .step-circle {
        width: 50px;
        height: 50px;
        font-size: 16px;
    }

    .step-arrow {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .before-after {
        grid-template-columns: 1fr;
    }

    .scalp-title {
        font-size: 28px;
    }

    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .scalp-hero-right {
        padding: 20px;
    }

    .scalp-hero-box h2 {
        font-size: 20px;
    }

    .scalp-hero-description p {
        font-size: 13px;
        line-height: 1.7;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .recommended-item {
        padding: 12px;
    }

    .recommended-item span {
        font-size: 14px;
    }

    .precautions-box {
        padding: 15px;
        border: 2px solid #66cc00;
    }

    .precautions-box li {
        font-size: 13px;
        margin-bottom: 15px;
        line-height: 1.6;
    }

    .precautions-box li span {
        font-size: 12px;
    }

    .cta-button {
        font-size: 16px;
        padding: 16px;
    }

    .comparison-table {
        font-size: 11px;
    }

    .comparison-table th,
    .comparison-table td {
        font-size: 11px;
        padding: 8px 4px;
    }

    .flow-steps {
        gap: 8px;
        flex-wrap: wrap;
    }

    .step-circle {
        width: 45px;
        height: 45px;
        font-size: 14px;
    }

    .step-arrow {
        font-size: 14px;
    }

    .step-time {
        font-size: 11px;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .schedule-left p {
        font-size: 14px;
    }

    .schedule-note p {
        font-size: 12px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .pricing-item {
        margin-bottom: 25px;
    }

    .pricing-label {
        font-size: 15px;
    }

    .pricing-price {
        font-size: 24px;
    }

    .price {
        font-size: 26px;
    }

    .campaign {
        font-size: 13px;
        padding: 5px 10px;
    }

    .per-session {
        font-size: 12px;
    }

    .flow-label {
        font-size: 13px;
        margin-bottom: 15px;
    }

    .scalp-hero-product {
        margin-top: 20px;
    }

    .scalp-hero-image {
        margin: 15px 0;
    }

    .scalp-subtitle {
        font-size: 14px;
        margin-bottom: 20px;
    }
}

        font-size: 14px;
        margin-bottom: 20px;
    }
}
mal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-32)/var(--unnamed-line-spacing-44) var(--unnamed-font-family-zenoldmincho-bold);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-7ebe53);
    text-align: center;
    font: normal normal normal 32px/44px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #7EBE53;
    opacity: 1;
}
p.subtitle {
    margin-top: 0;
    position: relative;
}

.hero-inner {
    display: flex;
}



p.subtitle:before {
    content: "";
    display: block;
    position: absolute;
    width: 90px;
    height: 3px;
    background: #7cbf52;
    bottom: 0;
    right: 50%;
    transform: translate(50%, 0px);
}


.scalp-hero {
}

.scalp-hero .wrap {
}

.scalp-hero-left {
    text-align: center;
    width: 50%;
    padding: 5%;
}

.hero-titles p.subtitle {
    color: #7ebe53;
}

.scalp-title {
}

.scalp-subtitle {
    font-size: 16px;
    margin-bottom: 30px;
    padding-bottom: 15px;
    display: inline-block;
}

.hero-product {
    margin-top: 13rem;
    text-align: left;
    width: 80%;
    max-width: 260px;
    left: -3rem;
    position: relative;
}

.scalp-hero-product img {
    max-width: 100%;
    height: auto;
}

.scalp-hero-right {
    background-color: #e8f5e9;
    padding: 5%;
    width: 50%;
    position: relative;
}

.hero-box h2 {
    font-family: "Zen Old Mincho", serif !important;
    font-size: 24px;
    color: #333;
    margin-bottom: 20px;
    line-height: 1.6;
    text-align: center;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) 20px/33px var(--unnamed-font-family-zenoldmincho-bold);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-1b533b);
    text-align: center;
    font: normal normal normal 20px/33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.hero-image {
    padding: 20px 0;
}

.scalp-hero-image img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

.scalp-hero-description {
    margin-top: 20px;
}

.scalp-hero-description p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 15px;
}

/* ========================================
   Recommended Section
   ======================================== */
.scalp-recommended {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-recommended h2 {
    font-family: "Zen Old Mincho", serif !important;
    font-size: 32px !important;
    line-height: 1.6em !important;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    text-align: center;
    font: normal normal normal 24px / 33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.recommended-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin: auto;
    max-width: 1000px;
    padding-top: 50px;
}

.recommended-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px;
    /* background-color: #fafafa; */
    border-radius: 4px;
}

.recommended-item img {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.recommended-item span {
    font-size: 21px;
    color: #333;
    font-weight: 600;
}

/* ========================================
   Schedule Section
   ======================================== */
.scalp-schedule {
    padding: 60px 0;
    /* background-color: #f5f5f5; */
}

.scalp-schedule h2 {
    font-size: 30px;
    text-align: center;
    padding: 11px 33px;
    background-color: #e8f5e9;
    border-left: 2px solid #66cc00;
    border-right: 2px solid #66cc00;
    font-weight: 500;
    color: #1a533b;
    display: inline-block;
    margin: auto;
    margin-bottom: 6rem;
}

.schedule-inner {
    display: flex;
    grid-template-columns: 1fr 1fr;
    gap: 0px;
    margin-bottom: 60px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.schedule-inner p {
    line-height: 2em;
}


.schedule-left p {
    font-size: 16px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 20px;
}

.schedule-note {
    background-color: #e8f5e9;
    padding: 20px;
    border-radius: 4px;
    margin-top: 20px;
}

.schedule-note p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
}

.schedule-flow {
    position: relative;
    width: 640px;
}

.flow-label {
    display: block;
    text-align: center;
    margin-bottom: 20px;
    padding: 8px 16px;
    background-color: #e8f5e9;
    border-left: 4px solid #66cc00;
    font-weight: bold;
    color: #333;
}

.flow-steps {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 20px;
}

.step {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.step-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #c8e6c9;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    color: #fff;
}

.step-circle.active {
    background-color: #66cc00;
}

.step-label {
    font-size: 12px;
    color: #fff;
}

.step-time {
    font-size: 12px;
    color: #999;
    margin-top: 8px;
}

.step-arrow {
    font-size: 24px;
    color: #999;
}

.course-label {
    text-align: center;
    font-size: 14px;
    color: #666;
    border-top: 2px solid #66cc00;
    padding-top: 15px;
}

.before-after {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 40px;
}

.before-after img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

/* ========================================
   Comparison Table
   ======================================== */
.scalp-comparison {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-comparison h2 {
    /* font-size: 32px; */
    /* text-align: center; */
    /* margin-bottom: 40px; */
    /* color: #333; */
    /* padding-left: 4px; */
    /* border-left: 4px solid #66cc00; */
}

.comparison-table {
    overflow-x: auto;
    max-width: 870px;
    width: 90%;
    margin: auto;
}

.comparison-table table {
    width: 100%;
    border-collapse: collapse;
    border-collapse: separate; /* æž ç·šã‚’ãã£ã¤ã‘ãšã«åˆ†é›¢ã•ã›ã‚‹ï¼ˆå¿…é ˆï¼‰ */
    border-spacing: 11px;       /* ã“ã‚ŒãŒéš™é–“ã®å¹…ï¼ˆç¸¦æ¨ªï¼‰ */
}

.comparison-table thead {
    background-color: #f5f5f5;
}

.comparison-table th {
    padding: 18px 15px;
    text-align: center;
    font-weight: bold;
    /* border: 1px solid #ddd; */
    font-size: 14px;
    background: white;
}

.comparison-table th.procell {
    color: #333;
    text-align: center;
    margin: auto;
}

.schedule-right {
    width: 53%;
}

.schedule-left {
    width: 40%;
}

.comparison-table th.procell img {
    margin: auto;
    height: 50px;
}

.comparison-table td {
    padding:  18px 15px;
    /* border: 1px solid #ddd; */
    font-size: 14px;
    text-align: center;
    background: #eff6ed;
    width: 18%;
}

.comparison-table td.label {
    background-color: #b3b3b5;
    font-weight: bold;
    text-align: center;
    width: 35%;
    color: white;
}

.comparison-table td.procell {
    background-color: #7ebe53;
    font-weight: bold;
}

/* ========================================
   Precautions Section
   ======================================== */
.scalp-precautions {
    padding: 60px 0;
}

.scalp-precautions h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #4f7b66;
    /* padding-left: 4px; */
    /* border-left: 4px solid #66cc00; */
    text-align: center;
}

.precautions-box {
    max-width: 900px !important;
    margin: 0 auto;
    background-color: #ffffff;
    border: 2px solid #7ebe53;
    border-radius: 4px;
    padding: 40px;
}

.precautions-box ul {
    padding: 0;
    list-style: disc;
}

.precautions-box li {
    font-size: 19px;
    color: #1a533b;
    line-height: 1.8;
    margin-bottom: 20px;
    padding-left: 10px;
    position: relative;
    font-weight: 500;
}

.precautions-box li::before {
    /* content: 'ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¢'; */
    position: absolute;
    left: 0;
    color: #66cc00;
    font-weight: bold;
}

.precautions-box li span {
    display: block;
    font-size: 14px;
    margin-top: 5px;
}

/* ========================================
   Pricing Section
   ======================================== */
.scalp-pricing {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-pricing h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    /* color: #333; */
    /* padding-left: 4px; */
    /* border-left: 4px solid #66cc00; */
}

.pricing-content {
    max-width: 540px;
    margin: 0 auto 40px;
    font-weight: bold;
}

.pricing-item {
    position: relative;
    margin-bottom: 30px;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem;
}

.pricing-label {
    font-size: 22px;
    color: #555;
    margin-bottom: 10px;
}

.pricing-original {
    font-size: 21px;
    /* color: #999; */
    text-decoration: line-through;
    margin-bottom: 10px;
}

.pricing-discount {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
    width: 100%;
}

.campaign {
    background-color: #87c45c;
    color: #fff;
    padding: 6px 20px;
    /* border-radius: 4px; */
    font-size: 20px;
    font-weight: bold;
    margin-top: 5px;
}

.price {
    font-size: 32px;
    color: #88c45c;
    text-decoration: underline;
    font-weight: 500;
}

.pricing-discount:after {
    content: "↓";
    display: block;
    position: absolute;
    right: 50%;
    top: 50%;
    color: black;
    font-size: 30px;
    transform: translate(50%, -90%);
    font-weight: 100;
}



.pricing-price {
    font-size: 21px;
    color: #333;
    /* font-weight: bold; */
    margin-bottom: 20px;
    text-align: right;
}

.monitor {
    font-size: 12px;
    /* color: #999; */
    font-weight: normal;
}

.per-session {
    display: block;
    font-size: 14px;
    color: #999;
    margin-top: 5px;
    right: -0.8em;
    position: relative;
}

.cta-button {
    display: block;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    background-color: #0088b4;
    color: #fff;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    font-size: 18px;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.cta-button:hover {
    background-color: #006688;
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 768px) {
    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }
.schedule-left {
    width: 100%;
}

    
.schedule-right {
    width: 100%;
}

    .schedule-flow {
    width: 100%;
    margin: 8vw 0;
}

    .comparison-table th.procell img {
    width: auto;
    height: auto;
}

    
    .before-after {
        grid-template-columns: repeat(2, 1fr);
    }

    .scalp-title {
        font-size: 36px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 24px;
    }

    .scalp-recommended h2 {
    font-size: 6.1vw !important;
}

    .comparison-table th,
    .comparison-table td {
        font-size: 12px;
        padding: 10px;
    }

    .precautions-box {
        padding: 20px;
        width: 100%;
    }

    .precautions-box li {
        font-size: 14px;
    }

    .flow-steps {
        gap: 10px;
    }

    .step-circle {
        width: 50px;
        height: 50px;
        font-size: 16px;
    }

    .step-arrow {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .before-after {
        grid-template-columns: 1fr;
    }

    .scalp-title {
        font-size: 28px;
    }

    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .scalp-hero-right {
        padding: 20px;
    }

    .scalp-hero-box h2 {
        font-size: 20px;
    }

    .scalp-hero-description p {
        font-size: 13px;
        line-height: 1.7;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .recommended-item {
        padding: 12px;
    }

    .recommended-item span {
        font-size: 14px;
    }

    .precautions-box {
        padding: 15px;
        border: 2px solid #66cc00;
    }

    .precautions-box li {
        font-size: 13px;
        margin-bottom: 15px;
        line-height: 1.6;
    }

    .precautions-box li span {
        font-size: 3.3vw;
        color: inherit;
        margin-top: 0;
    }

    .cta-button {
        font-size: 16px;
        padding: 16px;
    }

    .comparison-table {
        font-size: 11px;
        max-width: inherit;
        width: 102%;
        left: -2%;
        position: relative;
    }

    .comparison-table th,
    .comparison-table td {
        font-size: 11px;
        padding: 10px 4px;
    }

    .flow-steps {
        gap: 8px;
        flex-wrap: wrap;
    }

    .step-circle {
        width: 45px;
        height: 45px;
        font-size: 14px;
    }

    .step-arrow {
        font-size: 14px;
    }

    .step-time {
        font-size: 11px;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .schedule-left p {
        font-size: 14px;
    }

    .schedule-note p {
        font-size: 12px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .pricing-item {
        margin-bottom: 25px;
    }

    .pricing-label {
        font-size: 15px;
    }

    .pricing-price {
        font-size: 24px;
    }

    .price {
        font-size: 26px;
    }

    .campaign {
        font-size: 13px;
        padding: 5px 10px;
    }

    .per-session {
        font-size: 12px;
    }

    .flow-label {
        font-size: 13px;
        margin-bottom: 15px;
    }

    .scalp-hero-product {
        margin-top: 20px;
    }

    .scalp-hero-image {
        margin: 15px 0;
    }

    .scalp-subtitle {/**
 * Salon de Mirror - Scalp Treatment Page Styles
 */

/* ========================================
   Scalp Hero Section
   ======================================== */

.page h1.title {
    /* width: 244px; */
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-32)/var(--unnamed-line-spacing-44) var(--unnamed-font-family-zenoldmincho-bold);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-7ebe53);
    text-align: center;
    font: normal normal normal 32px/44px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #7EBE53;
    opacity: 1;
}
p.subtitle {
    margin-top: 0;
    position: relative;
}

.hero-inner {
    display: flex;
}



p.subtitle:before {
    content: "";
    display: block;
    position: absolute;
    width: 90px;
    height: 3px;
    background: #7cbf52;
    bottom: 0;
    right: 50%;
    transform: translate(50%, 0px);
}


.scalp-hero {
    /* background-color: #f5f5f5; */
    /* padding: 60px 0; */
}

.scalp-hero .wrap {
    /* display: grid; */
    /* grid-template-columns: 1fr 1fr; */
    /* gap: 60px; */
    /* align-items: center; */
}

.scalp-hero-left {
    text-align: center;
    width: 50%;
    padding: 5%;
}

.scalp-title {
    font-size: 48px;
    color: #66cc00;
    font-weight: bold;
    margin-bottom: 10px;
}

.scalp-subtitle {
    font-size: 16px;
    color: #999;
    margin-bottom: 30px;
    padding-bottom: 15px;
    /* border-bottom: 2px solid #66cc00; */
    display: inline-block;
}

.hero-product {
    margin-top: 13rem;
    text-align: left;
    width: 80%;
}

.scalp-hero-product img {
    max-width: 100%;
    height: auto;
}

.scalp-hero-right {
    background-color: #e8f5e9;
    padding: 5%;
    border-radius: 8px;
    width: 50%;
}

.hero-box h2 {
    font-size: 24px;
    color: #333;
    margin-bottom: 20px;
    line-height: 1.6;
    text-align: center;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) 20px/33px var(--unnamed-font-family-zenoldmincho-bold);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-1b533b);
    text-align: center;
    font: normal normal normal 20px/33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.hero-image {
    padding: 20px 0;
}

.scalp-hero-image img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

.scalp-hero-description {
    margin-top: 20px;
}

.scalp-hero-description p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 15px;
}

/* ========================================
   Recommended Section
   ======================================== */
.scalp-recommended {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-recommended h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    text-align: center;
    font: normal normal normal 24px / 33px ZenOldMincho-Bold;
    letter-spacing: 0px;
    color: #1B533B;
    opacity: 1;
}

.recommended-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.recommended-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px;
    background-color: #fafafa;
    border-radius: 4px;
}

.recommended-item img {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.recommended-item span {
    font-size: 16px;
    color: #333;
    font-weight: 600;
}

/* ========================================
   Schedule Section
   ======================================== */
.scalp-schedule {
    padding: 60px 0;
    background-color: #f5f5f5;
}

.scalp-schedule h2 {
    font-size: 27px;
    text-align: center;
    padding: 11px 33px;
    background-color: #e8f5e9;
    border-left: 2px solid #66cc00;
    border-right: 2px solid #66cc00;
    font-weight: 500;
    color: #1a533b;
    display: inline-block;
    margin: auto;
    margin-bottom: 3rem;
}

.schedule-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 60px;
}

.schedule-left p {
    font-size: 16px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 20px;
}

.schedule-note {
    background-color: #e8f5e9;
    padding: 20px;
    border-radius: 4px;
    margin-top: 20px;
}

.schedule-note p {
    font-size: 14px;
    line-height: 1.8;
    color: #555;
}

.schedule-flow {
    position: relative;
}

.flow-label {
    display: block;
    text-align: center;
    margin-bottom: 20px;
    padding: 8px 16px;
    background-color: #e8f5e9;
    border-left: 4px solid #66cc00;
    font-weight: bold;
    color: #333;
}

.flow-steps {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 20px;
}

.step {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.step-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #c8e6c9;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    color: #fff;
}

.step-circle.active {
    background-color: #66cc00;
}

.step-label {
    font-size: 12px;
    color: #fff;
}

.step-time {
    font-size: 12px;
    color: #999;
    margin-top: 8px;
}

.step-arrow {
    font-size: 24px;
    color: #999;
}

.course-label {
    text-align: center;
    font-size: 14px;
    color: #666;
    border-top: 2px solid #66cc00;
    padding-top: 15px;
}

.before-after {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: 40px;
}

.before-after img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

/* ========================================
   Comparison Table
   ======================================== */
.scalp-comparison {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-comparison h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    padding-left: 4px;
    border-left: 4px solid #66cc00;
}

.comparison-table {
    overflow-x: auto;
}

.comparison-table table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 10px;
}

.comparison-table thead {
    background-color: #f5f5f5;
}

.comparison-table th {
    padding: 15px;
    text-align: center;
    font-weight: bold;
    border: 1px solid #ddd;
    font-size: 14px;
}

.comparison-table th.procell {
    background-color: #c8e6c9;
    color: #333;
}

.comparison-table td {
    padding: 15px;
    /* border: 1px solid #ddd; */
    font-size: 14px;
    text-align: center;
}

.comparison-table td.label {
    background-color: #b2b2b4;
    font-weight: 500;
    text-align: center;
    color: white;
}

.comparison-table td.procell {
    background-color: #e8f5e9;
    font-weight: bold;
}

/* ==============================================
   Ã¦Â¯â€Ã¨Â¼Æ’Ã¨Â¡Â¨Ã£ÂÂ®Ã£Æ’â€¡Ã£â€šÂ¶Ã£â€šÂ¤Ã£Æ’Â³ (ProCell Table)
   ============================================== */

/* Ã£Æ’â€ Ã£Æ’Â¼Ã£Æ’â€“Ã£Æ’Â«Ã¥â€¦Â¨Ã¤Â½â€œÃ£ÂÂ®Ã£Æ’Â©Ã£Æ’Æ’Ã£Æ’â€˜Ã£Æ’Â¼Ã¯Â¼Ë†Ã£â€šÂ¹Ã£Æ’Å¾Ã£Æ’â€ºÃ£ÂÂ§Ã¦Â¨ÂªÃ£â€šÂ¹Ã£â€šÂ¯Ã£Æ’Â­Ã£Æ’Â¼Ã£Æ’Â«Ã£Ââ€¢Ã£Ââ€ºÃ£â€šâ€¹Ã§â€Â¨Ã¯Â¼â€° */
.comparison-table-wrapper {
    width: 100%;
    overflow-x: auto; /* Ã£â€šÂ¹Ã£Æ’Å¾Ã£Æ’â€ºÃ£ÂÂ§Ã£ÂÂ¯Ã£ÂÂ¿Ã¥â€¡ÂºÃ£ÂÅ¸Ã£â€šâ€°Ã£â€šÂ¹Ã£â€šÂ¯Ã£Æ’Â­Ã£Æ’Â¼Ã£Æ’Â« */
    margin-bottom: 60px;
}

.comparison-table {
    width: 100%;
    min-width: 600px; /* Ã£â€šÂ¹Ã£Æ’Å¾Ã£Æ’â€ºÃ£ÂÂ§Ã£â€šâ€šÃ£Ââ€œÃ£â€šÅ’Ã¤Â»Â¥Ã¤Â¸Å Ã£ÂÂ¯Ã§Â¸Â®Ã£â€šÂÃ£ÂÂªÃ£Ââ€ž */
    border-collapse: separate; /* Ã£â€šÂ»Ã£Æ’Â«Ã£ÂÂ®Ã©Å¡â„¢Ã©â€“â€œÃ£â€šâ€™Ã¤Â½Å“Ã£â€šâ€¹Ã£ÂÅ¸Ã£â€šÂ */
    border-spacing: 4px; /* Ã§â„¢Â½Ã£Ââ€žÃ©Å¡â„¢Ã©â€“â€œÃ£ÂÂ®Ã¥Â¤ÂªÃ£Ââ€¢ */
    margin: 0 auto;
    font-size: 14px;
    text-align: center;
    line-height: 1.5;
}

/* --- Ã£Æ’ËœÃ£Æ’Æ’Ã£Æ’â‚¬Ã£Æ’Â¼Ã¯Â¼Ë†1Ã¨Â¡Å’Ã§â€ºÂ®Ã¯Â¼â€°Ã£ÂÂ®Ã¨Â¨Â­Ã¥Â®Å¡ --- */
.comparison-table th {
    background-color: #fff; /* Ã¨Æ’Å’Ã¦â„¢Â¯Ã§â„¢Â½ */
    color: #333;
    padding: 20px 10px;
    font-weight: bold;
    vertical-align: middle;
    border: none;
}

.comparison-table .th-label {
    background-color: transparent; /* Ã¥Â·Â¦Ã¤Â¸Å Ã£ÂÂ¯Ã§Â©ÂºÃ¦Â¬â€ž */
}

/* Ã£Æ’Â­Ã£â€šÂ´Ã©Â¢Â¨Ã£ÂÂ®Ã£Æ’â€ Ã£â€šÂ­Ã£â€šÂ¹Ã£Æ’Ë†Ã¨Â£â€¦Ã©Â£Â¾Ã¯Â¼Ë†Ã§â€Â»Ã¥Æ’ÂÃ£ÂÅ’Ã£Ââ€šÃ£â€šÅ’Ã£ÂÂ°imgÃ£â€šÂ¿Ã£â€šÂ°Ã£ÂÂ Ã£Ââ€˜Ã£ÂÂ§OKÃ¯Â¼â€° */
.logo-text {
    font-size: 24px;
    color: #555;
    line-height: 1;
    display: inline-block;
}
.logo-text small {
    display: block;
    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
}


/* --- Ã£Æ’â€¡Ã£Æ’Â¼Ã£â€šÂ¿Ã£â€šÂ»Ã£Æ’Â«Ã¯Â¼Ë†tdÃ¯Â¼â€°Ã£ÂÂ®Ã¥â€¦Â±Ã©â‚¬Å¡Ã¨Â¨Â­Ã¥Â®Å¡ --- */
.comparison-table td {
    padding: 20px 10px;
    vertical-align: middle;
}

/* 1Ã¥Ë†â€”Ã§â€ºÂ®Ã¯Â¼Å¡Ã©Â â€¦Ã§â€ºÂ®Ã£Æ’Â©Ã£Æ’â„¢Ã£Æ’Â«Ã¯Â¼Ë†Ã£â€šÂ°Ã£Æ’Â¬Ã£Æ’Â¼Ã¨Æ’Å’Ã¦â„¢Â¯Ã£Æ’Â»Ã§â„¢Â½Ã¦â€“â€¡Ã¥Â­â€”Ã¯Â¼â€° */
.comparison-table .td-label {
    background-color: #b0b0b0;
    color: #fff;
    width: 18%; /* Ã¥Â¹â€¦Ã£ÂÂ®Ã¨ÂªÂ¿Ã¦â€¢Â´ */
    white-space: nowrap;
}

/* 2Ã¥Ë†â€”Ã§â€ºÂ®Ã£Æ’Â»4Ã¥Ë†â€”Ã§â€ºÂ®Ã¯Â¼Å¡Ã©â‚¬Å¡Ã¥Â¸Â¸Ã£ÂÂ®Ã©Â â€¦Ã§â€ºÂ®Ã¯Â¼Ë†Ã¨â€“â€žÃ£Ââ€žÃ£Æ’â„¢Ã£Æ’Â¼Ã£â€šÂ¸Ã£Æ’Â¥/Ã§Â·â€˜Ã¨Æ’Å’Ã¦â„¢Â¯Ã¯Â¼â€° */
.comparison-table td {
    background-color: #f2f6f0; /* Ã¨â€“â€žÃ£Ââ€žÃ¨â€°Â² */
    color: #333;
    width: 27%;
}

/* 3Ã¥Ë†â€”Ã§â€ºÂ®Ã¯Â¼Å¡ProCellÃ¯Â¼Ë†Ã¥Â¼Â·Ã¨ÂªÂ¿Ã£Æ’Â»Ã§Â·â€˜Ã¨Æ’Å’Ã¦â„¢Â¯Ã¯Â¼â€° */
.comparison-table .td-procell {
    background-color: #92bd68; /* Ã§â€Â»Ã¥Æ’ÂÃ£ÂÂ«Ã¨Â¿â€˜Ã£Ââ€žÃ§Â·â€˜Ã¨â€°Â² */
    color: #000; /* Ã¦â€“â€¡Ã¥Â­â€”Ã¨â€°Â²Ã£ÂÂ¯Ã©Â»â€™ */
    font-weight: bold;
    width: 27%;
}

/* Ã£Æ’ËœÃ£Æ’Æ’Ã£Æ’â‚¬Ã£Æ’Â¼Ã£ÂÂ®ProCellÃ©Æ’Â¨Ã¥Ë†â€ Ã£â€šâ€šÃ¥Â¹â€¦Ã£â€šâ€™Ã¥ÂË†Ã£â€šÂÃ£Ââ€ºÃ£â€šâ€¹ */
.comparison-table .th-procell {
    width: 27%;
}


/* --- Ã£â€šÂ¹Ã£Æ’Å¾Ã£Æ’â€ºÃ¨Â¡Â¨Ã§Â¤ÂºÃ£ÂÂ®Ã¨ÂªÂ¿Ã¦â€¢Â´ --- */
@media (max-width: 768px) {
    .comparison-table {
        min-width: 500px; /* Ã¥Â°â€˜Ã£Ââ€”Ã§â€¹Â­Ã£â€šÂÃ£â€šâ€¹ */
        font-size: 12px;
    }
    
    .comparison-table td, 
    .comparison-table th {
        padding: 10px 5px;
    }
    
    .logo-text {
        font-size: 18px;
    }
}

/* ========================================
   Precautions Section
   ======================================== */
.scalp-precautions {
    padding: 60px 0;
    background-color: #f5f5f5;
}

.scalp-precautions h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    padding-left: 4px;
    border-left: 4px solid #66cc00;
}

.precautions-box {
    max-width: 800px;
    margin: 0 auto;
    background-color: #ffffff;
    border: 2px solid #66cc00;
    border-radius: 4px;
    padding: 40px;
}

.precautions-box ul {
    list-style: none;
    padding: 0;
}

.precautions-box li {
    font-size: 16px;
    color: #333;
    line-height: 1.8;
    margin-bottom: 20px;
    padding-left: 20px;
    position: relative;
}

.precautions-box li::before {
    content: 'ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¢';
    position: absolute;
    left: 0;
    color: #66cc00;
    font-weight: bold;
}

.precautions-box li span {
    display: block;
    font-size: 14px;
    color: #999;
    margin-top: 5px;
}

/* ========================================
   Pricing Section
   ======================================== */
.scalp-pricing {
    padding: 60px 0;
    background-color: #ffffff;
}

.scalp-pricing h2 {
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
    color: #333;
    padding-left: 4px;
    border-left: 4px solid #66cc00;
}

.pricing-content {
    max-width: 800px;
    margin: 0 auto 40px;
}

.pricing-item {
    margin-bottom: 30px;
    text-align: center;
}

.pricing-label {
    font-size: 16px;
    color: #555;
    margin-bottom: 10px;
}

.pricing-original {
    font-size: 18px;
    color: #999;
    text-decoration: line-through;
    margin-bottom: 10px;
}

.pricing-discount {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
        margin-top: 19px;
}

.campaign {
    background-color: #66cc00;
    color: #fff;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: bold;
}

.price {
    font-size: 32px;
    color: #333;
    font-weight: bold;
}

.pricing-price {
    font-size: 28px;
    color: #333;
    font-weight: bold;
    margin-bottom: 20px;
}

.monitor {
    font-size: 12px;
    color: #999;
}

.per-session {
    display: block;
    font-size: 14px;
    color: #999;
    margin-top: 5px;
}

.cta-button {
    display: block;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    background-color: #0088b4;
    color: #fff;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    font-size: 18px;
    font-weight: bold;
    transition: background-color 0.3s ease;
}

.cta-button:hover {
    background-color: #006688;
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 768px) {
    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .before-after {
        grid-template-columns: repeat(2, 1fr);
    }

    .scalp-title {
        font-size: 36px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 24px;
    }

    .comparison-table th,
    .comparison-table td {
        font-size: 12px;
        padding: 10px;
    }

    .precautions-box {
        padding: 20px;
    }

    .precautions-box li {
        font-size: 14px;
    }

    .flow-steps {
        gap: 10px;
    }

    .step-circle {
        width: 50px;
        height: 50px;
        font-size: 16px;
    }

    .step-arrow {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .before-after {
        grid-template-columns: 1fr;
    }

    .scalp-title {
        font-size: 28px;
    }

    .scalp-hero .wrap {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .scalp-hero-right {
        padding: 20px;
    }

    .scalp-hero-box h2 {
        font-size: 20px;
    }

    .scalp-hero-description p {
        font-size: 13px;
        line-height: 1.7;
    }

    .recommended-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .recommended-item {
        padding: 12px;
    }

    .recommended-item span {
        font-size: 14px;
    }

    .precautions-box {
        padding: 15px;
        border: 2px solid #66cc00;
    }

    .precautions-box li {
        font-size: 13px;
        margin-bottom: 15px;
        line-height: 1.6;
    }

    .precautions-box li span {
        font-size: 12px;
    }

    .cta-button {
        font-size: 16px;
        padding: 16px;
    }

    .comparison-table {
        font-size: 11px;
    }

    .comparison-table th,
    .comparison-table td {
        font-size: 11px;
        padding: 8px 4px;
    }

    .flow-steps {
        gap: 8px;
        flex-wrap: wrap;
    }

    .step-circle {
        width: 45px;
        height: 45px;
        font-size: 14px;
    }

    .step-arrow {
        font-size: 14px;
    }

    .step-time {
        font-size: 11px;
    }

    .schedule-inner {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .schedule-left p {
        font-size: 14px;
    }

    .schedule-note p {
        font-size: 12px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .pricing-item {
        margin-bottom: 25px;
    }

    .pricing-label {
        font-size: 15px;
    }

    .pricing-price {
        font-size: 24px;
    }

    .price {
        font-size: 26px;
    }

    .campaign {
        font-size: 13px;
        padding: 5px 10px;
    }

    .per-session {
        font-size: 12px;
    }

    .flow-label {
        font-size: 13px;
        margin-bottom: 15px;
    }

    .scalp-hero-product {
        margin-top: 20px;
    }

    .scalp-hero-image {
        margin: 15px 0;
    }

    .scalp-subtitle {
        font-size: 14px;
        margin-bottom: 20px;
    }
}

        font-size: 14px;
        margin-bottom: 20px;
    }
}



@media (max-width: 480px) {

    
.schedule-inner p {
    line-height: 2em;
}

    /* --- Heroセクションのレイアウト変更（Grid解除・ブロック化） --- */
    .hero-inner {
        display: block;
    }

    .scalp-hero-left {
        width: 100%;
        text-align: center;
        padding: 0;
    }

    .scalp-hero-product {
        width: max-content;
        text-align: center;
        margin: 20px auto;
        display: block;
        left: inherit;
        width: 100% !important;
        max-width: inherit !important;
        margin-bottom: 0;
    }
    
    .scalp-hero-right {
        width: 100%;
        padding: 20px;
        border-radius: 0;
    }

    .scalp-hero-description p {
        font-size: 4.4vw; /* vw単位に変更 */
        line-height: 1.7;
    }

    /* --- Recommended（おすすめ）セクション調整 --- */
    .recommended-grid {
        gap: 0px;
    }

    .recommended-item {
        padding: 12px 0;
        font-weight: normal !important;
    }

    .recommended-item span {
        font-size: 4.7vw; /* 文字サイズ調整 */
        font-weight: normal;
    }

    /* --- 注意事項（Precautions） --- */
    .precautions-box {
        /* padding: 15px; */
        border-radius: inherit;
    }

    .precautions-box ul {
        margin-left: 1rem;
    }

    .precautions-box li {
        font-size: 4.4vw;
        margin-bottom: 15px;
        line-height: 1.6;
    }

    /* --- スケジュール（Schedule） --- */
    .schedule-inner {
        display: block;
    }

    .schedule-left p {
        font-size: 4vw;
    }

    /* --- 料金表（Pricing）の大幅レイアウト変更 --- */
    /* 全体の枠組み */
    .pricing-item {
        flex-wrap: wrap;
        gap: 0;
        justify-content: center;
        width: 100%;
        margin: 0 auto 1.1em auto;
    }

    /* コース名（ラベル） */
    .pricing-label {
        width: 100%;
        text-align: center;
        margin: 0;
        font-size: 4vw;
        font-weight: normal;
    }

    /* 定価 */
    .pricing-original {
        margin: 0;
        line-height: 1.8em;
    }

    /* 割引価格エリア */
    .pricing-discount {
        margin: 0;
        gap: 0;
        width: 100%;
        justify-content: space-between; /* 左右配置 */
        position: relative;
    }

    /* 矢印（↓）の追加 */
    .pricing-original:after {
        content: "↓";
        display: block;
        margin-left: 5px; /* 必要に応じて調整 */
    }
    /* もしくはFacialに合わせて .pricing-discount:after か確認が必要ですが、
       Facialのコードでは .pricing-original:after で矢印を出している箇所がありました。
       念のため両方のパターンに対応できるよう、ここではFacialの .pricing-discount:after を採用します */
       
    .pricing-discount:after {
        content: "↓";
        display: block;
        position: absolute;
        right: 50%;
        top: 50%;
        transform: translate(50%, -50%);
        font-weight: 100;
        font-size: 30px;
        color: #333; /* 矢印の色 */
        display: none;
    }

    /* 価格強調 */
    .pricing-price {
        font-size: 4.5vw;
        font-weight: normal;
        width: 45%;
        margin: 0;
        line-height: 1.6em;
        text-align: center;
    }

    .campaign {
        font-size: 13px;
        padding: 2px 19px;
        margin-right: 1em;
    }

    /* --- 2行目・3行目の特定レイアウト調整（詳細度が強いセレクタへの対応） --- */
    /* Scalp用にクラス名を変更しています (.facial-pricing -> .scalp-pricing) */
    
    section.pricing.scalp-pricing > div > div.pricing-content > div:nth-child(2),
    section.pricing.scalp-pricing > div > div.pricing-content > div:nth-child(3) {
        flex-wrap: inherit;
        justify-content: space-between;
        align-items: center;
        margin-right: 3vw;
        gap: 4rem;
    }

    section.pricing.scalp-pricing > div > div.pricing-content > div:nth-child(2) > p.pricing-label,
    section.pricing.scalp-pricing > div > div.pricing-content > div:nth-child(3) > p.pricing-label {
        width: 56%;
        text-align: center;
    }
}

.scalp-hero-image img {
    border-radius: 0;
}


.comparison-table table {
    border-spacing: 7px;
}

.comparison-table td.label {
    width: 26%;
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 1024px) and (min-width: 769px) {
    .scalp-hero .wrap {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .schedule-flow {
    width: auto;
}

    .scalp-hero h1 {
        font-size: 40px;
    }

    .recommended-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .schedule-inner {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .before-after {
        grid-template-columns: repeat(3, 1fr);
    }

    .scalp-title {
        font-size: 40px;
    }

    .scalp-recommended h2,
    .scalp-schedule h2,
    .scalp-comparison h2,
    .scalp-precautions h2,
    .scalp-pricing h2 {
        font-size: 28px;
    }

    .treatment-card {
        padding: 25px;
    }

    .treatment-title {
        font-size: 16px;
    }

    .treatment-description {
        font-size: 13px;
    }
}
