@charset "utf-8";

/*####################################################

PC向け：全体のレイアウト設定

####################################################*/


html,body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}

body {
	/*font-size: 100%;
	line-height: 150%;
	color: #000000;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Osaka,sanserif;*/
	background: url(../img/header/bg.gif) top repeat-x #ffffff;
}

article, aside, dialog, figure, footer, header, hgroup, menu, nav, section { display: block; }

a:link,a:visited {
	text-decoration: none;
	color: #f45d02;
}

a:hover {
	text-decoration: underline;
	color: #ba4803;
}

img {
	vertical-align: top;
}




/*=============================================

領域分け

=============================================*/

/*ヘッダ*/

header {
	position: relative;
	margin: 0;
	padding: 0;
	height: 104px;
	background: url(../img/header/header_bg.png) no-repeat center top;
}


/*ページ全体*/

div#container {
	position: relative;
	width: 950px;
	margin: 10px auto;
	padding: 0;
}

div#container:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
}


/*フッタ*/

footer {
	position: relative;
	margin: 0;
	padding: 0;
}



/*=============================================

ヘッダ内

=============================================*/

header .inner {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 950px;
	height: 104px;
}

/*-----------------------------------------*/
/*ロゴ*/

header h1 a {
	position: absolute;
	left: 0;
	top: 40px;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 44px;
	height: 0 !important;
	line-height: 250%;
	width: 227px;
	background: url(../img/header/rogo.png) top left no-repeat;
}

header h1 a:hover {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

/*-----------------------------------------*/
/*グローバルメニュー*/

header ul {
	position: absolute;
	right: 0;
	top: 2px;
	margin: 0;
	padding: 0;
	width: 100%;
	list-style-type: none;
	width: 667px;
}

header ul:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
}

header li {
	float: left;
	margin: 0 0 0 30px;	
	text-align: left;
}

/*共通設定分*/
header ul li a.toy,
header ul li a.event,
header ul li a.charge,
header ul li a.access,
header ul li a.faq{
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 94px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 100px;
	background: url(../img/header/nav.svg) top left no-repeat;
	background-size: 550px;
}

/*施設詳細*/
header ul li a.toy {
background-position: -10px -4px;
}
header ul li a.toy:hover {
	background-position: -10px -109px;
}

/*イベントスケジュール*/
header ul li a.event {
background-position: -115px -6px;
}
header ul li a.event:hover {
	background-position: -115px -111px;
}

/*料金・営業時間*/
header ul li a.charge {
background-position: -225px -5px;
}
header ul li a.charge:hover {
	background-position: -225px -110px;
}

/*アクセス・周辺マップ*/
header ul li a.access {
background-position: -330px -5px;
}
header ul li a.access:hover {
	background-position: -330px -110px;
}

/*よくあるご質問*/
header ul li a.faq {
background-position: -442px -4px;
}
header ul li a.faq:hover {
	background-position: -442px -109px;
}


/*サブメニュー*/

header div.submenu {
	display: none;
	position: absolute;
	left: -283px;
	top: 80px;
	width: 950px;
	z-index: 100;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

header div.submenu:after {
	content: "";
	position: absolute;
	left: 305px;
	top: -1px;
	display: block;
	margin: 0;
	padding: 0;
	width: 120px;
	height: 10px;
	background-color: #e2af10;
}

header div.submenu ul {
	position: static;
	width: 100%;
	margin: 4px 0 0 0;
	padding: 0;
	list-style-type: none;
	background-color: #ffd142;
	border-radius:3px;
}

header div.submenu ul li {
	margin: 0;
	padding: 10px 0 10px 0;
	width: 16.5%;
	box-sizing: border-box;
}

header div.submenu ul li a {
	display: block;
	overflow: hidden;
	margin: 0 auto;
	padding: 86px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 124px;
	background: url(../img/header/facility_submenu.svg) top left no-repeat;
	background-size: 992px;
}

header div.submenu ul li a:hover {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

header div.submenu ul li a.toy{
	background-position: 0 0;
}

header div.submenu ul li a.nature{
	background-position: -124px 0;
}

header div.submenu ul li a.attraction{
	background-position: -248px 0;
}

header div.submenu ul li a.shops{
	background-position: -372px 0;
}

header div.submenu ul li a.restaurant{
	background-position: -496px 0;
}

header div.submenu ul li a.kids{
	background-position: -620px 0;
}

header div.submenu ul li a.activity{
	background-position: -744px 0;
}

header div.submenu ul li a.snow{
	background-position: -868px 0;
}



/*=============================================

サイドエリア

=============================================*/

#side_area a.mail_mag {
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 121px;
	height: 0 !important;
	line-height: 250%;
	width: 220px;
	background: url(../img/sidemenu/mailmag.gif) top left no-repeat;
}



#side_area .faq #faq_ctg {
	display: none;
}

