﻿/* ブラウザスタイルの初期化 */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box; /* 追加: paddingを含めた幅計算に統一 */
    background-color: transparent;
}
/* bodyに基本スタイルを集約（* への一括指定を廃止） */
body {
    color: #202f55;
    font-size: 19px;
    font-family: Verdana, Arial,"メイリオ","ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック",sans-serif;
}
p{
    line-height: 2em;
    margin-bottom: 25px;
}
/* ヘッダー */
#header{
    margin-bottom: 40px;
    }
#header a{
    text-decoration: none;
    }
    /* サイトタイトル */
h1, h1 a:link, h1 a:visited, h1 a:hover, h1 a:active{
    font-family: 'Bitter', serif;
    margin: 1px 0 10px;
    font-weight: normal;
    font-size: xx-large;
    color: #000000;
    text-decoration: none;
    }
/* コンテンツ */
.content{
    background: #fff;
    border-radius:20px;
    padding: 20px;
    margin-bottom: 30px;
    }
/*写真関連*/
img {max-width: 100% !important; height: auto !important;}
iframe {max-width: 100%;}
figcaption {font: smaller sans-serif;padding: 3px; text-align: center; color:#000;margin-top: 0px;font-size: 20px;}
figure{margin-bottom:25px;}
/* ページトップ画像 */
.img-pagetop {
    display: block;
    margin-bottom: 10px;
}
/*コンテンツ2 幅広に使う時用*/
.content2{
    padding: 20px 0; /* 修正: 単位なし → 20px */
    margin-bottom: 30px;
}
/*サムネイル 2列リスト*/
.fudathumblist{
    display: flex;
    flex-wrap: wrap;
    min-width: 100%;
}
.fudathumblist>div{   /*写真と文字の枠*/
    width: 50%;
    max-width: 50%;
    text-align: center;
    font-size: 0.9em;
    background-color: white;
    padding:10px 2px;
}
.imglist{   /*枠内で画像を100%幅表示*/
    width: 100%;
    margin-bottom: 8px;
}
 /*リストデザイン*/
    .list-2{padding:0;margin:0;}
    .list-2 li { list-style: none; border-bottom:2px dashed; border-color:#cdcdcd;  position: relative; margin:0.5em 0 !important; padding: 0 0 0.5em;}
    .list-2 li:last-child{ border:none;}
/* パンくずリスト全体のコンテナ */
nav[aria-label="パンくずリスト"] ol {
  display: flex;
  flex-wrap: wrap;       /* 画面が狭い時に折り返す */
  list-style: none;
  padding: 0;
  margin: 10px 0;
  font-size: 1.01rem;     /* 本文より少し小さめ */
  color: #666;
}

/* 各リスト項目 */
nav[aria-label="パンくずリスト"] li {
  display: flex;
  align-items: center;
}

/* リンクのスタイル */
nav[aria-label="パンくずリスト"] a {
  text-decoration: none;
  color: #007bff;        /* 一般的なリンク色 */
  transition: color 0.2s;
}

nav[aria-label="パンくずリスト"] a:hover {
  text-decoration: underline;
  color: #0056b3;
}

/* 区切り文字（ > ）のスタイル */
nav[aria-label="パンくずリスト"] span[aria-hidden="true"] {
  margin: 0 8px;
  color: #ccc;           /* 区切り文字は薄くする */
  user-select: none;     /* テキスト選択できないようにする */
}

/* 現在のページ（最後の項目） */
nav[aria-label="パンくずリスト"] li:last-child {
  color: #333;
  font-weight: bold;     /* 現在地を強調 */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;   /* 長すぎる場合は「...」にする */
}

/* 見出しなど */
.h1span{font-size: 18px;}
h2{
    border-bottom: 2px solid;
    font-weight: bold;
    font-size: 21px;
    padding: 0 0 5px;
    margin: 0 0 15px;
    margin-top:50px;
    margin-bottom:25px;
    background: url(icon.gif) no-repeat 100% 0%;
    }
.h2-pagetop{margin-top:20px;}
h3{
    border-bottom: 2px dotted;
    font-weight: bold;
    font-size: 19px;
    padding: 0 0 5px;
    margin: 0 0 15px;
    margin-top:50px;
    margin-bottom:25px;
    background: url(icon.gif) no-repeat 100% 0%;
    }
em{
    font-style: normal;
    font-weight: bold;
    }
hr{
    border: none;
    border-bottom: 1px dotted;
    margin: 10px;
    }
/* リンク設定 */
a:hover,
a:active{
    opacity:0.5;
    }
.h3link{text-decoration: none;}
.GuideLink{color: blue;}
/* 修正: 重複定義を統合、タイポ(20ps)を修正 */
.go-top{
    margin-top: 30px;
    margin-bottom: 15px;
}
/*テーブル 札所画像一覧*/
.imglitable{text-align: center;}
.imglitd{width: 50%;padding-bottom:10px;}
/*テーブル 札所一覧*/
.tdcell{
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 5px;
    white-space: nowrap;
}
/* テーブル全般スタイル */
table {
    width: 100%;
    border-collapse: collapse;
}
table th {
    text-align: left;
    font-weight: normal;
    padding: 10px;
    border-bottom: 1px solid #ddd;
}
table td {
    padding: 10px;
    border-bottom: 1px solid #ddd;
}
/*目次デザイン*/
div.menue-box{
    display: inline-block;
    /*width: 400px;*/
    padding-top: 1em;
    padding-bottom: 1em;
    padding-left: 1em;
    padding-right: calc(1em + 12px);
    margin-top: 50px;
      border-left: solid 12px gray;
}
.menue-list{
    list-style: none;
    line-height: 2.5em;
}
/*Google Map レスポンシブ*/
.map-wrap {
  max-width: 100%; /* ここに横幅を指定 */
}
.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 100%; /* 1:1 正方形 */
}
/* Google Mapのiframe */
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* 枠組み レスポンシブ対応 */
#container {
    margin: 0 auto;
    padding: 0 10px;
    max-width: 900px;
    }
.onerow {
    clear: both;
    padding: 0;
    display: flex;
    justify-content: center;
    }
.onerow::after{
    visibility: hidden; display: block;font-size: 0;content: " ";clear: both;height: 0;
    }
.col7 {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
    }
#header {
    width: 98%;
    margin: 30px 0;
    text-align: center;
    }
.last, .col12{
    margin: 0;
    }
.footer{
	text-align:center;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 10px;
}
#site-header-link {
    font-family: 'Shippori Mincho', 'Times New Roman', serif;
    font-size: 16px;
    font-weight: 500;
    color: #202f55;
    text-decoration: none;
    letter-spacing: 0.08em;
}

#site-header-link:hover {
    opacity: 0.6;
}
@media screen and (max-width: 600px) {
    body {
        font-size: 18px;
    }
    .fudathumblist > div {
        width: 50%;
        max-width: 50%;
    }
}

/* 問い合わせフォーム */
.form-wrap {
  margin-top: 32px;
}

.form-wrap iframe {
  width: 100%;
  height: 1000px;
  border: none;
  display: block;
}

.form-link {
  margin-top: 24px;
  font-size: 0.85rem;
}



/* ==================
   sticky ヘッダー
   ================== */
#site-header {
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid #e0ddd8;
    padding: 0 0px;
    height: 44px;
    display: flex;
    align-items: center;
}

#site-header-link {
    font-family: 'Shippori Mincho', 'Times New Roman', serif;
    font-size: 16px;
    font-weight: 500;
    color: #202f55;
    text-decoration: none;
    letter-spacing: 0.08em;
}

#site-header-link:hover {
    opacity: 0.6;
}
