@charset "utf-8";


/* ==========================================================================
   　　　　　　　　　　　　基礎設定
   ========================================================================== */
/* ===== reset ===== */
/*
* Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
* http://cssreset.com
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, canvas, details, embed, figure, figcaption, hgroup, menu, nav, output, ruby, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
html, body {
	width: 100%;
	height: 100%;
}
body {
	color: #000;
	font-size: 1em;
	line-height: 1.7em;
	letter-spacing: 1px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/* ページにより背景色を変更 */
.page-id-3838 {
	background-color: #d8f0d2;
}
.page-id-12670 {
	background-color: #d8f0f6;
}
.page-id-12673 {
	background-image: url(../img/sights/retro/bg_contents.jpg);
	background-attachment: fixed;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
	border: 0;
	vertical-align: baseline;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}
p {
	text-align: justify;/*text-indent: 1em;*/
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
th {
	text-align: left;
}
/* ===== リンク設定 ===== */
a {
	text-decoration: none;
}
.page-id-3838 a {
	color: #004c1e;
}
.page-id-12670 a {
	color: #053a5f;
}
.page-id-12673 a {
	color: #670018;
}
a:hover {
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
.page-id-3838 a:hover {
	color: #7fa58e;
}
.page-id-12670 a:hover {
	color: #829caf;
}
.page-id-12673 a:hover {
	color: #b37f8b;
}
a:hover img {
	filter: alpha(opacity=45);
	-moz-opacity: 0.45;
	opacity: 0.45;
	-webkit-transition: 0.4s ease-in-out;
	-moz-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
}
/* ===== <table>タグの基本デザイン ===== */
table {
	margin: 0 0 15px;
	width: 100%;
}
caption {
	text-align: left;
}
th, td {
	border: #000 1px solid;
	padding: 8px;
	text-align: center;
}
th {
	background-color: #e3bc95;
}
td {
	background-color: #FFF;
}
/* レトロ電車の場合 */
.page-id-12673 table {
	border-top: #000 1px solid;
	border-bottom: #000 1px solid;
	border-left: #000 1px solid;
}
.page-id-12673 th {
	border-top: none;
	border-left: none;
	border-bottom: #000 1px solid;
	border-right: #000 1px solid;
	background-color: #FFF;
	width: 25%;
}
.page-id-12673 td {
	border-top: none;
	border-left: none;
	border-bottom: none;
	border-right: #000 1px solid;
}
.page-id-12673 .gray {
	background-color: #d8d8d8;
}


/* ==========================================================================
   　　　　　　　　　　　　micro clearfix
   ========================================================================== */
/* For modern browsers */
.cf:before, .cf:after, section:before, section:after {
	content: "";
	display: block;
	overflow: hidden;
}
.cf:after, section:after {
	clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf, section {
	zoom: 1;
}


/* ==========================================================================
   　　　　　　　　　　　　レイアウト
   ========================================================================== */
/* ===== 各要素内のレイアウトを調整 ===== */
header,
footer {
	min-width: 1070px;
	width: 100%;
}
/* ===== header ===== */
header .wrapper {
	width: 958px;
	margin: 0 auto;
	padding: 25px 50px 50px 50px;
	position: relative;
}
/* ===== contents ===== */
#contents {
	width: 873px;
	margin: 70px auto 0;
	padding: 0 50px;
}
#contents section {
	width: 100%;
	margin: 0 0 60px;
}
/* ===== footer ===== */
footer {
	height: 50px;
	line-height: 50px;
	text-align: center;
}


/* ==========================================================================
   　　　　　　　　　　　　header
   ========================================================================== */
/* <header> - ページにより背景画像を変更 */
.page-id-3838 header {
	background-image: url(../img/sights/alps/bg_header.gif);
	background-color: #006e36;
}
.page-id-12670 header {
	background-image: url(../img/sights/double-decker/bg_header.gif);
	background-color: #005782;
}
.page-id-12673 header {
	background-image: url(../img/sights/retro/bg_header.gif);
	background-color: #810028;
}
/* <header> - その他共通設定 */
header {
	background-repeat: repeat-x;
}
/* ロゴ */
#logo {
	float: left;
	line-height: 0;
	margin: 0 0 20px;
}
.page-id-12673 #logo {
	position: relative;
	left: 76px;
}
/* お問い合わせ先にジャンプ */
#link_info {
	float: right;
	margin: 0 0 15px;
	color: #FFF;
}
#link_info a {
	font-size: 0.8em;
	font-weight: bold;
	color: #FFF;
}
#link_info a:hover {
	color: #CCC;
}
/* メインメニュー */
#mainmenu,
#mainmenu ul {
	float: right;
	width: 600px;
	height: 30px;
	margin: 0 0 20px;
}
#mainmenu ul {
	border-left: 1px solid #CCC;
}
/* navfix 
.follow {
	position: fixed;
	top: 0;
	z-index: 1000;
	width: 785px !important;
}
*/
/* <li> - その他共通設定 */
#mainmenu li {
	float: left;
	width: 120px;
	height: 30px;
}
#mainmenu li a {
	display: block;
	width: 119px;
	border-right: 1px solid #CCC;
	text-align: center;
	height: 30px;
}
/* <a> - ページにより背景画像を変更 */
.page-id-3838 #mainmenu li a {
	/*background-color: #004c1e;*/
	/*background-color: #003d1d;*/
	background-image: url(../img/sights/alps/header_nav.gif);
}
.page-id-12670 #mainmenu li a {
	/*background-color: #053a5f;*/
	/*background-color: #053A5F;*/
	background-image: url(../img/sights/double-decker/header_nav.gif);
}
.page-id-12673 #mainmenu li a {
	/*background-color: #670018;*/
	/*background-color: #57001b;*/
	background-image: url(../img/sights/retro/header_nav.gif);
}
#mainmenu li a img {
	position: relative;
	top: 4px;
}
/* 見出し画像 */
#mainphoto {
	line-height: 0;
}
/* 新着情報 */
#news {
	position: absolute;
	bottom: 60px;
	left: 60px;
}
#news .news_cap {
	line-height: 0;
}
#news .news_bg {
	padding: 10px 12px;
	width: 686px;
	height: 126px;
	background-image: url(../img/sights/news_bg.png);
}
#news .scroll {
	width: 100%;
	height: 126px;
	overflow-y: auto;
}
#news section {
	font-size: 0.8em;
	line-height: 1.7em;
}
#news a {
	display: block;
	color: #3F3F3F;
}
#news a:hover {
	color: #999;
}
#news .time {
	float: left;
	display: block;
	width: 106px;
}
#news .title {
	float: left;
	display: block;
	width: 560px;
}
/* その他観光列車ページへ */
#banner {
	position: absolute;
	bottom: 52px;
	right: 60px;
	width: 218px;
}
#banner li {
	margin: 0 0 8px;
	line-height: 0;
}


