﻿@charset "UTF-8";

* {
	margin : 0;
	padding : 0;	
}

body {
	font-size : 85%;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	min-width : 1140px;

}

#wrapper {
	width : 980px;
	margin : 0 auto;
	box-sizing:border-box;
	
	
}

.inner {
	padding : 50px 50px;
}


/*
一括色変更
*/

.title{
	background : #a6e189;
}

.bg01 {
	background : #006a6c;
	color : #ffffff;
}

.bg02 {
	background : #ecffe2;	
}

.icon {
	background : #005f98;
	color : #ffffff;
	letter-spacing : 2px;
	display:inline-block;
	padding : 5px 10px 4px;
	font-size : 105%;
}



/* header
------------------------------------------------------- */


#sub-visual {
background: #00a496;
background: -moz-linear-gradient(top, #00a496 0%, #0058a9 100%);
background: -webkit-linear-gradient(top, #00a496 0%,#0058a9 100%);
background: linear-gradient(to bottom, #00a496 0%,#0058a9 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a496', endColorstr='#0058a9',GradientType=0 );	
}

#sub-visual {
	position: relative;
	min-width: 980px;
	height: 260px;
	overflow: hidden;
}

#sub-visual img {
	position: absolute;
	left: 50%;
	top: 0;
	margin: 0 0 0 -950px;
}

.visual-inner {
	position : absolute;
	height : 100%;
	width : 100%;

	background : rgba(0,0,0,.0);

	display:table;
}

.visual-inner .txt {
	color : #ffffff;

	display:table-cell;
	vertical-align : middle;
	line-height : 1.6;
	
}

.visual-inner .txt > * {


	text-shadow:1px 1px 4px #000000;
	text-align:center;
}

.visual-inner .txt h1 {
	font-size : 240%;
	line-height : 1.8;
	letter-spacing : 4px;
}

.visual-inner .txt h1 span {
	letter-spacing : 0;	
}

#sub-visual .visual-inner .txt h2 {
	font-size : 180%;
}

.visual-inner .txt p {
	line-height : 2;
}

header {
	background : #ffffff;	
}

#header-logo img {
	width : 240px;	
}

#header-area {
	width : 1140px;
	margin-left : auto;
	margin-right : auto;
	padding : 25px 0;
}


/* manarea
-------------------------------------------------------*/



.h3title {
	text-indent : -1.5em;
	padding-left : 1.5em;
	font-size : 145%;
	line-height : 1.6;
}

.h3title:before {
	content : "■";
	color : #005f98;
	font-size : 110%;
}


.h4title {
	font-size : 130%;
	line-height : 1.8;
	color : #006a6c;
	padding-bottom : 10px;
	border-bottom : 2px solid #999;
	position : relative;
}


.h4title:after {
	content : "";
	position : absolute;
	bottom : -2px;
	left : 0;
	width : 40px;
	border-bottom : 2px solid #005f98;	
}

p {
	line-height : 1.8;	
}

th .bg01 {
	text-align : center;
	padding : 5px 0;
	width : 6em;
	border-radius : 10px;
	font-size : 110%;
	font-weight : bold;
}

.h2title {
	border-radius : 10px;
	padding : 15px 20px;
	font-size : 130%;
	letter-spacing : 1p
	border-bottom : 2px solid #ccc;
box-shadow:0px 0px 7px -1px #cccccc;
-moz-box-shadow:0px 0px 7px -1px #cccccc;
-webkit-box-shadow:0px 0px 7px -1px #cccccc;
margin-top : 60px;
line-height : 1.6;
}

#mainarea {
	padding : 30px 0 50px;
}

.btn {
	width : 420px;
	color : #ffffff;
	margin-left : auto;
	margin-right : auto;

box-shadow:0px 0px 7px -1px #cccccc;
-moz-box-shadow:0px 0px 7px -1px #cccccc;
-webkit-box-shadow:0px 0px 7px -1px #cccccc;	

}

.btn a {
	display : block;
	padding : 20px 0;
	font-size : 120%;
	text-align:center;
	background : #be262a url(../images/blank-icn.gif) 95% 70% no-repeat;
	color : #ffffff;
	border-right : 3px solid #7f191c;
	border-bottom : 3px solid #7f191c;
	letter-spacing : 1px;
	border-radius : 25px;
	
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -o-transition: all .3s ease;
	    transition: all .3s ease;	
		
}

.btn a:hover {
	opacity : .6;		
}

.place {
	display : -webkit-flex;
	display : flex;	
	 -webkit-justify-content: space-between; /* スペースを均等 */
	justify-content: space-between; /* スペースを均等 */
}

.place > div:first-child {
	width : 460px;	
}

.place > div:last-child {
	width : 310px;
}

.day-txt {
	font-size : 160%;	
}

.place-txt {
	font-size : 130%;	
}

/* header
-------------------------------------------------------*/


#footer {
	background : #666666;
	text-align:center;
	color:#ffffff;
}

.pc-none {
	display : none;
}

/**
 ****************************************************
 *
 * screens smaller than 640
 *
 ****************************************************
 */
@media only screen and (max-width: 640px) {
	body {
		min-width : 320px;
		font-size : 75%;
	}

#header-area {
	padding : 10px 0;	
}
	
#sub-visual {
	position: relative;
	min-width: 320px;
	height: 140px;
	overflow: hidden;

}
	
	#mainarea {
		padding : 0;	
	}
	
	#header-logo img {
		width : 120px;	
	}
	
	#header-area , #wrapper {
		width : 100%;	
	}
	
	.inner {
		padding : 30px 15px;	
	}

	.ml25 , .ml50 , .ml75 ,.mlr20 , .mlr25 {
		margin-left: 0!important;
		margin-right : 0!important;
	}
	
	.h2title {
		font-size : 110%;
		margin-top : 50px;
	}
	.h3title {
		font-size : 120%;
	}
	.h4title {
		font-size : 115%;
	}
	
	.fl , fr {
		float : none;
		width : auto;
	}
	
	img {
		width : 100%;
		max-width : 310px;
	}

	.visual-inner .txt h1 {
	font-size : 140%;
	letter-spacing : 2px;
	}
	
	.btn {
		width : 80%;
		margin-left : auto;
		margin-right : auto;	
	}
	
	.pc-none {
	display : block;
}

/* 地図 */

.place {
	display : block;

}

.place > div:first-child {
	width : 100%;	
}

.place > div:last-child {
	width : 100%;
	margin-top : 15px;
	text-align:center;
}

.day-txt {
	font-size : 120%;	
}

.place-txt {
	font-size : 110%;	
}

/* スマホの時は非表示 */

.sp-none {
	display : none;	
}

/* tableのはみ出した分をスライドバーを出す */

.table-wrapper {
	width: 100%;
	overflow-y: hidden;
	overflow-x: auto;
	-ms-overflow-style: -ms-autohiding-scrollbar;
	-webkit-overflow-scrolling: touch;	
}

th,td{
	white-space: nowrap;
}
	
}