@charset "utf-8";
/* CSS Document */


/* 車をご利用の場合 全体コンテナ */
#car {
  width: 100%;
  max-width: 800px;
  margin: 30px auto;
  padding: 0 15px;
  box-sizing: border-box;
}

#car h3 {
  font-size: 1.4rem;
  color: #4a3b32;
  border-bottom: 2px solid #a89484;
  padding-bottom: 8px;
  margin-bottom: 20px;
}

/* アコーディオン 外枠 */
.s_02 {
  margin-bottom: 15px;
}

.accordion_one {
  background: #ffffff;
  border: 1px solid #e0dbd5;
  border-radius: 4px;
  margin-bottom: 12px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.03);
  overflow: hidden;
}

/* アコーディオン 見出し部分 */
.accordion_header {
  position: relative;
  padding: 16px 50px 16px 20px;
  font-weight: bold;
  color: #333333;
  background: #fdfbfa;
  cursor: pointer;
  transition: background 0.3s;
  user-select: none;
}

.accordion_header:hover {
  background: #f5f0eb;
}

/* 開閉時の矢印アイコン枠 */
.i_box {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
}

.one_i {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

/* プラス・マイナス記号のCSS表現 */
.one_i::before,
.one_i::after {
  content: "";
  position: absolute;
  background: #8a766a;
  transition: transform 0.3s;
}
/* 横棒 */
.one_i::before {
  top: 11px;
  left: 4px;
  width: 16px;
  height: 2px;
}
/* 縦棒 */
.one_i::after {
  top: 4px;
  left: 11px;
  width: 2px;
  height: 16px;
}

/* オープン状態（マイナスにする） */
.accordion_header.open .one_i::after {
  transform: rotate(90deg);
  opacity: 0;
}

/* アコーディオン 中身のアニメーション用エリア */
.accordion_inner {
  display: none;
  background: #fafafa;
  border-top: 1px solid #edf7f5;
  padding: 20px;
}

.box_one {
  width: 100%;
}

/* ルート案内リスト */
.submenu {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
}

.submenu__item {
  padding: 8px 0;
  font-size: 1rem;
  color: #444444;
  line-height: 1.6;
}

.submenu__item span {
  font-weight: bold;
  color: #d9534f;
}

.submenu__item img {
  max-width: 100%;
  height: auto;
  margin-top: 15px;
  border: 1px solid #e0e0e0;
}

/* 文字化けしない安全なルート矢印の描画（☟の代わり） */
.submenu__item.arrows {
  padding: 4px 0;
  height: 20px;
  position: relative;
}

.submenu__item.arrows::before {
  content: "↓";
  font-size: 1.3rem;
  font-weight: bold;
  color: #a89484;
}

/* 車と公共交通機関の全体幅を統一 */
#car, #train {
  width: 100%;
  max-width: 800px;
  margin: 30px auto;
  padding: 0 15px;
  box-sizing: border-box;
}

#car h3, #train h3 {
  font-size: 1.4rem;
  color: #4a3b32;
  border-bottom: 2px solid #a89484;
  padding-bottom: 8px;
  margin-bottom: 20px;
}
/* ブラウザ標準の三角形矢印を消す設定 */
.accordion_header::-webkit-details-marker {
  display: none;
}
.accordion_header {
  display: block;
  list-style: none;
}

/* 最初は中身を非表示にする設定 */
.accordion_one .accordion_inner {
  display: none;
}

/* アコーディオンが開いた（open属性がついた）時の連動設定 */
.accordion_one[open] .accordion_inner {
  display: block;
}

/* ＋部分を－部分に変形させる設定 */
.accordion_one[open] .one_i::after {
  transform: rotate(90deg);
  opacity: 0;
}

/* 雪道案内・注意喚起警告ボックス */
.winter-warning-box {
  width: 100%;
  max-width: 800px;
  margin: 30px auto 10px auto;
  padding: 20px;
  background-color: #fff5f5; /* 薄い赤色の背景 */
  border: 2px solid #ffcccc; /* やわらかい赤の枠線 */
  border-left: 6px solid #d9534f; /* 左側だけ太い赤線にして強調 */
  border-radius: 4px;
  box-sizing: border-box;
}

/* 警告ボックスのタイトル */
.winter-warning-box .warning-title {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
}

.winter-warning-box .warning-icon {
  font-size: 1.6rem;
  margin-right: 10px;
}

.winter-warning-box .warning-title h4 {
  font-size: 1.2rem;
  font-weight: bold;
  color: #d9534f; /* 警告色の赤 */
  margin: 0;
  padding: 0;
}
/* 注意事項の箇条書き */
.winter-warning-box .warning-list {
  margin: 0;
  padding-left: 20px;
  list-style-type: disc;
}

.winter-warning-box .warning-list li {
  margin-bottom: 8px;
  font-size: 0.9rem;
}

.winter-warning-box .warning-list li:last-child {
  margin-bottom: 0;
}