#side_area .faq .gotofaq a {
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 25px;
	height: 0 !important;
	line-height: 250%;
	width: 220px;
	background: url(../img/sidemenu/faq.gif) top left no-repeat;
	background-position: 0 -27px;
}


/*=============================================

本文内（857 or 950）

=============================================*/

.side_area {
	float: right;
	position: relative;
	margin: 0;
	padding: 0;
	width: 220px;
}

.page_document {
	float: left;
	position: relative;
	margin: 0;
	padding: 0;
	width: 700px;
}

.map_canvas {
	margin: 0;
	padding: 0;
	height: 600px;
}

/*ページタイトル*/

.page_title_block {
	margin: 0;
	padding: 0;
	height: 140px;
}

.page_title_block .topicpathcolumn {
	margin: 0;
	padding: 0;
	font-size: 70%;
}

/*グローバルナビ*/

h1.facility_top,
h1.event_top,
h1.charge_top,
h1.access_top,
h1.faq_top,
h1.access_location,
h1.access_detail {
	display: block;
	overflow: hidden;
	margin: 25px 0 0 -10px;
	padding: 53px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/pagetitle_nav.svg) top left no-repeat;
}

h1.event_top { background-position: 0 -54px; }
h1.charge_top { background-position: 0 -108px; }
h1.access_top { background-position: 0 -162px; }
h1.faq_top { background-position: 0 -216px; }
h1.access_location { background-position: 0 -324px; }
h1.access_detail { background-position: 0 -270px; }



/*施設詳細*/

h1.facility_toy,
h1.facility_kids,
h1.facility_nature,
h1.facility_attraction,
h1.facility_shop,
h1.facility_restaurant,
h1.facility_snow,
h1.facility_activity,
h1.ticket	{
	display: block;
	overflow: hidden;
	margin: 25px 0 0 -10px;
	padding: 53px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/pagetitle_facility.svg) top left no-repeat;
	background-size: 472px;
}

h1.facility_toy { background-position: 0 0; }
h1.facility_nature { background-position: 0 -54px; }
h1.facility_attraction { background-position: 0 -108px; }
h1.facility_shop { background-position: 0 -161px; }
h1.facility_restaurant { background-position: 0 -216px; }
h1.facility_kids { background-position: 0 -270px; }
h1.ticket { background-position: 0 -324px; }
h1.facility_snow { background-position: 0 -432px; }
h1.facility_activity { background-position: 0 -378px; }


/*イベントスケジュール*/

h1.event_experience,
h1.event_daily,
h1.event_stage {
	display: block;
	overflow: hidden;
	margin: 25px 0 0 -10px;
	padding: 53px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/pagetitle_event.svg) top left no-repeat;
	background-size: 371px;
}

h1.event_experience { background-position: 0 -108px; }
h1.event_daily { background-position: 0 -162px; }
h1.event_stage { background-position: 0 -54px; }


/*その他*/

h1.about_cts,
h1.about_top,
h1.about_link,
h1.about_policy,
h1.about_saiyo,
h1.about_character,
h1.about_news,
h1.about_query {
	display: block;
	overflow: hidden;
	margin: 25px 0 0 0;
	padding: 53px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/pagetitle_other.svg) left top no-repeat;
	background-size: 371px;
	background-position: 0 -54px;
}

h1.about_top { background-position: 0 -54px; }
h1.about_link { background-position: 0 -270px; }
h1.about_policy { background-position: 0 -216px; }
h1.about_saiyo { background-position: 0 -162px; }
h1.about_character { background-position: 0 -378px; }
h1.about_news { background-position: 0 -324px; }
h1.about_cts { background-position: 0 0; }
h1.about_query { background-position: 0 -108px; }




