/* =========================
   フォント統一（最重要）
========================= */
:root {
--nav-height: 0px;
--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;}
/****************************************************/

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: #fff;padding-top: var(--nav-height);}


/****************************************************/
/* PCのみ表示 */

.home-link {position: fixed;top: 20px;right: 20px;z-index: 9999;background: rgba(255,255,255,0.95);color: #0071bc;padding: 12px 20px;border-radius: 999px;text-decoration: none;font-weight: bold;box-shadow: 0 4px 12px rgba(0,0,0,.15);transition: .3s;}
.home-link:hover {background: #0071bc;color: #fff;}
/* スマホでは非表示 */
@media (max-width: 768px) {.home-link {display: none;}}

/****************************************************/
.catch-base{background-color: rgba(167, 220, 247, 0.8);clip-path: polygon(0 0,/* 左上 */100% 0%, /* 右上を下げる */100% 98%,/* 右下 */0 90%/* 左下より右下が下がる */);}
/*
**********************************************************************************************
タイトル画像サイズ
**********************************************************************************************
*/
.midasi01{height:130px;}
.midasi02,.midasi03,.midasi04,.midasi05,.midasi06,.midasi07{height:60px;}
/* スマホ */
@media (max-width:768px){
.midasi01{height:90px;}
.midasi02,.midasi03,.midasi04,.midasi05,.midasi06,.midasi07{height:30px;}
}

.jizoku{font-size:1.3rem; line-height:3.2rem; font-weight:400;}
@media (max-width:768px){
.jizoku{font-size:1.1rem; line-height:1.2rem;}
}
/*
**********************************************************************************************
写真回り込み
**********************************************************************************************
*/
.text-area{position: relative; font-size:1.2rem; line-height:2.2rem; /* 画像分の余白 */}
.float-bottom-right{float:right;width:220px;margin:-80px 0 20px 50px;text-align:center;}
.float-bottom-right img{width:100%;height:auto;display:block;}
.float-bottom-right figcaption{margin-top:.5rem;font-size:2rem;}
@media (max-width:768px){
.text-area{padding-bottom:0px; font-size:1.1rem;}
.float-bottom-right{float:none;width:180px;margin:20px auto;}
}
/*
**********************************************************************************************
背景
**********************************************************************************************
*/
.diagonal-bg {
background-color: rgba(140, 198, 63, 0.4);clip-path: polygon(0 0,/* 左上 */100% 3%, /* 右上を下げる */100% 100%,/* 右下 */0 97%/* 左下より右下が下がる */);padding: 4rem;}
.diagonal-bg-bl {
background-color: rgba(167, 220, 247, 0.4);clip-path: polygon(0 0,/* 左上 */100% 3%, /* 右上を下げる */100% 100%,/* 右下 */0 97%/* 左下より右下が下がる */);padding: 4rem;}

/*背景画像あり*/
.diagonal-bg-img {
display: flex;justify-content: center; /* 横中央 */align-items: center;/* 縦中央 */min-height: 500px;/* 高さ指定 */background:url("../SVG/bg-dood.svg");background-repeat: repeat;background-size: auto, 30px;/* 右側全体が上がる平行四辺形 */
clip-path: polygon(0 5%,/* 左上 */100% 0,/* 右上（上がる） */100% 95%, /* 右下（上がる） */0 100%/* 左下 */);
padding-top: 4rem;position: relative;}

/* 上に乗る白いボックス */
.text-box {background: #fff;border-radius: 20px;max-width: 800px;
/* 少し浮かせる */
box-shadow: 0 8px 20px rgba(0,0,0,0.08);margin: 0 auto; /* 中央寄せ */padding: 3rem 5rem 2rem 5rem;
}
li{font-size:1.2rem;margin-top:1rem;}

@media (max-width:768px){
.diagonal-bg-img {padding: 4rem 0 4rem;}
.text-box {padding: 2rem;}
li{font-size:1.1rem;margin-top:0.8rem;}
}
/*
**********************************************************************************************
給与・待遇テーブル
**********************************************************************************************
*/
.rounded-table {width: 100%;background-color: #0071bc;border-radius: 32px;padding: 16px;border-collapse: separate;border-spacing: 6px 28px;overflow: hidden;font-size:1.5rem;font-weight: bold;}
.rounded-table td {padding: 30px 30px;border-radius: 28px;text-align: left;background: #fff;color: #333;}
/* 左列だけ青 */
.rounded-table td:first-child {background-color: #0071bc;color: #fff;font-weight: bold;white-space: nowrap;width: 20%;text-align: right;padding-right: 20px;}

@media (max-width:768px){
.rounded-table{font-size:0.8em;}
.rounded-table td {padding: 10px 10px;border-radius: 10px;}
}
/*
**********************************************************************************************
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;}
}

/*
**********************************************************************************************
footer
**********************************************************************************************
*/
/* PCは消す */
@media (min-width:992px){body{padding-bottom:0;}}
.bottom-cta{position: fixed;left: 5px;right: 5px;bottom: 0px;border-radius:20px 20px 0 0;display: grid;grid-template-columns: 1fr 1fr;gap: 10px;background:rgba(135, 206, 235, 0.8);padding:10px;z-index: 9999;}
/* 下1つを横いっぱい */
.cta-wide{grid-column: 1 / 3;}
.cta-btn{display:block;border-radius:20px;overflow:hidden;}
.cta-btn img{width:100%;display:block;}
.cta-text-btn{grid-column: 1 / 3;display:flex;justify-content:center;align-items:center;min-height:64px;text-decoration:none;font-weight:700;font-size:1.1rem;letter-spacing:.05em;color:#fff;background: linear-gradient(135deg,#7bcf8f,#45b36b);border-radius:10px;padding:2px;}
/* tap */
.cta-text-btn:active{transform:scale(.97);}
/* body下余白 */
@media (max-width:991.98px){body{padding-bottom: 180px;}}
/*
