@charset "UTF-8";
/* Reset
------------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,fieldset,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
}
address,em,strong,th {
	font-style: normal;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

th {
	text-align: left;
}

hr,legend {
	display: none;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}
img,fieldset {
	border: 0;
}

li {
	list-style-type: none;
}

img {
	vertical-align: top;
}
* {	
	box-sizing: border-box;
}
/*IE6*/
* html img{
	vertical-align: bottom;
}
/*IE7*/
*:first-child+html img{
	vertical-align: bottom;
}

a{
	outline:none;
	text-decoration: none;
	color: #000;
	display: inline-block;
}

/* Fonts
------------------------------------------------------------*/
body {
	font-size: 80%; /* IE */
	font-family:  "Noto Sans CJK JP", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W4", "Hiragino maru Gothic ProN W4", "Hiragino Sans", "Meiryo", "メイリオ", "游ゴシック", "Yu Gothic",sans-serif;
	-webkit-text-size-adjust: 100%;
    color: #111111;
	letter-spacing: 0.03em;
	line-height: 1.6;
}
html>/**/body {
	font-size: 15px; /* Except IE */
}
@media screen and (max-width: 767px) {
	html>/**/body {
		font-size: 14px; /* Except IE */
	}
}
.font_ls {	
	letter-spacing: 0.15em;
}

/* clearfix
------------------------------------------------------------*/
.clearfix:after {  
	visibility: hidden;  
	display: block;  
	content: " ";  
	clear: both;  
}  
/*------------ 初期設定 ------------*/
.text_w,
.text_w a {
	color: #fff;
}
.text_b,
.text_b a {
	color: #681B00;
}
img {
	display: block;
	width: 100%;
	height: auto;
}

/*------------ 全体 ------------*/
html {
}

body {
	position:relative;
}

._hover{
	opacity:1;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

._hover:hover{
	opacity:0.7;
}
.sp {
	display:none;
}
.nobr {
	white-space: nowrap;
}
.max_container {
	width: 100%;
	position: relative;
	margin: 0 auto;
	max-width: 1920px;
	height: 100%;
}
.font_small {
	font-size: 80%;
}
@media screen and (max-width: 767px) {
	.pc{
		display:none;
	}	
	.sp{
		display:block;
	}
}
/*------------ HEADER ------------*/
#header{
	width:100%;
	position:fixed;
	top:0;
	left:0;	
	background-color: rgba(93,124,53,0.80);
	z-index: 1001;
	height: 60px;
}
#sp_overray {
	display: none;
}
#header nav {
	display: flex;
	width: calc(100% - 235px);
	margin-left: auto;
	justify-content: flex-end;
}
#header .header_logo_sp {
	display: none;
}
#header nav .header_logo {
    width: 235px;
	/*height: 148px;*/
	margin-right: auto;
	background-color: #D9D2C6;
	padding: 20px 25px;
	position: absolute;
	left: 0;
	top: 0;
}
#header nav .header_logo a {
	display: block;
}
/*------------ NAVI ------------*/	
#header nav ul.page_menu {
	display: flex;
	line-height: 60px;
	justify-content: space-evenly;
    max-width: 1000px;
	width: 100%;
    height: 60px;
    font-size: 18px;
    margin-left: auto;
    /*margin-left: 0;*/
    /*margin-right: auto;*/
}
#header nav ul.page_menu a {
    padding: 0 20px;
}
#header nav ul.page_menu li.page_menu--location {
    display: flex;
    align-items: center;
}
#header nav ul.page_menu li.page_menu--location a {
    font-size: 16px;
    line-height: 1.2;
    padding: 12px 20px;
}
#header nav ul.page_menu li.page_menu--location a span {
    font-size: 14px;
}
#header nav .header_lang {
	width: 124px;
	position: relative;
	height: 60px;
	display: flex;
	flex-direction: column;
    align-content: center;
    justify-content: center;
    margin-right: 30px;
    font-size: 17px;
}
@media screen and (min-width: 1241px) {	
#header nav .header_lang ul {
	opacity: 0;
	transition: all 0.5s ease-in-out;
	transform: translateY(-100%);
	position: relative;
}
#header nav .header_lang ul.top {
	transform: translateY(100%);
	top: -90px;
}
#header nav .header_lang:hover ul,
#header nav .header_lang:hover ul.top {
	opacity: 1;
	transform: translateY(0);
}
}
@media screen and (min-width: 2000px) {
    #header nav ul.page_menu {
    margin-right: auto;
    }
    #header nav .header_lang {
        margin-left: auto;
    }
}
#header nav .header_lang .header_lang--title span {
	display: block;
	text-align: center;
	line-height: 30px;
	border: 1px solid #fff;
	border-radius: 15px;
	cursor: pointer;
	padding: 0 20px;
}
#header nav .header_lang ul {
	position: absolute;
	top: 60px;
	width: 100%;
	text-align: center;
}
#header nav .header_lang ul li {
	line-height: 30px;
	border-radius: 15px;
	background-color: rgba(93,124,53,0.80);
	margin: 10px 0;
}
#header nav .header_lang ul li a {
	display: block;
}
#header nav .header_btn--sp {
	display: none;
}
#header nav .header_btn ul {
	display: flex;
    font-size: 16px;	
}
#header nav .header_btn ul li {
	width: 176px;
	background-color: #5D7C35;
	line-height: 60px;
	text-align: center;
}
#header nav .header_btn ul li a {
}
#header nav .header_btn ul li img {
	display: inline-block;
	width: 28px;
	margin-right: 10px;
	margin-top: 16px;
}
#header nav .header_btn ul li.btn_contact {
	background-color :#434343;
}
.src-component-launcher-WidgetLauncher-wrapper {
  display: none!important;
}
/*------------ スライド ------------*/	
#slide {
	position: relative;
}
#slide li {
	opacity: 0;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