/*アクション導線（ダブルカラム用）*/

.action_set {
	position: relative;
	margin: 0;
	padding: 0;
	height: 193px;
}

.action_set .inner {
	position: absolute;
	left: -8px;
	top: 0;
	margin: 0;
	padding: 0;
	width: 716px;
}

.action_set h4 {
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 51px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/column_button_set.png) top center no-repeat;
	background-position: 0 -194px;
}

.action_set a.coupon {
	position: absolute;
	left: 0;
	top: 50px;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 154px;
	height: 0 !important;
	line-height: 250%;
	width: 358px;
	background: url(../img/layout/column_button_set.png) top left no-repeat;
	background-position: 0 -246px;
}

.action_set a.hotel {
	position: absolute;
	right: 0;
	top: 50px;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 154px;
	height: 0 !important;
	line-height: 250%;
	width: 358px;
	background: url(../img/layout/column_button_set.png) top left no-repeat;
	background-position: -359px -246px;
}


.action_set p.hotel_info {
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 34px;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/column_button_set.png) top left no-repeat;
}

.action_set a.hotel_single_btn {
	position: absolute;
	right: 0;
	top: 37px;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 158px;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/column_button_set.png) top left no-repeat;
	background-position: 0 -35px;
}





/*アクション導線（シングルカラム用）*/

.single_column .action_set {
	position: relative;
	margin: 0;
	padding: 0;
	height: 210px;
}

.single_column .action_set .inner {
	position: absolute;
	left: -14px;
	top: 0;
	margin: 0;
	padding: 0;
	width: 978px;
}

.single_column .action_set h4 {
	display: block;
	overflow: hidden;
	margin: 0 0 0 5px;
	padding: 57px 0 0 0;
	height: 0 !important;
	line-height: 250%;
	width: 950px;
	background: url(../img/layout/single_column_button_set.png) top left no-repeat;
	background-position: 0 -156px;
}

.single_column .action_set a.coupon {
	position: absolute;
	left: 0;
	top: 60px;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 154px;
	height: 0 !important;
	line-height: 250%;
	width: 489px;
	background: url(../img/layout/single_column_button_set.png) top left no-repeat;
	background-position: 0 -213px;
}

.single_column .action_set a.hotel {
	position: absolute;
	right: 0;
	top: 60px;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 154px;
	height: 0 !important;
	line-height: 250%;
	width: 489px;
	background: url(../img/layout/single_column_button_set.png) top left no-repeat;
	background-position: -486px -213px;
}

.single_column .action_set a.hotel_single_btn {
	position: absolute;
	right: 0;
	top: 60px;
	display: block;
	overflow: hidden;
	margin: 0;
	padding-top: 155px;
	height: 0 !important;
	line-height: 250%;
	width: 100%;
	background: url(../img/layout/single_column_button_set.png) top left no-repeat;
}

.action_set a:hover {
/*	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;*/
}




/*お知らせ*/

.osirase{
	margin:10px 0px 0px 0px;
	padding:10px;
	border:1px solid #dddcda;
	background-color:#f5f4f2;
}



/*=============================================

フッタ内

=============================================*/

footer .inner {
	position: relative;
	margin: 0 auto;
	padding: 30px 0 30px 0;
	width: 950px;
}


/*カラム分けの親ボックス*/
div.sitemap {
	display: table;
	vertical-align: top;
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
	width: 100%;
	font-size: 75%;
	line-height: 180%;
	border-bottom: 3px solid #b1d316;
}

div.sitemap div.box {
	display: table-cell;
	vertical-align: top;
	margin: 0;
	padding: 0;
	width: 20%;
}

div.sitemap h5 {
	margin: 0;
	padding: 0;
	font-size: 120%;
	line-height: 180%;
	font-weight: bold;
	color: #009531;
}

div.sitemap ul {
	margin: 0;
	padding: 0;
	width: 100%;
	list-style-type: none;
}

div.sitemap li {
	margin: 0;
	padding: 0;
	text-align: left;
	line-height: 160%;
}


/*住所とコピーライト*/

div.addressbox {
	display: table;
	vertical-align: top;
	margin: 0;
	padding: 0;
	width: 100%;
}

