:root{--royal: #3a8fc4;--royal-mid: #55a8d8;--royal-light: #72bce6;--sky: #e8f5fc;--sky-deep: #c2e3f5;--white: #ffffff;--off-white: #f4fafd;--ink: #1a2a36;--gray: #6b7f8a;--gray-light: #ddeef7;--gold: #c9a84c;--gold-light: #e8cc80}*{margin: 0;padding: 0;box-sizing: border-box}html{scroll-behavior: smooth}body{background: var(--white);color: var(--ink);font-family: 'Noto Sans JP', sans-serif;font-weight: 300;overflow-x: hidden;font-size: 17px}.header-mid{background: white;border-bottom: 1px solid #e8f4fb;width: 100%}.header-mid-inner{max-width: 1200px;margin: 0 auto;padding: 0 32px;height: 80px;display: flex;align-items: center;justify-content: space-between;gap: 24px}.logo{display: flex;flex-direction: column;gap: 2px;text-decoration: none}.logo-ja{font-family: 'Noto Serif JP', serif;font-size: 20px;font-weight: 500;color: #3a8fc4;letter-spacing: 0.12em}.logo-en{font-family: 'Cormorant Garamond', serif;font-size: 12px;color: var(--gray);letter-spacing: 0.3em;font-style: italic}.header-mid-right{display: flex;align-items: center;gap: 24px}.header-tel{display: flex;flex-direction: column;align-items: flex-start}.header-tel-inner{display: flex;align-items: center;gap: 10px}.header-tel-icon{position: relative;width: 36px;height: 36px;flex-shrink: 0}.header-tel-icon a{display: flex;align-items: center;justify-content: center;width: 36px;height: 36px;background: #3a8fc4;border-radius: 50%;color: white;text-decoration: none;position: relative;z-index: 1}.header-tel-icon a svg{width: 16px;height: 16px;fill: white}.header-tel-icon::before, .header-tel-icon::after{content: '';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%) scale(1);width: 36px;height: 36px;border-radius: 50%;background: rgba(58,143,196,0.3);animation: telRing 2s ease-out infinite}.header-tel-icon::after{animation-delay: 0.6s}@keyframes telRing{0%{transform: translate(-50%,-50%) scale(1);opacity: 0.8}100%{transform: translate(-50%,-50%) scale(1.7);opacity: 0}}.header-tel-info{display: flex;flex-direction: column;align-items: flex-start;gap: 2px}.header-tel-num{font-family: 'Oswald', 'Arial', sans-serif;font-size: 30px;font-weight: 700;color: #3a8fc4;letter-spacing: 0.2em;line-height: 1;text-decoration: none;transform: scaleX(0.7);transform-origin: left center;display: inline-block}.header-tel-num:hover{color: #2a7ab0}.header-tel-note{font-size: 12px;color: #000000;letter-spacing: 0.08em}.header-tel-badges{display: flex;flex-direction: row;gap: 4px;margin-left: -70px}.header-tel-badge{background: #3a8fc4;color: white;font-size: 14px;font-weight: 500;padding: 4px 8px;border-radius: 3px;text-align: center;line-height: 1.3;letter-spacing: 0.03em;white-space: nowrap}.header-consult-btn{background: #c9a84c;color: white;padding: 12px 24px;font-size: 13px;font-weight: 500;letter-spacing: 0.08em;text-decoration: none;border-radius: 2px;white-space: nowrap;transition: background 0.3s;display: flex;align-items: center;gap: 6px}.header-consult-btn:hover{background: #b8943d}.header-nav{background: #3a8fc4;width: 100%}.header-nav-inner{max-width: 1200px;margin: 0 auto;padding: 0 32px;display: flex;align-items: center;justify-content: center;gap: 0}.header-nav a{color: rgba(255,255,255,0.9);text-decoration: none;font-size: 13px;font-weight: 400;letter-spacing: 0.08em;padding: 0 20px;height: 44px;display: flex;align-items: center;transition: background 0.3s, color 0.3s;white-space: nowrap;position: relative}.header-nav a::after{content: '';position: absolute;bottom: 0;left: 0;width: 0;height: 2px;background: white;transition: width 0.3s}.header-nav a:hover{background: rgba(255,255,255,0.12);color: white}.header-nav a:hover::after{width: 100%}.sticky-header{position: fixed;top: -80px;left: 0;width: 100%;z-index: 2000;background: rgba(255,255,255,0.97);backdrop-filter: blur(12px);box-shadow: 0 4px 24px rgba(26,58,107,0.12);border-bottom: 2px solid #e8f4fb;transition: top 0.4s cubic-bezier(0.4, 0, 0.2, 1)}.sticky-header.visible{top: 0}.sticky-inner{max-width: 1200px;margin: 0 auto;padding: 0 32px;height: 60px;display: flex;align-items: center;justify-content: space-between;gap: 16px;flex-wrap: nowrap;overflow: hidden}.sticky-logo{display: flex;flex-direction: column;gap: 1px;text-decoration: none;flex-shrink: 0}.sticky-logo-ja{font-family: 'Noto Serif JP', serif;font-size: 16px;font-weight: 500;color: #3a8fc4;letter-spacing: 0.1em;white-space: nowrap}.sticky-logo-en{font-family: 'Cormorant Garamond', serif;font-size: 10px;color: var(--gray);letter-spacing: 0.25em;font-style: italic}.sticky-nav{display: flex;align-items: center;gap: 0;flex: 1;justify-content: center}.sticky-nav a{color: #333;text-decoration: none;font-size: 13px;font-weight: 400;letter-spacing: 0.06em;padding: 0 14px;height: 60px;display: flex;align-items: center;transition: color 0.3s, background 0.3s;white-space: nowrap;position: relative}.sticky-nav a::after{content: '';position: absolute;bottom: 0;left: 0;width: 0;height: 2px;background: #3a8fc4;transition: width 0.3s}.sticky-nav a:hover{color: #3a8fc4}.sticky-nav a:hover::after{width: 100%}.sticky-tel{font-family: 'Oswald', 'Arial', sans-serif;font-size: 22px;font-weight: 700;color: #3a8fc4;letter-spacing: 0.15em;text-decoration: none;transform: scaleX(0.7);transform-origin: left center;display: inline-block;white-space: nowrap;flex-shrink: 0}.sticky-tel:hover{color: #2a7ab0}.hamburger{display: none;flex-direction: column;gap: 5px;cursor: pointer;padding: 4px;background: none;border: none}.hamburger span{display: block;width: 24px;height: 2px;background: #3a8fc4;transition: all 0.3s}.hamburger.open span:nth-child(1){transform: translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity: 0}.hamburger.open span:nth-child(3){transform: translateY(-7px) rotate(-45deg)}.mobile-menu{display: none;position: fixed;top: 80px;left: 0;width: 100%;background: white;border-bottom: 1px solid var(--gray-light);flex-direction: column;padding: 24px 32px;gap: 20px;z-index: 1999;box-shadow: 0 8px 32px rgba(26,58,107,0.1)}.mobile-menu.open{display: flex}.mobile-menu a{font-size: 15px;color: var(--ink);text-decoration: none;letter-spacing: 0.1em;padding-bottom: 16px;border-bottom: 1px solid var(--gray-light)}.header-wrapper{position: relative;width: 100%;z-index: 1000}@media (max-width: 768px){.header-wrapper{position: fixed;top: 0;left: 0;width: 100%;z-index: 2000;background: white;box-shadow: 0 2px 12px rgba(0,0,0,0.08)}.header-nav{display: none}.header-mid-inner{padding: 0 20px}.hamburger{display: flex !important}.header-consult-btn{display: none}.sticky-header{display: none}.hero{margin-top: 80px}.hero-card{margin-top: 0 !important}.carousel{margin-top: 80px}}.carousel{position: relative;width: 100%;height: 100vh;min-height: 600px;overflow: hidden;margin-top: 0}.carousel-slide{position: absolute;inset: 0;background-size: cover;background-position: center;opacity: 0;transition: opacity 1s ease;z-index: 0}.carousel-slide.active{opacity: 1;z-index: 1}.carousel-overlay{position: absolute;inset: 0;background: linear-gradient(135deg, rgba(30,90,150,0.82) 0%, rgba(50,120,180,0.72) 50%, rgba(80,150,210,0.65) 100% )}.carousel-content{position: absolute;top: 30%;left: 320px;transform: translateY(-50%);max-width: 460px;color: white;z-index: 2}.carousel-catch{font-family: 'Cormorant Garamond', serif;font-size: 15px;font-weight: 300;letter-spacing: 6px;color: rgb(232,204,128);margin-bottom: 16px;display: flex;align-items: center;gap: 12px}.carousel-catch::before{content: '';display: inline-block;width: 40px;height: 1px;background: rgba(255,255,255,0.5)}.carousel-title{font-family: 'Noto Serif JP', serif;font-size: 36px;font-weight: 500;line-height: 1.65;margin-bottom: 20px;letter-spacing: 0.06em}.carousel-title em{font-style: normal;color: rgb(232,204,128)}.carousel-desc{font-family: 'Noto Serif JP', serif;font-size: 17px;font-weight: 300;color: rgba(255,255,255,0.7);margin-bottom: 32px;letter-spacing: 3.4px;line-height: 1.7}.carousel-btns{display: flex;gap: 14px;flex-wrap: wrap}.btn-carousel-primary{background: white;color: #3a8fc4;padding: 16px 36px;font-size: 14px;font-weight: 400;letter-spacing: 1.68px;text-decoration: none;border-radius: 0;transition: background 0.3s, transform 0.2s}.btn-carousel-primary:hover{background: rgba(255,255,255,0.9);transform: translateY(-2px)}.btn-carousel-outline{background: transparent;color: white;padding: 15px 32px;font-size: 14px;font-weight: 400;letter-spacing: 1.68px;text-decoration: none;border: 0.8px solid rgba(255,255,255,0.5);border-radius: 0;transition: background 0.3s}.btn-carousel-outline:hover{background: rgba(255,255,255,0.12)}.carousel-prev, .carousel-next{position: absolute;top: 50%;transform: translateY(-50%);z-index: 10;background: rgba(255,255,255,0.2);border: 0px solid rgba(255,255,255,0.5);color: white;font-size: 24px;width: 64px;height: 64px;border-radius: 50%;cursor: pointer;transition: background 0.3s;display: flex;align-items: center;justify-content: center}.carousel-prev{left: 20px}.carousel-next{right: 28px}.carousel-prev:hover, .carousel-next:hover{background: rgba(255,255,255,0.3)}.carousel-dots{position: absolute;bottom: 300px;left: 50%;transform: translateX(-50%);display: flex;gap: 15px;z-index: 10}.carousel-dot{width: 8px;height: 8px;border-radius: 50%;background: rgba(255,255,255,0.4);cursor: pointer;transition: all 0.3s}.carousel-dot.active{background: white;width: 28px;border-radius: 4px}.carousel .hero-card{position: absolute;top: 35%;right: 10%;transform: translateY(-50%);z-index: 10;width: 380px;box-sizing: border-box;padding: 30px 32px}@media (max-width: 768px){.carousel-content{left: 20px;right: 20px;max-width: 100%}.carousel-next{right: 20px}.carousel-dots{left: 20px;bottom: 20px}.carousel .hero-card{display: none}}.hero-inner{max-width: 1200px;margin: 0 auto;padding: 120px 40px 80px;display: grid;grid-template-columns: 1fr 420px;gap: 80px;align-items: start;position: relative;z-index: 1;width: 100%}.hero-tagline{font-family: 'Noto Serif JP', serif;font-size: clamp(14px, 2vw, 17px);font-weight: 300;color: rgba(255, 255, 255, 0.9);letter-spacing: 0.2em;margin-bottom: 24px}.hero-title{font-family: 'Noto Serif JP', serif;font-size: clamp(32px, 4.5vw, 56px);font-weight: 400;color: white;line-height: 1.65;letter-spacing: 0.06em;margin-bottom: 40px}.hero-desc{font-size: 16px;font-weight: 300;color: rgba(255, 255, 255, 0.9);line-height: 2.2;letter-spacing: 0.08em;margin-bottom: 48px;max-width: 440px}.hero-card{background: rgba(255,255,255,0.08);backdrop-filter: blur(20px);-webkit-backdrop-filter: blur(20px);border: 0.8px solid rgba(255,255,255,0.15);padding: 36px 40px;position: relative;border-radius: 4px;box-sizing: border-box;margin-top: -80px}.hero-card-label{font-size: 15px;font-weight: 400;color: rgba(255,255,255,0.95);letter-spacing: 1.5px;margin-bottom: 14px;font-style: normal}.hero-card-tel{font-family: 'Oswald', Arial, sans-serif;font-size: 47px;font-weight: 900;color: white;letter-spacing: 10.6px;line-height: 1;margin-bottom: 0;text-decoration: none;white-space: nowrap;flex-shrink: 0;display: inline-block;transform: scaleX(0.7);transform-origin: left center}.hero-card-badges{display: flex;flex-direction: row;gap: 7px;margin-top: 13px;margin-bottom: 0}.hero-card-hours{font-size: 13px;color: rgba(255,255,255,0.85);margin-top: 8px;margin-bottom: 24px;letter-spacing: 0.1em}.hero-card-divider{height: 1px;background: rgba(255,255,255,0.15);margin: 0 0 16px 0}.hero-card-features{display: flex;flex-direction: column;gap: 8px}.hero-card-feature{display: flex;align-items: center;gap: 8px;font-size: 14px;color: rgba(255,255,255,0.85);letter-spacing: 0.84px;font-weight: 400}.feature-dot{width: 6px;height: 6px;border-radius: 50%;background: rgb(201,168,76);flex-shrink: 0}.hero-card-tel-btn{display: block;text-align: center;background: rgb(201,168,76);color: white;padding: 16px;font-size: 14px;font-weight: 500;text-decoration: none;letter-spacing: 0.1em;transition: background 0.3s, color 0.3s;margin-top: 32px;border-radius: 0}.hero-card-coupon{display: block;margin-top: 16px;padding: 18px 20px;background: rgba(6,199,85,0.12);border: 1.5px solid #06c755;border-radius: 6px;text-decoration: none;text-align: center;transition: background 0.3s, transform 0.2s}.hero-card-coupon:hover{background: rgba(6,199,85,0.22);transform: translateY(-2px)}.hero-coupon-badge{display: inline-flex;align-items: center;gap: 6px;background: #06c755;color: white;font-size: 15px;font-weight: 500;letter-spacing: 0.08em;padding: 4px 14px;border-radius: 20px;margin-bottom: 10px}.hero-coupon-line-icon{width: 15px;height: 15px;fill: white}.hero-coupon-main{font-size: 18px;font-weight: 500;color: white;letter-spacing: 0.04em;line-height: 1.5}.hero-coupon-pct{font-size: 30px;font-weight: 700;color: #4ade80;font-family: 'Oswald', sans-serif;letter-spacing: 0.03em;margin: 0 2px}.hero-coupon-sub{font-size: 12px;color: rgba(255,255,255,0.75);letter-spacing: 0.05em;margin-top: 6px}.scale{padding: 50px 0;background: white}.scale-card-badge{position: absolute;top: 16px;left: 16px;background: rgb(201,168,76);color: white;font-family: 'Cormorant Garamond', serif;font-size: 11px;font-style: italic;letter-spacing: 0.2em;padding: 4px 12px}.img-lightbox{position: fixed;inset: 0;z-index: 9999;display: flex;align-items: center;justify-content: center;background: rgba(10,20,40,0.92);opacity: 0;visibility: hidden;transition: opacity 0.3s ease, visibility 0.3s ease;padding: 40px 20px}.img-lightbox.open{opacity: 1;visibility: visible}.img-lightbox-inner{position: relative;max-width: 92vw;max-height: 88vh;transform: scale(0.96);transition: transform 0.3s ease}.img-lightbox.open .img-lightbox-inner{transform: scale(1)}.img-lightbox-img{display: block;max-width: 92vw;max-height: 80vh;width: auto;height: auto;object-fit: contain;border-radius: 2px;box-shadow: 0 20px 60px rgba(0,0,0,0.5)}.img-lightbox-caption{text-align: center;color: white;font-family: 'Noto Serif JP', serif;font-size: 18px;letter-spacing: 0.15em;margin-top: 18px}.img-lightbox-close{position: absolute;top: -44px;right: 0;width: 40px;height: 40px;background: none;border: none;color: white;font-size: 32px;line-height: 1;cursor: pointer;opacity: 0.8;transition: opacity 0.2s}.img-lightbox-close:hover{opacity: 1}@media (max-width: 768px){.img-lightbox-close{top: -40px;font-size: 28px}.img-lightbox-caption{font-size: 16px}}.strip-item{padding: 30px 30px;border-right: 1px solid rgba(255,255,255,0.08);text-align: center;transition: background 0.3s}.strip-icon{font-size: 40px;margin-bottom: 9px;display: block}.strip-desc{font-size: 16px;color: rgba(255,255,255,0.7);letter-spacing: 0.06em;line-height: 1.7}.plans{padding: 100px 0;background: white}.plan-notice{margin-top: 40px;background: #fffaf0;border: 2px solid var(--gold);border-radius: 14px;padding: 32px 40px}.plan-notice-head{display: flex;align-items: center;gap: 12px;margin-bottom: 16px;padding-bottom: 14px;border-bottom: 1px dashed rgba(201,168,76,0.5)}.plan-notice-icon{flex-shrink: 0;width: 36px;height: 36px;border-radius: 50%;background: var(--gold);display: inline-flex;align-items: center;justify-content: center}.plan-notice-icon svg{width: 20px;height: 20px;fill: #fff}.plan-notice-title{font-family: 'Noto Serif JP', serif;font-size: 21px;font-weight: 600;color: #8a6d1a;letter-spacing: 0.06em;line-height: 1.5}.plan-notice-lead{font-size: 15.5px;line-height: 2;color: var(--ink);letter-spacing: 0.04em;margin-bottom: 18px}.plan-notice-lead strong{font-weight: 500;color: #8a6d1a;background: linear-gradient(transparent 68%, rgba(201,168,76,0.3) 68%)}.plan-notice-list{display: grid;grid-template-columns: repeat(3, 1fr);gap: 10px 20px;list-style: none;margin-bottom: 18px}.plan-notice-list li{position: relative;padding-left: 24px;font-size: 15px;line-height: 1.7;color: var(--ink);letter-spacing: 0.03em}.plan-notice-list li::before{content: "";position: absolute;left: 4px;top: 0.55em;width: 8px;height: 8px;background: var(--gold);border-radius: 50%}.plan-notice-list li small{display: block;font-size: 12.5px;color: var(--gray);letter-spacing: 0}.plan-notice-foot{font-size: 14px;color: var(--gray);line-height: 1.9;letter-spacing: 0.03em;padding-top: 14px;border-top: 1px dashed rgba(201,168,76,0.5)}@media (max-width: 768px){.plan-notice{padding: 24px 20px;margin-top: 30px}.plan-notice-title{font-size: 17px}.plan-notice-icon{width: 30px;height: 30px}.plan-notice-icon svg{width: 17px;height: 17px}.plan-notice-lead{font-size: 14.5px}.plan-notice-list{grid-template-columns: 1fr;gap: 8px}.plan-notice-list li{font-size: 14.5px}.plan-notice-foot{font-size: 13px}}.plan-pamphlet{margin-top: 20px;background: linear-gradient(135deg, var(--sky) 0%, var(--off-white) 100%);border: 1px solid var(--gray-light);border-radius: 14px;padding: 30px 40px;display: flex;align-items: center;justify-content: space-between;gap: 28px;flex-wrap: wrap}.plan-pamphlet-text{flex: 1 1 380px;min-width: 260px}.plan-pamphlet-lead{font-family: 'Noto Serif JP', serif;font-size: 20px;font-weight: 500;color: var(--royal);letter-spacing: 0.08em;margin-bottom: 6px;position: relative;padding-left: 16px}.plan-pamphlet-lead::before{content: "";position: absolute;left: 0;top: 0.35em;width: 4px;height: 1em;background: var(--gold);border-radius: 2px}.plan-pamphlet-sub{font-size: 14px;color: var(--gray);letter-spacing: 0.04em;line-height: 1.8;padding-left: 16px}.plan-pamphlet-btn{flex: 0 0 auto;display: inline-flex;align-items: center;gap: 12px;background: var(--royal);color: #fff;text-decoration: none;font-size: 16px;font-weight: 500;letter-spacing: 0.06em;padding: 16px 32px;border-radius: 999px;box-shadow: 0 6px 18px rgba(58,143,196,0.28);transition: background 0.25s, transform 0.2s, box-shadow 0.25s}.plan-pamphlet-btn:hover{background: #2f7aa9;transform: translateY(-2px);box-shadow: 0 10px 24px rgba(58,143,196,0.36)}.plan-pamphlet-btn small{font-size: 12px;margin-left: 4px;opacity: 0.9}.plan-pamphlet-icon{width: 20px;height: 20px;fill: #fff;flex-shrink: 0}@media (max-width: 768px){.plan-pamphlet{padding: 24px 20px;flex-direction: column;align-items: stretch;text-align: center;gap: 18px}.plan-pamphlet-text{flex: 0 0 auto;min-width: 0}.plan-pamphlet-lead{padding-left: 0;font-size: 17px;letter-spacing: 0.02em}.plan-pamphlet-lead::before{display: none}.plan-pamphlet-sub{padding-left: 0;font-size: 13px}.plan-pamphlet-btn{justify-content: center;padding: 15px 20px;font-size: 15px}}.plans-grid{display: grid;grid-template-columns: repeat(4, 1fr);gap: 20px}.plan-card{border: 1px solid var(--gray-light);padding: 32px 24px;position: relative;transition: all 0.3s;background: white}.plan-name{font-family: 'Noto Serif JP', serif;font-size: 20px;font-weight: 400;letter-spacing: 0.1em;margin-bottom: 20px;color: #3a8fc4;line-height: 1.6}.voice{background: #f4fafd;padding: 80px 0}.voice-carousel-wrap{display: flex;align-items: center;gap: 16px;max-width: 1100px;margin: 0 auto;padding: 0 40px}.voice-carousel-viewport{flex: 1;overflow: hidden}.voice-carousel-track{display: flex;gap: 24px;transition: transform 0.5s cubic-bezier(0.4,0,0.2,1)}.voice-item{flex: 0 0 calc(33.333% - 16px);min-width: calc(33.333% - 16px)}.voice-card{background: white;border-radius: 8px;overflow: hidden;box-shadow: 0 2px 16px rgba(58,143,196,0.1);transition: transform 0.3s, box-shadow 0.3s;display: flex;flex-direction: column}.voice-card:hover{transform: translateY(-4px);box-shadow: 0 8px 28px rgba(58,143,196,0.18)}.voice-img-wrap{width: 100%;aspect-ratio: 4/3;background: #c2dff0;overflow: hidden}.voice-img-wrap img{width: 100%;height: 100%;object-fit: cover;display: block}.voice-img-placeholder{width: 100%;height: 100%;display: flex;flex-direction: column;align-items: center;justify-content: center;color: #7ab3cc;font-size: 12px;gap: 8px;min-height: 160px}.voice-img-placeholder svg{width: 40px;height: 40px;fill: #7ab3cc;opacity: 0.6}.voice-body{padding: 20px 22px 22px;display: flex;flex-direction: column;flex: 1;background: #e8f4fb}.voice-quote{font-size: 32px;color: #3a8fc4;opacity: 0.25;line-height: 1;font-family: Georgia, serif;margin-bottom: 4px}.voice-comment{font-size: 13px;color: #333;line-height: 1.85;flex: 1;letter-spacing: 0.03em;margin-bottom: 14px}.voice-footer{display: flex;align-items: center;justify-content: space-between;border-top: 1px solid rgba(58,143,196,0.2);padding-top: 12px}.voice-name{font-size: 13px;font-weight: 500;color: #1a2a36;letter-spacing: 0.08em}.voice-plan{font-size: 11px;color: white;background: #3a8fc4;padding: 3px 10px;border-radius: 20px;letter-spacing: 0.05em}.voice-prev, .voice-next{background: #3a8fc4;color: white;border: none;width: 44px;height: 44px;border-radius: 50%;font-size: 18px;cursor: pointer;flex-shrink: 0;transition: background 0.3s;display: flex;align-items: center;justify-content: center}.voice-prev:hover, .voice-next:hover{background: #2a7ab0}.voice-dots{display: flex;justify-content: center;gap: 8px;margin-top: 24px}.voice-dot{width: 8px;height: 8px;border-radius: 50%;background: rgba(58,143,196,0.3);cursor: pointer;transition: all 0.3s;border: none}.voice-dot.active{background: #3a8fc4;width: 24px;border-radius: 4px}.voice-notice{text-align: center;margin-top: 20px;font-size: 12px;color: #6b7f8a;letter-spacing: 0.08em}@media (max-width: 768px){.voice-carousel-wrap{padding: 0 16px;gap: 10px}.voice-item{flex: 0 0 100%;min-width: 100%}}@media (max-width: 1024px) and (min-width: 769px){.voice-item{flex: 0 0 calc(50% - 12px);min-width: calc(50% - 12px)}.plans-grid{grid-template-columns: repeat(2, 1fr);gap: 16px}}.faq-category-title::before{content: '';display: block;width: 4px;height: 20px;background: rgb(201,168,76);flex-shrink: 0}.faq-a-icon{font-family: 'Cormorant Garamond', serif;font-size: 22px;font-weight: 400;color: #dda300;font-style: italic;display: inline-block;margin-right: 10px}.why{padding: 50px 0;background: var(--off-white)}.why-num{font-family: 'Cormorant Garamond', serif;font-size: 56px;font-weight: 300;color: var(--royal-light);opacity: 0.2;line-height: 1;font-style: italic;margin-bottom: 16px}.flow-num{font-family: 'Cormorant Garamond', serif;font-size: 48px;font-weight: 300;color: var(--gold);opacity: 0.5;line-height: 1;font-style: italic;flex-shrink: 0}.flow-desc{font-size: 15px;font-weight: 300;color: rgba(255,255,255,0.55);line-height: 1.9;letter-spacing: 0.06em}.contact-tel-num{font-family: 'Noto Serif JP', serif;font-size: 48px;font-weight: 400;color: white;letter-spacing: 0.03em;line-height: 1;margin-bottom: 6px}.btn-gold-full{display: flex;align-items: center;justify-content: center;gap: 10px;background: rgb(201,168,76);color: white;padding: 18px;font-family: 'Noto Sans JP', sans-serif;font-size: 14px;font-weight: 500;letter-spacing: 0.15em;text-decoration: none;transition: all 0.3s}.btn-line-full{display: flex;align-items: center;justify-content: center;gap: 12px;background: #06C755;color: white;padding: 18px;font-family: 'Noto Sans JP', sans-serif;font-size: 18px;font-weight: 500;letter-spacing: 0.12em;text-decoration: none;transition: background 0.3s}.line-coupon-banner{background: linear-gradient(135deg, #f0faf3 0%, #e6f7ea 100%);border: 2px solid #06c755;border-radius: 10px;padding: 22px 20px 18px;text-align: center}.line-coupon-badge{display: inline-block;background: #06c755;color: white;font-size: 18px;font-weight: 500;letter-spacing: 0.1em;padding: 8px 30px;border-radius: 20px;margin-bottom: 14px}.line-coupon-text{font-size: 20px;color: #1a2a36;line-height: 1.9;letter-spacing: 0.05em;font-weight: 400}.line-coupon-pct{font-size: 38px;font-weight: 700;color: #06c755;font-family: 'Oswald', sans-serif;letter-spacing: 0.05em}.line-coupon-note{font-size: 12px;color: #6b7f8a;margin-top: 10px;letter-spacing: 0.05em;border-top: 1px dashed #b2dfc0;padding-top: 10px}.footer-links a{font-size: 14px;font-weight: 300;color: rgba(255,255,255,0.9);text-decoration: none;letter-spacing: 0.1em;transition: color 0.3s}.copyright{font-family: 'Cormorant Garamond', serif;font-size: 14px;color: rgba(255,255,255,0.3);letter-spacing: 0.1em}@media (max-width: 768px){.header-inner{padding: 0 20px}nav{display: none}.header-tel{display: none}.hamburger{display: flex}.hero-inner{grid-template-columns: 1fr;padding: 100px 20px 60px;gap: 32px}.hero-card{padding: 24px 20px;border-radius: 4px}.hero-card-label{font-size: 15px;font-weight: 400;color: rgba(255,255,255,0.95);letter-spacing: 1.5px;margin-bottom: 14px;font-style: normal}.hero-card-tel-wrap{display: flex;align-items: center;gap: 10px;margin-bottom: 6px;flex-wrap: nowrap}.hero-card-tel-icon{width: 36px;height: 36px}.hero-card-tel-icon a{width: 36px;height: 36px}.hero-card-tel-icon a svg{width: 18px;height: 18px}.hero-card-tel-icon::before, .hero-card-tel-icon::after{width: 36px;height: 36px}.hero-card-tel{font-family: 'Oswald', Arial, sans-serif;font-size: 53px;font-weight: 900;color: white;letter-spacing: 10.6px;line-height: 1;margin-bottom: 0;text-decoration: none;white-space: nowrap;flex-shrink: 0;display: inline-block;transform: scaleX(0.7);transform-origin: left center}.hero-card-badges{display: flex;flex-direction: row;gap: 7px;margin-top: 13px;margin-bottom: 0}.hero-card-badge{background: rgba(255,255,255,0.25);color: white;font-size: 16px;font-weight: 400;padding: 8px 25px;border-radius: 3px;letter-spacing: 0.05em;line-height: 1.4;text-align: center;white-space: nowrap}.hero-card-hours{font-size: 13px;color: rgba(255,255,255,0.85);margin-top: 8px;margin-bottom: 24px;letter-spacing: 0.1em}.hero-card-features{display: flex;flex-direction: column;gap: 8px}.hero-card-feature{display: flex;align-items: center;gap: 8px;font-size: 14px;color: rgba(255,255,255,0.85);letter-spacing: 0.84px;font-weight: 400}.hero-card-tel-btn{display: block;text-align: center;background: rgb(201,168,76);color: white;padding: 16px;font-size: 14px;font-weight: 500;text-decoration: none;letter-spacing: 0.1em;transition: background 0.3s, color 0.3s;margin-top: 32px;border-radius: 0}.section-wrap{padding: 0 20px}.about{padding: 72px 0}.about-inner{grid-template-columns: 1fr;gap: 48px}.portrait-frame{width: 220px;height: 280px}.feature-strip-inner{grid-template-columns: repeat(2, 1fr);padding: 0 20px}.plans{padding: 72px 0}.plans-grid{grid-template-columns: 1fr}.why{padding: 72px 0}.why-grid{grid-template-columns: 1fr}.flow{padding: 72px 0}.flow-list{grid-template-columns: 1fr}.contact{padding: 72px 0}.contact-grid{grid-template-columns: 1fr}.contact-card{padding: 36px 28px}.info{padding: 72px 0}.info-inner{grid-template-columns: 1fr;gap: 32px}.info-table{font-size: 14px}.info-table td{font-size: 14px;padding: 12px 0}.info-table td:first-child{font-size: 12px;width: 76px}footer{padding: 48px 0 28px}.footer-inner{padding: 0 20px}.footer-top{flex-direction: column;gap: 28px}.footer-bottom{flex-direction: column;gap: 12px;text-align: center}.section-head{margin-bottom: 40px}.section-num{font-size: 56px}.map-wrap{min-height: 260px;aspect-ratio: 4/3}}@media (max-width: 480px){.feature-strip-inner{grid-template-columns: 1fr}.hero-btns{flex-direction: column}.btn-white, .btn-outline-white{text-align: center;justify-content: center}.hero-card-tel{font-family: 'Oswald', Arial, sans-serif;font-size: 53px;font-weight: 900;color: white;letter-spacing: 10.6px;line-height: 1;margin-bottom: 0;text-decoration: none;white-space: nowrap;flex-shrink: 0;display: inline-block;transform: scaleX(0.7);transform-origin: left center}.hero-card-tel-wrap{display: flex;align-items: center;gap: 10px;margin-bottom: 6px;flex-wrap: nowrap}}.hero{min-height: 100vh;background: url('../img/main_img.jpg') center center / cover no-repeat;position: relative;overflow: hidden;display: flex;align-items: center;isolation: isolate}.hero-overlay{position: absolute;inset: 0;background: linear-gradient(135deg, rgba(30,90,150,0.82) 0%, rgba(50,120,180,0.72) 50%, rgba(80,150,210,0.65) 100%);z-index: 0}.hero-bg-pattern{position: absolute;inset: 0;z-index: 0;opacity: 0.04;background-image: radial-gradient(circle at 20% 50%, white 1px, transparent 1px), radial-gradient(circle at 80% 20%, white 1px, transparent 1px), radial-gradient(circle at 60% 80%, white 1px, transparent 1px);background-size: 60px 60px, 40px 40px, 80px 80px}.hero-flower-bg{z-index: 0;position: absolute;right: -100px;top: -100px;width: 700px;height: 700px;border-radius: 50%;background: radial-gradient(circle, rgba(255,255,255,0.06) 0%, transparent 70%)}.hero-flower-bg2{z-index: 0;position: absolute;left: -150px;bottom: -150px;width: 500px;height: 500px;border-radius: 50%;background: radial-gradient(circle, rgba(201,168,76,0.08) 0%, transparent 70%)}.petal{position: absolute;border-radius: 50% 0 50% 0;opacity: 0.06;background: white;z-index: 0}.petal-1{width: 120px;height: 120px;top: 15%;right: 25%;transform: rotate(30deg)}.petal-2{width: 80px;height: 80px;top: 25%;right: 18%;transform: rotate(70deg)}.petal-3{width: 100px;height: 100px;bottom: 25%;right: 30%;transform: rotate(-20deg)}.petal-4{width: 60px;height: 60px;top: 60%;right: 15%;transform: rotate(110deg)}.petal-5{width: 90px;height: 90px;top: 10%;left: 15%;transform: rotate(45deg);opacity: 0.04}.hero-inner{max-width: 1200px;margin: 0 auto;padding: 50px 40px 80px;display: grid;grid-template-columns: 1fr 420px;gap: 80px;align-items: center;position: relative;z-index: 1;width: 100%}.hero-catch{font-family: 'Cormorant Garamond', serif;font-size: 15px;font-weight: 300;color: var(--gold-light);letter-spacing: 0.4em;text-transform: uppercase;font-style: italic;margin-bottom: 16px;display: flex;align-items: center;gap: 16px}.hero-catch::before{content: '';display: block;width: 32px;height: 1px;background: var(--gold-light);opacity: 0.6}.hero-tagline{font-family: 'Noto Serif JP', serif;font-size: clamp(14px, 2vw, 17px);font-weight: 300;color: rgba(255,255,255,0.7);letter-spacing: 0.2em;margin-bottom: 24px}.hero-title{font-family: 'Noto Serif JP', serif;font-size: clamp(32px, 4.5vw, 56px);font-weight: 500;color: white;line-height: 1.65;letter-spacing: 0.06em;margin-bottom: 40px}.hero-title em{font-style: normal;color: var(--gold-light)}.hero-desc{font-size: 16px;font-weight: 300;color: rgba(255,255,255,0.9);line-height: 2.2;letter-spacing: 0.08em;margin-bottom: 48px;max-width: 440px}.hero-btns{display: flex;gap: 16px;flex-wrap: wrap}.btn-white{display: inline-flex;align-items: center;gap: 10px;background: white;color: #3a8fc4;padding: 16px 36px;font-family: 'Noto Sans JP', sans-serif;font-size: 14px;font-weight: 500;letter-spacing: 0.12em;text-decoration: none;transition: all 0.3s;box-shadow: 0 4px 20px rgba(0,0,0,0.15)}.btn-white:hover{background: var(--gold-light);color: #3a8fc4;transform: translateY(-2px);box-shadow: 0 8px 28px rgba(0,0,0,0.2)}.btn-outline-white{display: inline-flex;align-items: center;gap: 10px;background: transparent;border: 1px solid rgba(255,255,255,0.5);color: white;padding: 15px 32px;font-family: 'Noto Sans JP', sans-serif;font-size: 14px;font-weight: 300;letter-spacing: 0.12em;text-decoration: none;transition: all 0.3s}.btn-outline-white:hover{border-color: var(--gold-light);color: var(--gold-light);background: rgba(201,168,76,0.08)}.hero-card{background: rgba(255,255,255,0.08);backdrop-filter: blur(20px);-webkit-backdrop-filter: blur(20px);border: 1px solid rgba(255,255,255,0.15);padding: 36px 40px;position: relative;border-radius: 4px}.hero-card::before{content: '';position: absolute;top: 0;left: 0;width: 3px;height: 100%;background: linear-gradient(to bottom, var(--gold), transparent)}.hero-card-label{font-family: 'Noto Sans JP', sans-serif;font-size: 15px;color: rgba(255,255,255,0.95);letter-spacing: 0.1em;margin-bottom: 14px;font-style: normal;font-weight: 400}.hero-card-tel-wrap{display: flex;align-items: center;gap: 10px;margin-bottom: 6px;flex-wrap: nowrap}.hero-card-tel-icon{position: relative;width: 44px;height: 44px;flex-shrink: 0}.hero-card-tel-icon a{display: flex;align-items: center;justify-content: center;width: 44px;height: 44px;background: #3a8fc4;border-radius: 50%;text-decoration: none;position: relative;z-index: 1}.hero-card-tel-icon a svg{width: 22px;height: 22px;fill: white}.hero-card-tel-icon::before, .hero-card-tel-icon::after{content: '';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%) scale(1);width: 44px;height: 44px;border-radius: 50%;background: rgba(58,143,196,0.25);animation: heroTelRing 2s ease-out infinite}.hero-card-tel-icon::after{animation-delay: 0.6s}@keyframes heroTelRing{0%{transform: translate(-50%,-50%) scale(1);opacity: 0.8}100%{transform: translate(-50%,-50%) scale(1.7);opacity: 0}}.hero-card-tel{font-family: 'Oswald', 'Arial', sans-serif;font-size: 53px;font-weight: 900;color: white;letter-spacing: 0.2em;line-height: 0.1;transform: scaleX(0.7);transform-origin: left center;display: inline-block;margin-bottom: 0;text-decoration: none;white-space: nowrap;flex-shrink: 0;font-stretch: condensed}.hero-card-badges{display: flex;flex-direction: row;gap: 7px;flex-shrink: 0;margin-top: 13px}.hero-card-badge{background: rgba(255,255,255,0.25);color: white;font-size: 16px;font-weight: 400;padding: 8px 25px;border-radius: 3px;letter-spacing: 0.05em;line-height: 1.4;text-align: center;white-space: nowrap}.hero-card-hours{font-size: 13px;color: rgba(255,255,255,0.85);letter-spacing: 0.1em;margin-bottom: 24px;margin-top: 8px}.hero-card-divider{width: 100%;height: 1px;background: rgba(255,255,255,0.15);margin-bottom: 20px}.hero-card-features{display: flex;flex-direction: column;gap: 10px}.hero-card-feature{display: flex;align-items: center;gap: 12px;font-size: 14px;font-weight: 100;color: rgba(255,255,255,0.85);letter-spacing: 0.06em}.feature-dot{width: 6px;height: 6px;border-radius: 50%;background: var(--gold);flex-shrink: 0}.hero-card-tel-btn{display: block;margin-top: 32px;background: var(--gold);color: white;padding: 16px;text-align: center;font-family: 'Noto Sans JP', sans-serif;font-size: 14px;font-weight: 500;letter-spacing: 0.15em;text-decoration: none;transition: background 0.3s}.hero-card-tel-btn:hover{background: var(--gold-light);color: #3a8fc4}.section-wrap{max-width: 1200px;margin: 0 auto;padding: 0 40px}.section-head{display: flex;align-items: flex-end;gap: 24px;margin-bottom: 64px}.section-num{font-family: 'Cormorant Garamond', serif;font-size: 80px;font-weight: 300;color: #0081cc;opacity: 0.4;line-height: 0.8;font-style: italic}.section-title-group{display: flex;flex-direction: column;gap: 6px;padding-bottom: 4px}.section-en{font-family: 'Cormorant Garamond', serif;font-size: 14px;color: var(--royal-light);letter-spacing: 0.35em;text-transform: uppercase;font-style: italic}.section-ja{font-family: 'Noto Serif JP', serif;font-size: clamp(22px, 3vw, 30px);font-weight: 400;color: #3a8fc4;letter-spacing: 0.08em}.about{padding: 100px 0;background: var(--off-white)}.about-inner{display: grid;grid-template-columns: 1fr;gap: 80px;align-items: center}.about-portrait{position: relative;display: flex;justify-content: center}.portrait-frame{width: 280px;height: 360px;border-radius: 50% 50% 50% 50% / 40% 40% 60% 60%;overflow: hidden;background: linear-gradient(135deg, var(--sky-deep), var(--sky));border: 4px solid white;box-shadow: 0 20px 60px rgba(26,58,107,0.15);display: flex;align-items: center;justify-content: center;position: relative}.portrait-placeholder{font-family: 'Noto Serif JP', serif;font-size: 14px;color: var(--royal-light);letter-spacing: 0.1em;text-align: center;padding: 20px}.portrait-deco{position: absolute;top: -20px;right: -20px;width: 120px;height: 120px;border: 2px solid var(--royal-light);border-radius: 50%;opacity: 0.2}.portrait-deco2{position: absolute;bottom: -30px;left: -30px;width: 160px;height: 160px;border: 2px solid var(--gold);border-radius: 50%;opacity: 0.15}.about-name-tag{position: absolute;bottom: -16px;left: 50%;transform: translateX(-50%);background: #3a8fc4;color: white;padding: 10px 28px;font-family: 'Noto Serif JP', serif;font-size: 14px;font-weight: 400;letter-spacing: 0.15em;white-space: nowrap;box-shadow: 0 4px 16px rgba(26,58,107,0.3)}.about-text p{font-size: 17px;font-weight: 300;color: #374151;line-height: 2.2;letter-spacing: 0.06em;margin-bottom: 20px}.about-highlight{background: linear-gradient(135deg, #3a8fc4 0%, #55a8d8 100%);color: white;padding: 28px 32px;margin-top: 32px;border-left: 4px solid var(--gold)}.about-highlight p{color: rgba(255,255,255,0.85);font-size: 16px;margin: 0;line-height: 1.9}.scale{padding: 100px 0;background: white}.scale-grid{display: grid;grid-template-columns: repeat(4, 1fr);gap: 24px}.scale-card{position: relative;overflow: hidden;border-radius: 2px;box-shadow: 0 4px 20px rgba(26,58,107,0.1);transition: transform 0.3s, box-shadow 0.3s;cursor: pointer}.scale-card:hover{transform: translateY(-6px);box-shadow: 0 16px 40px rgba(26,58,107,0.18)}.scale-card-img{width: 100%;aspect-ratio: 3/4;object-fit: cover;display: block;transition: transform 0.4s ease}.scale-card:hover .scale-card-img{transform: scale(1.05)}.scale-card-overlay{position: absolute;bottom: 0;left: 0;right: 0;background: linear-gradient(to top, rgba(26,58,107,0.88) 0%, rgba(26,58,107,0.3) 60%, transparent 100%);padding: 32px 20px 24px}.scale-card-name{font-family: 'Noto Serif JP', serif;font-size: 20px;font-weight: 500;color: white;letter-spacing: 0.15em;margin-bottom: 8px}.scale-card-desc{font-size: 12px;font-weight: 300;color: rgba(255,255,255,0.8);letter-spacing: 0.08em;line-height: 1.7}.scale-card-badge{position: absolute;top: 16px;left: 16px;background: var(--gold);color: white;font-family: 'Cormorant Garamond', serif;font-size: 11px;font-style: italic;letter-spacing: 0.2em;padding: 4px 12px}@media (max-width: 768px){.scale-grid{grid-template-columns: repeat(2, 1fr);gap: 16px}}@media (max-width: 480px){.scale-grid{grid-template-columns: 1fr}}.feature-strip{background: #3a8fc4;padding: 0}.feature-strip-inner{max-width: 1200px;margin: 0 auto;padding: 0 40px;display: grid;grid-template-columns: repeat(4, 1fr);border-left: 1px solid rgba(255,255,255,0.08)}.strip-item{padding: 40px 32px;border-right: 1px solid rgba(255,255,255,0.08);text-align: center;transition: background 0.3s}.strip-item:hover{background: rgba(255,255,255,0.04)}.strip-icon{font-size: 28px;margin-bottom: 12px;display: block}.strip-title{font-family: 'Noto Serif JP', serif;font-size: 20px;font-weight: 400;color: white;letter-spacing: 0.1em;margin-bottom: 8px}.strip-desc{font-size: 14px;color: rgba(255,255,255,0.7);letter-spacing: 0.06em;line-height: 1.7}.plans{padding: 50px 0;background: white}.plans-grid{display: grid;grid-template-columns: repeat(3, 1fr);gap: 24px}.plan-card{border: 1px solid var(--gray-light);padding: 40px 32px;position: relative;transition: all 0.3s;background: white}.plan-card:hover{border-color: var(--royal-light);box-shadow: 0 16px 48px rgba(26,58,107,0.1);transform: translateY(-4px)}.plan-card.featured{background: linear-gradient(135deg, #3a8fc4 0%, #55a8d8 100%);border-color: transparent}.plan-card.featured:hover{box-shadow: 0 20px 60px rgba(26,58,107,0.3)}.plan-badge{display: inline-block;font-family: 'Cormorant Garamond', serif;font-size: 10px;color: var(--royal-light);border: 1px solid var(--royal-light);padding: 3px 12px;letter-spacing: 0.25em;text-transform: uppercase;font-style: italic;margin-bottom: 20px}.plan-card.featured .plan-badge{color: var(--gold-light);border-color: var(--gold)}.plan-name{font-family: 'Noto Serif JP', serif;font-size: 22px;font-weight: 400;letter-spacing: 0.1em;margin-bottom: 24px;color: #3a8fc4}.plan-card.featured .plan-name{color: white}.plan-price-wrap{margin-bottom: 28px}.plan-price-label{font-size: 13px;color: var(--gray);letter-spacing: 0.1em;margin-bottom: 4px}.plan-card.featured .plan-price-label{color: rgba(255,255,255,0.55)}.plan-price{font-family: 'Cormorant Garamond', serif;font-size: 44px;font-weight: 400;color: var(--royal-mid);line-height: 1}.plan-card.featured .plan-price{color: var(--gold-light)}.plan-price-unit{font-size: 15px;color: var(--gray);letter-spacing: 0.08em}.plan-card.featured .plan-price-unit{color: rgba(255,255,255,0.55)}.plan-divider{width: 32px;height: 1px;background: var(--royal-light);opacity: 0.3;margin-bottom: 24px}.plan-card.featured .plan-divider{background: var(--gold);opacity: 0.5}.plan-features{list-style: none;display: flex;flex-direction: column;gap: 12px}.plan-features li{display: flex;align-items: flex-start;gap: 10px;font-size: 15px;color: #374151;letter-spacing: 0.06em;line-height: 1.7}.plan-card.featured .plan-features li{color: rgba(255,255,255,0.8)}.plan-features li::before{content: '';width: 6px;height: 6px;border-radius: 50%;background: var(--royal-light);flex-shrink: 0;margin-top: 6px}.plan-card.featured .plan-features li::before{background: var(--gold)}.faq{padding: 100px 0;background: white}.faq-categories{display: flex;flex-direction: column;gap: 48px}.faq-category-title{font-family: 'Noto Serif JP', serif;font-size: 18px;font-weight: 500;color: white;background: linear-gradient(135deg, #3a8fc4 0%, #55a8d8 100%);padding: 14px 24px;letter-spacing: 0.12em;margin-bottom: 4px;display: flex;align-items: center;gap: 12px}.faq-category-title::before{content: '';display: block;width: 4px;height: 20px;background: var(--gold);flex-shrink: 0}.faq-list{display: flex;flex-direction: column;border-left: 1px solid var(--gray-light);border-right: 1px solid var(--gray-light)}.faq-item{border-bottom: 1px solid var(--gray-light);overflow: hidden}.faq-question{display: flex;align-items: flex-start;gap: 16px;padding: 22px 24px;cursor: default;background: white}.faq-q-icon{font-family: 'Cormorant Garamond', serif;font-size: 22px;font-weight: 400;color: #3a8fc4;font-style: italic;flex-shrink: 0;line-height: 1.3}.faq-q-text{font-size: 16px;font-weight: 500;color: var(--ink);letter-spacing: 0.06em;line-height: 1.7;flex: 1;padding-top: 2px}.faq-toggle{display: none}.faq-answer{display: block;padding: 0 24px 22px 58px;background: var(--off-white)}.faq-a-icon{font-family: 'Cormorant Garamond', serif;font-size: 22px;font-weight: 400;color: var(--gold);font-style: italic;display: inline-block;margin-right: 10px}.faq-a-text{display: inline;font-size: 15px;font-weight: 300;color: #374151;letter-spacing: 0.06em;line-height: 2}.faq-table{width: 100%;border-collapse: collapse;margin-top: 16px;font-size: 14px}.faq-table th{background: #3a8fc4;color: white;padding: 10px 16px;text-align: left;letter-spacing: 0.08em;font-weight: 400}.faq-table td{padding: 10px 16px;border-bottom: 1px solid var(--gray-light);color: #374151;letter-spacing: 0.06em;line-height: 1.7}.faq-table tr:nth-child(even) td{background: white}.faq-table tr:nth-child(odd) td{background: var(--sky)}@media (max-width: 768px){.faq-answer{padding: 0 16px 18px 16px}.faq-question{padding: 18px 16px}.faq-table{font-size: 12px}.faq-table td, .faq-table th{padding: 8px 10px}}.why{padding: 100px 0;background: var(--off-white)}.why-grid{display: grid;grid-template-columns: repeat(3, 1fr);gap: 2px;background: var(--gray-light)}.why-item{background: white;padding: 48px 36px;transition: all 0.3s;position: relative;overflow: hidden}.why-item::before{content: '';position: absolute;top: 0;left: 0;width: 100%;height: 3px;background: linear-gradient(to right, var(--royal), var(--royal-light));transform: scaleX(0);transition: transform 0.3s}.why-item:hover::before{transform: scaleX(1)}.why-item:hover{box-shadow: 0 8px 32px rgba(26,58,107,0.08)}.why-num{font-family: 'Cormorant Garamond', serif;font-size: 56px;font-weight: 300;color: #0081cc;opacity: 0.2;line-height: 1;font-style: italic;margin-bottom: 16px}.why-title{font-family: 'Noto Serif JP', serif;font-size: 19px;font-weight: 500;color: #3a8fc4;letter-spacing: 0.1em;margin-bottom: 14px}.why-desc{font-size: 15px;font-weight: 300;color: #4b5563;line-height: 2;letter-spacing: 0.06em}.flow{padding: 100px 0;background: #3a8fc4;position: relative;overflow: hidden}.flow::before{content: '';position: absolute;inset: 0;background: radial-gradient(ellipse at 100% 0%, rgba(201,168,76,0.06) 0%, transparent 60%)}.flow .section-num{color: rgba(255,255,255,0.9);opacity: 1}.flow .section-en{color: var(--gold-light)}.flow .section-ja{color: white}.flow-list{display: grid;grid-template-columns: repeat(2, 1fr);gap: 2px;background: rgba(255,255,255,0.06);position: relative}.flow-item{background: rgba(255,255,255,0.03);padding: 40px 36px;display: flex;gap: 24px;align-items: flex-start;border: 1px solid rgba(255,255,255,0.05);transition: background 0.3s}.flow-item:hover{background: rgba(255,255,255,0.06)}.flow-num{font-family: 'Cormorant Garamond', serif;font-size: 48px;font-weight: 300;color: #ffd766;opacity: 0.5;line-height: 1;font-style: italic;flex-shrink: 0}.flow-content{}.flow-title{font-family: 'Noto Serif JP', serif;font-size: 19px;font-weight: 400;color: white;letter-spacing: 0.1em;margin-bottom: 10px}.flow-desc{font-size: 15px;font-weight: 300;color: rgba(255, 255, 255, 0.83);line-height: 1.9;letter-spacing: 0.06em}.contact{padding: 50px 0;background: white}.contact-grid{display: grid;grid-template-columns: 1fr;gap: 32px}.contact-card{padding: 52px 44px;position: relative}.contact-card-tel{background: linear-gradient(135deg, #3a8fc4 0%, #55a8d8 100%);text-align: center}.contact-card-tel .btn-gold-full{max-width: 480px;margin: 0 auto}.contact-card-sns{background: var(--off-white);border: 1px solid var(--gray-light)}.contact-label{font-family: 'Cormorant Garamond', serif;font-size: 11px;letter-spacing: 0.35em;text-transform: uppercase;font-style: italic;margin-bottom: 16px}.contact-card-tel .contact-label{color: var(--gold-light)}.contact-card-sns .contact-label{color: var(--royal-light)}.contact-title{font-family: 'Noto Serif JP', serif;font-size: 22px;font-weight: 400;letter-spacing: 0.1em;margin-bottom: 12px}.contact-card-tel .contact-title{color: white}.contact-card-sns .contact-title{color: #3a8fc4}.contact-desc{font-size: 15px;font-weight: 300;line-height: 2;letter-spacing: 0.06em;margin-bottom: 36px}.contact-card-tel .contact-desc{color: rgba(255,255,255,0.6)}.contact-card-sns .contact-desc{color: var(--gray)}.contact-tel-num{font-family: 'Oswald', 'Arial', sans-serif;font-size: 48px;font-weight: 400;color: white;letter-spacing: 0.03em;line-height: 1;margin-bottom: 6px}.contact-tel-note{font-size: 14px;color: rgba(255,255,255,0.92);letter-spacing: 0.1em;margin-bottom: 32px}.btn-gold-full{display: flex;align-items: center;justify-content: center;gap: 10px;background: var(--gold);color: white;padding: 18px;font-family: 'Noto Sans JP', sans-serif;font-size: 18px;font-weight: 500;letter-spacing: 0.15em;text-decoration: none;transition: all 0.3s}.btn-gold-full:hover{background: var(--gold-light);color: #3a8fc4}.sns-btns{display: flex;flex-direction: column;gap: 14px;max-width: 560px;margin: 0 auto}.contact-card-sns{text-align: center}.contact-card-sns .contact-desc{max-width: 640px;margin-left: auto;margin-right: auto}.contact-download{margin-top: 32px;background: var(--off-white);border: 1px solid var(--gray-light);padding: 48px 44px}.contact-download .contact-label{color: var(--royal-light)}.contact-download .contact-title{color: #3a8fc4}.contact-download .contact-desc{color: var(--gray);margin-bottom: 32px}.dl-btns{display: flex;justify-content: center}.btn-dl-full{display: flex;align-items: center;justify-content: center;gap: 12px;background: white;color: #3a8fc4;border: 1.5px solid #3a8fc4;padding: 20px 18px;font-family: 'Noto Sans JP', sans-serif;font-size: 14px;font-weight: 500;letter-spacing: 0.12em;text-decoration: none;transition: all 0.3s}.btn-dl-full .dl-icon{width: 20px;height: 20px;flex-shrink: 0;fill: currentColor}.btn-dl-full:hover{background: #3a8fc4;color: white}.contact-download .dl-btns .btn-dl-full{min-width: 320px}.dl-note{margin-top: 22px;font-size: 13px;font-weight: 300;line-height: 1.9;letter-spacing: 0.04em;color: var(--gray)}@media (max-width: 720px){.contact-download .dl-btns .btn-dl-full{min-width: 0;width: 100%}}.btn-line-full{display: flex;align-items: center;justify-content: center;gap: 12px;background: #06C755;color: white;padding: 18px;font-family: 'Noto Sans JP', sans-serif;font-size: 16px;font-weight: 500;letter-spacing: 0.12em;text-decoration: none;transition: background 0.3s}.btn-line-full:hover{background: #05a847}.sns-disabled{background: #aaa !important;cursor: default;pointer-events: none;opacity: 0.6}.btn-insta-full{display: flex;align-items: center;justify-content: center;gap: 12px;background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);color: white;padding: 18px;font-family: 'Noto Sans JP', sans-serif;font-size: 14px;font-weight: 500;letter-spacing: 0.12em;text-decoration: none;transition: opacity 0.3s}.btn-insta-full:hover{opacity: 0.88}.sns-icon{width: 22px;height: 22px;fill: white;flex-shrink: 0}.info{padding: 50px 0;background: var(--off-white)}.info-inner{display: grid;grid-template-columns: 1fr 1fr;gap: 64px;align-items: start}.info-table{width: 100%;border-collapse: collapse}.info-table tr{border-bottom: 1px solid var(--gray-light)}.info-table td{padding: 18px 0;font-size: 16px;font-weight: 300;letter-spacing: 0.06em;line-height: 1.8;vertical-align: top}.info-table td:first-child{color: var(--royal-light);font-size: 14px;letter-spacing: 0.12em;width: 110px;padding-top: 20px;font-weight: 400}.info-table td:last-child{color: #374151}.map-wrap{width: 100%;aspect-ratio: 16/10;min-height: 450px;background: var(--sky);display: flex;align-items: center;justify-content: center;border: 1px solid var(--gray-light)}.map-wrap iframe{width: 100%;height: 100%;border: none}.map-placeholder-text{font-family: 'Noto Serif JP', serif;font-size: 14px;color: var(--royal-light);letter-spacing: 0.1em}footer{background: #3a8fc4;padding: 64px 0 32px}.footer-inner{max-width: 1200px;margin: 0 auto;padding: 0 40px}.footer-top{display: flex;justify-content: space-between;align-items: flex-start;padding-bottom: 48px;border-bottom: 1px solid rgba(255,255,255,0.1);margin-bottom: 32px}.footer-logo-ja{font-family: 'Noto Serif JP', serif;font-size: 20px;font-weight: 500;color: white;letter-spacing: 0.15em;margin-bottom: 4px}.footer-logo-en{font-family: 'Cormorant Garamond', serif;font-size: 12px;color: var(--gold-light);letter-spacing: 0.3em;font-style: italic}.footer-links{display: flex;gap: 28px;flex-wrap: wrap}.footer-links a{font-size: 14px;font-weight: 300;color: rgba(255,255,255,0.8);text-decoration: none;letter-spacing: 0.1em;transition: color 0.3s}.footer-links a:hover{color: var(--gold-light)}.footer-bottom{display: flex;justify-content: space-between;align-items: center}.copyright{font-family: 'Cormorant Garamond', serif;font-size: 14px;color: rgba(255, 255, 255, 0.8);letter-spacing: 0.1em}.footer-tel{font-family: 'Oswald', 'Arial', sans-serif;font-size: 22px;color: var(--gold-light);letter-spacing: 0.05em}.float-btns{position: fixed;bottom: 28px;right: 28px;display: flex;flex-direction: column;gap: 10px;z-index: 99}.float-btn{width: 54px;height: 54px;border-radius: 50%;display: flex;align-items: center;justify-content: center;text-decoration: none;box-shadow: 0 4px 20px rgba(0,0,0,0.2);transition: transform 0.3s, box-shadow 0.3s}.float-btn:hover{transform: scale(1.1);box-shadow: 0 8px 28px rgba(0,0,0,0.25)}.float-line{background: #06C755}.float-line-disabled{background: #aaa !important;cursor: default;pointer-events: none;opacity: 0.6}.float-tel{background: #3a8fc4;border: 2px solid var(--gold)}.float-top{background: #888}.float-top:hover{background: #555}.float-btn svg{width: 22px;height: 22px;fill: white}.fade-up{opacity: 0;transform: translateY(24px);transition: opacity 0.7s ease, transform 0.7s ease}.fade-up.visible{opacity: 1;transform: translateY(0)}.fade-up:nth-child(2){transition-delay: 0.1s}.fade-up:nth-child(3){transition-delay: 0.2s}.fade-up:nth-child(4){transition-delay: 0.3s}@media (max-width: 768px){.header-inner{padding: 0 20px}nav{display: none}.header-tel{display: none}.hamburger{display: flex}.hero-inner{grid-template-columns: 1fr;padding: 50px 20px 60px;gap: 32px}.hero-card{padding: 24px 20px;border-radius: 4px}.hero-card-label{font-size: 15px;margin-bottom: 10px}.hero-card-tel-wrap{gap: 6px;flex-wrap: nowrap}.hero-card-tel-icon{width: 36px;height: 36px}.hero-card-tel-icon a{width: 36px;height: 36px}.hero-card-tel-icon a svg{width: 18px;height: 18px}.hero-card-tel-icon::before, .hero-card-tel-icon::after{width: 36px;height: 36px}.hero-card-tel{font-size: 24px}.hero-card-badges{gap: 4px}.hero-card-badge{font-size: 14px;padding: 3px 5px}.hero-card-hours{font-size: 15px;margin-bottom: 16px;margin-top: 6px}.hero-card-features{gap: 8px}.hero-card-feature{font-size: 14px}.hero-card-tel-btn{margin-top: 20px;padding: 14px;font-size: 13px}.section-wrap{padding: 0 20px}.about{padding: 72px 0}.about-inner{grid-template-columns: 1fr;gap: 48px}.portrait-frame{width: 220px;height: 280px}.feature-strip-inner{grid-template-columns: repeat(2, 1fr);padding: 0 20px}.plans{padding: 72px 0}.plans-grid{grid-template-columns: 1fr}.why{padding: 72px 0}.why-grid{grid-template-columns: 1fr}.flow{padding: 72px 0}.flow-list{grid-template-columns: 1fr}.contact{padding: 72px 0}.contact-grid{grid-template-columns: 1fr}.contact-card{padding: 36px 28px}.info{padding: 72px 0}.info-inner{grid-template-columns: 1fr;gap: 32px}.info-table{font-size: 14px}.info-table td{font-size: 14px;padding: 12px 0}.info-table td:first-child{font-size: 12px;width: 76px}footer{padding: 48px 0 28px}.footer-inner{padding: 0 20px}.footer-top{flex-direction: column;gap: 28px}.footer-bottom{flex-direction: column;gap: 12px;text-align: center}.section-head{margin-bottom: 40px}.section-num{font-size: 56px}.map-wrap{min-height: 260px;aspect-ratio: 4/3}}@media (max-width: 480px){.feature-strip-inner{grid-template-columns: 1fr}.hero-btns{flex-direction: column}.btn-white, .btn-outline-white{text-align: center;justify-content: center}.hero-card-tel{font-size: 40px}.hero-card-tel-wrap{align-items: center}}.voice{padding: 50px 0;background: var(--off-white)}.voice-slider{position: relative;max-width: 1200px;margin: 0 auto;overflow: hidden}.voice-track{display: flex;transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);will-change: transform}.voice-slide{min-width: 100%;box-sizing: border-box;padding: 4px}.voice-card{display: grid;grid-template-columns: 340px 1fr;gap: 40px;background: var(--white);border-radius: 18px;padding: 36px;box-shadow: 0 18px 48px rgba(58, 143, 196, 0.12);border: 1px solid var(--gray-light);align-items: start}.voice-sheet{border-radius: 12px;overflow: hidden;box-shadow: 0 8px 24px rgba(26, 42, 54, 0.12);border: 1px solid var(--gray-light);background: var(--white);cursor: zoom-in;transition: transform 0.3s ease}.voice-sheet:hover{transform: translateY(-4px)}.voice-sheet img{display: block;width: 100%;height: auto}.voice-body{display: flex;flex-direction: column;gap: 20px;padding-top: 6px}.voice-persona{display: flex;align-items: center;gap: 16px}.voice-avatar{width: 64px;height: 64px;flex-shrink: 0;border-radius: 50%;background: linear-gradient(135deg, var(--sky) 0%, var(--sky-deep) 100%);display: flex;align-items: center;justify-content: center;border: 2px solid var(--royal-light)}.voice-avatar svg{width: 40px;height: 40px}.voice-meta{display: flex;flex-direction: column;gap: 4px}.voice-name{font-family: 'Noto Serif JP', serif;font-size: 18px;font-weight: 600;color: var(--ink);letter-spacing: 0.04em}.voice-name small{font-size: 13px;font-weight: 400;color: var(--gray);margin-left: 4px}.voice-stars{display: flex;gap: 3px}.voice-stars svg{width: 18px;height: 18px}.voice-quote{position: relative;font-size: 15.5px;line-height: 2;color: #1a2a36;opacity: 1;padding-left: 22px;font-family: 'Noto Sans JP', sans-serif;font-weight: 500}.voice-quote::before{content: '\201C';position: absolute;left: -4px;top: -10px;font-family: 'Cormorant Garamond', serif;font-size: 54px;color: var(--royal-light);opacity: 0.55;line-height: 1}.voice-rating-row{display: flex;flex-wrap: wrap;gap: 10px;padding-top: 6px}.voice-tag{font-size: 12.5px;color: #256291;font-weight: 500;background: var(--sky);border: 1px solid var(--sky-deep);border-radius: 999px;padding: 5px 14px;letter-spacing: 0.03em}.voice-nav{position: absolute;top: 50%;transform: translateY(-50%);width: 48px;height: 48px;border-radius: 50%;background: var(--white);border: 1px solid var(--gray-light);box-shadow: 0 6px 18px rgba(58,143,196,0.18);display: flex;align-items: center;justify-content: center;cursor: pointer;z-index: 5;transition: all 0.25s ease}.voice-nav:hover{background: var(--royal);border-color: var(--royal)}.voice-nav:hover svg{stroke: var(--white)}.voice-nav svg{width: 20px;height: 20px;stroke: var(--royal)}.voice-prev{left: 10px}.voice-next{right: 10px}.voice-dots{display: flex;justify-content: center;gap: 10px;margin-top: 32px}.voice-dot{width: 10px;height: 10px;border-radius: 50%;background: var(--gray-light);border: none;cursor: pointer;transition: all 0.25s ease;padding: 0}.voice-dot.active{background: var(--royal);width: 28px;border-radius: 6px}.voice-lightbox{position: fixed;inset: 0;z-index: 9999;background: rgba(16, 30, 40, 0.88);display: none;align-items: center;justify-content: center;padding: 30px;cursor: zoom-out}.voice-lightbox.open{display: flex}.voice-lightbox img{max-width: 92vw;max-height: 92vh;border-radius: 8px;box-shadow: 0 20px 60px rgba(0,0,0,0.5)}.voice-lightbox-close{position: absolute;top: 24px;right: 30px;width: 44px;height: 44px;border-radius: 50%;background: rgba(255,255,255,0.15);border: 1px solid rgba(255,255,255,0.4);color: #fff;font-size: 24px;cursor: pointer;display: flex;align-items: center;justify-content: center}@media (max-width: 768px){.voice{padding: 70px 0}.voice-card{grid-template-columns: 1fr;gap: 20px;padding: 18px}.voice-sheet{max-width: 100%;width: 100%;margin: 0}.voice-sheet img{width: 100%;height: auto}.voice-prev{left: 4px}.voice-next{right: 4px}.voice-nav{width: 40px;height: 40px}.voice-quote{font-size: 14.5px;line-height: 1.9}}.voice-card.no-sheet{grid-template-columns: 1fr;max-width: 720px;margin: 0 auto}.voice-card.no-sheet .voice-quote{font-size: 16px}/* ===== 2026-10 SEO/セキュリティ/アクセシビリティ改修で追加 ===== */ img{height:auto}.hero{background-image:url('../img/main_img.jpg');background-image:image-set(url('../img/main_img.webp') type('image/webp'),url('../img/main_img.jpg') type('image/jpeg'))}@media (max-width:768px){.hero{background-image:url('../img/main_img-1280.jpg');background-image:image-set(url('../img/main_img-1280.webp') type('image/webp'),url('../img/main_img-1280.jpg') type('image/jpeg'))}}.no-js .fade-up{opacity:1;transform:none}.is-shown{opacity:1!important;transform:none!important}.plan-name-sub{font-size:15px;font-weight:300;letter-spacing:.08em}.plans-note{text-align:center;margin-top:28px;font-size:14px;color:var(--gray);letter-spacing:.1em}.faq-a-strong{color:#c0772e;font-weight:700}.info-oldname{color:#888}.skip-link{position:absolute;left:-9999px;top:0;z-index:10000;background:#1d4e77;color:#fff;padding:10px 18px;border-radius:0 0 8px 0;font-size:14px;text-decoration:none}.skip-link:focus{left:0}a:focus-visible,button:focus-visible,[role="button"]:focus-visible{outline:3px solid #e8cc80;outline-offset:3px}.scale-card[role="button"],.voice-sheet[role="button"]{cursor:zoom-in}.map-iframe{width:100%;height:100%;border:0;display:block}.pdf-size{font-size:.85em;opacity:.85;margin-left:.3em}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fade-up{opacity:1;transform:none}}.footer-privacy{margin:0 0 24px;padding:20px 0 0;font-size:12px;line-height:1.9;color:rgba(255,255,255,.88);letter-spacing:.03em}.footer-privacy-title{font-weight:500;margin-bottom:4px;color:#fff}.footer-privacy a{color:#fff;text-decoration:underline;text-underline-offset:2px}