/* 警告ボックスのタイトル */
.winter-warning-box2 .warning-title2 {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
}

.winter-warning-box2 .warning-icon2 {
  font-size: 1.6rem;
  margin-right: 10px;
}

.winter-warning-box2 .warning-title2 h4 {
  font-size: 1.2rem;
  font-weight: bold;
  color: #d9534f; /* 警告色の赤 */
  margin: 0;
  padding: 0;
}

/* 警告ボックスの本文 */
.winter-warning-box2 .warning-content2 {
	color: #006600;
	font-size: 0.95rem;
	line-height: 1.7;
	font-weight: bold;
	margin-right: auto;
	margin-left: auto;
}

.winter-warning-box2 .main-alert2 {
	font-size: 1.05rem;
	font-weight: bold;
	margin-top: 0;
	margin-bottom: 15px;
	color: #333333;
	margin-right: auto;
	margin-left: auto;
}

/* 強調文字 */
.winter-warning-box2 .warning-content2 strong {
  color: #d9534f;
  background: linear-gradient(transparent 60%, #ffeedd 60%); /* 文字の下側に薄いオレンジの網掛け */
  padding: 0 2px;
}

/* 注意事項の箇条書き */
.winter-warning-box2 .warning-list2 {
  margin: 0;
  padding-left: 20px;
  list-style-type: disc;
}

.winter-warning-box2 .warning-list2 li {
  margin-bottom: 8px;
  font-size: 0.9rem;
}

.winter-warning-box2 .warning-list2 li:last-child {
	margin-bottom: 0;
	margin-right: auto;
	margin-left: auto;
}

#main #googlemap {
	height: 50px;
	width: 50px;
}

#main .map-canvas {
	background-color: #eee;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	display: block;
	height: 300px;
	width: 300px;
	}
#main .map-canvas iframe {
	height: 100%;
	width: 100%;
	display: block;
	border: 2px solid #D2B48C;
}


/* スマートフォン向けの調整 */
@media screen and (max-width: 480px) {
  .winter-warning-box {
    padding: 15px;
    margin: 20px auto 5px auto;
  }
  .winter-warning-box .warning-title h4 {
    font-size: 1.1rem;
  }
  .winter-warning-box .main-alert {
    font-size: 0.95rem;
  }
  /* カーナビ設定案内ボックス */
.nav-info-content {
  padding: 10px 5px;
  text-align: left; /* リスト形式ではないため左寄せで見やすくします */
}

.nav-alert-text {
  color: #c9302c; /* 注意を促す濃い赤 */
  font-size: 0.95rem;
  line-height: 1.6;
  margin-top: 0;
  margin-bottom: 20px;
}

.nav-sub-title {
  font-size: 1.05rem;
  font-weight: bold;
  color: #4a3b32;
  margin-bottom: 10px;
  border-left: 4px solid #a89484;
  padding-left: 8px;
}

.nav-method-list {
  list-style-type: square;
  padding-left: 20px;
  margin-bottom: 20px;
}

.nav-method-list li {
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 12px;
  color: #444444;
}

.nav-method-list li strong {
  color: #333333;
}

.nav-help-text {
  font-size: 0.9rem;
  background: #f5f5f5;
  padding: 10px;
  border-radius: 4px;
  color: #555555;
  margin-bottom: 0;
}

.nav-help-text a {
  color: #4a3b32;
  font-weight: bold;
  text-decoration: underline;
}
/* スマートIC・ナビ案内内の小見出しの調整 */
#ic-navi-guide .submenu__item[style*="font-weight: bold"] {
  font-size: 1.05rem;
  text-align: left;
  padding-left: 10px;
  margin-bottom: 10px;
}

/* カーナビ内の太字強調 */
#ic-navi-guide strong {
  color: #333333;
  background: linear-gradient(transparent 60%, #fff0db 60%);
  padding: 0 4px;
}
/* スマートIC・ナビ案内内の小見出しの調整 */
#ic-navi-guide .submenu__item[style*="font-weight: bold"] {
  font-size: 1.05rem;
  text-align: left;
  padding-left: 10px;
  margin-bottom: 10px;
  color: #4a3b32;
}

/* カーナビ内の太字強調 */
#ic-navi-guide strong {
  color: #333333;
  font-weight: bold;
  background: linear-gradient(transparent 60%, #fff0db 60%);
  padding: 0 4px;
}

#main #gmap {
	width: 30%;
	float: right;
	height: 400px;
	display: block;
	margin-right: 40px;
	margin-top: 50px;
}
#car h3 {
  font-size: 1rem;
  color: #4a3b32;
  border-bottom: 2px solid #a89484;
  padding-bottom: 8px;
  margin-bottom: 20px;
}
#train h3 {
  font-size: 1rem;
  color: #4a3b32;
  border-bottom: 2px solid #a89484;
  padding-bottom: 8px;
  margin-bottom: 20px;
}
}
