html{
	background-color: transparent;
	scroll-behavior: smooth; /* スムーススクロール */
}


/**************** 基本構造、ヘッダー、メイン、フッター ****************/
header {
	z-index: 9999;
	background-color:#EFE9E3;
}

/* PCは左メニュー固定 */
@media print, screen and (min-width: 760px) {
	#container {
		display:flex;
    	overflow: hidden;
	}
	header {
    	width: 200px;
		top: 0;
		left: 0;
		padding-bottom: 32768px;
		margin-bottom: -32768px;
	}
	#contents{
		width: calc(100% - 200px);
		max-width: 1200px;
		text-align: left;
		background: #f9f8f6;
		display: flex; /* footer最下部固定用1/4 */
		flex-direction: column; /* footer最下部固定用2/4 */
		min-height: 100vh; /* footer最下部固定用3/4 */
	}
}

/* スマホは上下固定メニュー */
@media screen and (min-width: 0px) and (max-width: 760px) {
	header {
		width: 100%;
		top: 0;
		left: 0;
		text-align: right;
		display: block;
	}
	#contents{
		margin: 0 0 0 0;
	}
}

/* ボディ */
body {
	background: #f4f2ee;
}


/* メイン */
main {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 1200px;
	text-align: left;
}
@media print, screen and (min-width: 760px) {
	main {
		padding: 0 50px 20px 50px;
	}
}
@media screen and (min-width: 0px) and (max-width: 760px) {
	main {
		padding: 0 25px 25px 25px;
	}
}

/* フッター */
footer {
	clear: both;
	width: 100%;
	background-color: #3f3a39;
	color: #817672;
	padding: 30px;
	font-size: 0.8rem;
	line-height: 1.9;
    margin-top: auto; /* footer最下部固定用4/4 */
}



/**************** メニュー ****************/
/* PCメニュー */
#pc_nav  {
	width: 200px;
	padding: 0;
	text-align: left;
	position: fixed;
	top: 0;
	left: 0;
	line-height: 1.5;
}
#pc_nav li a {
	display: block;
	color: #ffffff;
	padding: 4px 10px 8px 10px;
	margin: 0 0 1px 0;
}
#pc_nav li:hover {
	color: #ffffff;
	filter: brightness(1.3);
}

#pc_nav .menu_den {
	text-align: left;
	width: 60px;
	padding: 5px 0 0 0;
}
#pc_nav .menu_den span {
	display: inline-block;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.2;
}
#pc_nav .menu_txt {
	display: inline-block;
	width: 140px;
	font-size: 1rem;
	line-height: 1.9;
	font-weight: bold;
	padding: 0 0 0 0;
}
#pc_nav .menu_txt div {
	font-size: 0.7rem;
	font-weight: normal;
	line-height: 1.4;
}


#pc_nav .header_logo {
	width: 170px;
	padding-top: 15px;
	padding-bottom: 15px;
}


/* SMPメニュー */
#smp_nav {
	padding: 0px
	width: 100%;
	font-size: 0.8rem;
}
#smp_nav li {
	float: left;
}
#smp_nav .header_logo {
	z-index: 1000;
	width: 110px;
	position: fixed;
	left: 0;
	top: 0;
	padding-left: 10px;
	padding-top: 5px;
}

#smp_nav2 {
	width: 100%;
	padding: 0px
	text-align: center;
	position: fixed;
	z-index: 999;
	bottom: 0;
	left: 0;
	background-color: #ffffff;
}
#smp_nav2 li {
	float: left;
	width: calc(20% - 1px);
	text-align: center;
	margin: 0 1px 0 0;
}
#smp_nav2 li:nth-child(5n) {
	width: 20%;
	margin: 0 0 0 0;
}
#smp_nav2 li a {
	display: block;
	color: #ffffff;
	padding: 10px 0 15px 0;
}
#smp_nav2 li a p {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1;
	padding: 0 0 0 0;
}
#smp_nav2 li:hover {
	color: #ffffff;
	filter: brightness(1.3);
}
#pc_nav .header_logo {
	width: 170px;
	padding-top: 15px;
	padding-bottom: 15px;
}



/**************** フッター ****************/
@media print, screen and (min-width: 760px) {
	#footer_a {
		display: block;
		width: 33%;
		float: left;
		display: block;
		text-align: left;
		padding: 0 15px 0 0;
	}
	#footer_b {
		display: block;
		width: 34%;
		float: left;
		display: block;
		text-align: left;
		border-left: solid #5f5756 1px;
		padding: 0 15px 0 15px;
	}
	#footer_c {
		display: block;
		width: 33%;
		float: left;
		display: block;
		text-align: left;
		border-left: solid #5f5756 1px;
		padding: 0 15px 0 15px;
	}
}

