* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
:root {
--primary-black: #000000;
--secondary-black: #1a1a1a;
--tertiary-black: #2d2d2d;
--primary-gold: #d4af37;
--secondary-gold: #ffd700;
--light-gold: #ffec8c;
--platinum-silver: #e5e4e2;
--white: #ffffff;
--luxury-gradient: linear-gradient(135deg, #000000 0%, #1a1a1a 50%, #2d2d2d 100%);
--gold-gradient: linear-gradient(135deg, #d4af37 0%, #ffd700 50%, #ffec8c 100%);
--reverse-gold-gradient: linear-gradient(315deg, #d4af37 0%, #ffd700 50%, #ffec8c 100%);
}
body {
font-family: 'Noto Sans JP', 'Cormorant Garamond', serif;
line-height: 1.8;
color: var(--white);
background: var(--luxury-gradient);
overflow-x: hidden;
}
.diamond-pattern {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image:
radial-gradient(circle at 25% 25%, rgba(212, 175, 55, 0.1) 2px, transparent 2px),
radial-gradient(circle at 75% 75%, rgba(255, 215, 0, 0.08) 1px, transparent 1px),
radial-gradient(circle at 50% 50%, rgba(212, 175, 55, 0.05) 1.5px, transparent 1.5px);
background-size: 60px 60px, 40px 40px, 80px 80px;
pointer-events: none;
z-index: -1;
animation: diamondFloat 20s ease-in-out infinite;
}
@keyframes diamondFloat {
0%, 100% { transform: translateX(0); }
50% { transform: translateX(10px); }
}
.header {
background: linear-gradient(rgba(0,0,0,0.95), rgba(26,26,26,0.9));
padding: 25px 0;
position: relative;
overflow: hidden;
border-bottom: 2px solid var(--primary-gold);
margin-top: 0px;
}
.header::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.4), transparent);
animation: shimmer 4s infinite;
}
@keyframes shimmer {
0% { left: -100%; }
100% { left: 100%; }
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
position: relative;
z-index: 1;
}
.logo-section {
text-align: center;
margin-bottom: 30px;
}
.logo-text {
font-family: 'Playfair Display', serif;
font-size: 3rem;
font-weight: 900;
background: var(--gold-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 15px;
text-shadow: 2px 2px 8px rgba(0,0,0,0.7);
letter-spacing: 2px;
}
.subtitle {
font-family: 'Cormorant Garamond', serif;
font-size: 1.4rem;
color: var(--platinum-silver);
font-weight: 400;
font-style: italic;
letter-spacing: 1px;
}
.hero {
background: linear-gradient(rgba(0,0,0,0.4), rgba(26,26,26,0.5)), url('https://fukui-seikeigeka.com/wp-content/themes/cocoon-child-master/assets/premium/img/1.5979A.jpg') center/cover no-repeat;
padding: 100px 0;
text-align: center;
position: relative;
}
.hero h1 {
font-family: 'Playfair Display', serif;
font-size: 3.5rem;
font-weight: 700;
margin-bottom: 25px;
background: var(--gold-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-shadow: 2px 2px 8px rgba(0,0,0,0.5);
line-height: 1.2;
}
.hero-subtitle {
font-size: 1.6rem;
color: var(--platinum-silver);
margin-bottom: 20px;
font-weight: 400;
}
.hero-description {
font-size: 1.2rem;
color: var(--white);
max-width: 800px;
margin: 0 auto 50px;
line-height: 1.8;
}
.services {
padding: 100px 0;
background: linear-gradient(rgba(0,0,0,0.4), rgba(26,26,26,0.5)), url('https://fukui-seikeigeka.com/wp-content/themes/cocoon-child-master/assets/premium/img/1a0f9caf3e1c3b2600931540f099cc83.jpeg') center/cover no-repeat;
position: relative;
}
.section-title {
font-family: 'Playfair Display', serif;
font-size: 3.2rem;
text-align: center;
margin-bottom: 70px;
background: var(--gold-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
font-weight: 700;
letter-spacing: 1px;
}
.services-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
gap: 50px;
margin-bottom: 80px;
}
.service-card {
background: linear-gradient(145deg, rgba(26,26,26,0.95), rgba(0,0,0,0.95));
border: 3px solid transparent;
background-clip: padding-box;
border-radius: 25px;
padding: 50px;
text-align: center;
position: relative;
transform: translateY(0);
transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow:
0 15px 40px rgba(0, 0, 0, 0.4),
0 5px 20px rgba(212, 175, 55, 0.2);
}
.service-card::before {
content: '';
position: absolute;
top: -3px;
left: -3px;
right: -3px;
bottom: -3px;
background: var(--gold-gradient);
border-radius: 25px;
z-index: -1;
opacity: 0;
transition: opacity 0.5s ease;
}
.service-card:hover {
transform: translateY(-15px) scale(1.02);
box-shadow:
0 25px 60px rgba(0, 0, 0, 0.6),
0 15px 40px rgba(212, 175, 55, 0.4);
}
.service-card:hover::before {
opacity: 1;
}
.service-title {
font-family: 'Playfair Display', serif;
font-size: 1.8rem;
color: var(--primary-gold);
margin-bottom: 25px;
font-weight: 700;
white-space: nowrap;
}
.service-price {
font-size: 3rem;
color: var(--secondary-gold);
font-weight: 900;
margin-bottom: 30px;
text-shadow: 2px 2px 6px rgba(0,0,0,0.5);
}
.service-features {
list-style: none;
margin-bottom: 40px;
text-align: left;
}
.service-features li {
padding: 15px 0;
border-bottom: 1px solid rgba(212, 175, 55, 0.3);
font-size: 1.1rem;
position: relative;
padding-left: 30px;
}
.service-features li:last-child {
border-bottom: none;
}
.service-features li::before {
content: '◆';
color: var(--primary-gold);
position: absolute;
left: 0;
font-weight: bold;
}
.inquiry-button {
background: var(--gold-gradient);
color: var(--primary-black);
padding: 18px 50px;
border: none;
border-radius: 50px;
font-size: 1.3rem;
font-weight: 700;
cursor: pointer;
transition: all 0.4s ease;
text-decoration: none;
display: inline-block;
font-family: 'Noto Sans JP', sans-serif;
letter-spacing: 1px;
}
.inquiry-button:hover {
transform: scale(1.08);
box-shadow: 0 15px 35px rgba(212, 175, 55, 0.5);
background: var(--reverse-gold-gradient);
}
.treatment-details {
padding: 100px 0;
background: linear-gradient(rgba(0,0,0,0.4), rgba(26,26,26,0.5)), url('https://fukui-seikeigeka.com/wp-content/themes/cocoon-child-master/assets/premium/img/5080c38143cdc86092571e1869e661ee.jpeg') center/cover no-repeat;
}
.treatment-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
gap: 50px;
margin-bottom: 70px;
}
.treatment-card {
background: linear-gradient(145deg, rgba(0,0,0,0.9), rgba(26,26,26,0.9));
padding: 45px;
border-radius: 20px;
border: 2px solid var(--primary-gold);
position: relative;
transition: all 0.3s ease;
}
.treatment-card:hover {
transform: translateY(-8px);
box-shadow: 0 20px 40px rgba(212, 175, 55, 0.3);
}
.treatment-card h3 {
font-family: 'Playfair Display', serif;
color: var(--primary-gold);
font-size: 1.5rem;
margin-bottom: 20px;
font-weight: 600;
line-height: 1.5;
}
.treatment-card h4 {
color: var(--secondary-gold);
margin-bottom: 15px;
font-size: 1rem;
}
.treatment-card ul {
list-style: none;
margin-bottom: 25px;
}
.treatment-card li {
padding: 8px 0;
position: relative;
padding-left: 25px;
font-size: 0.9rem;
}
.treatment-card p {
font-size: 0.9rem;
}
.treatment-card li::before {
content: '•';
color: var(--primary-gold);
position: absolute;
left: 0;
font-weight: bold;
font-size: 1.2rem;
}
.doctor-profile {
padding: 100px 0;
background: linear-gradient(rgba(0,0,0,0.4), rgba(26,26,26,0.5)), url('https://fukui-seikeigeka.com/wp-content/themes/cocoon-child-master/assets/premium/img/626cd73e2e3c0434574befc2a95a8332.jpeg') center/cover no-repeat;
}
.profile-content {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 60px;
align-items: center;
}
.profile-image {
text-align: center;
}
.profile-placeholder {
width: 280px;
height: 280px;
background: var(--gold-gradient);
border-radius: 50%;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: center;
color: var(--primary-black);
font-size: 1.3rem;
font-weight: 700;
box-shadow: 0 15px 40px rgba(212, 175, 55, 0.4);
}
.profile-details h3 {
font-family: 'Playfair Display', serif;
font-size: 2.5rem;
color: var(--primary-gold);
margin-bottom: 25px;
font-weight: 700;
}
.credentials {
color: var(--platinum-silver);
font-size: 1.2rem;
margin-bottom: 30px;
line-height: 1.8;
}
.clinic-info {
padding: 100px 0;
background: linear-gradient(rgba(0,0,0,0.4), rgba(26,26,26,0.5)), url('https://fukui-seikeigeka.com/wp-content/themes/cocoon-child-master/assets/premium/img/6adc7133c528339116c6c16b3314def9.jpeg') center/cover no-repeat;
}
.info-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 40px;
}
.info-card {
background: linear-gradient(145deg, rgba(0,0,0,0.85), rgba(26,26,26,0.85));
padding: 40px;
border-radius: 20px;
border-left: 5px solid var(--primary-gold);
transition: all 0.3s ease;
}
.info-card:hover {
transform: translateX(10px);
box-shadow: 0 10px 30px rgba(212, 175, 55, 0.2);
}
.info-card h3 {
font-family: 'Playfair Display', serif;
color: var(--primary-gold);
font-size: 1.6rem;
margin-bottom: 20px;
font-weight: 600;
}
.contact-section {
padding: 100px 0;
background: linear-gradient(rgba(0,0,0,0.4), rgba(26,26,26,0.5)), url('https://fukui-seikeigeka.com/wp-content/themes/cocoon-child-master/assets/premium/img/39.jpg') center/cover no-repeat;
text-align: center;
}
.contact-card {
background: linear-gradient(145deg, rgba(0,0,0,0.9), rgba(26,26,26,0.9));
padding: 50px;
border-radius: 25px;
border: 3px solid var(--primary-gold);
max-width: 700px;
margin: 0 auto;
box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
}
.contact-card h3 {
color: var(--primary-gold);
font-size: 2.5rem;
margin-bottom: 25px;
font-family: 'Playfair Display', serif;
}
.phone-number {
font-size: 3rem;
color: var(--secondary-gold);
font-weight: 900;
margin: 20px 0;
text-shadow: 2px 2px 6px rgba(0,0,0,0.5);
}
.legal-info {
padding: 80px 0;
background: linear-gradient(rgba(0,0,0,0.4), rgba(26,26,26,0.5)), url('https://fukui-seikeigeka.com/wp-content/themes/cocoon-child-master/assets/premium/img/11.7325A.jpg') center/cover no-repeat;
font-size: 0.95rem;
color: var(--platinum-silver);
}
.legal-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 40px;
}
.legal-section h4 {
color: var(--primary-gold);
margin-bottom: 20px;
font-size: 1.2rem;
font-family: 'Playfair Display', serif;
}
.footer {
background: var(--primary-black);
padding: 60px 0;
text-align: center;
border-top: 2px solid var(--primary-gold);
}
.footer-content {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 40px;
margin-bottom: 30px;
}
.footer h4 {
color: var(--primary-gold);
margin-bottom: 20px;
font-family: 'Playfair Display', serif;
}
.social-links a {
color: var(--platinum-silver);
text-decoration: none;
margin: 0 15px;
transition: all 0.3s ease;
font-weight: 500;
}
.social-links a:hover {
color: var(--primary-gold);
transform: scale(1.1);
}
@media (max-width: 768px) {
.hero h1 {
font-size: 2.8rem;
}
.hero-subtitle {
font-size: 1.1rem;
line-height: 1.6;
}
.hero-description {
font-size: 0.95rem;
line-height: 1.7;
}
.service-title {
font-size: 1.4rem;
line-height: 1.4;
}
.services-grid {
grid-template-columns: 1fr;
}
.profile-content {
grid-template-columns: 1fr;
text-align: center;
}
.logo-text {
font-size: 2.2rem;
}
.section-title {
font-size: 2.2rem;
}
.treatment-grid {
grid-template-columns: 1fr;
}
.treatment-card h3 {
font-size: 1.3rem;
}
.treatment-card h4 {
font-size: 0.95rem;
}
.treatment-card p {
font-size: 0.9rem;
}
.treatment-card li {
font-size: 0.9rem;
}
}
@media (max-width: 480px) {
.container {
padding: 0 15px;
}
.hero {
padding: 80px 0;
}
.hero h1 {
font-size: 2.2rem;
}
.hero-subtitle {
font-size: 1rem;
line-height: 1.6;
}
.hero-description {
font-size: 0.9rem;
line-height: 1.7;
}
.services {
padding: 80px 0;
}
.service-card {
padding: 30px 25px;
}
.service-title {
font-size: 1.2rem;
line-height: 1.4;
}
.service-price {
font-size: 2.2rem;
}
.phone-number {
font-size: 2.2rem;
}
.treatment-card h3 {
font-size: 1.2rem;
}
.treatment-card h4 {
font-size: 0.9rem;
}
.treatment-card p {
font-size: 0.85rem;
}
.treatment-card li {
font-size: 0.85rem;
}
}
/* モバイル版のみ改行を表示 */
.mobile-br {
display: none;
}
@media (max-width: 768px) {
.mobile-br {
display: inline;
}
.counseling-form-button {
font-size: 1.2rem !important;
padding: 18px 40px !important;
}
}