/* ==========================================================================
   　　　　　　　　　　　　contents
   ========================================================================== */
/* ページジャンプ */
.jump {
	position: relative;
	top: -40px;
}
/* <h1> - ページにより背景画像を変更 */
.page-id-3838 #contents h1 {
	background-image: url(../img/sights/alps/bg_cap.gif);
}
.page-id-12670 #contents h1 {
	background-image: url(../img/sights/double-decker/bg_cap.gif);
}
.page-id-12673 #contents h1 {
	background-image: url(../img/sights/retro/bg_cap.gif);
}
/* <h1> - その他共通設定 */
#contents h1 {
	background-repeat: repeat-x;
	line-height: 0;
	padding: 13px 0 13px 30px;
	margin: 0 0 25px;
}
/* <h2><h3> */
.page-id-3838 #contents h2,
.page-id-3838 #contents h3 {
	color: #004c1e;
	font-size: 1.2em;
	font-weight: bold;
}
.page-id-12670 #contents h2,
.page-id-12670 #contents h3 {
	color: #053a5f;
	font-size: 1.2em;
	font-weight: bold;
}
.page-id-12673 #contents h2,
.page-id-12673 #contents h3 {
	color: #670018;
	font-size: 1.2em;
	font-weight: bold;
}
/* ページのトップへ戻る↑ */
.pagetop {
	text-align: right;
	margin: 25px 0 0;
}
/* ===== section ===== */
/* section共通 */
.font_s {
	font-size: 0.8em;
	line-height: 1.7em;
}
.font_l {
	font-size: 1.2em;
	line-height: 1.6em;
}
.font_ll {
	font-size: 1.5em;
	line-height: 1.8em;
}
.font_b {
	font-weight: bold;
}
.green {
	color: #004c1e;
}
.blue {
	color: #053a5f;
}
.red {
	color: #670018;
}
.a_right {
	text-align: right;
}
.a_center {
	text-align: center;
}
.float_l {
	float: left;
}
.float_r {
	float: right;
}
.clear {
	clear: both;
}
/* 箇条書き */
.yoyaku {
	width: 100%;
}
.yoyaku li {
	list-style: none;
	margin: 0;
}
.yoyaku .kome {
	width: 19px;
	float: left;
}
#timetable .yoyaku .text {
	width: 854px;
	float: left;
}
#kashikiri .yoyaku .text {
	width: 521px;
	float: left;
}
/* 概要 */
#gaiyou p {
	margin: 20px 0 0;
}
#gaiyou .left {
	width: 436px;
	float: left;
}
#gaiyou .left ul {
	margin: 19px 0 0;
}
#gaiyou .content_01 {
	position: relative;
}
.page-id-3838 #gaiyou .content_01 .left,
.page-id-12670 #gaiyou .content_01 .left {
	line-height: 0;
}
.page-id-3838 #gaiyou .content_02 .left,
.page-id-12673 #gaiyou .content_02 .left {
	position: relative;
	top: 30px;
}
#gaiyou .right {
	float: right;
	width: 398px;
}
.page-id-12670 #gaiyou .right,
.page-id-12673 #gaiyou .right {
	width: 396px;
}
.page-id-12670 #gaiyou .right .photo_train {
	position: absolute;
	bottom: 0;
}
.double_text {
	display: block;
	height: 165px;
}
/* 列車紹介 */
#syoukai p {
	font-size: 0.9em;
	line-height: 1.5em;
	margin: 5px 0 0;
}
#syoukai img + p {
	margin: 0;
}
.page-id-12673 #syoukai img + p {
	position: relative;
	top: -5px;
}
#syoukai img {
	margin: 0 0 3px;
}
#syoukai .content_01 .left {
	float: left;
	width: 574px;
}
.page-id-3838 #syoukai .content_01 .left {
	float: left;
	width: 280px;
}
.page-id-12670 #syoukai .content_01 .left {
	float: left;
	width: 573px;
}
#syoukai .content_01 .right {
	float: right;
	width: 273px;
}
.page-id-3838 #syoukai .content_01 .right {
	width: 576px;
	position: relative;
	top: 10px;
}
.page-id-12670 #syoukai .content_01 .right {
	width: 272px;
}
.page-id-12673 #syoukai .content_01 .right {
	width: 277px;
	position: relative;
}
.page-id-3838 #syoukai .content_01 .right .service {
	width: 274px;
	position: absolute;
	right: 0;
}
#syoukai .content_01 .right li {
	position: relative;
}
.double_headmark {
	position: absolute;
	width: 193px;
	right: 0;
}
.retro_fumidai {
	margin: 10px 0 0;
}
.retro_fumidai p {
	position: absolute;
	left: 0;
	top: -8px;
	width: 100px;
}
.retro_fumidai img {
	position: absolute;
	right: 0;
}
#syoukai .content_01 .right .margin {
	margin: 0 0 22px;
}
.page-id-3838 #syoukai .content_02 {
	height: 387px;
	position: relative;
	margin: 22px 0 0;
}
.page-id-12670 #syoukai .content_02 {
	height: auto;
	margin: 15px 0 0;
}
.page-id-12673 #syoukai .content_02 {
	height: auto;
	margin: 15px 0 0;
}
.page-id-12673 #syoukai .content_02 li {
	float: left;
	width: 276px;
	margin: 0 21px 0 0;
}
#syoukai .content_02 .desc {
	position: absolute;
	left: 0;
	bottom: 16px;
	width: 330px;
}
.page-id-12670 #syoukai .content_02 .left {
	float: left;
	width: 331px;
}
#syoukai .content_02 .right {
	position: absolute;
	right: 0;
	bottom: 0;
}
.page-id-12670 #syoukai .content_02 .right {
	right: -25px;
	top: -20px;
	position: relative;
}
/* 沿線の魅力 */
#miryoku ul {
	position: relative;
	width: 1008px;
}
#miryoku li {
	position: relative;
	width: 261px;
	margin: 0 45px 23px 0;
	float: left;
	font-size: 0.9em;
	line-height: 1.6em;
}
#miryoku .shinkirou {
	position: absolute;
	bottom: 0;
	right: 0;
}
#miryoku li h2 {
	margin: 0 0 5px;
}
#miryoku li p {
	height: 120px;
}
/* 運行情報 */
#timetable h2 {
	margin: 35px 0 15px;
	font-size: 1.6em !important;
}
#timetable_desc {
	position: relative;
	top: 43px;
}
#timetable .margin {
	margin: 6px 0;
}
/* 貸切列車 */
#kashikiri h2 {
	margin: 0 0 20px;
	line-height: 0;
}
#kashikiri ul,
#kashikiri p {
	margin: 0 0 30px;
}
#kashikiri .left {
	float: left;
	width: 540px;
}
#kashikiri .right {
	float: right;
	width: 272px;
}
#kashikiri .right li {
	line-height: 0;
	margin: 0 0 20px;
}