#slide li:first-child {
	opacity: 1;
	position: relative;
}

/*------------ FOOTER ------------*/
.pagetop {
	display: none;
	position: fixed;
	width: 60px;
	height: 60px;
	bottom: 30px;
	right: 30px;
    background-color: rgba(53,86,25,0.70);
	/*background: #5D7C35;*/
	z-index: 100;
}
.pagetop a {
	cursor: pointer;
	display: block;
	padding: 20px 12px;
}
#footer {
    background-color: #5D7C35;
	text-align: center;
	padding: 64px 50px 10px;
    font-size: 14px;
	position: relative;
}
#footer .footer_wrapper {
    max-width: 1344px;
    margin: 0 auto;
    position: relative;
}
#footer .footer_title {
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.08em;
	margin-bottom: 1.2em;
}
#footer .footer_title img.footer_logo {
	display: block;
	width: 60%;
	max-width: 240px;
	height: auto;
	margin: 0 auto;
}
#footer .footer_ig {
	display: block;
	margin: 0 auto 1.2em;
    width: 53px;
    height: 53px;
    border-radius: 50%;
    padding: 14px;
    background-color: rgba(53,86,25,0.50);
    position: absolute;
    right: -60px;
    top: -3px;
}
#footer .footer_ig img {
	margin: 0 auto;
    width: 25px;
}
#footer .footer_address {
	position: relative;
		width: 100%;
		max-width: 308px;
	margin: 0 auto 3em;
}
#footer dl.footer_info {
	width: fit-content;
	margin: 0 auto 43px;
	position: relative;
	text-align: left;
	line-height: 1.8;
}
#footer dl.footer_info > dt {
	position: absolute;
	left: 0;
}
#footer dl.footer_info > dd {
	margin-left: 160px;
	margin-bottom: 0.8em;
}
#footer dd.footer_info--tel {
	line-height: 1.4;
}
#footer dd.footer_info--tel a {
	font-size: 18px;
	letter-spacing: 0.08em;
	font-weight: bold;
	font-family: "ヒラギノ角ゴ ProN W4", "Hiragino maru Gothic ProN W4", "Hiragino Sans", "Meiryo", "メイリオ", sans-serif;
}
#footer dd.footer_info--tel span {
	display: block;
}
#footer dl.footer_time {
	position: relative;
}
#footer dl.footer_time dt {
	position: absolute;
	left: 0;
}
#footer.en dl.footer_time dt {
	position: relative;
}
#footer dl.footer_time dd {
	margin-left: 180px;
}
#footer dl.footer_time dd:before {
	content: "|";
	margin-right: 0.5em;
}
#footer ul.footer_link {
    margin: 0 auto;
    max-width: 692px;
    border-top: 1px solid #fff;
}
#footer ul.footer_link li {
	display: inline-block;
	margin: 0 1em;
}
#footer ul.footer_link li a {
	position: relative;
    padding: 0.8em 1em;
}
#footer ul.footer_hotel {
    position: absolute;
    left: 0;
    top: 0;
}
#footer ul.footer_hotel li {
	width: 264px;
	margin: 0 auto;
}
#footer .copyright {
	font-size: 70%;
	letter-spacing: 0.08em;
	margin-top: 50px;
}