@media screen and (min-width: 0px) and (max-width: 760px) {
	footer {
		padding-bottom: 100px;
	}
	#footer_a {
		text-align: left;
		padding-bottom: 15px;
	}

	#footer_b {
		text-align: left;
		padding-bottom: 15px;
	}

	#footer_c {
		text-align: left;
		padding-bottom: 15px;
		display: block;
	}
}

.footer_logo {
	clear: both;
	width: 100%;
	text-align: center;
}
@media print, screen and (min-width: 760px) {
	.footer_logo {
		padding: 40px 0 20px 0;
	}
	.footer_logo img {
		width: 250px;
	}
	.footer_tel {
		font-family: "Cal Sans", sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size: 2.5rem;
		line-height: 1.5;
		padding: 0;
		margin: 0;
	}
	.link_btn3 {
		width: 250px;
	}
}
@media screen and (min-width: 0px) and (max-width: 760px) {
	.footer_logo {
		padding: 30px 0 50px 0;
	}
	.footer_logo img {
		width: 200px;
	}
	.footer_tel {
		font-family: "Cal Sans", sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size: 2.1rem;
		line-height: 1.5;
		padding: 0;
		margin: 0;
	}
	.link_btn3 {
		width: 200px;
	}
}


/*過去サイトリンク　ドロップダウンメニュー*/
/* https://techis.jp/guide/tryit/460 */
/* <div class="dropdown"><button class="dropbtn">ドロップダウン</button><div class="dropdown-content"><a href="#">リンク1</a><a href="#">リンク2</a></div></div> */

.kako_dropbtn {
	background-color: #585150;
	color: #a09896;
	padding: 3px 5px 3px 5px;
	margin: 3px 0 0 0;
	border: none;
	cursor: pointer;
	width: 140px;
	text-align: left;
}

.kako_dropdown {
	position: relative;
	display: inline-block;
}

.kako_dropdown-content {
	display: none;
	position: absolute;
	left: 12px;
	background-color: #585150;
	min-width: 140px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 1;
}

.kako_dropdown-content a {
	color: black;
	padding: 0 5px 0 25px;
	display: block;
}

.kako_dropdown-content a:hover {
	background-color: #736968
}

.kako_dropdown:hover .kako_dropdown-content {
  display: block;
}

.kako_dropdown:hover .kako_dropbtn {
	background-color: #6f6564;
	color: #a09896;
}

/**************** トップページ ****************/
/*協賛バナー*/
/*PC4分割、SMP2分割*/
@media print, screen and (min-width: 600px) {
	.ad_banners {
		margin: 40px 0 8px 0;
	}
	.ad_banners li {
		width:23.5%;
		margin: 0 2% 15px 0;
	}
	.ad_banners li:nth-child(4n) {
		margin:0 0 15px 0;
	}
}

@media screen and (min-width: 0px) and (max-width: 600px) {
	.ad_banners {
		margin: 35px 0 8px 0;
	}
	.ad_banners li {
		width:49%;
		margin: 0 2% 8px 0;
	}
	.ad_banners li:nth-child(2n) {
		margin:0 0 8px 0;
	}
}

/*緊急トップニュース用*/
.top_news {
    padding: 2px 10px 2px 10px;
    margin: 0 0 10px 0;
	background-color: #ffffff;
	border-radius: 8px;
	border: 2px solid #FF8080;
	font-weight: bold;
}
.top_news .date {
	display: inline-block;
	width: 4rem;
	padding: 0 0 0 0;
	font-size: 0.8rem;
	color: #ff8080;
	line-height: 2.1;
}

/*参加費無料・事前申し込み不要*/
.about_point li {
	border-radius: 5px;
	text-align: center;
	font-weight: bold;
	background: #E5989B;
	color: #ffffff;
	line-height: 1;
	padding: 10px 15px 10px 10px;
	margin: 5px;
}
@media print, screen and (min-width: 600px) {
	.about_point li {
		font-size: 1.2rem;
	}
}

@media screen and (min-width: 0px) and (max-width: 600px) {
	.about_point li {
		font-size: 1rem;
	}
}


/*画像つき各イベント紹介*/
/*PC5分割、SMP2分割*/
@media print, screen and (min-width: 1000px) {
	.img_info li {
		width:19%;
		margin: 0 1.25% 15px 0;
	}
	.img_info li:nth-child(5n) {
		margin:0 0 15px 0;
	}
}

@media screen and (min-width: 0px) and (max-width: 1000px) {
	.img_info li {
		width:48%;
		margin: 0 4% 15px 0;
	}
	.img_info li:nth-child(2n) {
		margin:0 0 15px 0;
	}
}

