﻿@charset "utf-8";

/* CSS Document */
body{margin: 0;
	font-family: 'Noto Serif JP', serif;}
header,#dscrptn,.h2title{font-family: "Sawarabi Mincho";}
footer{font-family: 'Sawarabi Gothic', sans-serif;}

p,ul,ol,li,dl,dt,dd{margin: 0; padding: 0;}

a{text-decoration: none; color: #000;}

h1,h2,h3,h4,th{font-weight: normal; margin: 0;}

img{width: 100%; vertical-align: bottom;}

#scrltop a{display: block; width: 100%;}
#scrltop .scrltoptxt{position: absolute; bottom: 0; left: 0; display: block; font-size: 1rem; line-height: 1em; background-color: #b864a4; color: #fff; padding: 0.5em 0; box-sizing: border-box; border-radius: 1rem; width: 2rem; height: 2rem;}



main{background: #fff;color: #453126;}
main table{color: #453126;}
main a{color: #453126;}
main a:hover{opacity: 0.7;}

#his table td{height:50px;}
#info table td{height:50px; text-align:center;}


	
.tonext,.outsite{height: 40px; margin: 2em auto; position: relative;}
.tonext::before,.outsite::before{content: ""; display: block; position: absolute; width: calc(100% - 10px); height: 30px; top: 5px; left: 5px; border: solid 1px #fff; box-sizing: border-box;}
.tonext a,.outsite a{display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #fff; text-align: center; padding: calc(20px - 0.7em); box-sizing: border-box;}
.tonext{width: 200px; background: #b864a4;}
.outsite{width: 260px; background: #999;}

	.tc{text-align: center;}
	.tl{text-align: left;}
	.tr{text-align: right;}

/*アコーディオン*/
.accordionlist{margin-bottom: 10px;}
.accordionlist dt{
    display:block;
    border: 1px solid #eee;
	box-sizing: border-box;
	cursor: pointer;
	position: relative;
}
#facility .accordionlist dt,#shop .accordionlist dt,#grouptravel .accordionlist dt{padding: 4px 10px 6px;}
#flower .accordionlist dt{padding: 7px 10px 9px;}
#facility .accordionlist dt:hover,#flower .accordionlist dt:hover{opacity: 0.8;}
.accordionlist dt.drink{background: #b6ae50;}
.accordionlist dt.food{background: #91bb50;}
.accordionlist dt.soba{background: #9b8950;}
.accordionlist dt.haru{background: #f09495;}
.accordionlist dt.natsu{background: #95b540;}
.accordionlist dt.aki{background: #f36f51;}
.accordionlist dt.fuyu{background: #68c6b8;}
.accordionlist dt.lunch{background: #E44E4E;}
.accordionlist dt .title{
	float: left;
	text-align: left;
	color: #eee;
}
#facility .accordionlist dt .title{font-size: 1rem;}
#flower .accordionlist dt .title{font-size: 1.1rem;}
#flower .accordionlist dt .title span{display: inline-block; width: 10em;}
.accordionlist dd{
    display:none;
	padding: 1.5em 2em;
	color: #333;
	line-height: 1.5em;
}
#facility .accordionlist dd,#shop .accordionlist dd,#grouptravel .accordionlist dd{background: #f8f8f8;}
#flower .accordionlist dd{background: #fffee0;}
.accordion_icon,
.accordion_icon span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.accordion_icon {
	position: absolute;
	width: 30px;
	height: 30px;
	right: 4px;
}
#facility .accordion_icon,#shop .accordion_icon,#grouptravel .accordion_icon{top:8px;}
#flower .accordion_icon{top:11px;}
.accordion_icon span {
	position: absolute;
    left: 6px;
    width: 50%;
	height: 2px;
    background-color: #eee;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-ms-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
}
.accordion_icon span:nth-of-type(1) {
    top: 5px;
	transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
}
.accordion_icon span:nth-of-type(2) {
    top: 5px;
	transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
}
/*＋、×切り替え*/
.accordion_icon.active span:nth-of-type(1) {
	top: 5px;
    transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
}
.accordion_icon.active span:nth-of-type(2) {
	top: 5px;
    transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
}
.shumemenu dt,.flowermenu dt{zoom:1;}
.shumemenu dt:after,.flowermenu dt:after {content : ""; display: block; clear: both;}
.flex {
display: flex;
display: -ms-flexbox;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
width: 100%;
	margin-bottom: 1em;
}
hr.menuline {
position: relative;
top: calc(50% - 1px);
margin: 0 10px;
border: none;
border-top: dotted 2px #CCC;
}
.menuleader {
flex: auto;
}
#facility .menuttl,#shop .menuttl{border-bottom: solid 1px #777; margin-bottom: 1em; font-size: 1.1em;}
#flower .menuttl{border-bottom: solid 1px #777; margin-bottom: 1.5em; font-size: 1.1em;}
.accordionlist ul{margin: 0 10px;}
.accordionlist li{list-style-type: none;}
/*花暦アコーディオン*/
	#spring .flwrttl{color: #f09495; border-top: solid 1px #f09495; border-bottom: solid 1px #f09495; margin-bottom: 1em;}
	.flowermenu{position: relative; display: block;}
	.menutxt{width: calc(100% - 1em); margin: 0 auto;}
	.flowerimg{width: 100%; max-width: 300px; margin: 30px auto;}
	.flwrtxt{width: calc(100% - 2em); margin: 0 auto 2em;}
	.flwrtxt2{width: calc(100% - 2em); margin: 0 auto 1em;}
	.flowerinfo ol{margin: 0 2em;}
	.flowerinfo li{list-style: circle; margin-bottom: 1em;}

/* モーダルウィンドウ */
.inlinecontents{display: none;}
.goodstxt li{list-style: square; margin-left: 1.5em;}
	.originalin,.originalin2{display: table-cell; padding: 0 5px; box-sizing: border-box; position: relative;}
	.originalin{width: calc(100% / 3);}
	.originalin2{width: 25%;}
	.originalin p,.originalin2 p{text-align: center; height: 2em;}
	.originalin p a,.originalin2 p a{display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding-top: calc(66% - 2px); box-sizing: border-box;}

/*アクセス*/
.acstxt{margin-bottom: 2em;}
.acstxt span{font-size: 0.8em;}

/*プライバシーポリシー*/
#policy ol{margin: 2em 0;}
#policy li{font-size: 1.1rem; margin: 0 2em 1em;}
#policy ol li ul li{list-style: disc; margin: 0 0 0.5em 2em;}

.taxtxt{font-size: 0.8rem;}

















@media only screen and (max-width: 799px){
html{font-size: 12px;}
	
	header{margin-top: 50px;}
	#goyotei #firstimage{width: 100%; height: 100vw; background-color: #fff; position: relative;}

	#goyotei #firstimage h1{display: block; position: absolute; top: calc(50vw - 100px); left: calc(50vw - 37.5px); width: 60px; height: 80px; background: rgba(0, 0, 0, 0); z-index: 1;}

	#goyotei #firstimage h2{display: block; position: absolute; top: calc(50vw - 100px); left: calc(50vw - 37.5px); width: 75px; height: 200px; background: rgba(35, 24, 21, .8); z-index: 1;}

	#mainimage{transition: 1s; height: 100%; z-index: -1;}
	#mainimage li img{object-fit: cover; width: 100%; height: 100%;}
	#mainimage li{height: 100vw !important;}
	.bx-viewport{height: 100vw !important;}
	.anten{opacity: 0;}
	#sitemenu{position: fixed; top: 0; left: 0; width: 100%; height: 50px; background-color:#000; z-index: 1;}
	#sitemenu2{position: fixed; top: 0; left: 0; width: 100%; height: 50px; background-color: transparent; z-index: 1;}
	.sitemenulogo{position: absolute; top: 8px; left: 8px; width: 42px; height: 100%;}
	.sitemenulogo2{position: absolute; top: 8px; left: 8px; width: 42px; height: 100%;}
	#sitemenulogo{position: absolute; top: 8px; left: 8px; width: 42px; height: 100%;}
	#sitemenulogo2{position: absolute; top: 8px; left: 8px; width: 42px; height: 100%;}
	#headmenu{display: none; }
	#language{position: absolute; top: 50px; left: 0; width: 100%; background: #000;}
	#language ul{width: 100%; height: 100%; display: table;}
	#language li{list-style: none; display: table-cell; vertical-align: middle; text-align: right; position: relative; padding: 0 1em; box-sizing: border-box; font-size: 0.9rem;}
	#language li a{color: #fff;}
#scrltop{position: fixed; bottom: 10px; right: 5px; width: 2rem; height: 2rem; z-index: 1; text-align: center;}

/*ドロワーメニュー*/
#mainmenu{position: fixed; top: 0; right: 0; width: 50px; height: 50px; z-index: 2;}
	nav{
		display: none;
		position: fixed;
		top: 0;
		width: 100%;
		height: 100vh;
		background: rgba(35,24,21,1);
		left: 0;
		overflow-y: scroll;
		text-align: center;
	}
	header #mainmenu nav ul{
		display: block;
		width: 100%;
	}
	header #mainmenu nav ul::after{content: ""; display: block; clear: both;}
	header #mainmenu nav ul li{
		margin: 0 auto;
		text-align: center;
		float: left;
		border-bottom: 1px solid #565656;
		background-color: #f8f8f8;
		font-size: 1.2rem;
	}
	header #mainmenu nav #nav_content{padding-top: 50px;}
	header #mainmenu nav #nav_content ul li{width: 100%;}
	header #mainmenu nav ul li:first-child{border-top: 1px solid #565656;}
	header #mainmenu nav ul li a{
		display: block;
		color: #565656;
		padding: 20px 10px; box-sizing: border-box;
	}
/*ドロワーメニュー開閉ボタン*/
	#nav_toggle{
		display: block;
		width: 30px;
		height: 30px;
		position: fixed;
		top: 10px;
		right: 10px;
		z-index: 100;
	}
	#nav_toggle div {
		position: relative;
	}
	#nav_toggle span{
		display: block;
		height: 3px;
		background: #fff;
		position:absolute;
		width: 100%;
		left: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;	
	}
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:10px;
	}
	#nav_toggle span:nth-child(3){
		top:20px;
	}
	/*開閉ボタンopen時*/
	.open #nav_toggle span:nth-child(1) {
			top: 15px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);
		}
		.open #nav_toggle span:nth-child(2) {
			width: 0;
			left: 50%;
		}
		.open #nav_toggle span:nth-child(3) {
			top: 15px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
		}

#dscrptn{padding: 30px 0; box-sizing: border-box;}
.dscrptntxt{text-align: center; font-size: 1.3rem; margin-bottom: 30px;  -ms-writing-mode:}
.dscrptntxt2{font-size: 1rem; line-height: 1.7em; width: calc(100% - 60px); margin: 0 30px;}

	.h2title{font-size: 1.5rem; text-align: center; margin-bottom: 1.5em;}
	#sobadokoro .h2title,#kissashume .h2title{font-size: 1.5rem; text-align: center; margin-bottom: 0.5em;}
	.h3title{font-size: 1.5rem; text-align: center; margin-bottom: 1em;}
	#topics article{width: calc(100% - 40px); margin: 0 20px 2em;}
	#topics article dl{border-bottom: solid 1px #000; font-size: 1rem;}
	#topics article dt{font-size: 1.2em; position: relative; padding-left: 0.7em; box-sizing: border-box; margin-bottom: 0.5em;}
	#topics article dt::before{content: ""; display: block; position: absolute; top: 0; left: 0; width: 3px; height: 100%; background: #000;}
	#topics article dd{padding: 0 1em 0.5em;}
	#topics dd a{text-decoration: underline; color: #00f;}
	#topics dd a:hover{color: #777;}
	#snsbox{width: 320px; height: 58px; display: table; margin: 40px auto 0;}
	.snsblock,.snsblock_ta{display: table-cell; vertical-align: middle; box-sizing: border-box;}
	.snsblock{width: 60px; padding: 10px;}
	.snsblock_ta{width: 200px; padding: 0 10px;}
	#CDSWIDLNKR{width: 180px !important;}
	
#topics{padding: 0 0 40px; box-sizing: border-box;}
	.sectionimg{margin-bottom: 40px;}
	.sectiontxt{font-size: 1.2rem; width: calc(100% - 40px); margin: 0 auto; color: #555;}
	#goyotei .sectiontxt{font-size: 1.2rem; width: calc(100% - 20px); margin: 0 auto; color: #555;}
	.sectiondscrpt{font-size: 1.3rem; width: calc(100% - 40px); margin: 0 auto 1em;}
	
#floral,#gift,#information{padding: 0 0 20px; box-sizing: border-box;}
.migoro{width: calc(100% - 40px); margin: 0 auto 20px; text-align: center; padding: 20px 0; box-sizing: border-box; border-bottom: solid 2px #eee;}
.migoro img{width: 150px; margin: 10px 0;}
.migorottl{font-size: 1.2rem; width: 100%; margin: 0 auto; text-align: center; background: #eee; color: #000;}
.migorotxt{font-size: 1rem; text-align: left;}
.migoronext{font-size: 0.9em; text-align: right;}
	#season{width: calc(100% - 40px); margin: 0 auto; font-size: 0;}
	.seasonin{display: inline-block; width: 50%; padding: 0 5px; box-sizing: border-box; position: relative; margin-bottom: 20px;}
	.seasonin p{text-align: center; font-size: 1rem; height: 2em;}
	.seasonin p a{display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #fff; padding-top: calc(50% - 2px); box-sizing: border-box;}
	#season .spr{background: #c82777;}
	#season .sum{background: #568233;}
	#season .aut{background: #E99126;}
	#season .win{background: #3FA6E6;}
	
	.originalttl{width: calc(100% - 40px); margin: 30px auto 5px; background-color: #777; padding: 3px; box-sizing: border-box; color: #fff; text-align: center;}
	.original{width: calc(100% - 40px); margin: 0 auto; display: table;}
	
	#information dl{display: block; width: calc(100% - 80px); margin: 0 auto 20px; font-size: 0;}
	#information dt,#information dd{display: inline-block; font-size: 1rem; margin-bottom: 1em; vertical-align: top;}
	#information dt{width: 6em;}
	#information dd{width: calc(100% - 6em);}
	#information dd span{text-indent: -1em; margin-left: 1em; display: block;}
		
footer{width: 100%; text-align: center; color: #fff; background-color: #231815;}
#footcontents ul{display: table; width: 100%; margin: 0 auto; padding: 1em 0 0; box-sizing: border-box;}
#footcontents li{display: table-cell; text-align: center; vertical-align: middle; font-size: 0.9em; width: 50%;}
#footcontents a{color: #fff;}
footer p{padding: 1em 0; box-sizing: border-box;}
	
	.pc{display: none;}
	
	
/*施設のご案内*/
#facility #firstimage{width: 100%; height: 25vh; background-color: #fff; position: relative; background: url("../images/img_discrpt.jpg") no-repeat; background-position: center center; background-size: cover;}
	#about,#history,#scenic{padding: 0 0 20px; box-sizing: border-box;}
	.imagepod{width: calc(100% - 40px); margin: 20px auto;}
	#sobadokoro .imagepod,#kissashume .imagepod{width: calc(100% - 40px); margin: 0 auto 20px;}
	.scenicimg{width: calc(100% - 80px); max-width: 300px; margin: 20px auto;}
	#history dl{width: calc(100% - 40px); margin: 0 auto; display: flex; flex-wrap: wrap;}
	#history dt,#history dd{display: flex; flex-direction: column; font-size: 1rem; border-bottom: 1px solid #aaa; padding: 0.5em; box-sizing: border-box; margin-bottom: 1em;}
	#history dt{width: 35%; border-left: 2px solid #aaa;}
	#history dd{width: 65%; border-left: 1px solid #aaa;}
	#facilities article{padding-bottom: 40px; box-sizing: border-box;}
	.telbox{width: calc(100% - 40px); text-align: center; margin: 20px auto; border-top: solid 1px #777; border-bottom: solid 1px #777; padding: 1em 0; box-sizing: border-box;}
	.telboxttl{font-size: 1.2rem; padding: 0.5em; box-sizing: border-box;}
	.telboxtxt{font-size: 1.3rem; padding: 0.3em; box-sizing: border-box;}
		
/*施設アコーディオン*/
#facility .accordionbox{width: 90%; margin: 10px auto; padding: 20px 5px 1px;}
	.kissattl{text-align: center; font-size: 1.2em; margin: 0 auto 1em; border-left: 4px solid #aaa; border-right: 4px solid #aaa; width: 16em;}
	.kissatxt{margin: 1em;}
	.sobaimg{width: 90%; margin: 0 auto 5px;}
	.sobatxt{text-align: center; font-size: 1rem; margin-bottom: 1.5em;}
	
/*花暦*/
#flower #firstimage{width: 100%; height: 25vh; background-color: #fff; position: relative; background: url("../images/img_floral.jpg") no-repeat; background-position: center center; background-size: cover;}
	#spring,#summer,#autumn,#winter{padding: 0 0 20px; box-sizing: border-box;}
/*花暦アコーディオン*/
#flower .accordionbox{width: 90%; margin: 10px auto; padding: 0 5px 1px;}
	#spring .flowermenu::after{content: ""; position: absolute; display: block; width: 86px; height: 38px; top: -38px; right: 0; background: url("../flower/images/kazari_spring.png") no-repeat; background-size: 86px 38px;}
	#summer .flowermenu::before{content: ""; position: absolute; display: block; width: 72px; height: 36px; top: -36px; right: 10px; background: url("../flower/images/kazari_summer.png") no-repeat; background-size: 100% 100%;}
	#autumn .flowermenu::before{content: ""; position: absolute; display: block; width: 66px; height: 39px; top: -39px; right: 10px; background: url("../flower/images/kazari_autumn.png") no-repeat; background-size: 100% 100%;}
	#winter .flowermenu::before{content: ""; position: absolute; display: block; width: 66px; height: 44px; top: -44px; right: 10px; background: url("../flower/images/kazari_winter.png") no-repeat; background-size: 100% 100%;}

/*お食事・お土産*/
#shop #firstimage{width: 100%; height: 25vh; background-color: #fff; position: relative; background: url("../images/title_shop.jpg") no-repeat; background-position: center center; background-size: cover;}
	#sobadokoro,#kissashume,#omiyage{padding: 0 0 40px; box-sizing: border-box;}
/*お食事アコーディオン*/
#shop .accordionbox{width: 90%; margin: 10px auto; padding: 0 5px 1px;}
	.goodspod{max-width: 300px; padding: 10px 20px 0; box-sizing: border-box;}
	.goodsttl{font-size: 1.3rem; border-bottom: 2px solid #aaa;}
	.goodsttl span{margin-left: 2em; font-size: 0.8em;}
	.goodstable{}
	.goodstxt{padding: 10px; box-sizing: border-box; vertical-align: top;}
	.goodsimg{width: 100%; padding: 10px 10px 0; box-sizing: border-box; vertical-align: top;}
	
/*アクセス*/
#access #firstimage{width: 100%; height: 25vh; background-color: #fff; position: relative; background: url("../images/main_img01.jpg") no-repeat; background-position: center center; background-size: cover;}
	#aboutaccess{padding: 20px 0; box-sizing: border-box;}
	.aboutbox{text-align: center; width: 100%; margin: 0 auto; font-size: 1.3rem;}
	#maparea{width: calc(100% - 40px); max-width: 1000px; margin: 0 auto 20px;}

/*団体・旅行業者様へ*/
#grouptravel #firstimage{width: 100%; height: 25vh; background-color: #fff; position: relative; background: url("../images/title_infomation.jpg") no-repeat; background-position: center center; background-size: cover;}
.yoyakubox{font-size: 1rem; line-height: 1.7em; width: calc(100% - 60px); margin: 30px 30px 10px;}
	#lunchbox{padding: 0 0 20px; box-sizing: border-box;}
	#lunchbox li{list-style: none;}
	#lunchbox article{padding: 40px 0 0; box-sizing: border-box;}
	.lunchboxtxt{font-size: 1.2rem; width: calc(100% - 40px); margin: 1em auto 0; color: #f00;}
	.groupmenu{width: calc(100% - 40px); margin: 20px auto 40px;}
	.lunchmenu{width: 100%; padding: 5px 5px 15px; box-sizing: border-box;}
	.lunchimg{width: 100%; margin: 0 auto;}
	.lunchtxt{text-align: center; font-size: 1rem; padding: 5px; box-sizing: border-box;}

/*プライバシーポリシー*/
#policy #firstimage{width: 100%; height: 25vh; background-color: #fff; position: relative; background: url("../policy/images/title_privacy.jpg") no-repeat; background-position: center center; background-size: cover;}
	#privacypolicy,#purpose,#outsourcing{padding: 0 0 40px; box-sizing: border-box;}

}
















@media screen and (min-width: 800px), print{
html{font-size: 16px;}
	
	#goyotei #firstimage{width: 100%; height: 100vh; position: relative;}

	#goyotei #firstimage h1{display: block; position: absolute; top: calc(50% - 280px); left: calc(50% - 90px); width: 150px; height: 100px; background: rgba(0, 0, 0, 0); z-index: 1;}

	#goyotei #firstimage h2{display: block; position: absolute; top: calc(50% - 200px); left: calc(50% - 75px); width: 150px; height: 400px; background: rgba(35, 24, 21, .8); z-index: 1;}

	#mainimage{transition: 1s; height: 100%; z-index: 0;}
	#mainimage li img{margin: 0 auto; display: block;}
	#mainimage li{height: 100vh !important;}
	.bx-viewport{height: 100vh !important;}
	.anten{opacity: 0;}

	#sitemenu{position: absolute; width: 100%; height: 50px; top: 0; left: 0;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.2), transparent);
 background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2), transparent);
 background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), transparent);
         z-index: 1;overflow:hidden;}
	#sitemenu2{position: absolute; width: 100%; height: 50px; bottom: 0; left: 0; background-color:rgba(78,135,144,0.5); z-index: 1;overflow:hidden;}

	#sitemenu.topside{position: fixed; top: 0;}
	.sitemenulogo{position: absolute; top: 8px; left: 20px; width: 42px; height: 100%;}
	.sitemenulogo2{position: absolute; top: 8px; left: 8px; width: 42px; height: 100%;}
	#sitemenulogo{position: absolute; top: 8px; left: 20px; width: 42px; height: 100%;}
	#sitemenulogo2{position: absolute; top: 8px; left: 8px; width: 42px; height: 100%;}

	#sitemenu ul{width: calc(100% - 400px); max-width: 600px; height: 100%; display: table; margin: 0 230px 0 auto;  }
	#sitemenu2 ul{width: calc(100% - 400px); max-width: 800px; height: 100%; display: table; margin: 0 auto 0 100px; }

	#sitemenu li{list-style: none; display: table-cell; vertical-align: middle; text-align: right; }
	#sitemenu2 li{list-style: none; display: table-cell; vertical-align: middle; text-align: left;}

	#headmenu a{color: #fff;}
	#headmenu a:hover{color: #017c8e;}
	#language{ position: absolute; width: 200px; height: 50px; bottom: 0; right:0;}
	#language ul{width: 100%; height: 100%; display: table;}
	#language li{list-style: none; display: table-cell; vertical-align: middle; text-align: left; position: relative; padding: 0 9em; box-sizing: border-box; font-size: 0.8rem;}
	#language a{color: #fff;}
	#language a:hover{color: #017c8e;}
	#language li::before{content: ""; display: block; position: absolute; width: 1px; height: 50px; top: 0; left: 40px; background: #fff;}


	#language2{ position: absolute; width: 200px; height: 50px; bottom: 0; right:0;}
	#language2 ul2{width: 100%; height: 100%; display: table;}
	#language2 li2{list-style: none; display: table-cell; vertical-align: middle; text-align: left; position: relative; padding: 0 9em; box-sizing: border-box; font-size: 0.8rem;}
	#language2 a{color: #fff;}
	#language2 a:hover{color: #cc7;}
	#language2 li::before2{content: ""; display: block; position: absolute; width: 1px; height: 50px; top: 0; left: 0px; background: #fff;}



#scrltop{position: fixed; bottom: 10px; right: 20px; width: 2rem; height: 2rem; z-index: 1; text-align: center;}

	header #mainmenu,header #nav_toggle{display: none;}

#dscrptn{padding: 40px 0; box-sizing: border-box;}
.dscrptntxt{text-align: center; font-size: 1.8rem; margin-bottom: 40px;}
.dscrptntxt2{font-size: 1.2rem; line-height: 2em; width: 800px; margin: 0 auto 40px; }

	.h2title{font-size: 1.5rem; text-align: center; margin-bottom: 2em;}
	#sobadokoro .h2title,#kissashume .h2title{font-size: 1.5rem; text-align: center; margin-bottom: 1em;}
	.h3title{font-size: 1.5rem; text-align: center; margin-bottom: 1.5em;}
	#topics article{width: 100%; max-width: 800px; margin: 0 auto 2em;}
	#topics article dl{border-bottom: solid 1px #000; font-size: 1rem;}
	#topics article dt{font-size: 1.2em; position: relative; padding-left: 0.7em; box-sizing: border-box; margin-bottom: 0.5em;}
	#topics article dt::before{content: ""; display: block; position: absolute; top: 0; left: 0; width: 3px; height: 100%; background: #000;}
	#topics article dd{padding: 0 1em 0.5em;}
	#topics dd a{text-decoration: underline; color: #00f;}
	#topics dd a:hover{color: #777;}
	#snsbox{width: 380px; height: 58px; display: table; margin: 60px auto 0;}
	.snsblock,.snsblock_ta{display: table-cell; vertical-align: middle; box-sizing: border-box;}
	.snsblock{width: 80px; padding: 20px;}
	.snsblock_ta{width: 220px; padding: 0 20px;}
	#CDSWIDLNKR{width: 180px !important;}
	
#topics,#floral,#gift,#information{padding: 0 0 40px; box-sizing: border-box;}
	.sectionimg{margin-bottom: 40px;}
	.sectiontxt{font-size: 1.2rem; width: 800px; margin: 0 auto; color: #555;}
	.sectiondscrpt{font-size: 1.3rem; width: 800px; margin: 0 auto 1em;}
	
.migoro{width: 600px; height: 150px; margin: 80px auto 40px; position: relative;}
	.migoro::after{content: ""; display: block; position: absolute; bottom: 0; right: 0; width: 440px; height: 2px; background-color: #eee;}
.migoro img{width: 150px; position: absolute; top: 0; left: 0;}
.migorottl{width: 440px; position: absolute; top: 0; right: 0; font-size: 1.2rem; text-align: center; background: #eee; color: #000;}
.migorotxt{width: 420px; position: absolute; top: 3em; right: 10px; font-size: 1rem; text-align: left;}
.migoronext{position: absolute; bottom: 1em; right: 1em; font-size: 0.9em;}
.migoronext a:hover{color: #aaa;}
	#season{width: 800px; margin: 0 auto; display: table;}
	.seasonin{display: table-cell; width: 25%; padding: 0 5px; box-sizing: border-box; position: relative;}
	.seasonin p{text-align: center; height: 2em;}
	.seasonin p a{display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #fff; padding-top: calc(50% - 2px); box-sizing: border-box;}
	#season .spr{background: #c82777;}
	#season .sum{background: #568233;}
	#season .aut{background: #E99126;}
	#season .win{background: #3FA6E6;}
	.seasonin:hover{opacity: 0.7;}
	
	.originalttl{width: 800px; margin: 60px auto 5px; background-color: #777; padding: 3px; box-sizing: border-box; color: #fff; text-align: center;}
	.original{width: 800px; margin: 0 auto 1em; display: table;}
	#information{background: #eae6e3;color:#453126;}
	#information dl{display: block; width: 500px; margin: 0 auto; font-size: 0;}
	#information dt,#information dd{display: inline-block; font-size: 1rem; margin-bottom: 1em; vertical-align: top;}
	#information dt{width: 100px;}
	#information dd{width: 400px;}
	#information a{color: #453126;}
	#information a:hover{opacity: 0.7;}
	
footer{width: 100%; height: 200px; text-align: center; color: #fff; background-image: url("../images/footer.jpg") ; position: relative;overflow:hidden;}
#footcontents ul{display: table; width: 98%; height: 200px; padding-top:30px;}
#footcontents li{display: table-cell; height: 200px; text-align: right; box-sizing: border-box; font-size: 0.9rem;}
#footcontents a{color: #fff;}
#footcontents a:hover{opacity: 0.6;}
footer p{padding: 1em 0; box-sizing: border-box;}
	
	.scrltoptxt:hover,.tonext:hover,.outsite:hover{opacity: 0.7;}
	.sp{display: none;}
	
/*施設のご案内*/
#facility #firstimage{width: 100%; height: 50vh; background-color: #fff; position: relative; background: url("../images/img_discrpt.jpg?2021") no-repeat; background-position: center center; background-size: cover;}
	#about,#history,#scenic{padding: 0 0 40px; box-sizing: border-box;}
	.imagepod{width: 100%; max-width: 1000px; margin: 20px auto;}
	#sobadokoro .imagepod,#kissashume .imagepod{width: 100%; max-width: 1000px; margin: 0 auto 40px;}
	.scenicimg{width: 300px; margin: 20px auto;}
	#history dl{width: 800px; margin: 0 auto; font-size: 0;}
	#history dt,#history dd{display: inline-block; font-size: 1rem; border-bottom: 1px solid #aaa; padding: 0.5em; box-sizing: border-box; margin-bottom: 1em;}
	#history dt{width: 200px; border-left: 2px solid #aaa;}
	#history dd{width: 600px; border-left: 1px solid #aaa;}
	#facilities article{padding-bottom: 40px; box-sizing: border-box;}
	.telbox{width: 500px; text-align: center; margin: 20px auto 40px; border-top: solid 1px #777; border-bottom: solid 1px #777; padding: 1em 0; box-sizing: border-box;}
	.telboxttl{font-size: 1.2rem; padding: 0.5em; box-sizing: border-box;}
	.telboxtxt{font-size: 1.3rem; padding: 0.3em; box-sizing: border-box;}
/*施設アコーディオン*/
#facility .accordionbox{width: 600px;margin: 0 auto; padding: 60px 0 20px;box-sizing: border-box;}
	.kissattl{text-align: center; font-size: 1.2em; margin: 0 auto 1em; border-left: 4px solid #aaa; border-right: 4px solid #aaa; width: 16em;}
	.kissatxt{margin: 1em;}
	.sobamenubox{font-size: 0;}
	.sobamenu{display: inline-block; width: 50%; padding: 5px; box-sizing: border-box;}
	.sobaimg{width: 100%; margin: 0 auto;}
	.sobatxt{text-align: center; font-size: 1rem;}
	
/*花暦*/
#flower #firstimage{width: 100%; height: 50vh; background-color: #fff; position: relative; background: url("../images/img_floral.jpg") no-repeat; background-position: center center; background-size: cover;}	
	#spring,#summer,#autumn,#winter{padding: 0 0 40px; box-sizing: border-box;}
/*花暦アコーディオン*/
#flower .accordionbox{width: 600px; margin: 0 auto; padding: 0 0 20px;box-sizing: border-box;}
	#spring .flowermenu::before{content: ""; position: absolute; display: block; width: 177px; height: 76px; top: -76px; right: 0; background: url("../flower/images/kazari_spring.png") no-repeat;}
	#summer .flowermenu::before{content: ""; position: absolute; display: block; width: 144px; height: 73px; top: -73px; right: 14px; background: url("../flower/images/kazari_summer.png") no-repeat;}
	#autumn .flowermenu::before{content: ""; position: absolute; display: block; width: 133px; height: 79px; top: -79px; right: 10px; background: url("../flower/images/kazari_autumn.png") no-repeat;}
	#winter .flowermenu::before{content: ""; position: absolute; display: block; width: 132px; height: 89px; top: -89px; right: 14px; background: url("../flower/images/kazari_winter.png") no-repeat;}

/*お食事・お土産*/
#shop #firstimage{width: 100%; height: 50vh; background-color: #fff; position: relative; background: url("../images/title_shop.jpg?2021") no-repeat; background-position: center center; background-size: cover;}
	#sobadokoro,#kissashume,#omiyage{padding: 0 0 40px; box-sizing: border-box;}
/*お食事アコーディオン*/
#shop .accordionbox{width: 600px;margin: 0 auto; padding: 60px 0 20px;box-sizing: border-box;}
	.goodspod{width: 600px; padding: 20px 20px 0; box-sizing: border-box;}
	.goodsttl{font-size: 1.3rem; margin-bottom: 1em; border-bottom: 2px solid #aaa;}
	.goodsttl span{margin-left: 2em; font-size: 0.8em;}
	.goodstable{display: table;}
	.goodstxt{display: table-cell; padding: 10px; box-sizing: border-box; vertical-align: top;}
	.goodsimg{display: table-cell; width: 290px; padding: 10px; box-sizing: border-box; vertical-align: top;}
	
/*アクセス*/
#access #firstimage{width: 100%; height: 50vh; background-color: #fff; position: relative; background: url("../images/title_infomation.jpg") no-repeat; background-position: center center; background-size: cover;}
	#aboutaccess{padding: 40px 0; box-sizing: border-box;}
	.aboutbox{text-align: center; width: 1000px; margin: 0 auto 40px; font-size: 1.3rem;}
	#maparea{margin-bottom: 20px;}

/*団体・旅行業者様へ*/
#grouptravel #firstimage{width: 100%; height: 50vh; background-color: #fff; position: relative; background: url("../grouptravel/images/title_grouptravel.jpg") no-repeat; background-position: center center; background-size: cover;}
.yoyakubox{font-size: 1.2rem; line-height: 2em; width: 800px; margin: 0 auto 40px;}
	#lunchbox{padding: 0 0 40px; box-sizing: border-box;}
	#lunchbox li{list-style: none;}
	#lunchbox article{padding: 60px 0 0; box-sizing: border-box;}
	.lunchboxtxt{font-size: 1.2rem; width: 800px; margin: 1em auto 0; color: #f00;}
	.groupmenu{width: 800px; margin: 20px auto 40px;}
	.lunchmenubox{font-size: 0;}
	.lunchmenu{display: inline-block; width: 50%; padding: 5px 5px 15px; box-sizing: border-box;}
	.lunchimg{width: 100%; margin: 0 auto;}
	.lunchtxt{text-align: center; font-size: 1rem; padding: 5px; box-sizing: border-box;}

/*プライバシーポリシー*/
#policy #firstimage{width: 100%; height: 50vh; background-color: #fff; position: relative; background: url("../policy/images/title_privacy.jpg") no-repeat; background-position: center center; background-size: cover;}
	#privacypolicy,#purpose,#outsourcing{width: 100%; max-width: 800px; margin: 0 auto; padding: 0 0 60px; box-sizing: border-box;}



}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pcc { display: block !important; }
.spp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pcc { display: none !important; }
.spp { display: block !important; }
}
.table { max-width: 100%; }
}