Files
frontend/apps/dm/app/contents-page.css
2026-05-20 17:16:56 +09:00

566 lines
9.5 KiB
CSS

.contents-page {
color: #0f172a;
font-size: 16px;
line-height: 1.5;
}
.contents-page .page-title {
display: inline-block;
}
.contents-page .page-title h2 {
position: relative;
display: inline-block;
padding: 0 0.5rem;
font-size: 28px;
font-weight: 800;
line-height: 1;
letter-spacing: -0.025em;
color: #0f172a;
}
.contents-page .page-title .title-text {
position: relative;
z-index: 1;
}
.contents-page .page-title .title-bg {
position: absolute;
left: 0;
bottom: -4px;
z-index: 0;
height: 12px;
width: 100%;
background: linear-gradient(to right, #7dd3fc, #86efac);
}
.contents-page .sections {
margin-top: 2.5rem;
}
.contents-page .section {
scroll-margin-top: 120px;
}
.contents-page .section.first {
margin-top: 2.5rem;
}
.contents-page .section-title {
display: flex;
align-items: center;
gap: 0.75rem;
}
.contents-page .section-bar {
height: 20px;
width: 3px;
flex-shrink: 0;
background: #0ea5e9;
}
.contents-page .section-title h3 {
font-size: 24px;
font-weight: 700;
line-height: 1.2;
color: #171717;
}
.contents-page .image-wrap {
margin-top: 2rem;
width: 100%;
overflow-x: auto;
}
.contents-page .image-wrap img {
display: block;
margin: 0 auto;
max-width: none;
height: auto;
}
.contents-page .divider {
height: 2px;
width: 100%;
margin: 2.75rem 0;
background: rgba(0, 0, 0, 0.1);
}
.contents-page .rain-example-sections {
padding-bottom: 120px;
}
.contents-page .image-slider {
margin-top: 2rem;
}
.contents-page .image-slider-inner {
max-width: 1240px;
margin: 0 auto;
}
.contents-page .image-slider-viewport {
overflow: hidden;
user-select: none;
touch-action: pan-y;
cursor: grab;
}
.contents-page .image-slider-viewport:active {
cursor: grabbing;
}
.contents-page .image-slider-track {
display: flex;
transition: transform 0.5s ease-out;
}
.contents-page .image-slider-page {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 1.25rem;
min-width: 100%;
}
.contents-page .image-slide {
position: relative;
height: 340px;
overflow: hidden;
border-radius: 20px;
background: #f5f5f5;
}
.contents-page .image-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.contents-page .image-slider-dots {
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
margin-top: 1.25rem;
}
.contents-page .image-slider-dot {
width: 8px;
height: 8px;
border: 0;
border-radius: 9999px;
background: #d8dde3;
transition: all 0.2s ease;
cursor: pointer;
}
.contents-page .image-slider-dot.is-active {
background: #18bceb;
}
@media (max-width: 768px) {
.contents-page .image-slider-page {
grid-template-columns: 1fr;
}
.contents-page .image-slide {
height: 280px;
}
}
.contents-page .content-group {
margin-top: 2.5rem;
padding: 0 2.5rem;
}
.contents-page .content-block + .content-block {
margin-top: 2.25rem;
}
.contents-page .block-title {
display: flex;
align-items: center;
gap: 0.5rem;
}
.contents-page .block-title-icon {
position: relative;
display: inline-block;
width: 27px;
height: 16px;
flex-shrink: 0;
}
.contents-page .block-title-icon .bubble {
position: absolute;
top: 0;
width: 16px;
height: 16px;
border-radius: 9999px;
}
.contents-page .block-title-icon .bubble-sky {
left: 0;
background: rgba(1, 172, 229, 0.4);
}
.contents-page .block-title-icon .bubble-green {
left: 7px;
background: rgba(109, 187, 79, 0.4);
}
.contents-page .block-title h4 {
font-size: 20px;
font-weight: 600;
color: #1a1a1a;
}
.contents-page .bullet-list {
margin-top: 1rem;
padding-left: 2rem;
color: #4f4f4f;
font-size: 16px;
line-height: 1.8;
list-style: disc;
}
.contents-page .table-wrap {
margin-top: 2rem;
overflow-x: auto;
}
.contents-page .contents-table {
width: 100%;
min-width: 860px;
border-collapse: collapse;
border: 1px solid #d8dde3;
text-align: center;
}
.contents-page .contents-table th,
.contents-page .contents-table td {
border: 1px solid #d8dde3;
padding: 0.75rem 1rem;
}
.contents-page .contents-table th {
font-size: 18px;
font-weight: 500;
color: #fff;
}
.contents-page .contents-table td {
background: #fff;
font-size: 16px;
color: #4f4f4f;
}
.contents-page .contents-table .th-blue {
background: #14a9d9;
}
.contents-page .contents-table .th-teal {
background: #39b2bd;
}
.contents-page .contents-table .th-mint {
background: #58b99a;
}
.contents-page .contents-table .th-green {
background: #70bf4b;
}
.contents-page .contents-table .th-teal-greywater {
background: #40b5a5;
}
.contents-page .contents-table th.th-gray,
.contents-page .global-table th.th-gray {
background: #bfc9d2;
color: #222;
}
.contents-page .contents-table th.th-blue,
.contents-page .global-table th.th-blue {
background: #14a9d9;
color: #fff;
}
.contents-page .global-table th.th-teal-2 {
background: #55bda5;
color: #fff;
}
.contents-page .global-table th.th-green-2 {
background: #6ab84e;
color: #fff;
}
.contents-page .bg-cyan {
background: #eaf7f8 !important;
}
.contents-page .bg-green {
background: #eaf8e6 !important;
}
.contents-page .global-case-sections {
padding-bottom: 120px;
}
.contents-page .greywater-example-sections {
padding-bottom: 120px;
}
.contents-page .sewage-example-sections {
padding-bottom: 120px;
}
.contents-page .global-content-group {
gap: 0;
}
.contents-page .content-rich-list {
margin-top: 1rem;
color: #4f4f4f;
font-size: 16px;
line-height: 1.8;
}
.contents-page .content-rich-list li + li {
margin-top: 0.5rem;
}
.contents-page .content-rich-list .depth-0 {
margin-left: 1.5rem;
padding-left: 0.25rem;
list-style: disc;
font-weight: 600;
color: #555;
}
.contents-page .content-rich-list .depth-1 {
margin-left: 2.125rem;
list-style: none;
color: #777;
}
.contents-page .content-rich-list .depth-1::before {
content: "- ";
}
.contents-page .content-rich-list .depth-2 {
margin-left: 3.25rem;
list-style: none;
color: #666;
}
.contents-page .content-rich-list .depth-3 {
margin-left: 3.5rem;
list-style: none;
color: #777;
}
.contents-page .global-notice-box,
.contents-page .global-description-box {
max-width: 1000px;
margin: 1.25rem auto 0;
border-radius: 20px;
background: #eaf7f8;
}
.contents-page .global-notice-box {
padding: 1.75rem 2rem;
}
.contents-page .global-description-box {
padding: 1.5rem 1.75rem;
}
.contents-page .global-notice-row {
display: flex;
align-items: flex-start;
gap: 0.5rem;
}
.contents-page .global-water-bullet {
width: 27px;
height: 33px;
margin-top: 0.25rem;
flex-shrink: 0;
}
.contents-page .global-notice-title {
display: block;
font-size: 26px;
font-weight: 800;
color: #007fa4;
}
.contents-page .global-text-dark {
color: #1a1a1a;
}
.contents-page .global-plain-list {
margin-top: 1.25rem;
padding-left: 1.25rem;
list-style: disc;
color: #555;
font-size: 16px;
line-height: 1.7;
}
.contents-page .global-plain-list li + li {
margin-top: 0.5rem;
}
.contents-page .global-table-wrap {
overflow-x: auto;
}
.contents-page .global-overview-table-wrap {
max-width: 1000px;
margin: 1.25rem auto 0;
}
.contents-page .global-table {
width: 100%;
text-align: center;
border-collapse: collapse;
}
.contents-page .global-table th {
padding: 0.75rem 1rem;
font-size: 17px;
font-weight: 700;
color: #fff;
}
.contents-page .overview-compare-table {
min-width: 760px;
}
.contents-page .overview-compare-table th {
padding-top: 1rem;
padding-bottom: 1rem;
font-size: 18px;
font-weight: 500;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
.contents-page .overview-compare-table td {
border: 1px solid #aeb9c2;
padding: 1rem;
font-size: 28px;
font-weight: 700;
color: #4f4f4f;
background: #fff;
}
.contents-page .overview-compare-table .country-cell {
font-size: 20px;
color: #333;
}
.contents-page .country-wrap {
display: flex;
align-items: center;
justify-content: center;
gap: 0.75rem;
}
.contents-page .country-flag {
width: 42px;
height: 28px;
object-fit: cover;
}
.contents-page .reuse-rate-table {
min-width: 960px;
}
.contents-page .reuse-rate-table th {
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
.contents-page .reuse-rate-table td {
border: 1px solid #aeb9c2;
padding: 0.75rem 1rem;
font-size: 15px;
color: #4f4f4f;
background: #fff;
}
.contents-page .reuse-rate-table .cell-strong {
font-weight: 600;
}
.contents-page .info-card-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 1.25rem;
margin-top: 2rem;
}
.contents-page .info-card {
border: 2px solid #01ace5;
border-radius: 8px;
background: #eaf5f5;
padding: 1.25rem;
}
.contents-page .info-card strong {
display: block;
font-size: 20px;
font-weight: 700;
color: #333;
}
.contents-page .info-card p {
margin-top: 0.75rem;
font-size: 15px;
line-height: 1.6;
color: #555;
}
.contents-page .global-table-padding {
margin-top: 2rem;
padding: 0 120px;
}
.contents-page .global-price-table td {
background: #fff;
}
.contents-page .global-accent {
color: #01ace5;
}
@media (max-width: 1200px) {
.contents-page .info-card-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.contents-page .global-table-padding {
padding: 0;
}
}
@media (max-width: 768px) {
.contents-page .global-notice-row {
flex-direction: column;
}
.contents-page .global-notice-title {
font-size: 22px;
}
.contents-page .info-card-grid {
grid-template-columns: 1fr;
}
}