@charset "UTF-8";

/*
Theme Name: plapel
Theme URI: https://wordpress.org/themes/twentytwentyone/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Twenty Twenty-One is a blank canvas for your ideas and it makes the block editor your best brush. With new block patterns, which allow you to create a beautiful layout in a matter of seconds, this theme’s soft colors and eye-catching — yet timeless — design will let your work shine. Take it for a spin! See how Twenty Twenty-One elevates your portfolio, business website, or personal blog.
Requires at least: 5.3
Tested up to: 6.0
Requires PHP: 5.6
Version: 1.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyone
Tags: one-column, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready

Twenty Twenty-One WordPress Theme, (C) 2020 WordPress.org
Twenty Twenty-One is distributed under the terms of the GNU GPL.
*/

/**
 * SETTINGS
 * File-header..........The file header for the themes style.css file.
 * Fonts................Any font files, if the project needs specific fonts.
 * Global...............Project-specific, globally available variables.
 *
 * TOOLS
 * Functions............Global functions.
 * Mixins...............Global mixins.
 *
 * GENERIC
 * Normalize.css........Normalise browser defaults.
 * Breakpoints..........Mixins and variables for responsive styles
 * Vertical-margins.....Vertical spacing for the main components.
 * Reset................Reset specific elements to make them easier to style in other contexts.
 * Clearings............Clearings for the main components.
 *
 * ELEMENTS
 * Blockquote...........Default blockquote.
 * Forms................Element-level form styling.
 * Headings.............H1–H6
 * Links................Default links.
 * Lists................Default lists.
 * Media................Images, Figure, Figcaption, Embed, iFrame, Objects, Video.
 *
 * BLOCKS
 * Audio................Specific styles for the audio block.
 * Button...............Specific styles for the button block.
 * Code.................Specific styles for the code block.
 * Columns..............Specific styles for the columns block.
 * Cover................Specific styles for the cover block.
 * File.................Specific styles for the file block.
 * Gallery..............Specific styles for the gallery block.
 * Group................Specific styles for the group block.
 * Heading..............Specific styles for the heading block.
 * Image................Specific styles for the image block.
 * Latest comments......Specific styles for the latest comments block.
 * Latest posts.........Specific styles for the latest posts block.
 * Legacy...............Specific styles for the legacy gallery.
 * List.................Specific styles for the list block.
 * Media text...........Specific styles for the media and text block.
 * Navigation...........Specific styles for the navigation block.
 * Paragraph............Specific styles for the paragraph block.
 * Pullquote............Specific styles for the pullquote block.
 * Quote................Specific styles for the quote block.
 * Search...............Specific styles for the search block.
 * Separator............Specific styles for the separator block.
 * Spacer...............Specific styles for the spacer block.
 * Table................Specific styles for the table block.
 * Verse................Specific styles for the verse block.
 * Video................Specific styles for the video block.
 * Utilities............Block alignments.
 *
 * COMPONENTS
 * Header...............Header styles.
 * Footer...............Footer styles.
 * Comments.............Comment styles.
 * Archives.............Archive styles.
 * 404..................404 styles.
 * Search...............Search styles.
 * Navigation...........Navigation styles.
 * Footer Navigation....Footer Navigation styles.
 * Pagination...........Pagination styles.
 * Single...............Single page and post styles.
 * Posts and pages......Misc, sticky post styles.
 * Entry................Entry, author biography.
 * Widget...............Widget styles.
 * Editor...............Editor styles.
 *
 * UTILITIES
 * A11y.................Screen reader text, prefers reduced motion etc.
 * Color Palette........Classes for the color palette colors.
 * Editor Font Sizes....Editor Font Sizes.
 * Measure..............The width of a line of text, in characters.
 */

/* Categories 01 to 03 are the basics. */

/* ========================================
   加盟サロン一覧ページのスタイル
   ======================================== */

.salons-page {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.salons-page .page-header {
    text-align: center;
    margin-bottom: 50px;
    padding-bottom: 20px;
    border-bottom: 3px solid #D1E4DD;
}

.salons-page .page-title {
    font-size: 2.5rem;
    color: #28303D;
    margin: 0 0 10px 0;
    font-weight: 600;
    text-align: center;
}

.salons-page .page-description {
    font-size: 0.9rem;
    color: #666;
    margin: 0;
    text-align: center;
}

/* 地方セクション */
.region-section {
    margin-bottom: 60px;
}

.region-title {
    font-size: 1.8rem;
    color: #28303D;
    padding: 15px 20px;
    background: linear-gradient(135deg, #D1E4DD 0%, #D1DFE4 100%);
    border-left: 5px solid #39414D;
    margin-bottom: 30px;
    border-radius: 5px;
    font-weight: 600;
}

/* サロングリッド - PC用 */
.salons-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-bottom: 40px;
}

/* サロンカード */
.salon-card {
    background: #FFFFFF;
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-top: 4px solid #D1E4DD;
    display: flex;
    flex-direction: column;
}

.salon-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
    border-top-color: #39414D;
}

/* プラピール認定講師サロンラベル */
.salon-label {
    font-size: 0.85rem;
    color: #000000;
    font-weight: 600;
    margin-bottom: 12px;
    letter-spacing: 0.5px;
    line-height: 1.4;
}

/* サロン名 */
.salon-name {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: #28303D;
    line-height: 1.5;
}

.salon-name a {
    color: #28303D;
    text-decoration: none;
    transition: color 0.3s ease;
    display: block;
}

.salon-name a:hover {
    color: #39414D;
}

/* サロン住所 */
.salon-address {
    font-size: 0.95rem;
    color: #666;
    line-height: 1.7;
    margin: 0;
}

/* タブレット表示 */
@media (max-width: 1024px) {
    .salons-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .salons-page {
        padding: 30px 20px;
    }

    .salons-page .page-title {
        font-size: 2.2rem;
    }

    .region-title {
        font-size: 1.6rem;
    }

    .salon-card {
        padding: 20px;
    }

    .salon-name {
        font-size: 1.1rem;
    }
}

/* モバイル表示 */
@media (max-width: 768px) {
    .salons-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .salons-page {
        padding: 20px 15px;
    }

    .salons-page .page-title {
        font-size: 2rem;
    }

    .salons-page .page-description {
        font-size: 0.85rem;
    }

    .region-title {
        font-size: 1.5rem;
        padding: 12px 15px;
    }

    .salon-card {
        padding: 18px;
    }

    .salon-label {
        font-size: 0.8rem;
        margin-bottom: 10px;
    }

    .salon-name {
        font-size: 1.05rem;
        margin-bottom: 8px;
    }

    .salon-address {
        font-size: 0.9rem;
    }
}

/* 小さいモバイル表示 */
@media (max-width: 480px) {
    .salons-page {
        padding: 15px 10px;
    }

    .salons-page .page-title {
        font-size: 1.6rem;
    }

    .salons-page .page-description {
        font-size: 0.8rem;
    }

    .region-title {
        font-size: 1.3rem;
        padding: 10px 12px;
    }

    .salons-grid {
        gap: 15px;
    }

    .salon-card {
        padding: 15px;
    }

    .salon-label {
        font-size: 0.75rem;
        margin-bottom: 8px;
    }

    .salon-name {
        font-size: 1rem;
        margin-bottom: 6px;
    }

    .salon-address {
        font-size: 0.85rem;
    }
}
