@charset "UTF-8";

/*reset*/
/*-------------------------------------------------------*/
article,aside,figure,figcaption,footer,header,nav,section,main{ display: block; }
small{ font-size: inherit; line-height: inherit; }
body,p,h1,h2,h3,h4,h5,h6,dl,dt,dd,div{ margin: 0; padding: 0; }
ul,li,ol{ list-style: none; margin: 0; padding: 0; }
button{ background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; }
a img{ border: none; }




/*initialize*/
/*-------------------------------------------------------*/
body{ background-color: #fff; }
body,p,div{ color:#000; letter-spacing: 0; }
a{ color: #000; text-decoration: none; transition: all 0.25s linear; }
#allWrapper{ overflow: hidden; }
#container{ width: 100%; min-height: 0!important; margin: 0 auto; padding: 0 0 136px!important; font-family: 'YakuHanMP', "ヒラギノ明朝 ProN W3","Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-size: 16px; line-height: 1.5; }
#container img{ width: 100%; }
#container a{ cursor: pointer; }
#container a:hover{ opacity: .7; }
.clearfix{ display:block; }
.clearfix:after{ content:"."; display:block; height:0; clear:both; visibility:hidden; }
.sp{ display: none; }
.tb{ display: none; }

/*--レスポンシブ追加プロパティ--------------------------------------*/
@media screen and (max-width: 1120px){ /*1120px以下のcss*/
	.tb{ display: block; }
}



/*ヘッダーのcss*/
/*-------------------------------------------------------*/
#header-content{ position: relative; z-index: 2000; /*border-bottom: 1px solid #dddddd;*/ }
#header-content::after{ content: ""; display: block; width: 100%; height: 34px; background-color: rgba(20,7,0,0.5); border: solid #ab8d2a; border-width: 1px 0; position: absolute; left: 0; top: 100%; }
#header-content .inner-body{ margin: 0 auto; width: 100%; max-width: 1112px; background-color: #ffffff; position: relative; top: 0; line-height: 1.5; height: 97px; /*background-color: #00d;*/ }
#header-content .logo{ position: absolute; left: 0; top: 30px; width: 318px; }
#header-content .name{ font-size: 14px; line-height: 1.5; position: absolute; left: 0; top: 54px; font-weight: normal; }
#header-content .name .word-break{ display: block; }
#header-content .primary-navi01{ display: -ms-flex; display: flex; align-items: center; position: absolute; right: 0; top: 9px; }
#header-content .primary-navi01 .navi:nth-child(n+2){ margin-left: 5px; }
#header-content .primary-navi01 .navi a{ font-size: 14px; line-height: 1.5; color: #606060; text-decoration: underline; }
#header-content .primary-navi01 .navi-map a,
#header-content .primary-navi01 .navi-outline a{ font-size: 16px; line-height: 1.5; display: block; padding: 5px 20px; border-radius: 20px; background-color: #ffffff; border: 1px solid #cccccc; text-decoration: none; }
#header-content .primary-navi01 .navi img{ vertical-align: middle; margin-right: 0.1em; width: 11px; }
#header-content .primary-navi02{ display: -ms-flex; display: flex; position: absolute; right: 0; top: 49px; }
#header-content .primary-navi02 .navi:nth-child(n+2){ margin-left: 5px; }
#header-content .primary-navi02 .navi a{ font-size: 16px; line-height: 1.5; display: block; padding: 5px 20px; background-color: #cccccc; border: 1px solid transparent; border-radius: 20px; }
#header-content .primary-navi02 .navi-request a{ background-color: #86c7bb; color: #ffffff; }
#header-content .primary-navi02 .navi-reservation a{ background-color: #c02940; color: #ffffff; }
#header-content .primary-navi02 .navi-limited a{ border-color: #d9cb74; color: #c0a457; background: linear-gradient(to right, #fbe9aa 0%, #fffed3 50%, #fbe9aa 100%); }
#header-content .primary-navi02 .navi img{ vertical-align: middle; margin-right: 0.2em; width: 30px; }

/*--レスポンシブ追加プロパティ--------------------------------------*/
@media screen and (max-width: 920px){
	#header-content .name{ font-size: 1.52vw; }
	#header-content .primary-navi01 .navi-map a{ font-size: 1.73vw; padding: 5px 2.17vw; }
	#header-content .primary-navi02 .navi:nth-child(n+2){ margin-left: 0.54vw; }
	#header-content .primary-navi02 .navi a{ font-size: 1.73vw; padding: 5px 2.17vw; }
	#header-content .primary-navi02 .navi img{ width: 3.26vw; }
}

/*--高解像度向けに画像置き換え--------------------------------------*/
@media screen and (-webkit-min-device-pixel-ratio: 1.5),screen and (min-resolution: 1.5dppx){
}



/*グローバルナビのcss*/
/*-------------------------------------------------------*/
#header-content .global-navi-wrapper{ background-color: #f9f7ee; border: solid #c7b66f; border-width: 1px 0; position: relative; }
#header-content .global-navi-wrapper::before{ content: ""; position: absolute; left: 0; top: 50%; width: 100%; height: 1px; background-color: #c7b66f; }
#header-content .global-navi-menu{ display: none; }
#header-content .global-navi{ display: -ms-flex; display: flex; max-width: 1112px; margin: 0 auto; width: 100%; flex-wrap: wrap; }
#header-content .global-navi .navi{ width: calc(20% - 2px); position: relative; padding: 0 1px; margin-left: -1px; }
#header-content .global-navi .navi:nth-child(5n+1){ margin-left: 0; }
#header-content .global-navi .navi::before{ content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 100%; height: 34px; border: solid #c7b66f; border-width: 0 1px; box-sizing: border-box; }
#header-content .global-navi .navi a{ text-align: center; display: block; height: 48px; font-size: 15px; line-height: 1.2; color: #ab8d2a; position: relative; }
#header-content .global-navi .navi-login a{ color: #777777; }
#header-content .global-navi .navi.current a{ background: linear-gradient(17deg ,#d0c195 50%, #dccda1 50%) ; color: #ffffff; }
#header-content .global-navi .navi.current a::before{ background-color: #dccda1; }
#header-content .global-navi .navi a .word{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 100%; z-index: 10; }

/*--レスポンシブ追加プロパティ--------------------------------------*/
@media screen and (max-width: 1112px){ /*1120px以下のcss*/
	#header-content .global-navi .navi a{ font-size: 1.34vw; }
}

/*--高解像度向けに画像置き換え--------------------------------------*/
@media screen and (-webkit-min-device-pixel-ratio: 1.5),screen and (min-resolution: 1.5dppx){
}



/*パンくずのcss*/
/*-------------------------------------------------------*/
#container .breadcrumb{ padding: 8px 0; width: 1112px; margin: 0 auto; overflow: hidden; position: relative; position: absolute; right: 50%; transform: translateX(50%); z-index: 10;; }
#container .breadcrumb li{ float: left; color: #ffffff; font-size: 14px; line-height: 1.3; position: relative; }
#container .breadcrumb li+li{ padding-left: 18px; }
#container .breadcrumb li+li::before{ content: '〉'; position: absolute; left: 6px; top: 50%; transform: translateY(-50%) scaleY(0.5); }
#container .breadcrumb li a{ color: #ffffff; text-decoration: none; }

/*--レスポンシブ追加プロパティ--------------------------------------*/
@media screen and (max-width: 1120px){ /*1120px以下のcss*/
}




/*メインのcss*/
/*-------------------------------------------------------*/
.mainContent{ position: relative; padding-top: 0!important; }
.mainContent.no-hero{ padding-top: 34px!important; }
.anim { opacity: 0; -webkit-transform: translate(0, 50px); transform: translate(0, 50px); -webkit-transition: all 1.5s; transition: all 1.5s; }
.anim.active { opacity: 1; -webkit-transform: translate(0, 0); transform: translate(0, 0); }
.pageCaption { width: 1110px; padding: 15px 0; margin: 0 auto; font-size: 13px; }

/*--レスポンシブ追加プロパティ--------------------------------------*/
@media screen and (max-width: 1120px){ /*1120px以下のcss*/
	.pageCaption { width: 99.107%; padding: 1.339% 0; font-size: 13px; }
}


/*フッターのcss*/
/*-------------------------------------------------------*/
#footer-content{ background-color: #ffffff; line-height: 1.5; position: relative; overflow: hidden; }
/*#footer-content::before{ content: ''; position: absolute; right: 50%; top: 0; width: 1400px; height: 1px; background: linear-gradient(to right, #ffffff 0%,#bed2c1 50%,#ffffff 100%); transform: translateX(50%); z-index: 10; }*/
#footer-content .footer-info{ padding: 60px 0; position: relative; text-align: center; border: solid #dddddd; border-width: 1px 0; }
/*#footer-content .footer-info::before{ content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: url(../images/img_parts/contents/bg01.jpg) center center repeat; background-size: 118px 115px; opacity: 0.5; }*/
#footer-content .footer-info > *{ position: relative; z-index: 10; }
#footer-content .footer-info > *+*{ margin-top: 10px; }
#footer-content .footer-info .name{ font-size: 18px; line-height: 1.56; }
#footer-content .footer-info .name .s-size{ font-size: 85%; }
#footer-content .footer-info .tel{ max-width: 371px; margin-left: auto; margin-right: auto; }
#footer-content .footer-info .txt{ font-size: 14px; }
#footer-content .footer-info .contact-navi{ margin: 30px auto 0; display: -ms-flex; display: flex; justify-content: center; }
#footer-content .footer-info .contact-navi .navi{ width: 100%; max-width: 170px; display: block; background-color: #ffffff;  overflow: hidden; }
#footer-content .footer-info .contact-navi .navi+.navi{ margin-left: 20px; }
#footer-content .footer-info .contact-navi .navi a{ display: block; color: #ffffff; text-decoration: none; font-size: 20px; padding: 15px 0; position: relative; border-radius: 30px; border: 1px solid #cccccc; }
#footer-content .footer-info .contact-navi .navi-request a{ background: #ffffff; color: #606060; }
#footer-content .footer-info .contact-navi .navi-reservation a{ background: #c02940; color: #ffffff; }
#footer-content .footer-info .contact-navi .navi a img{ margin-right: 0.5em; }
#footer-content .footer-info .contact-navi .navi a .inner{ display: inline-block; vertical-align: top; }
#footer-content .credit{ max-width: 1120px; margin: 0 auto; display: -ms-flex; display: flex; justify-content: center; flex-wrap: wrap; padding: 40px 0; }
#footer-content .credit .item{ margin: 10px 20px; }
#footer-content .credit .item .name{ margin-bottom: 10px; font-size: 12px; line-height: 1.5; text-align: center; }
#footer-content .credit .item01 .logo{ width: 185px; }
#footer-content .credit .item02 .logo{ width: 150px; }
#footer-content .credit .item03 .logo{ width: 148px; }
#footer-content .credit .item04 .logo{ width: 212px; }
#footer-content .credit .item05 .logo{ width: 202px; }
#footer-content .global-navi-menu{ display: none; }
#footer-content .global-navi{ text-align: center; padding: 20px 0; background-color: #f9f9f9; border: 1px solid #dddddd; }
#footer-content .global-navi .navi{ display: inline-block; padding: 0 10px; border: solid #999999; border-width: 0 1px; line-height: 1; margin: 5px 0; }
#footer-content .global-navi .navi~.navi{ margin-left: -1px; }
#footer-content .global-navi .navi a{ color: #606060; font-size: 12px; text-decoration: none; }
#footer-content .global-navi .navi a br{ display: none; }
#sp-util{ display: none; }

/*--レスポンシブ追加プロパティ--------------------------------------*/
@media screen and (max-width: 1120px){ /*1120px以下のcss*/
}