.effect-fade {
	opacity: 0;
	transform: translate(0, 45px);
	transition: all 800ms;
}

.effect-fade.effect-scroll {
	opacity: 1;
	transform: translate(0,0);
}

@media screen and (max-width: 1300px) {
	#footer ul.footer_hotel {
		position: relative;
		margin-top: 30px;
	}
}
/*------------ SP固定アイコン ------------*/
.sp_fixed{
	display: none;
}
@media screen and (max-width: 1240px) {	
	.sp_fixed {
		display: block;
		position: absolute;
		width: 190px;
		right: 80px;
		top: 3px;
	}
	.sp_fixed ul {
		display: flex;
		justify-content: space-between;
	}
	.sp_fixed ul li {
		border: 1px solid #fff;
		width: 53px;
		height: 53px;
		border-radius: 50%;
		padding: 12px;
		background-color: #5D7C35;
	}
}
@media screen and (max-width: 767px) {	
	.sp_fixed {
		position: fixed; 
		top: auto;
		bottom: 15px;
		left: 50%;
		margin-left: -95px;
	}
	.sp_fixed ul {
	}
	.sp_fixed ul li {
	}
}


/*------------ HEADER SP ------------*/
@media screen and (max-width: 1240px) {	
	#sp_overray {
		display: block;
		position:fixed;
		width:100%;
		height:100%;
		z-index:1001;
		background:#5D7C35;
		opacity: 0.8;	
		top: 0;
		left: 0;
	}	
	#sp_btn {
		width: 56px;
		height: 56px;
		position: absolute;
		right: 0;
		top: 0;
		z-index: 1002;
		padding: 14px;
		cursor: pointer;
	}
	#sp_btn span {
		display: block;
		width: 28px;
		height: 2px;
		background: #fff;		
		transition: all 0.3s ease-in-out;
		margin: 6px 0;
	}
	#sp_btn.active span {
		opacity: 0;
	}
	#sp_btn:before, #sp_btn:after {
		content: " ";
		display: block;
		width: 28px;
		height: 2px;
		background: #fff;
		opacity: 0;
		transform-origin: center center;	
		transition: all 0.3s ease-in-out;
		position: absolute;
		top: 50%;
		margin: 0 auto;
	}
	#sp_btn.active:before {
		transform: rotate(45deg);
		opacity: 1;
	}
	#sp_btn.active:after {
		transform: rotate(-45deg);
		opacity: 1;
	}
	#header nav {
		display: block;
		padding: 64px 34px;
		margin: 0 auto;
		width: auto;
	}
	#header .header_logo_sp {
		display: block;
		width: 175px;
		background-color: #D9D2C6;
		padding: 20px 25px;
		position: absolute;
		left: 0;
		top:0;
	}
