/* トップページ デザイン調整案：元のCSSを保持し、上書きのみ */
:root { --ink:#263238; --gold:#bc8938; --line:#e6e7e5; --paper:#f7f8f7; }
html { scroll-behavior:smooth; }
body { height:auto; color:var(--ink); background:#fff; font-family:"Noto Sans JP", "Yu Gothic", sans-serif; }
/* 元の固定背景画像を使い、明暗を残したまま青系に着色 */
body::before {
  background-image: url("image/bg2-img.jpg");
  background-color: #438dbd;
  background-blend-mode: luminosity;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
}
.layer { margin-bottom:0; }
.layer-bg img { display:block; }
main { background:transparent; padding:72px 0 96px; }
.news-0 { height:2000px; position:relative; }
.news-1 { max-width:1160px; width:calc(100% - 48px); margin:0 auto 80px; padding:0; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:0 12px 42px rgba(24,35,38,.06); overflow:hidden; }
.news-2 { display:grid; grid-template-columns:180px minmax(0,1fr); justify-content:stretch; border-radius:0; }
.news-txt { font-family:"DM Serif Display", Georgia,serif; font-size:38px; color:var(--ink); padding:35px 25px 0 38px; letter-spacing:.02em; }
.news-list { border-radius:0; min-width:0; }
.news-list .item { align-items:center; gap:14px; padding:20px 26px 20px 0; border-bottom:1px solid var(--line); }
.news-list .item:last-child { border-bottom:0; }
.news-list .item .date { min-width:78px; color:#7b858b; font-size:14px; white-space:nowrap; }
.news-list .item .category_1,.news-list .item .category_2,.news-list .item .category_3,.news-list .item .category_4,.news-list .item .category_5,.news-list .item .category_6 { min-width:80px; }
.news-list .item .category_1 span,.news-list .item .category_2 span,.news-list .item .category_3 span,.news-list .item .category_4 span,.news-list .item .category_5 span,.news-list .item .category_6 span { color:#75521d; background:#f5ead7; border-radius:50px; padding:7px 12px; font-size:11px; font-weight:600; }
.news-list .item .title { font-family:"Noto Sans JP",sans-serif; font-size:14px; line-height:1.7; }
.news-list .item .title a { color:var(--ink); }
.news-list .item .title a:hover { color:#9a6925; text-decoration:underline; }
a.btn_03 { position:relative; top:auto; left:auto; transform:none; width:fit-content; min-width:172px; height:auto; padding:14px 30px; margin:14px auto 24px; box-sizing:border-box; border:1px solid var(--gold); background:#fff; color:#8d6022; font-size:13px; }
a.btn_03:hover { background:var(--gold); color:#fff; border-color:var(--gold); }
.box1 { width:calc(100% - 48px); max-width:1160px; margin:0 auto; padding:34px 42px; box-sizing:border-box; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:0 12px 42px rgba(24,35,38,.05); position:sticky; top:50px; animation:zoomIn linear both; animation-timeline:scroll(); animation-range:cover 80% cover 100%; gap:30px; }
.item_1 { flex:1 1 58%; width:auto; padding:0; font-family:"Noto Sans JP",sans-serif; font-size:14px; font-weight:400; line-height:2.1; color:#344148; text-align:left; }
.item_2 { flex:0 1 38%; width:auto; padding:0; text-align:center; }
.item_2 img { width:100%; max-width:390px; height:auto; }
#footer { height:auto; margin:0; padding:58px 24px 50px; background:#f1f2f0; text-align:center; }
#footer .primary { padding:0; }
#footer .primary .flex { justify-content:center; }
#footer .primary .flex .left { width:auto; }
#footer .primary .flex .left .logo { font-size:22px; font-weight:700; letter-spacing:.05em; }
#footer .primary .flex .left .address { margin-top:14px; font-size:13px; line-height:1.9; }
footer { background:#f1f2f0; }
footer svg { display:block; width:100%; height:auto; max-height:none; }
.wave {
    animation: wave 3s linear infinite;
    fill: #246FA8;
}
.drop {
    fill: transparent;
    animation: drop 5s ease infinite normal;
    stroke: #246FA8;
    stroke-width: 0.5;
    opacity: .6;
    transform: translateY(80%);
}
.copyright { padding:14px 12px 20px; background:#f1f2f0; font-size:12px; }
@media(max-width:767px) {
 main { padding:42px 0 60px; }
 .news-1,.box1 { width:calc(100% - 28px); margin-bottom:42px; border-radius:14px; }
 .news-2 { display:block; }
 .news-txt { padding:25px 22px 12px; font-size:30px; }
 .news-list .item { display:grid; grid-template-columns:75px 1fr; gap:8px 10px; padding:15px 20px; }
 .news-list .item .date { min-width:0; }
 .news-list .item .category_1,.news-list .item .category_2,.news-list .item .category_3,.news-list .item .category_4,.news-list .item .category_5,.news-list .item .category_6 { min-width:0; }
 .news-list .item .title { grid-column:1/-1; margin:0; font-size:13px; }
 a.btn_03 { margin:18px auto 24px; }
 .box1 { flex-direction:column; padding:28px 22px; gap:24px; }
 .item_1 { width:100%; padding:0; font-size:13px; line-height:1.95; }
 .item_2 { width:100%; padding:0; }
 .item_2 img { width:min(100%,300px); }
 #footer { padding:42px 18px; }
 #footer .primary .flex .left { width:100%; }
 #footer .primary .flex .left .address { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .animation,.txt1 p,.txt2 p,.txt3 p { animation:none; transform:none; } }
/* フッターの波：元の大きさと動きを維持 */
footer svg {
    display: block;
    width: 100%;
    height: auto;
    max-width: none;
}

/* 波の色だけ青に変更 */
footer .wave {
    fill: #246FA8;
}

/* 水滴の色 */
footer .drop {
    stroke: #246FA8;
}
/* パララックス復元：旧CSSのスクロール演出を使用 */
@media (prefers-reduced-motion: reduce) {
  .box1 { animation:none; }
  .news-1 { opacity:1; visibility:visible; transform:none; }
}


/* 2026 トップページ：青い塗料の奥行きと上品なゴールドのアクセント */
:root { --gold:#bf914a; --ink:#243847; --line:#dbe6ed; }
/* 固定背景は維持し、青い光のグラデーションを重ねる */
body::before {
  background-image:
    radial-gradient(ellipse at 18% 25%, rgba(173,225,251,.35), transparent 48%),
    linear-gradient(125deg, rgba(8,54,95,.18), rgba(45,143,196,.13) 55%, rgba(5,54,96,.25)),
    url("image/bg2-img.jpg");
  background-color:#438dbd;
  background-blend-mode:screen, multiply, luminosity;
}
/* 白いカードに細い金のラインと、塗料のような淡い光沢 */
.news-1, .box1 {
  border:1px solid rgba(208,224,233,.92);
  box-shadow:0 18px 48px rgba(9,47,78,.16), 0 3px 12px rgba(13,56,84,.08);
}
.news-1::before, .box1::before {
  content:""; position:absolute; top:0; left:26px; right:26px; height:4px;
  background:linear-gradient(90deg, #bd8b3a, #f2d69a 42%, #6bb9d9 75%, #216eaa);
  border-radius:0 0 6px 6px; pointer-events:none;
}
.news-2 { background:linear-gradient(110deg, #f2f8fc 0%, #fff 27%, #fff 100%); }
.news-txt { position:relative; color:#173e5b; }
.news-txt::after { content:""; display:block; width:52px; height:3px; margin-top:14px; background:linear-gradient(90deg,#c69b54,#e6c88b); border-radius:4px; }
.news-list .item { transition:background-color .25s ease; }
.news-list .item:hover { background:rgba(228,243,250,.5); }
.news-list .item .title a:hover { color:#1a6c9d; }
.news-list .item .category_1 span,.news-list .item .category_2 span,.news-list .item .category_3 span,.news-list .item .category_4 span,.news-list .item .category_5 span,.news-list .item .category_6 span {
  background:#e6f2f8; color:#235f83; border:1px solid #c7e1ed;
}
a.btn_03 { border-color:#bc914e; background:linear-gradient(120deg,#fff,#fcf6e9); color:#805b26; box-shadow:0 4px 14px rgba(113,83,40,.10); }
a.btn_03:hover { background:#bd914d; border-color:#bd914d; color:#fff; }
.box1 { isolation:isolate; overflow:hidden; background:linear-gradient(115deg,#fff 0%,#fff 53%,#eaf6fc 100%); }
.box1::after {
  content:""; position:absolute; z-index:-1; width:460px; height:460px;
  right:-140px; bottom:-285px; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle at 35% 30%,rgba(164,218,245,.6),rgba(63,153,202,.14) 55%,transparent 70%);
}
.item_2 img { filter:drop-shadow(0 12px 18px rgba(27,88,127,.12)); }
#footer { background:linear-gradient(180deg,#f3f8fb 0%,#eaf2f8 100%); border-top:1px solid #d6e7f0; }
footer { background:#eaf2f8; }
.copyright { background:#eaf2f8; }
/* 元のSVG波のサイズとアニメーションは変更しない */
footer svg { display:block; width:100%; height:auto; max-height:none; }
footer .wave { fill:#246fa8; }
footer .drop { stroke:#246fa8; }
@media(max-width:767px) {
  .news-1::before,.box1::before { left:18px; right:18px; }
  .news-txt::after { margin-top:9px; }
  .box1::after { width:320px; height:320px; right:-110px; bottom:-190px; }
}

/* 2026 秋冬：明るいアプリコット × ミントグリーン */
:root { --ink:#34443d; --gold:#479b7e; --line:#e5eadf; --paper:#fffaf3; }
/* 固定背景と元の塗料画像を保持。白く柔らかい光を重ねる */
body::before {
  background-image:
    radial-gradient(ellipse at 22% 18%,rgba(255,255,243,.48),transparent 58%),
    linear-gradient(125deg,rgba(255,228,185,.38),rgba(255,245,218,.30) 52%,rgba(255,208,157,.32)),
    url("image/bg2-img.jpg");
  background-color:#ffe6b8;
  background-blend-mode:screen,screen,luminosity;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  position:fixed;
}
main { background:transparent; }
.news-1,.box1 {
  border-color:rgba(226,235,219,.95);
  box-shadow:0 18px 44px rgba(122,91,52,.11),0 4px 14px rgba(72,110,83,.06);
}
.news-1::before,.box1::before { background:linear-gradient(90deg,#e9ad62 0%,#ffe0a6 38%,#a9d9bf 72%,#70bca0 100%); }
.news-2 { background:linear-gradient(110deg,#fff9ef 0%,#fff 30%,#fff 100%); }
.news-txt { color:#397d65; }
.news-txt::after { background:linear-gradient(90deg,#5fb494,#b7dfb7); }
.news-list .item:hover { background:rgba(230,248,237,.62); }
.news-list .item .title a:hover { color:#357e64; }
.news-list .item .category_1 span,.news-list .item .category_2 span,.news-list .item .category_3 span,.news-list .item .category_4 span,.news-list .item .category_5 span,.news-list .item .category_6 span {
  background:#e8f6ec; color:#316e56; border:1px solid #c5e5d1;
}
a.btn_03 { border-color:#68ad91; background:linear-gradient(120deg,#fff,#f0fbf2); color:#367a61; box-shadow:0 4px 14px rgba(74,141,105,.12); }
a.btn_03:hover { background:#459a79; border-color:#459a79; color:#fff; }
.box1 { background:linear-gradient(115deg,#fff 0%,#fff 50%,#f0faee 100%); }
.box1::after { background:radial-gradient(circle at 35% 30%,rgba(184,230,197,.68),rgba(108,192,156,.16) 55%,transparent 70%); }
.item_1 { color:#394b42; }
.item_2 img { filter:drop-shadow(0 12px 18px rgba(74,127,89,.10)); }
#footer { background:linear-gradient(180deg,#fffaf0 0%,#f1f8e9 100%); border-top-color:#e4ead6; }
footer,.copyright { background:#f1f8e9; }
/* SVGのサイズ、波と水滴のアニメーション定義は元のCSSを使用 */
footer svg { display:block; width:100%; height:auto; max-height:none; }
footer .wave { fill:#78bda0; }
footer .drop { stroke:#78bda0; }
/* ハケライオンのスクロール演出を少し短くする */
.news-0 {
    height: 1200px;
}
/* 2026-11-04: footer horizontal overflow correction */
#footer { box-sizing: border-box; }
