* {
margin: 0;
padding: 0;
box-sizing: border-box;
} body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
font-size: 16px;
line-height: 1.6;
color: #333;
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
} .site-header {
background: #fff;
border-bottom: 1px solid #eee;
padding: 20px 0;
}
.site-title {
font-size: 24px;
margin-bottom: 5px;
}
.site-title a {
color: #333;
text-decoration: none;
}
.site-description {
font-size: 14px;
color: #333;
} .main-navigation {
margin-top: 20px;
}
.primary-menu {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-wrap: wrap;
gap: 5px;
}
.primary-menu li {
margin: 0;
}
.primary-menu a {
display: block;
padding: 12px 20px;
color: #333;
text-decoration: none;
font-weight: 500;
border-radius: 4px;
transition: all 0.3s ease;
background: #f5f5f5;
}
.primary-menu a:hover {
background: #0066cc;
color: #fff;
}
.primary-menu .current-menu-item a,
.primary-menu .current_page_item a {
background: #0066cc;
color: #fff;
} .site-main {
padding: 40px 0;
min-height: 60vh;
}
.entry-header {
margin-bottom: 20px;
}
.entry-title {
font-size: 32px;
line-height: 1.3;
margin-bottom: 10px;
}
.entry-meta {
font-size: 14px;
color: #666;
}
.entry-content {
font-size: 18px;
line-height: 1.8;
}
.entry-content img {
max-width: 100%;
height: auto;
}  .hero-section {
padding: 100px 20px;
text-align: center;
background-image: url(//maten.jp/wp-content/uploads/2025/12/hero-background.avif);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
position: relative;
color: #fff;
}
.hero-section::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.5);
z-index: 1;
}
.hero-content {
position: relative;
z-index: 2;
}
.hero-title {
font-size: 32px;
margin-bottom: 20px;
color: #fff;
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
}
.hero-description {
font-size: 18px;
color: #fff;
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8);
margin-bottom: 30px;
} .btn {
display: inline-block;
padding: 15px 30px;
border-radius: 5px;
text-decoration: none;
font-weight: bold;
transition: all 0.3s;
}
.btn-primary {
background: #0066cc;
color: #fff;
}
.btn-primary:hover {
background: #0052a3;
} .service-cards {
display: grid;
grid-template-columns: 1fr;
gap: 20px;
margin-top: 30px;
}
.service-card {
border: 1px solid #eee;
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s;
}
.service-card:hover {
transform: translateY(-5px);
}
.service-card-image img {
width: 100%;
height: 200px;
object-fit: cover;
}
.service-card-content {
padding: 20px;
}
.service-card-title {
font-size: 20px;
margin-bottom: 10px;
}
.service-card-title a {
color: #333;
text-decoration: none;
} @media (min-width: 768px) {
.header-inner {
display: flex;
justify-content: space-between;
align-items: center;
}
.main-navigation {
margin-top: 0;
}
.primary-menu {
gap: 10px;
}
.primary-menu a {
padding: 10px 18px;
}
.hero-section {
padding: 150px 40px;
}
.hero-title {
font-size: 48px;
}
.hero-description {
font-size: 20px;
}
.feature-icon img {
max-width: 150px;
}
.site-title {
font-size: 32px;
}
.entry-title {
font-size: 40px;
}
.service-cards {
grid-template-columns: repeat(2, 1fr);
}
.hero-title {
font-size: 48px;
}
}
@media (min-width: 1024px) {
.hero-section {
padding: 200px 60px;
}
.hero-title {
font-size: 56px;
}
.hero-description {
font-size: 22px;
}
.feature-icon img {
max-width: 180px;
}
.service-cards {
grid-template-columns: repeat(3, 1fr);
}
.content-area {
width: 70%;
float: left;
}
.sidebar {
width: 25%;
float: right;
}
} .contact-form {
margin-top: 30px;
}
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form textarea {
width: 100%;
padding: 12px 15px;
margin-bottom: 15px;
border: 1px solid #ddd;
border-radius: 5px;
font-size: 16px;
font-family: inherit;
transition: border-color 0.3s;
}
.contact-form input[type="text"]:focus,
.contact-form input[type="email"]:focus,
.contact-form input[type="tel"]:focus,
.contact-form textarea:focus {
outline: none;
border-color: #0066cc;
}
.contact-form textarea {
min-height: 150px;
resize: vertical;
}
.contact-form input[type="submit"] {
background: #0066cc;
color: #fff;
padding: 15px 40px;
border: none;
border-radius: 5px;
font-size: 16px;
font-weight: bold;
cursor: pointer;
transition: background 0.3s;
}
.contact-form input[type="submit"]:hover {
background: #0052a3;
} .wpcf7-not-valid-tip {
color: #dc3545;
font-size: 14px;
margin-top: 5px;
}
.wpcf7-validation-errors {
color: #dc3545;
border: 2px solid #dc3545;
padding: 15px;
margin-top: 20px;
border-radius: 5px;
}
.wpcf7-mail-sent-ok {
color: #28a745;
border: 2px solid #28a745;
padding: 15px;
margin-top: 20px;
border-radius: 5px;
} .faq-container {
margin-top: 30px;
}
.faq-item {
border: 1px solid #eee;
border-radius: 8px;
margin-bottom: 15px;
overflow: hidden;
}
.faq-question {
padding: 20px;
margin: 0;
font-size: 18px;
background: #f9f9f9;
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: center;
transition: background 0.3s;
user-select: none;
}
.faq-question:hover {
background: #f0f0f0;
}
.faq-question.active {
background: #0066cc;
color: #fff;
}
.faq-icon {
font-size: 14px;
transition: transform 0.3s;
margin-left: 10px;
flex-shrink: 0;
}
.faq-answer {
display: none;
padding: 20px;
background: #fff;
border-top: 1px solid #eee;
line-height: 1.8;
}
.faq-answer p {
margin: 0;
} @media (min-width: 768px) {
.faq-question {
font-size: 20px;
padding: 25px;
}
.contact-form input[type="submit"] {
min-width: 200px;
}
} .page-header {
margin-bottom: 30px;
}
.page-title {
font-size: 28px;
border-bottom: 2px solid #0066cc;
padding-bottom: 10px;
}
.services-grid {
display: grid;
grid-template-columns: 1fr;
gap: 30px;
margin-bottom: 40px;
}
.service-card {
border: 1px solid #eee;
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s, box-shadow 0.3s;
background: #fff;
display: flex;
flex-direction: column;
}
.service-card:hover {
transform: translateY(-5px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
.service-card-image {
width: 100%;
overflow: hidden;
}
.service-card-image img {
width: 100%;
height: 200px;
object-fit: cover;
transition: transform 0.3s;
}
.service-card:hover .service-card-image img {
transform: scale(1.05);
}
.service-card-content {
padding: 20px;
flex: 1;
display: flex;
flex-direction: column;
}
.service-card-title {
font-size: 20px;
margin-bottom: 15px;
}
.service-card-title a {
color: #333;
text-decoration: none;
}
.service-card-title a:hover {
color: #0066cc;
}
.service-card-excerpt {
color: #666;
line-height: 1.6;
margin-bottom: 20px;
flex: 1;
}
.service-card-link {
align-self: flex-start;
} .pagination {
margin-top: 40px;
text-align: center;
}
.pagination .nav-links {
display: flex;
justify-content: center;
align-items: center;
gap: 10px;
}
.pagination .page-numbers {
display: inline-block;
padding: 10px 15px;
border: 1px solid #ddd;
border-radius: 5px;
color: #333;
text-decoration: none;
transition: all 0.3s;
}
.pagination .page-numbers:hover {
background: #0066cc;
color: #fff;
border-color: #0066cc;
}
.pagination .page-numbers.current {
background: #0066cc;
color: #fff;
border-color: #0066cc;
} .cta-widget {
background: #f9f9f9;
border: 2px solid #0066cc;
border-radius: 8px;
padding: 20px;
text-align: center;
}
.cta-phone {
margin-bottom: 15px;
}
.cta-phone-button {
display: block;
background: #28a745;
color: #fff;
padding: 20px 15px;
border-radius: 8px;
text-decoration: none;
font-weight: bold;
transition: background 0.3s;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.cta-phone-button:hover {
background: #218838;
}
.cta-icon {
font-size: 24px;
display: block;
margin-bottom: 5px;
}
.cta-phone-number {
font-size: 20px;
display: block;
letter-spacing: 0.5px;
}
.cta-mail {
margin-bottom: 15px;
}
.cta-mail-button {
display: block;
background: #0066cc;
color: #fff;
padding: 15px;
border-radius: 8px;
text-decoration: none;
font-weight: bold;
transition: background 0.3s;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.cta-mail-button:hover {
background: #0052a3;
}
.cta-hours {
margin-top: 15px;
padding-top: 15px;
border-top: 1px solid #ddd;
}
.cta-hours p {
font-size: 14px;
color: #666;
margin: 0;
} @media (min-width: 768px) {
.page-title {
font-size: 36px;
}
.services-grid {
grid-template-columns: repeat(2, 1fr);
}
.service-card-title {
font-size: 22px;
}
}
@media (min-width: 1024px) {
.services-grid {
grid-template-columns: repeat(3, 1fr);
}
.cta-phone-number {
font-size: 22px;
}
} .case-single {
max-width: 100%;
}
.case-header {
margin-bottom: 30px;
}
.case-featured-image {
margin-bottom: 30px;
}
.case-featured-image img {
width: 100%;
height: auto;
border-radius: 8px;
}
.case-content {
font-size: 16px;
line-height: 1.8;
margin-bottom: 40px;
}
.case-meta {
background: #f9f9f9;
border: 2px solid #eee;
border-radius: 8px;
padding: 30px;
margin-bottom: 40px;
}
.case-meta h3 {
font-size: 20px;
margin-bottom: 20px;
color: #333;
border-bottom: 2px solid #0066cc;
padding-bottom: 10px;
}
.case-meta-content {
color: #666;
}
.case-meta-item {
display: flex;
align-items: flex-start;
margin-bottom: 15px;
padding: 15px;
background: #fff;
border-radius: 5px;
}
.case-meta-item:last-child {
margin-bottom: 0;
}
.case-meta-icon {
font-size: 20px;
margin-right: 10px;
flex-shrink: 0;
}
.case-meta-label {
font-weight: bold;
color: #666;
margin-right: 10px;
flex-shrink: 0;
}
.case-meta-value {
color: #333;
flex: 1;
}
.case-meta-review {
flex-direction: column;
align-items: flex-start;
}
.case-meta-review .case-meta-icon,
.case-meta-review .case-meta-label {
display: inline;
}
.case-meta-review .case-meta-value {
margin-top: 10px;
line-height: 1.8;
}
.case-cta {
text-align: center;
padding: 40px 0;
}
.btn-large {
font-size: 18px;
padding: 20px 40px;
} .cases-grid {
display: grid;
grid-template-columns: 1fr;
gap: 30px;
margin-bottom: 40px;
}
.case-card {
border: 1px solid #eee;
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s, box-shadow 0.3s;
background: #fff;
display: flex;
flex-direction: column;
}
.case-card:hover {
transform: translateY(-5px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
.case-card-image {
width: 100%;
overflow: hidden;
}
.case-card-image img {
width: 100%;
height: 200px;
object-fit: cover;
transition: transform 0.3s;
}
.case-card:hover .case-card-image img {
transform: scale(1.05);
}
.case-card-content {
padding: 20px;
flex: 1;
display: flex;
flex-direction: column;
}
.case-card-title {
font-size: 20px;
margin-bottom: 15px;
}
.case-card-title a {
color: #333;
text-decoration: none;
}
.case-card-title a:hover {
color: #0066cc;
}
.case-card-excerpt {
color: #666;
line-height: 1.6;
margin-bottom: 20px;
flex: 1;
}
.case-card-link {
align-self: flex-start;
} @media (min-width: 768px) {
.cases-grid {
grid-template-columns: repeat(2, 1fr);
}
.case-card-title {
font-size: 22px;
}
.case-content {
font-size: 18px;
}
}
@media (min-width: 1024px) {
.cases-grid {
grid-template-columns: repeat(3, 1fr);
}
} .emergency-banner {
background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
padding: 40px 20px;
text-align: center;
border-radius: 12px;
margin: 40px 0;
box-shadow: 0 6px 20px rgba(40, 167, 69, 0.4);
transition: transform 0.3s ease;
}
.emergency-banner:hover {
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(40, 167, 69, 0.5);
}
.emergency-content {
max-width: 600px;
margin: 0 auto;
}
.emergency-label {
font-size: 18px;
color: #fff;
font-weight: 700;
margin-bottom: 20px;
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}
.emergency-phone {
display: block;
text-decoration: none;
color: #fff;
margin-bottom: 15px;
transition: transform 0.2s ease;
}
.emergency-phone:hover {
transform: scale(1.05);
}
.emergency-icon {
display: block;
margin: 0 auto 15px;
}
.emergency-icon img {
width: 120px;
height: 120px;
display: block;
margin: 0 auto;
filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
}
.emergency-number {
font-size: 36px;
font-weight: bold;
display: block;
letter-spacing: 3px;
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}
.emergency-text {
color: #fff;
font-size: 16px;
margin: 0;
font-weight: 600;
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
} .emergency-guide-section {
padding: 60px 0;
background: #f9f9f9;
}
.emergency-guide-section .section-title {
font-size: 28px;
font-weight: 700;
text-align: center;
margin-bottom: 15px;
color: #333;
}
.emergency-guide-section .section-description {
text-align: center;
color: #666;
font-size: 16px;
margin-bottom: 40px;
line-height: 1.6;
}
.emergency-steps {
max-width: 900px;
margin: 0 auto 40px;
}
.emergency-step {
display: flex;
gap: 20px;
background: #fff;
border-radius: 8px;
padding: 25px;
margin-bottom: 20px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
transition: transform 0.3s, box-shadow 0.3s;
}
.emergency-step:hover {
transform: translateY(-3px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}
.step-number {
flex-shrink: 0;
width: 50px;
height: 50px;
background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
color: #fff;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 24px;
font-weight: 700;
}
.step-content {
flex: 1;
}
.step-title {
font-size: 20px;
font-weight: 700;
color: #333;
margin-bottom: 10px;
}
.step-description {
color: #666;
line-height: 1.8;
margin: 0;
}
.emergency-guide-warning {
max-width: 800px;
margin: 0 auto 30px;
background: #fff3cd;
border-left: 4px solid #ffc107;
padding: 20px;
border-radius: 5px;
display: flex;
gap: 15px;
align-items: flex-start;
}
.warning-icon {
font-size: 24px;
margin: 0;
flex-shrink: 0;
}
.warning-text {
margin: 0;
color: #856404;
line-height: 1.6;
font-weight: 600;
}
.emergency-guide-cta {
text-align: center;
} .features-section {
padding: 60px 0;
}
.features-grid {
display: grid;
grid-template-columns: 1fr;
gap: 30px;
margin-top: 40px;
}
.feature-item {
background: #fff;
border: 1px solid #eee;
border-radius: 8px;
padding: 30px 20px;
text-align: center;
transition: transform 0.3s, box-shadow 0.3s;
}
.feature-item:hover {
transform: translateY(-5px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
.feature-icon {
margin-bottom: 20px;
display: block;
}
.feature-icon img {
max-width: 120px;
height: auto;
display: block;
margin: 0 auto;
}
.feature-title {
font-size: 15px;
margin-bottom: 15px;
color: #333;
}
.feature-description {
color: #666;
line-height: 1.8;
font-size: 14px;
} .price-difference-section {
padding: 60px 0;
background: #fff;
}
.price-difference-section .section-title {
font-size: 28px;
font-weight: 700;
text-align: center;
margin-bottom: 15px;
color: #333;
}
.price-difference-section .section-description {
text-align: center;
color: #666;
font-size: 16px;
margin-bottom: 40px;
line-height: 1.6;
}
.price-reasons {
display: grid;
grid-template-columns: 1fr;
gap: 25px;
max-width: 1000px;
margin: 0 auto 50px;
}
.price-reason-card {
background: #f9f9f9;
border-radius: 8px;
padding: 30px;
transition: transform 0.3s, box-shadow 0.3s;
}
.price-reason-card:hover {
transform: translateY(-3px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.price-reason-icon {
font-size: 40px;
margin-bottom: 15px;
}
.price-reason-title {
font-size: 20px;
font-weight: 700;
color: #333;
margin-bottom: 15px;
}
.price-reason-description {
color: #666;
line-height: 1.8;
margin: 0;
}
.price-comparison-example {
max-width: 800px;
margin: 0 auto 50px;
background: #f0f8ff;
border-radius: 8px;
padding: 30px;
}
.price-comparison-title {
font-size: 22px;
font-weight: 700;
color: #333;
margin-bottom: 10px;
text-align: center;
}
.price-comparison-description {
text-align: center;
color: #666;
margin-bottom: 25px;
}
.price-comparison-table {
display: flex;
flex-direction: column;
gap: 12px;
}
.price-comparison-row {
display: flex;
justify-content: space-between;
align-items: center;
padding: 15px 20px;
background: #fff;
border-radius: 5px;
border-left: 4px solid #0066cc;
}
.price-comparison-label {
font-weight: 600;
color: #333;
}
.price-comparison-value {
font-size: 18px;
font-weight: 700;
color: #0066cc;
}
.price-advice {
max-width: 800px;
margin: 0 auto 40px;
background: #fff9e6;
border-radius: 8px;
padding: 30px;
border: 2px solid #ffc107;
}
.price-advice-title {
font-size: 22px;
font-weight: 700;
color: #333;
margin-bottom: 20px;
text-align: center;
}
.price-advice-list {
list-style: none;
padding: 0;
margin: 0;
}
.price-advice-list li {
padding: 12px 0 12px 30px;
position: relative;
color: #333;
line-height: 1.6;
border-bottom: 1px solid #ffe5a3;
}
.price-advice-list li:last-child {
border-bottom: none;
}
.price-advice-list li::before {
content: "✓";
position: absolute;
left: 0;
color: #28a745;
font-weight: 700;
font-size: 18px;
}
.price-difference-cta {
text-align: center;
}
.price-difference-cta-text {
font-size: 18px;
font-weight: 600;
color: #333;
margin-bottom: 20px;
} .service-flow-section {
padding: 60px 0;
background: #f9f9f9;
}
.service-flow-section .section-title {
font-size: 28px;
font-weight: 700;
text-align: center;
margin-bottom: 15px;
color: #333;
}
.service-flow-section .section-description {
text-align: center;
color: #666;
font-size: 16px;
margin-bottom: 50px;
line-height: 1.6;
}
.service-flow-steps {
display: grid;
grid-template-columns: 1fr;
gap: 30px;
max-width: 1000px;
margin: 0 auto 40px;
}
.flow-step {
background: #fff;
border-radius: 12px;
padding: 30px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
position: relative;
transition: transform 0.3s, box-shadow 0.3s;
}
.flow-step:hover {
transform: translateY(-5px);
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
.flow-step-number {
position: absolute;
top: -15px;
left: 30px;
background: linear-gradient(135deg, #0066cc 0%, #0052a3 100%);
width: 50px;
height: 50px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 2px 8px rgba(0, 102, 204, 0.3);
}
.step-num {
color: #fff;
font-size: 24px;
font-weight: 700;
}
.flow-step-icon {
font-size: 48px;
text-align: center;
margin: 20px 0 15px;
}
.flow-step-title {
font-size: 20px;
font-weight: 700;
color: #333;
margin-bottom: 15px;
text-align: center;
}
.flow-step-description {
color: #666;
line-height: 1.8;
text-align: center;
margin: 0;
}
.service-flow-note {
max-width: 800px;
margin: 0 auto;
background: #fff9e6;
border-left: 4px solid #ffc107;
padding: 20px;
border-radius: 5px;
}
.service-flow-note p {
margin: 0;
color: #856404;
line-height: 1.6;
font-weight: 600;
} .guides-grid {
display: grid;
grid-template-columns: 1fr;
gap: 30px;
margin-bottom: 40px;
}
.guide-card {
border: 1px solid #eee;
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s, box-shadow 0.3s;
background: #fff;
display: flex;
flex-direction: column;
}
.guide-card:hover {
transform: translateY(-5px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
.guide-card-image {
width: 100%;
overflow: hidden;
}
.guide-card-image img {
width: 100%;
height: 200px;
object-fit: cover;
transition: transform 0.3s;
}
.guide-card:hover .guide-card-image img {
transform: scale(1.05);
}
.guide-card-content {
padding: 20px;
flex: 1;
display: flex;
flex-direction: column;
}
.guide-card-categories {
margin-bottom: 15px;
}
.guide-category-badge,
.category-badge {
display: inline-block;
background: #0066cc;
color: #fff;
padding: 5px 12px;
border-radius: 20px;
font-size: 12px;
margin-right: 5px;
margin-bottom: 5px;
}
.blog-categories {
margin-bottom: 10px;
}
.guide-card-title {
font-size: 20px;
margin-bottom: 15px;
}
.guide-card-title a {
color: #333;
text-decoration: none;
}
.guide-card-title a:hover {
color: #0066cc;
}
.guide-card-excerpt {
color: #666;
line-height: 1.6;
margin-bottom: 20px;
flex: 1;
}
.guide-card-link {
align-self: flex-start;
} .guide-single {
max-width: 100%;
}
.guide-header {
margin-bottom: 30px;
}
.guide-categories {
margin-top: 15px;
}
.guide-featured-image {
margin-bottom: 30px;
}
.guide-featured-image img {
width: 100%;
height: auto;
border-radius: 8px;
}
.guide-content {
font-size: 16px;
line-height: 1.8;
margin-bottom: 40px;
}
.guide-cta-box {
background: #f9f9f9;
border: 2px solid #0066cc;
border-radius: 8px;
padding: 40px 30px;
text-align: center;
margin-top: 40px;
}
.guide-cta-box h3 {
font-size: 24px;
margin-bottom: 15px;
color: #333;
}
.guide-cta-box p {
color: #666;
margin-bottom: 25px;
} .section-title {
font-size: 28px;
text-align: center;
margin-bottom: 30px;
color: #333;
position: relative;
padding-bottom: 15px;
}
.section-title::after {
content: '';
display: block;
width: 60px;
height: 3px;
background: #0066cc;
margin: 15px auto 0;
}
.section-cta {
text-align: center;
margin-top: 40px;
}
.services-section,
.guides-section,
.cases-section,
.faq-section {
padding: 60px 0;
border-top: 1px solid #eee;
} .warning-section {
padding: 60px 20px;
margin: 60px 0;
background: linear-gradient(135deg, #fff3cd 0%, #fffaeb 100%);
border: 2px solid #ffc107;
border-radius: 12px;
position: relative;
overflow: hidden;
}
.warning-section::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 6px;
background: repeating-linear-gradient(
45deg,
#ffc107,
#ffc107 20px,
#ffeb3b 20px,
#ffeb3b 40px
);
}
.warning-container {
max-width: 800px;
margin: 0 auto;
text-align: center;
}
.warning-icon-wrapper {
margin-bottom: 20px;
}
.warning-icon {
font-size: 64px;
display: inline-block;
animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
0%, 100% {
transform: scale(1);
}
50% {
transform: scale(1.1);
}
}
.warning-title {
color: #856404;
font-size: 28px;
font-weight: 700;
margin-bottom: 20px;
}
.warning-description {
color: #856404;
font-size: 16px;
line-height: 1.8;
margin-bottom: 30px;
}
.warning-points {
display: grid;
grid-template-columns: 1fr;
gap: 20px;
margin: 40px 0;
text-align: left;
}
.warning-point {
background: #fff;
padding: 20px;
border-radius: 8px;
border-left: 4px solid #ffc107;
display: flex;
align-items: center;
gap: 15px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
transition: transform 0.2s ease;
}
.warning-point:hover {
transform: translateX(5px);
}
.warning-point-icon {
font-size: 32px;
flex-shrink: 0;
}
.warning-point-text {
color: #856404;
font-size: 16px;
font-weight: 600;
}
.btn-warning {
background: #ffc107;
color: #000;
font-weight: 700;
border: 2px solid #856404;
transition: all 0.3s ease;
}
.btn-warning:hover {
background: #ffb300;
color: #000;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(255, 193, 7, 0.4);
} .contact-cta-section {
padding: 80px 20px;
background: #f9f9f9;
text-align: center;
border-radius: 8px;
margin: 60px 0;
}
.contact-cta-description {
font-size: 16px;
color: #666;
margin-bottom: 40px;
max-width: 600px;
margin-left: auto;
margin-right: auto;
}
.contact-cta-buttons {
display: flex;
flex-direction: column;
gap: 20px;
max-width: 400px;
margin: 0 auto;
}
.btn-secondary {
background: #1e7e34;
color: #fff;
border: 2px solid #1e7e34;
}
.btn-secondary:hover {
background: #155724;
}
.btn-icon {
margin-right: 8px;
} .guide-cards,
.case-cards {
display: grid;
grid-template-columns: 1fr;
gap: 30px;
margin-top: 40px;
} @media (min-width: 768px) {
.emergency-banner {
padding: 50px 40px;
}
.emergency-icon img {
width: 150px;
height: 150px;
}
.emergency-number {
font-size: 48px;
}
.features-grid {
grid-template-columns: repeat(2, 1fr);
}
.feature-title {
font-size: 22px;
}
.feature-description {
font-size: 16px;
}
.guides-grid,
.guide-cards,
.case-cards {
grid-template-columns: repeat(2, 1fr);
}
.guide-card-title {
font-size: 22px;
}
.guide-content {
font-size: 18px;
}
.contact-cta-buttons {
flex-direction: row;
justify-content: center;
max-width: 100%;
}
.warning-section {
padding: 80px 40px;
}
.warning-icon {
font-size: 80px;
}
.warning-title {
font-size: 32px;
}
.warning-description {
font-size: 18px;
}
.warning-points {
grid-template-columns: repeat(3, 1fr);
}
.warning-point-text {
font-size: 14px;
}
.price-reasons {
grid-template-columns: repeat(2, 1fr);
}
.emergency-guide-section .section-title,
.price-difference-section .section-title {
font-size: 32px;
}
.step-number {
width: 60px;
height: 60px;
font-size: 28px;
}
.step-title {
font-size: 22px;
}
.service-flow-steps {
grid-template-columns: repeat(2, 1fr);
}
.service-flow-section .section-title {
font-size: 32px;
}
}
@media (min-width: 1024px) {
.features-grid {
grid-template-columns: repeat(4, 1fr);
}
.guides-grid,
.guide-cards,
.case-cards {
grid-template-columns: repeat(3, 1fr);
}
.warning-section {
padding: 100px 60px;
margin: 80px 0;
}
.warning-icon {
font-size: 96px;
}
.warning-title {
font-size: 36px;
}
.warning-description {
font-size: 18px;
}
.warning-point {
padding: 25px;
}
.warning-point-text {
font-size: 16px;
}
.price-reasons {
grid-template-columns: repeat(2, 1fr);
gap: 30px;
}
.emergency-guide-section,
.price-difference-section {
padding: 80px 0;
}
.emergency-guide-section .section-title,
.price-difference-section .section-title {
font-size: 36px;
}
.service-flow-steps {
grid-template-columns: repeat(4, 1fr);
}
.service-flow-section {
padding: 80px 0;
}
.service-flow-section .section-title {
font-size: 36px;
}
} .breadcrumbs {
background: #f5f5f5;
padding: 8px 0;
font-size: 13px;
border-bottom: 1px solid #eee;
}
.breadcrumbs-list {
list-style: none;
display: flex;
flex-wrap: wrap;
align-items: center;
margin: 0;
padding: 0;
}
.breadcrumbs-item {
display: flex;
align-items: center;
}
.breadcrumbs-home-icon {
font-size: 16px;
margin-right: 4px;
}
.breadcrumbs-link {
color: #0066cc;
text-decoration: none;
transition: text-decoration 0.3s;
}
.breadcrumbs-link:hover {
text-decoration: underline;
}
.breadcrumbs-separator {
color: #999;
margin: 0 8px;
font-size: 12px;
}
.breadcrumbs-current {
color: #333;
font-weight: bold;
} .error-404 {
padding: 80px 0;
}
.error-404-content {
max-width: 700px;
margin: 0 auto;
text-align: center;
}
.error-404-number {
font-size: 120px;
font-weight: bold;
color: #0066cc;
line-height: 1;
margin-bottom: 20px;
}
.error-404-title {
font-size: 32px;
margin-bottom: 20px;
color: #333;
}
.error-404-text {
font-size: 16px;
color: #666;
margin-bottom: 40px;
line-height: 1.8;
}
.error-404-cta {
margin-bottom: 60px;
}
.error-404-search {
margin-bottom: 60px;
padding: 40px;
background: #f9f9f9;
border-radius: 8px;
}
.error-404-search h2 {
font-size: 24px;
margin-bottom: 20px;
color: #333;
}
.error-404-search .search-form {
max-width: 500px;
margin: 0 auto;
}
.error-404-search .search-form input[type="search"] {
width: 100%;
padding: 12px 15px;
border: 1px solid #ddd;
border-radius: 5px;
font-size: 16px;
}
.error-404-search .search-form input[type="submit"] {
margin-top: 10px;
background: #0066cc;
color: #fff;
padding: 12px 30px;
border: none;
border-radius: 5px;
font-size: 16px;
cursor: pointer;
transition: background 0.3s;
}
.error-404-search .search-form input[type="submit"]:hover {
background: #0052a3;
}
.error-404-links h2 {
font-size: 24px;
margin-bottom: 20px;
color: #333;
}
.error-404-links-list {
list-style: none;
padding: 0;
margin: 0;
display: grid;
grid-template-columns: 1fr;
gap: 15px;
max-width: 400px;
margin: 0 auto;
}
.error-404-links-list li a {
display: block;
padding: 15px 20px;
background: #fff;
border: 1px solid #eee;
border-radius: 5px;
color: #0066cc;
text-decoration: none;
font-weight: bold;
transition: all 0.3s;
}
.error-404-links-list li a:hover {
background: #0066cc;
color: #fff;
transform: translateY(-2px);
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
} @media (min-width: 768px) {
.breadcrumbs {
padding: 10px 0;
font-size: 14px;
}
.error-404-number {
font-size: 180px;
}
.error-404-title {
font-size: 40px;
}
.error-404-text {
font-size: 18px;
}
.error-404-links-list {
grid-template-columns: repeat(2, 1fr);
max-width: 600px;
}
} .site-footer {
background-color: #1a1a1a;
color: #fff;
padding: 60px 0 20px;
margin-top: 80px;
clear: both;
position: relative;
}
.footer-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
} .footer-widgets {
display: grid;
grid-template-columns: 1fr;
gap: 40px;
margin-bottom: 40px;
}
.footer-widget-area .widget {
margin-bottom: 0;
}
.footer-widget-area .widget-title {
color: #fff;
font-size: 18px;
font-weight: 700;
margin-bottom: 20px;
padding-bottom: 10px;
border-bottom: 2px solid #0066cc;
}
.footer-widget-area .widget-content {
color: #ccc;
line-height: 1.8;
}
.footer-widget-area .widget-content p {
margin-bottom: 10px;
}
.footer-widget-area .widget-content a {
color: #fff;
text-decoration: none;
}
.footer-widget-area .widget-content a:hover {
color: #0066cc;
text-decoration: underline;
} .footer-navigation {
margin-bottom: 30px;
padding-top: 30px;
border-top: 1px solid #333;
}
.footer-menu {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-wrap: wrap;
gap: 10px 20px;
justify-content: center;
}
.footer-menu li {
margin: 0;
}
.footer-menu a {
color: #ccc;
text-decoration: none;
font-size: 14px;
}
.footer-menu a:hover {
color: #fff;
text-decoration: underline;
} .footer-copyright {
text-align: center;
padding-top: 20px;
border-top: 1px solid #333;
}
.footer-copyright p {
color: #999;
font-size: 14px;
margin: 0;
} .footer-legal {
margin-top: 40px;
padding-top: 30px;
border-top: 1px solid #333;
font-size: 12px;
color: #999;
text-align: center;
}
.footer-legal h3 {
font-size: 14px;
color: #ccc;
margin-bottom: 15px;
}
.footer-legal p {
line-height: 1.8;
}
.footer-legal a {
color: #999;
text-decoration: underline;
} @media (min-width: 768px) {
.footer-widgets {
grid-template-columns: repeat(2, 1fr);
}
} @media (min-width: 1024px) {
.site-footer {
padding: 80px 0 30px;
}
.footer-widgets {
grid-template-columns: repeat(3, 1fr);
gap: 60px;
}
.footer-widget-area .widget-title {
font-size: 20px;
}
} .entry-thumbnail {
margin-bottom: 20px !important;
overflow: hidden !important;
}
.entry-thumbnail img {
width: 100% !important;
height: auto !important;
max-width: 100% !important;
display: block !important;
} img {
max-width: 100% !important;
height: auto !important;
}  .section-heading {
font-size: 24px;
font-weight: bold;
margin: 40px 0 20px;
padding: 15px 20px;
background: linear-gradient(to right, #0066cc 4px, #f8f9fa 4px);
border-radius: 4px;
color: #333;
} .service-features {
margin: 40px 0;
padding: 30px;
background: #f8f9fa;
border-radius: 8px;
}
.features-list {
list-style: none;
padding: 0;
margin: 0;
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 15px;
}
.feature-item {
display: flex;
align-items: center;
gap: 10px;
padding: 10px;
background: #fff;
border-radius: 4px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.feature-icon {
font-size: 20px;
color: #0066cc;
font-weight: bold;
}
.feature-text {
font-size: 16px;
color: #333;
} .service-flow {
margin: 40px 0;
}
.service-flow-steps {
display: grid;
gap: 20px;
}
.service-flow-step {
display: flex;
gap: 20px;
padding: 20px;
background: #fff;
border: 1px solid #e0e0e0;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.service-flow-step-number {
flex-shrink: 0;
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
background: #0066cc;
color: #fff;
font-size: 24px;
font-weight: bold;
border-radius: 50%;
}
.service-flow-step-content {
flex: 1;
}
.service-flow-step-title {
font-size: 18px;
font-weight: bold;
margin: 0 0 8px;
color: #333;
}
.service-flow-step-description {
font-size: 14px;
margin: 0;
color: #666;
line-height: 1.6;
} @media (max-width: 768px) {
.section-heading {
font-size: 18px;
padding: 10px;
margin: 20px 0 15px;
}
.service-features {
padding: 10px;
margin: 20px 0;
}
.features-list {
grid-template-columns: 1fr;
gap: 8px;
}
.feature-item {
padding: 8px;
gap: 8px;
}
.feature-icon {
font-size: 16px;
}
.feature-text {
font-size: 14px;
}
.service-flow {
margin: 20px 0;
}
.service-flow-steps {
gap: 15px;
}
.service-flow-step {
flex-direction: column;
text-align: center;
padding: 15px 10px;
gap: 15px;
}
.service-flow-step-number {
margin: 0 auto;
width: 40px;
height: 40px;
font-size: 20px;
}
.service-flow-step-title {
font-size: 16px;
}
.service-flow-step-description {
font-size: 13px;
}
}  .entry-content h2 {
font-size: 24px;
font-weight: bold;
margin: 40px 0 20px;
padding: 15px 20px;
background: linear-gradient(to right, #0066cc 4px, #f8f9fa 4px);
border-radius: 4px;
color: #333;
line-height: 1.4;
} .entry-content h3 {
font-size: 20px;
font-weight: bold;
margin: 30px 0 15px;
padding: 10px 15px;
border-left: 3px solid #0066cc;
color: #333;
line-height: 1.4;
} .entry-content h4 {
font-size: 18px;
font-weight: bold;
margin: 25px 0 12px;
padding-bottom: 8px;
border-bottom: 2px solid #e0e0e0;
color: #333;
line-height: 1.4;
} @media (max-width: 768px) {
.entry-content h2 {
font-size: 20px;
padding: 12px 15px;
margin: 30px 0 15px;
}
.entry-content h3 {
font-size: 18px;
padding: 8px 12px;
margin: 25px 0 12px;
}
.entry-content h4 {
font-size: 16px;
margin: 20px 0 10px;
}
}