.img_info li {
	display: block;
	background-color: #ffffff;
	color:  #ffffff;
	text-align: left;
	padding: 0;
	line-height: 1.3;
	box-shadow: 0px 0px 7px #d3cfcb;
	border-radius: 10px;
}
.img_info .center {
	padding: 10px 0 8px 0;
}
.img_info .center .day-circle {
	margin: 0 0 0 5px;
}
.img_info .img_info-txt {
	font-size: 0.9rem;
	padding: 12px;
}
.img_info .moreinfo {
	display: block;
	margin: 7px 0 0 0;
	font-size: 0.7rem;
	text-align: right;
}
.img_info .keihan-box .center {
	background-color: #008170;
}
.img_info .nankai-box .center {
	background-color: #e72420;
}
.img_info .hanshin-box .center {
	background-color: #dd5b2f;
}
.img_info .kintetsu-box .center {
	background-color: #0093d5;
}
.img_info .hankyu-box .center {
	background-color: #6f1a4c;
}
.img_info a:link { color: #927867; text-decoration: none;  }
.img_info a:visited { color: #927867; text-decoration: none; }
.img_info a:active { color: #927867; text-decoration: none;  filter: brightness(1.3); }
.img_info a:hover { color: #927867; text-decoration: none;  filter: brightness(1.3); }




/*参加特典*/
/*PC3分割、SMP2分割*/
@media print, screen and (min-width: 760px) {
	.tokuten li {
		width:32%;
		margin: 0 2% 20px 0;
	}
	.tokuten li:nth-child(3n) {
		margin:0 0 20px 0;
	}
}

@media screen and (min-width: 0px) and (max-width: 760px) {
	.tokuten li {
		width:48%;
		margin: 0 4% 20px 0;
	}
	.tokuten li:nth-child(2n) {
		margin:0 0 20px 0;
	}
}

.tokuten li {
	display: block;
	background-color: #ffffff;
	text-align: left;
	line-height: 1.5;
	box-shadow: 0px 0px 7px #d2cfcc;
	border-radius:10px;
}
.tokuten img {
	padding:0;
	margin:0;
	border-radius:10px 10px 0 0 ;
}
.tokuten div {
	padding: 8px 12px 12px 12px;
	font-size: 0.9rem;
}
.tokuten .txt_s_glay {
	padding: 8px 0 0 0;
	display: block;
}
.tokuten_cate {
	display: inline-block;
	font-size: 0.7rem;
	line-height: 1;
	color: #ffffff;;
	border-radius:5px;
	text-align: center;
	margin: 2px 3px 2px 0;
	padding: 5px 8px 4px 8px;
	background-color: #c7514f;
}


/**************** 各電鉄詳細 ****************/
/*紹介コピー*/
.shokai-copy {
	padding: 60px 0 0 0;
}

/*紹介テキスト*/
.shokai-txt {
	padding: 0 0 20px 0;
	font-size: 1.1rem;
}

/*みどころ*/
.shokai_view {
    position: relative;
    padding: 20px 15px 15px 15px;
    margin: 25px 0 20px 0;
	background-color: #e8dfd7;
	border-radius: 8px;
}
.shokai_view p {
    margin: 0; 
    padding: 0;
	font-size: 1.2rem;
	line-height: 1.5;
	color: #826a5b;
	font-weight: 700;
}
.shokai_view .midokoro {
    position: absolute;
    display: inline-block;
    top: -17px;
    left: 10px;
	font-size: 0.8rem;
	line-height: 1;
	color: #ffffff;;
	border-radius:5px;
	text-align: center;
	margin: 0 ;
	padding: 8px 10px 8px 10px ;
	font-weight: 700;
	background-color: #778873;
}
.shokai_view .tokuten {
    position: absolute;
    display: inline-block;
    top: -17px;
    left: 10px;
	font-size: 0.8rem;
	line-height: 1;
	color: #ffffff;;
	border-radius:5px;
	text-align: center;
	margin: 0 ;
	padding: 8px 10px 8px 10px ;
	font-weight: 700;
	background-color: #ff686c;
}

/*コース紹介*/
.course {
    counter-reset: span;
	padding: 0 0 5px 0 ;
}

.course span {
    display: flex;
    line-height: 3.2rem;
    font-size: 1.2rem;
	font-weight: 700;
	border-bottom: solid #dddad7 1px;
}
.course span:before {
    counter-increment: span;
    content: counter(span);
    background-color: #D9CFC7;
    color: #fff;
	font-family: "Cal Sans", sans-serif;
	font-weight: 400;
	font-style: normal;
    text-align: center;
    width: 2.5rem;
    height: 2.5rem;
    line-height: 2.5rem;
    font-size: 1.8rem;
    border-radius: 50%;
    flex-shrink: 0;
    margin: 5px 10px 5px 0; 
}

/*各電鉄の●の色*/
.keihan-course span:before {
    background-color: #008170;
}
.nankai-course span:before {
    background-color: #e72420;
}
.hanshin-course span:before {
    background-color: #dd5b2f;
}
.kintetsu-course span:before {
    background-color: #0093d5;
}
.hankyu-course span:before {
    background-color: #6f1a4c;
}


.course a:link { color: #927867; text-decoration: none; }
.course a:visited { color: #927867; text-decoration: none; }
.course a:active { color: #927867; text-decoration: none; }
.course a:hover { color: #927867; text-decoration: none; }


