.about-hero{min-height:100px;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;background-color:#1a253a;padding-top:2rem;padding-bottom:2rem;color:#ffffff}body{background-color:#f8f9fa;color:#333;font-family:'Helvetica Neue', 'Arial', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'Meiryo', sans-serif}.section-title{font-weight:bold;margin-bottom:1.5rem;border-bottom:2px solid #dee2e6;padding-bottom:0.5rem}.profile-header{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,0.05)}.profile-image{width:150px;height:150px;border-radius:50%;object-fit:cover;filter:grayscale(100%);border:4px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,0.1)}.profile-name{font-size:2.5rem;font-weight:bold;margin:0}.profile-years{font-size:1.1rem;color:#6c757d;margin-bottom:1rem}.profile-description{font-size:1rem;line-height:1.7}.meta-info{margin-top:1.5rem;display:flex;align-items:center;gap:1.5rem}.genre-tag{background-color:#0d6efd;color:#fff;padding:0.3rem 0.8rem;border-radius:15px;font-size:0.9rem;font-weight:bold}.location-info{color:#6c757d}.location-info .fa-map-marker-alt{margin-right:0.3rem}.review-card{border:none;box-shadow:0 4px 8px rgba(0,0,0,0.05);border-radius:8px}.reviewer-avatar{width:48px;height:48px;border-radius:50%;margin-right:12px}.reviewer-name{font-weight:bold;display:block}.review-tags .badge{font-weight:normal}.review-photos{display:grid;grid-template-columns:repeat(auto-fill, minmax(120px, 1fr));gap:8px}.review-photo-item{width:100%;height:120px;object-fit:cover;border-radius:4px;cursor:pointer;transition:transform 0.2s}.review-photo-item:hover{transform:scale(1.05)}.comment-section{background-color:#f8f9fa;padding:1rem;border-radius:5px;margin-top:1rem}.comment{font-size:0.9rem;padding:0.25rem 0}.page-header{min-height:100px;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;background-color:#1a253a;padding-top:2rem;padding-bottom:2rem}.page-header h3{color:#ffffff;margin-bottom:0;text-align:center;font-family:'Noto Serif JP', serif;font-weight:700}.list-container{border:1px solid #dee2e6;border-radius:12px;overflow:hidden}.table tbody tr{vertical-align:middle}.table thead th{background-color:#f8f9fa;border-bottom-width:1px}.list-img-placeholder{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background-color:#e9ecef}.table a{text-decoration:none;color:#1a253a}.table a:hover{text-decoration:underline}:root{--primary-gray: #4A5568;--dark-gray: #2D3748;--soft-gold: #D4AF37;--light-beige: #F7FAFC;--warm-gray: #E2E8F0;--hover-gold: #B8941F;--shadow-light: 0 2px 10px rgba(0, 0, 0, 0.1);--shadow-medium: 0 4px 15px rgba(0, 0, 0, 0.15);--shadow-heavy: 0 10px 25px rgba(0, 0, 0, 0.15);--transition-fast: all 0.2s ease;--transition-normal: all 0.3s ease}html,body{height:100%;margin:0}body{display:flex;flex-direction:column;min-height:100vh;font-family:'Noto Sans JP', sans-serif;background-color:var(--light-beige);line-height:1.6}main{flex:1}.font-serif{font-family:'Noto Serif JP', serif}.navbar-dark-custom .navbar-nav .nav-link{font-weight:500;padding:8px 16px;margin:0 4px;border-radius:6px;transition:all 0.2s ease-in-out}.navbar-dark-custom .navbar-nav .nav-link:hover,.navbar-dark-custom .navbar-nav .nav-link:focus{background-color:rgba(255,255,255,0.1);transform:translateY(-1px)}.navbar-dark-custom,header.navbar-dark-custom,.footer-dark,footer.footer-dark{background-color:var(--dark-gray) !important}.hero-gradient,section.hero-gradient{background-image:url(/assets/hakamile-top-hero-9b543ed08e2ed10b929d16f8e977bb2a8575017e304dd1b3d1ec1b3d56f837ee.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;min-height:500px;display:flex;align-items:center;position:relative}.hero-gradient::before{content:'';position:absolute;top:0;left:0;right:0;height:100px;background:linear-gradient(to bottom, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);z-index:1;pointer-events:none}.hero-text-overlay{background:rgba(0,0,0,0.7);padding:40px;border-radius:12px;backdrop-filter:blur(2px);margin-top:90px}.hero-gradient .container{position:relative;z-index:2}.cta-section,section.cta-section{background:linear-gradient(135deg, var(--primary-gray) 0%, var(--dark-gray) 100%) !important}.navbar-brand h1,.text-gold,.footer-dark h4{color:var(--soft-gold) !important}.btn-gold,.cta-btn-primary{background-color:var(--soft-gold) !important;border-color:var(--soft-gold) !important;color:white !important;transition:var(--transition-normal);font-weight:500}.btn-gold:hover,.cta-btn-primary:hover{background-color:var(--hover-gold) !important;border-color:var(--hover-gold) !important;color:white !important;transform:translateY(-2px);box-shadow:var(--shadow-medium)}.cta-btn-primary{padding:1rem 2rem}.cta-btn-secondary{padding:1rem 2rem;transition:var(--transition-normal);border:2px solid white !important;color:white !important}.cta-btn-secondary:hover{background-color:white !important;color:var(--primary-gray) !important;transform:translateY(-2px);box-shadow:var(--shadow-medium)}.search-icon-circle{width:80px;height:80px;background-color:#BDC3C7 !important;transition:var(--transition-normal)}.search-option-card:hover .search-icon-circle{background-color:#95A5A6 !important}.search-option-card:hover .search-icon-circle i{color:white !important}.search-option-card .card-body .rounded-circle{background-color:#BDC3C7 !important}.search-option-card:hover .card-body .rounded-circle{background-color:var(--soft-gold) !important}.search-option-card:hover .card-body .rounded-circle i{color:white !important}.category-icon{font-size:3rem;color:var(--soft-gold) !important;transition:var(--transition-normal)}.category-card:hover .category-icon{color:var(--hover-gold) !important;transform:scale(1.1)}.category-badge{background-color:#BDC3C7 !important;color:white !important;padding:0.5rem 0.75rem;border-radius:1rem;font-size:0.875rem;transition:var(--transition-fast)}.category-badge:hover{background-color:#95A5A6 !important;color:white !important}.text-gold,.view-all-link{color:var(--soft-gold) !important}.view-all-link:hover{color:var(--hover-gold) !important;transform:translateX(5px)}.nav-link-hover:hover,.login-link:hover{color:var(--soft-gold) !important}.footer-links a:hover{color:var(--soft-gold) !important;padding-left:5px}.social-link:hover{background-color:var(--soft-gold) !important;color:white !important;transform:translateY(-3px);box-shadow:var(--shadow-medium)}.search-input:focus{border-color:var(--soft-gold) !important;box-shadow:0 0 0 0.25rem rgba(212,175,55,0.25) !important}.search-btn{background-color:var(--primary-gray) !important;color:white !important;border:2px solid var(--primary-gray) !important;transition:var(--transition-normal);font-weight:500}.search-btn:hover{background-color:var(--soft-gold) !important;border-color:var(--soft-gold) !important;color:white !important}.review-body{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;text-overflow:ellipsis}.review-images-container{display:flex;overflow-x:auto;gap:10px;padding-bottom:10px}.review-images-container::-webkit-scrollbar{height:5px}.review-images-container::-webkit-scrollbar-thumb{background-color:#ccc;border-radius:5px}.review-image{width:150px;height:150px;object-fit:cover;border-radius:8px}@media (max-width: 768px){.search-icon-circle{width:60px;height:60px}}.post-card{transition:transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;display:block}.post-card:hover{transform:translateY(-5px);box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important}.card-img-container{overflow:hidden}.card-img-top{width:100%;height:200px;object-fit:cover}.post-author-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.review-body .text-content{overflow:hidden}.review-body .text-content p{margin-bottom:0}.review-images-container{display:flex;flex-wrap:wrap;gap:8px}.review-image{object-fit:cover;border-radius:8px}.review-image-large{width:100%;height:200px}.review-image-medium{width:calc(50% - 4px);height:100px}.more-images-overlay{background-color:rgba(0,0,0,0.5);position:relative;border-radius:8px}.more-images-overlay span{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.post-layout-container{display:flex;gap:16px}.post-text-content{flex:1;min-width:0}.post-image-gallery{width:240px;flex-shrink:0}.post-image-gallery img{object-fit:cover;border-radius:4px}.image-layout-1 img{width:240px;height:160px}.image-layout-2{display:flex;gap:4px}.image-layout-2 img{width:118px;height:160px}.image-layout-3{display:flex;gap:4px}.image-layout-3 .large-image img{width:158px;height:158px}.image-layout-3 .small-images{display:flex;flex-direction:column;gap:4px}.image-layout-3 .small-images img{width:78px;height:77px}.font-size-sm .btn-link,.font-size-sm .far{font-size:0.875rem}.font-size-sm .btn-link span{font-size:1rem}body.search-modal-open{overflow:hidden}.search-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:rgba(0,0,0,0.6);display:flex;justify-content:center;align-items:center;z-index:1050;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn 0.3s ease-out}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.search-modal-content{background-color:#fff;padding:40px;border-radius:12px;box-shadow:0 5px 25px rgba(0,0,0,0.2);width:90%;max-width:500px;position:relative;transform:scale(0.95);animation:popIn 0.3s ease-out forwards}@keyframes popIn{from{transform:scale(0.95);opacity:0}to{transform:scale(1);opacity:1}}.search-modal-close{position:absolute;top:15px;right:20px;font-size:1.8rem;color:#888;text-decoration:none;transition:color 0.2s}.search-modal-close:hover{color:#333}.btn-gold{background-color:#c5a068;color:white;border:none}.btn-gold:hover{background-color:#b38f5a;color:white}.top-page .navbar-dark-custom{position:absolute !important;top:0;left:0;right:0;z-index:1000;background-color:transparent !important;border-bottom:none !important;box-shadow:none !important;backdrop-filter:none;-webkit-backdrop-filter:none;transition:all 0.3s ease}.top-page .navbar-dark-custom.scrolled{background-color:rgba(0,0,0,0.2) !important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.top-page .navbar-dark-custom .navbar-brand h1,.top-page .navbar-dark-custom .navbar-brand span,.top-page .navbar-dark-custom .navbar-nav .nav-link{color:#ffffff !important;font-weight:500;text-shadow:1px 1px 2px rgba(0,0,0,0.5)}.top-page .navbar-brand h1.text-gold{color:#ffffff !important;text-shadow:1px 1px 3px rgba(0,0,0,0.7)}.top-page .navbar-dark-custom .navbar-nav .nav-link{transition:all 0.2s ease;border-radius:6px;margin:0 4px;padding:8px 16px !important}.top-page .navbar-dark-custom .navbar-nav .nav-link:hover,.top-page .navbar-dark-custom .navbar-nav .nav-link:focus{color:#ffffff !important;background-color:rgba(255,255,255,0.2) !important;transform:translateY(-1px);text-shadow:1px 1px 3px rgba(0,0,0,0.8)}.top-page .search-input{background-color:rgba(255,255,255,0.2) !important;border:1px solid rgba(255,255,255,0.3) !important;color:#ffffff !important}.top-page .search-input::placeholder{color:rgba(255,255,255,0.8) !important}.top-page .search-input:focus{background-color:rgba(255,255,255,0.3) !important;border-color:rgba(255,255,255,0.6) !important;box-shadow:0 0 0 0.25rem rgba(255,255,255,0.15) !important;color:#ffffff !important}.top-page .search-button{border-color:rgba(255,255,255,0.6) !important;color:#ffffff !important;background-color:rgba(255,255,255,0.1) !important}.top-page .search-button:hover{background-color:rgba(255,255,255,0.3) !important;border-color:rgba(255,255,255,0.8) !important;color:#ffffff !important;transform:translateY(-1px)}.top-page .btn-outline-light{border-color:rgba(255,255,255,0.6) !important;color:#ffffff !important;background-color:rgba(255,255,255,0.1) !important}.top-page .btn-outline-light:hover{background-color:rgba(255,255,255,0.3) !important;border-color:rgba(255,255,255,0.8) !important;color:#ffffff !important;transform:translateY(-1px)}.top-page .btn-gold{background-color:rgba(212,175,55,0.9) !important;border-color:rgba(212,175,55,0.9) !important;color:#ffffff !important}.top-page .btn-gold:hover{background-color:#b8941f !important;border-color:#b8941f !important;color:#ffffff !important;transform:translateY(-1px)}.top-page .hero-gradient,.top-page section.hero-gradient{padding-top:0 !important;margin-top:0 !important}@media (max-width: 991px){.top-page .navbar-collapse{background-color:rgba(0,0,0,0.8) !important;backdrop-filter:blur(10px);border-radius:8px;margin-top:8px;padding:16px;border:1px solid rgba(255,255,255,0.2)}.top-page .navbar-collapse .navbar-nav .nav-link,.top-page .navbar-collapse .search-input,.top-page .navbar-collapse .btn{color:#ffffff !important}}.top-page .navbar-toggler{border-color:rgba(255,255,255,0.3) !important}.top-page .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important}.card-hover{transition:var(--transition-normal)}.card-hover:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium) !important}.gold-left-border{border-left:4px solid var(--soft-gold) !important}.profile-avatar{width:100px;height:100px;background-color:var(--warm-gray);border:3px solid var(--soft-gold)}.table td a{text-decoration:none;color:#337ab7;transition:color 0.2s ease-in-out}.table td a:hover{text-decoration:underline;color:#dc3545}
