body{

margin:0;

background:
linear-gradient(rgba(250,250,252,0.6),rgba(245,245,248,0.6)),
url("../img/photos.jpg");

background-size:cover;
background-position:center;
background-repeat:no-repeat;
background-attachment:fixed;

color:#444444;

}

.t-image{

width:100px;

margin:0 auto;
margin-top:-90px;

display:block;

}


/* サイドバー */

.sidebar{

position:fixed;
left:0;
top:0;

width:180px;
height:100vh;
box-sizing:border-box;

background:rgba(255,255,255,0.7);

backdrop-filter:blur(6px);

border-right:1px solid rgba(130,130,140,0.38);

padding-top:40px;

overflow-y:auto;

}

/* イメージ */

.map-image{

width:100%;
max-width:100%;
height:auto;

display:block;

border:1px solid rgba(130,130,140,0.38);

/* 少し雰囲気出す */
box-shadow:
0 0 10px rgba(120,120,130,0.2);

}


/* ロゴ */

.logo{

text-align:center;
color:#555555;

font-size:26px;

margin-bottom:40px;

letter-spacing:4px;

text-shadow:
0 0 4px rgba(120,120,130,0.5),
0 0 10px rgba(80,80,90,0.4);

}

.logo2{

text-align:center;
color:#555555;

font-size:15px;

margin-top:30px;
padding-bottom:30px;

letter-spacing:4px;

}


/* メニュー */

.menu{

list-style:none;
padding:0;
margin:0;

}


/* 大項目 */

.menu-main{

display:block;

padding:12px 20px;

margin:8px 15px;

color:#333333;

text-decoration:none;
font-size:15px;

letter-spacing:2px;

border:1px solid rgba(130,130,140,0.38);

background:rgba(235,235,240,0.9);

transition:0.3s;

}

.menu-main:hover{

color:#ffffff;

background:rgba(120,120,130,0.6);

border-color:#c266ff;

box-shadow:
0 0 8px rgba(180,180,190,0.5),
0 0 18px rgba(180,180,190,0.3),
0 0 10px rgba(194,102,255,0.4);

}


/* 小項目 */

.submenu a{

display:inline-block;

color:#333333;

text-decoration:none;

font-size:13px;

transition:0.25s;

}

.submenu a:hover{

transform:translateX(6px);

}


/* 本文 */

.content{

margin-left:190px;

padding:80px;

max-width:900px;

}


/* セクション */

.section{

margin-top:80px;
margin-bottom:80px;

padding:40px;

background:rgba(235,235,240,0.85);

border:1px solid rgba(130,130,140,0.38);

box-shadow:
0 0 10px rgba(120,120,130,0.2),
0 0 25px rgba(120,120,130,0.1);

font-size:13px;
line-height:1.9;

opacity:1;
transform:none;

}

h2{

color:#333333;

margin-top:0;

}

h3{

color:#000000;
letter-spacing:2px;
font-weight:700;

margin-bottom:25px;
padding-bottom:14px;

position:relative;
text-align:center;

text-shadow:
-1px -1px 0 #ffffff,
1px -1px 0 #ffffff,
-1px 1px 0 #ffffff,
1px 1px 0 #ffffff;
0 0 2px rgba(255,255,255,0.6);

}

.pb{
color:#8c25cc;
font-weight:700;
}

.om{
background:linear-gradient(transparent 60%, #ffb347 60%);
}

/* ===== サイト用テーブル（統一版） ===== */

.site-table{

width:100%;
border-collapse:collapse;

background:rgba(240,240,245,0.85);

font-size:13px;
line-height:1.9;

/* 大項目と同じ発光 */
box-shadow:
0 0 8px rgba(180,180,190,0.5),
0 0 18px rgba(180,180,190,0.3);

border-radius:0;
overflow:visible;

}

.site-table td{

/* ★ 大項目と同じ枠色 */
border:1px solid rgba(130,130,140,0.38);

padding:10px;

vertical-align:top;

color:#444444;

}

/* ===== 1行目（大項目と同じ見た目） ===== */

.site-table tr:first-child td{

background:rgba(120,120,130,0.6);
color:#eeeeee;

text-align:center;
font-weight:bold;

}

.site-table.header tr:first-child td{

background:none;
color:#444444;
text-align:left;
font-weight:normal;

}

.site-table td:first-child{

width:30%;
color:#444444;

}

/* ===== シンプルテーブル（透明） ===== */

.simple-table{

border-collapse:collapse;
width:100%;

font-size:13px;
line-height:1.9;

background:transparent;

}

.simple-table td{

border:none;

padding:6px 10px;

background:transparent;

}


/* ===== フォームボタン（メニューと同じ） ===== */

.form-btn{

display:inline-block;

padding:10px 20px;
margin:8px;

color:#333333;

text-decoration:none;
font-size:14px;
letter-spacing:2px;

border:1px solid rgba(130,130,140,0.38);
background:rgba(235,235,240,0.9);

transition:0.3s;
cursor:pointer;

}

.form-btn:hover{

color:#ffffff;

background:rgba(80,80,90,0.6);

border-color:#c266ff;

box-shadow:
0 0 8px rgba(194,102,255,0.6),
0 0 16px rgba(194,102,255,0.4);

}

/* ===== フォーム入力欄 ===== */

input[type="text"],
textarea,
select{

width:100%;
padding:8px;

background:rgba(255,255,255,0.95);
color:#333333;

border:1px solid rgba(130,130,140,0.38);

outline:none;

transition:0.25s;

box-sizing:border-box;

}

/* フォーカス時（入力中） */
input[type="text"]:focus,
textarea:focus,
select:focus{

border-color:#c266ff;

box-shadow:
0 0 6px rgba(194,102,255,0.5);

}

/* ラジオ・チェックは軽く調整 */
input[type="radio"],
input[type="checkbox"]{

accent-color:#c266ff;

}


/* =========================
スマホ対応
========================= */

@media screen and (max-width:700px){
body{
background-attachment:scroll;
}

/* サイドバー */

.sidebar{

position:relative;
width:100%;
height:auto;

border-right:none;
border-bottom:1px solid rgba(130,130,140,0.38);

padding-top:20px;

}

.submenu{
display:none;
}

/* ロゴ */

.logo2{
display:none;
}


/* メニュー */

.menu{

display:flex;
flex-wrap:wrap;
justify-content:center;

}


/* メニュー項目 */

.menu-main{

margin:6px;
padding:10px 14px;

font-size:13px;

}


/* 本文 */

.content{

margin-left:0;

padding:30px 20px;

max-width:100%;

}


/* セクション */

.section{

margin-top:40px;
margin-bottom:40px;

padding:25px;

font-size:14px;

}


/* 見出し */

h2{

font-size:20px;

}

h3{

font-size:18px;

}

/* テーブル */

.site-table{

font-size:14px;

}

.site-table td{

padding:8px;

}

.simple-table{
font-size:14px;
}

}