/* ==========================================================================
   　　　　　　　　　　　　新着情報（cat-110）
   ========================================================================== */
.category-110 {
	background-color: #eae6e3;
}
#whatsnew {
	width: 712px;
	margin: 0 auto;
	position: relative;
	top: 35px;
}
#whatsnew .cap {
	text-align: center;
	margin: 0 0 35px;
	line-height: 0;
}
#whatsnew section {
	width: 652px;
	min-height: 557px;
	padding: 30px;
	background-color: #FFF;
}
#whatsnew section h1 {
	line-height: 1.5em;
	width: 632px;
	color: #FFF;
	font-size: 0.9em;
	font-weight: bold;
	padding: 8px 10px;
	margin: 0 0 25px;
	background-color: #17902d;
}
#whatsnew .time {
	font-size: 0.7em;
}
#whatsnew section h2 {
	font-weight: bold;
	margin: 0 0 25px;
	line-height: 1.5em;
	color: #17902d;
	font-size: 1.1em;
}
#whatsnew .content {
	font-size: 0.8em;
	line-height: 1.5em;
}
.category-110 footer {
	width: 712px;
	min-width: 712px;
	margin: 0 auto;
	background-color: #17902d;
	font-size: 0.7em;
	letter-spacing: 0;
	text-align: center;
	position: relative;
	top: 70px;
}


