@charset "UTF-8";

/* ==============================================================
   PC用スタイル / 横幅768px以上
   ============================================================== */
@media (min-width: 768px) {
    .section-padding { padding: 3rem 0; }
    .section-title { font-size: 2.25rem; }
    .greeting p { font-size: 1.125rem; } 
    .sp-only { display: none; }
    
    /* ヘッダーのPC表示 */
    .global-header {
        padding: 15px 40px;
    }
    .header-logo img {
        height: 50px;
    }
    .header-btn {
        padding: 12px 24px;
        font-size: 1rem;
    }

    .hero-subtitle { font-size: 1.5rem; }
    .hero-title { font-size: 4rem; }

    /* グリッドレイアウトの適用 */
    .grid-2 { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
    .grid-4 { grid-template-columns: repeat(4, 1fr); gap: 0.75rem; }
    .grid-3 { grid-template-columns: repeat(3, 1fr); gap: 1rem; }

    /* Component Layouts */
    .about-card { flex-direction: row; }
    .about-img, .about-content { width: 50%; }
    .about-content { padding: 2rem; display: flex; justify-content: center; }

    /* 施設セクション専用のゆったり余白（PC版） */
    .facility-section .facility-block { margin-bottom: 4rem; }
    .facility-section .grid-4 { gap: 1.5rem; }
    .facility-section .grid-2 { gap: 2rem; }
    .villa-block { padding: 3rem; margin-bottom: 4rem; }

    .ship-flex { flex-direction: row; align-items: stretch; }
    .ship-text { width: 33.333%; padding: 1.5rem; border-top: none; border-left: 5px solid var(--amami-blue); }
    .ship-grid { width: 66.666%; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }

    .exp-card { flex-direction: row; align-items: center; padding: 1.5rem; gap: 1.5rem; }
    .exp-card.reverse { flex-direction: row-reverse; }
    .exp-text, .exp-grid { width: 50%; }
    .exp-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }

    /* 大判1カラム・交互ジグザグ配置 */
    .plan-list-container { gap: 2rem; }
    .plan-card { flex-direction: row; align-items: stretch; height: auto; }
    .plan-card:nth-child(even) { flex-direction: row-reverse; }
    .plan-images { width: 45%; flex-shrink: 0; }
    .plan-content { width: 55%; padding: 1.5rem 2rem; justify-content: center; }
    .plan-img-main { height: 320px; }
    .plan-img-sub { height: 160px; }
    
    /* HISの特徴セクション（PC） */
    .feature-card { margin-bottom: 0; height: 100%; }

    .cta-section { padding: 4rem 1rem; }
    .cta-box { padding: 1.5rem; font-size: 1.25rem; }
    .btn-white { font-size: 1.5rem; padding: 1.5rem 4rem; }

    /* フッターリンクのPC表示（横並び＋区切り線） */
    .footer-links {
        gap: 0;
    }
    .footer-links li:not(:last-child)::after {
        content: "｜";
        margin: 0 16px;
        color: #ffffff;
    }
}

/* 1024px以上 */
@media (min-width: 1024px) {
    .hero-title { font-size: 4.5rem; }
    .season-card p { font-size: 1rem; }
}