#header .header_logo_sp a {
	display: block;
}
	#header nav .header_logo {
		display: none;
	}
	/*------------ NAVI SP------------*/	
	#header nav ul.page_menu {
		display: block;
		width: auto;
		max-width: 100%;		
		position: relative;
		z-index: 1002;
		height: auto;
		margin-bottom: 24px;
		text-align: center;
	}
	#header nav ul.page_menu a {
		padding: 0 20px;
	}
	#header nav ul.page_menu li.page_menu--location {
		display: block;
	}
	#header nav ul.page_menu li.page_menu--location br {
		display: none;
	}
	#header nav ul.page_menu li.page_menu--location a {
		font-size: inherit;
	}
	#header nav .header_btn {
		display: none;
	}
	#header nav .header_btn--sp {	
		display: block;	
	}
	#header nav .header_btn--sp ul {		
    	font-size: 16px;
		position: relative;
		z-index: 1002;
		margin: 0 auto;
		max-width: 308px;
	}
	#header nav .header_btn--sp ul li {
		width: auto;
		background-color: #355619;
		line-height: 48px;
		margin-bottom: 20px;
		text-align: center;
	}
	#header nav .header_btn--sp ul li img {
		display: inline-block;
		width: 28px;
		margin-right: 10px;
		margin-top: 16px;
		margin-top: 10px;
	}
	#header nav .header_btn--sp ul li.btn_contact {
		background-color :#434343;
	}
	#header nav .header_lang {
		width: auto;
		height: auto;
		display: block;
		margin-right: 0;
		font-size: 17px;
		
		z-index: 1002;
	}
	#header nav .header_lang .header_lang--title, 
	#header nav .header_lang .header_lang--title span {
		display: none;
	}
	#header nav .header_lang ul {
		position: relative;
		top: auto;
		width: 100%;
		max-width: 308px;
		text-align: center;
		display: flex;
		margin: 0 auto;
		justify-content: space-between;
	}
	#header nav .header_lang ul li {
		line-height: 40px;
		border-radius: 20px;
		border: 1px solid #fff;
		background-color: unset;
		width: calc(50% - 6px);
	}
}

@media screen and (max-width: 767px) {
	.pc{
		display:none;
	}
	/*------------ FOOTER SP ------------*/
	#footer {
		padding: 43px 30px 10px;
		font-size: 13px;
	}
	#footer .footer_title {
		font-size: 17px;
	}
	#footer .footer_ig {
		position: relative;
		right: auto;
		top: auto;
		display: block;
	}
	#footer .footer_address {
		margin-bottom: 2em;
	}
	#footer dl.footer_info {
		width: auto;
		margin: 0 auto 26px;
		text-align: center;
		line-height: 1.5;
	}
	#footer dl.footer_info > dt {
		position: relative;
		left: auto;
		margin-bottom: 0.2em;
		font-size: 14px;
	}
	#footer dl.footer_info > dt:before {
		content: "- ";
	}
	#footer dl.footer_info > dt:after {
		content: "- ";
	}
	#footer dl.footer_info > dd {
		margin-left: 0;
		margin-bottom: 1.7em;
	}
	#footer dl.footer_time {
		width: 406px;
		margin: 0 auto;
	}
	#footer dl.footer_time dd {
		margin-bottom: 0.6em;
        margin-left: 165px;
	}
	#footer ul.footer_link {
		display: flex;
		justify-content: space-evenly;
		flex-wrap: wrap;
	}
	#footer ul.footer_link li {
		margin: 0;
	}
}
@media screen and (max-width: 500px) {
	#footer dl.footer_time {
		width: auto;
	}
	#footer dl.footer_time dt {
		position: relative;
		left: auto;
	}
	#footer dl.footer_time dd {
		margin-left: 0;
	}
	#footer dl.footer_time dd:before {
		display: none;
	}
}


/* ヘッダー部分ボタン切り替え 日本語 */
.header_lang--mail, .header_lang--ja {
	display: none;
}
.header_lang_en--form {
	display: none;
}
.header_lang_ch--form {
	display: none;
}