div.addressbox div.box {
	display: table-cell;
	vertical-align: bottom;
	margin: 0;
	padding: 0;
	width: 50%;
}

footer .address {
	line-height: 150%;
	font-size: 85%;
}

footer .address strong {
	line-height: 200%;
	font-size: 120%;
}

footer .copy {
	margin: 0;
	padding: 0;
	font-size: 70%;
	text-align: right;
}


/*=============================================

冬とグリーンシーズンの切り替え

=============================================*/

.winter-open,.winter-close{
	position: absolute;
	left: -9999px;
	visibility:hidden;
}

.winter-open2,.winter-close2{ display: none; }

.blockbox{ width:100%; }

/*
position: relative;
*/
.blockbox_top{	width: 950px;
	height: 550px;}





















/*=============================================

付録：よく使う物の覚え書き

=============================================*/

.oboe_gaki{
	background: url(../img/bg_image/thum_001.jpg) center center no-repeat;
	background-attachment: fixed;
	background-size: cover;

	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;

	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
}


html>/**/body .oboe_gaki {
	display: table;
	vertical-align: top;
}

html>/**/body .oboe_gaki .des {
	display: table-cell;
	vertical-align: top;
}

/*カラム分けの親ボックス（〜IE7）*/
html*.oboe_gaki {
	height: 1%;
}

/*子（〜IE7）*/
html*.oboe_gaki .des {
	float: left;
}




/*=============================================

付録：アニメーション設定
参）http://www.webcreatorbox.com/tech/css3-animation-colour/

=============================================*/

/*背景色の変化　-webkit-animation: animname 0.5s forwards;*/

@-ms-keyframes animname {
	0% { background: #ffffff; }
	100% { background: #fefc71; }
}
@-moz-keyframes animname {
	0% { background: #ffffff; }
	100% { background: #fefc71; }
}
@-webkit-keyframes animname {
	0% { background: #ffffff; }
	100% { background: #fefc71; }
}

/*要素の回転 -webkit-animation: r 0.5s forwards;*/

@keyframes r {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(90deg);}
}
@-ms-keyframes r {
	0% {-ms-transform: rotate(0deg);}
	100% {-ms-transform: rotate(90deg);}
}
@-moz-keyframes r {
	0% {-moz-transform: rotate(0deg);}
	100% {-moz-transform: rotate(90deg);}
}
@-webkit-keyframes r {
	0% {-webkit-transform: rotate(0deg);}
	30% {-webkit-transform: rotate(20deg);}
	60% {-webkit-transform: rotate(-10deg);}
	100% {-webkit-transform: rotate(0deg);}
}

/*背景色の変化　-webkit-animation: alpha-off 0.5s forwards;*/

@-ms-keyframes alpha-off {
	0% { filter: alpha(opacity=0); }
	100% { filter: alpha(opacity=100); }
}
@-moz-keyframes alpha-off {
	0% { -moz-opacity:0; }
	100% { -moz-opacity:1; }
}
@-webkit-keyframes alpha-off {
	0% { opacity:0; }
	100% { opacity:1; }
}
@keyframes alpha-off {
	0% { opacity:0; }
	100% { opacity:1; }
}


@-ms-keyframes alpha-on {
	0% { filter: alpha(opacity=100); }
	100% { filter: alpha(opacity=0; }
}
@-moz-keyframes alpha-on {
	0% { -moz-opacity:1; }
	100% { -moz-opacity:0; }
}
@-webkit-keyframes alpha-on {
	0% { opacity:1; }
	100% { opacity:0; }
}
@keyframes alpha-on {
	0% { opacity:1; }
	100% { opacity:0; }
}


@-ms-keyframes alpha-on2 {
	0% { display:block;opacity: 1; }
	100% { display:none;opacity: 0; }
}
@-moz-keyframes alpha-on2 {
	0% { display:block;opacity: 1; }
	100% { display:none;opacity: 0; }
}
@-webkit-keyframes alpha-on2 {
	0% { display:block;opacity: 1; }
	100% { display:none;opacity: 0; }
}
@keyframes alpha-on2 {
	0% { display:block;opacity: 1; }
	100% { display:none;opacity: 0; }
}

/*以上*/