/* ==========================================================================
   　　　　　　　　　　　　エンターページ（page-12666）
   ========================================================================== */
#enter,
#enter article,
#enter section {
	width: 100%;
	height: 100%;
}
#enter .table_01,
#enter .table_01 th,
#enter .table_02 {
	border: none;
}
#enter .table_01,
#enter .table_01 th {
	width: 1060px;
	height: 100%;
	margin: 0 auto;
	text-align: center;
	vertical-align: middle;
}
#enter .table_02,
#enter .table_02 th,
#enter .table_02 td {
	width: 1058px;
} 
#enter table,
#enter th,
#enter td {
	background-color: transparent;
	padding: 0;
	margin: 0;
}
#enter .cap {
	height: 706px;
	border-left: 1px solid #CCC !important;
	border-right: 1px solid #CCC !important;
	border-top: 1px solid #CCC !important;
	border-bottom: none !important;
}
#enter .menu {
	vertical-align: bottom;
	border-left: 1px solid #CCC !important;
	border-right: 1px solid #CCC !important;
	border-top: none !important;
	border-bottom: 1px solid #CCC !important;
}
#enter ul {
	width: 744px;
	height: 69px;
	margin: 0 auto 20px;
}
#enter li {
	float: left;
	width: 218px;
	height: 69px;
	margin: 0 15px;
}


/* ==========================================================================
   　　　　　　　　　　　　footer
   ========================================================================== */
footer {
	color: #FFF;
	font-size: 0.8em;
}
/* ページにより背景画像を変更 */
.page-id-3838 footer {
	background-image: url(../img/sights/alps/bg_cap.gif);
	background-repeat: repeat-x;
}
.page-id-12670 footer {
	background-image: url(../img/sights/double-decker/bg_cap.gif);
	background-repeat: repeat-x;
}
.page-id-12673 footer {
	background-image: url(../img/sights/retro/bg_cap.gif);
	background-repeat: repeat-x;
}


/* ==========================================================================
   　　　　　　　　　　　　ユーザビリティ（aside）
   ========================================================================== */
#usability {
	bottom: 0;
	right: 0;
	position: fixed;
	z-index: 2;
}
#usability a {
	position: relative;
	bottom: 10px;
	right: 10px;
	width: 40px;
	height: 40px;
	display: block;
}