/* =========================
   フォント統一（最重要）
========================= */
:root {
--nav-height: 200px;
--bs-font-sans-serif:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
--bs-body-font-family: var(--bs-font-sans-serif);
/* フォントサイズ基準 */
--bs-body-font-size: 1.1rem; /* =16px */
--bs-body-line-height: 1.7;
}

/* =========================
   見出しのズレ防止
========================= */
h1, h2, h3, h4, h5 {font-weight: 700;line-height: 1.4;}
/* =========================
   Windowsの游ゴシック問題対策
========================= */
@supports (-ms-ime-align:auto) {body {font-family:"Noto Sans JP","Segoe UI",Meiryo,sans-serif;}}
/* =========================
   スマホ調整
========================= */
@media (max-width: 768px) {html {font-size: 13px; /* 少しだけ縮小 */ }}
/* =========================
   レイアウト安定化
========================= */
p {margin-bottom: 1rem;}
/****************************************************/
.menulist a{ color:#fff;}
.menulist a:hover{ background-color:#00b09b;}
.menulist i{ color:#EDE574;}

html {font-size:16px;  -webkit-text-size-adjust:100%;  text-size-adjust:100%;}
body{  color:#000000; font-family: var(--bs-font-sans-serif);-webkit-font-smoothing: antialiased; line-height:1.6; font-weight:400;/* Mac対策 */-moz-osx-font-smoothing: grayscale;text-rendering: optimizeLegibility;background: linear-gradient(to bottom,#c4e4d8 0%,#c4e4d8 70%,#d9ede1 79%,#f4f9ed 92%,#fffef2 100%);padding-top: var(--nav-height);}

/*
**********************************************************************************************
ナビゲーション
**********************************************************************************************
*/

/* ナビ初期状態（透明） */
#mainNav{transition: all .35s ease;padding: 1.4rem 0;background: transparent;z-index: 9999;}

/* スクロール後 */
#mainNav.scrolled{background: rgba(255,255,255,.92);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);box-shadow: 0 5px 20px rgba(0,0,0,.08);padding: .7rem 0;}

/* ロゴ */
.navbar-brand{font-size: 1.5rem;}

/* メニュー文字 */
.nav-link{position: relative;margin-left: 1rem;font-weight: 500;}

/* 下線アニメ */
.nav-link::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:#8bbfa5;transition:.3s;}
.nav-link:hover::after{width:100%;}

/* スマホメニュー開いた時 */
@media (max-width: 991px){
.navbar-collapse{margin-top: 1rem;padding: 1rem;background: rgba(255,255,255,.95);backdrop-filter: blur(12px);border-radius: 20px;box-shadow: 0 8px 20px rgba(0,0,0,.08);}
.nav-link{margin-left: 0;padding: .8rem 1rem;}
}

/*
**********************************************************************************************
タイトル画像サイズ
**********************************************************************************************
*/
.midasi01,.midasi02,.midasi03,.midasi04,.md-att1,.md-att2{height:80px;}

/* スマホ */
@media (max-width:768px){
.midasi01,.midasi02,.midasi03,.midasi04,.md-att1,.md-att2{height:70px;}
}
.txtpk{color:#e51373;}

/*
**********************************************************************************************
googlemap
**********************************************************************************************
*/
.map-wrap{padding:15px;background:white;border:4px dashed #9cc;border-radius:30px;}
.gmapbox{width:100%; height:449px; background:transparent url(../images/bg_googlemap.jpg) top center no-repeat; background-size:contain;}
#map_canvas0{ position:relative; max-width:100%; height:50vh;}

/* スマホ */
@media (max-width:768px){
#map_canvas0{ position:relative; max-width:100%; height:30vh;}
}

/*
**********************************************************************************************
注意書きBOX
**********************************************************************************************
*/
.fuwafuwa-box{position: relative;width:min(90%);margin:auto;padding:4rem;background: #fff3df;backdrop-filter: blur(8px);animation: morph 8s ease-in-out infinite;box-shadow: 0 10px 30px rgba(0,0,0,.08);/* 画像がはみ出せるように */overflow: visible;}

.content{position: relative;z-index: 2;}

/* 右下画像 */
.corner-image{position:absolute;height:auto;z-index:3;/* 画像も少し浮かせる */animation: float 4s ease-in-out infinite;}


.top-left{width:160px;left:-35px;top:-25px;}/* 左上 */
.top-right{width:200px;right:-25px;top:-25px;}/* 右上 */
.bottom-left{width:80px;left:50px;bottom:-20px;}/* 左下 */
.bottom-right{width:80px;right:-30px;bottom:-20px;}/* 右下 */
.bottom-right2{width:80px;right:-90px;bottom:-20px;}/* 右下2 */
.bottom-right3{width:70px;right:-30px;bottom:-20px;}/* 右下3 */

/* 枠の変形 */
@keyframes morph{
0%,100%{border-radius:53% 47% 62% 38% /40% 52% 48% 60%; }
50%{border-radius:45% 55% 38% 62% /55% 40% 60% 45%;}}
/* 画像ふわふわ */
@keyframes float{
0%,100%{transform: translateY(0);}
50%{transform: translateY(-12px);}
}

/* スマホ */
@media (max-width:768px){
.fuwafuwa-box{padding:2rem; }
.corner-image{width:80px;right:-10px;bottom:-10px;}

.top-left{width:120px;left:-35px;top:-25px;}/* 左上 */
.top-right{width:160px;right:-25px;top:-25px;}/* 右上 */
.bottom-left{width:70px;left:-40px;bottom:-20px;}/* 左下 */
.bottom-right{width:70px;right:-35px;bottom:-20px;}/* 右下 */
.bottom-right2{width:80px;right:-90px;bottom:-20px;}/* 右下2 */
.bottom-right3{width:50px;right:-40px;bottom:-20px;}/* 右下3 */
}

/*
**********************************************************************************************
footer
**********************************************************************************************
*/
.bottom-cta{position: fixed;left: 10px;right: 10px;bottom: 10px;display: flex;gap: 10px;z-index: 9999;}
/* ボタン */
.cta-btn{flex: 1;display:block;border-radius: 18px;overflow: hidden;}
.cta-btn:active{transform: scale(.97);}
.cta-btn img{width:100%;height:auto;display:block;}
/* 本文が隠れないよう余白 */
body{padding-bottom: 95px;}
/* PCは消す */
@media (min-width:992px){body{padding-bottom:0;}}
/*
