@charset "utf-8";
.pcNone {
  display: none!important;
}

/* ------------------------------------------------------------ html */
html {
	height: 100%;
	font-size: 85%;
	line-height: 1.75;
	background: #000;
	overflow-y: scroll;
}

/* ------------------------------------------------------------ body */
body {
	color: #b2b2b2;
	-webkit-text-size-adjust : 100%;
	font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Osaka, "ＭＳ Ｐゴシック", Meiryo, MS PGothic, sans-serif;
}

/* --------------------------------- bodyInr */
body .bodyInr {
	min-width: 900px;
	overflow: hidden;
}

/* ------------------------------------------------------------ mouseover */
a {
	text-decoration: none;
	-webkit-transition: color .3s;
	-moz-transition: color .3s;
	-ms-transition: color .3s;
	transition: color .3s;
}
a:hover,
a:active {
	-webkit-transition: color .3s;
	-moz-transition: color .3s;
	-ms-transition: color .3s;
	transition: color .3s;
}
a img{
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	-webkit-transition: opacity .3s;
	-moz-transition: opacity .3s;
	-ms-transition: opacity .3s;
	transition: opacity .3s;
}
a:hover img{
	opacity:0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha(opacity=0)";
	-webkit-transition: opacity .3s;
	-moz-transition: opacity .3s;
	-ms-transition: opacity .3s;
	transition: opacity .3s;
}


/* ------------------------------------------------------------ icon */
.linkBlank a{
	padding: 0 0 0 18px;
	background: url(/common/img/icon_blank.gif) no-repeat 0 0.5em;
}
.iconCar {
	padding: 0 0 0 26px;
	background: url(/common/img/icon_car.gif) no-repeat 0 0.3em;
}
.linkLeft {
	padding: 0 0 0 15px;
	line-height: 1.4;
	background:url(/common/img/arrow_link_black_left.gif) no-repeat 0 0.4em;
}

/* ------------------------------------------------------------ txt */
.fntWitB {
	font-weight: bold;
}
.moreMap {
	text-align: right;
}

/* ------------------------------------------------------------ position */
.posRe {
	position: relative;
}
.posAbso {
	position: absolute;
}

/* ------------------------------------------------------------ header */
#header {
	margin: 0 0 10px 60px;
}
#header .inr{
	width: 900px;
	margin: auto;
	padding: 20px 0 0 0;
}
.spHeader {
	display: none;
}

.toSp {
	display: none;
}

/* ------------------------------------------------------------ boxSubNav */
/* ------------------------------ topicPath */
.boxSubNav {
	margin: 0 0 25px 60px;
}
.boxSubNav .inr{
	width: 900px;
	margin: auto;
}
.topicPath{
	clear: both;
	float: left;
	padding: 3px 0 0 0;
	font-size: 78%;
	line-height: 1.4;
}
.topicPath li{
	float: left;
	padding: 0 0 0 12px;
	margin: 0 0 0 10px;
	background: url(/common/img/arrow_icon_topicpath.gif) no-repeat 0 0.4em;
}
.topicPath li.home{
	padding: 0;
	margin: 0;
	background: none;
}

/* ------------------------------ utilityLink */
.utilityLink {
	float: right;
}
.utilityLink li {
	float: left;
	margin: 0 0 0 20px;
	font-size: 78%;
	line-height: 1.4;
}
.utilityLink li a{
	display: block;
	padding: 3px 0 0 22px;
}
.utilityLink .signup {
	background: url(/common/img/icon_signup.gif) no-repeat 0 0;
}
.utilityLink .login {
	background: url(/common/img/icon_login.gif) no-repeat 0 0;
}
.utilityLink .contact{
	background: url(/common/img/icon_contact.gif) no-repeat 0 0.4em;
}

/* ------------------------------------------------------------ footer */
#footer {
	clear: both;
	margin: 0 0 0 60px;
	background: #000;
}
.footerA .inr,
.footerB .inr{
	width: 900px;
	margin: auto;
}

/* ------------------------------ footerA */
.footerA .inr {
	padding: 40px 0 5px 0;
	border-top: 1px solid #333333;
}
.footerA li{
	margin: 0 0 16px 0;
	padding: 0 10px 0 15px;
	line-height: 1.4;
	font-size: 85%;
}
.footerA li a {
	color: #b2b2b2;
}
.footerA li a:hover {
	color: #FFF;
}	
.footerA .cate {
	font-weight: bold;
	background: url(/common/img/arrow_link_gray.gif) no-repeat 0 0.25em;
}
.footerA .cate .blank {
  padding: 0 18px 0 0;
  background: url(/common/img/icon_blank_gray.png) no-repeat 100% 0.25em;
}
.footerA li.inrMenu {
	margin: 0 0 35px 0;
}
.footerA li.inrMenu li {
	margin: 0 0 6px 0;
	line-height: 1.4;
	font-size: 92%;
	background: url(/common/img/arrow_icon_border.gif) no-repeat 0 0.6em;
}

/* ------------------------------ ulFooter */
.ulFooter01,
.ulFooter02,
.ulFooter03,
.ulFooter04,
.ulFooter05,
.ulFooter06 {
	float: left;
}
.ulFooter01 {
	width: 206px;
}
.ulFooter02,
.ulFooter03,
.ulFooter04,
.ulFooter05 {
	width: 160px;
}
/* ------------------------------ spFooter */
.spFooter {
	display: none;
}
/* ------------------------------ footerB */
.footerB .inr p{
	clear: both;
	padding: 22px 0;
	color: #808080;
	font-size: 71%;
	font-family: Arial, Helvetica, sans-serif;
	border-top: 1px solid #333333;
}
/* ------------------------------ sp_switching */
.sp_switching {
	display: none;
}
/* ------------------------------------------------------------ siteNav */
#siteNav {
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 65px;
	background: url(/common/img/bg_sidenav.png) repeat-y 0 0;
	z-index: 1500;
}

/* ------------------------------ siteMenu */
.siteMenu {
	position: absolute;
	height: 100%;
	margin: 0 0 8px 0;
}
.siteMenu:after {
	content: '';
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index:-1;
	background: url(/common/img/bg_sidenav.png) repeat-y 0 0;
	zoom: 1;
}
.siteMenu li a {
	display: block;
	position: relative;
	z-index: 10005;
}
.siteMenu li a img {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	-webkit-transition: opacity .5s ease;
	-moz-transition: opacity .5s ease;
	-ms-transition: opacity .5s ease;
	transition: opacity .5s ease;
}
.siteMenu li a:hover img {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha(opacity=0)";
	-webkit-transition: opacity .5s ease;
	-moz-transition: opacity .5s ease;
	-ms-transition: opacity .5s ease;
	transition: opacity .5s ease;
}

/* --------------------------------- normal */
.siteMenu .menuHome a {
	height: 59px;
}
.siteMenu .menuLocation a {
	height: 106px;
}
.siteMenu .menuShop a {
	height: 54px;
}
.siteMenu .menuBridal a {
	height: 54px;
}
.siteMenu .menuStay a {
	height: 54px;
}
.siteMenu .menuAbout a {
	height: 121px;
}
.siteMenu .menuFugu a {
	height: 104px;
}

/* --------------------------------- mouseover */
.siteMenu li .mainManu a:hover {
	background: url(/common/img/sidenav_o.png) no-repeat 0 0;
}
.siteMenu .menuHome .mainManu a:hover {
	background-position: 0 0;
}
.siteMenu .menuLocation .mainManu a:hover {
	background-position: 0 -59px;
}
.siteMenu .menuShop .mainManu a:hover {
	background-position: 0 -165px;
}
.siteMenu .menuBridal .mainManu a:hover {
	background-position: 0 -219px;
}
.siteMenu .menuStay .mainManu a:hover {
	background-position: 0 -273px;
}
.siteMenu .menuAbout .mainManu a:hover {
	background-position: 0 -327px;
}
.siteMenu .menuFugu .mainManu a:hover {
	background-position: 0 -448px;
}

/* --------------------------------- current */
.siteMenu li.current .mainManu a {
	background: url(/common/img/sidenav_current.png) no-repeat 0 0;
}
.siteMenu .menuHome.current .mainManu a {
	background-position: 0 0;
}
.siteMenu .menuLocation.current .mainManu a {
	background-position: 0 -59px;
}
.siteMenu .menuShop.current .mainManu a {
	background-position: 0 -165px;
}
.siteMenu .menuStay.current .mainManu a {
	background-position: 0 -273px;
}
.siteMenu .menuAbout.current .mainManu a {
	background-position: 0 -327px;
}
.siteMenu .menuFugu.current .mainManu a {
	background-position: 0 -448px;
}
.siteMenu li.current a img {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha(opacity=0)";
}
.siteMenu li.current .mainManu a:hover {
	background: url(/common/img/sidenav_o.png) no-repeat 0 0;
}
.siteMenu .menuHome.current .mainManu a:hover {
	background-position: 0 0;
}
.siteMenu .menuLocation.current .mainManu a:hover {
	background-position: 0 -59px;
}
.siteMenu .menuShop.current .mainManu a:hover {
	background-position: 0 -165px;
}
.siteMenu .menuStay.current .mainManu a:hover {
	background-position: 0 -273px;
}
.siteMenu .menuAbout.current .mainManu a:hover {
	background-position: 0 -327px;
}
.siteMenu .menuFugu.current .mainManu a:hover {
	background-position: 0 -448px;
}
.siteMenu li.current a img {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha(opacity=0)";
}

/* --------------------------------- slideMenu */
.siteMenu .slideMenu {
	position: absolute;
	top: 0;
	left: -115px;
	width: 170px;
	height: 100%;
	background: #e6e6e6;
	z-index:-1;
}
.siteMenu .slideMenu ul {
	height: 100%;
}
.siteMenu .slideMenu li a,
.siteMenu .slideMenu li a:hover {
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	transition: all .3s ease;
}
.siteMenu .slideMenu li a {
	display: block;
	height: auto;
	padding: 10px 20px;
	color: #333;
	background: #e6e6e6;
}
.siteMenu .slideMenu li:first-child a {
	padding: 15px 0 10px 20px;

}
.siteMenu .slideMenu li a:hover {
	background: #ffffff;
}

/* --------------------------------- filter */
.filter {
	display: inline-block;
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha(opacity=0)";
	z-index: 1000;
	zoom: 1;
}

/* ------------------------------ langnav */
.langnav {
	display: none;
}
.langnav li {
	float: left;
	margin: 0 0 0 4px;
	text-indent: -9999px;
}
.langnav li:first-child {
	margin: 0 0 0 5px;
}
.langnav li a,
.langnav li a:hover {
	display: block;
	width: 20px;
	height: 20px;
	-moz-transition: background .3s ease;
	-ms-transition: background .3s ease;
	transition: background .3s ease;
}
.langnav .menuJa a {
	background: url(/common/img/btn_langnav_jp.gif) no-repeat 0 0;
}
.menuEn a {
	display: block;
	width: 60px;
	padding: 10px 0;
	text-align:center;
	font-size: 67.9%;
	color: #a2a2a2;
	-moz-transition: background .3s ease, color .3s ease;
	-ms-transition: background .3s ease color .3s ease;
	transition: background .3s ease color .3s ease;
	background: url(/common/img/arrow_link_right_gray.png) no-repeat 8px center;
}
.langnav .menuJa a:hover {
	background: url(/common/img/btn_langnav_jp_o.gif) no-repeat 0 0;
}
.menuEn a:hover {
	color: #fff;
	background: url(/common/img/arrow_link_right_gray_o.png) no-repeat 8px center;
}
.langnav .menuJa.current a,
.langnav .menuJa.current a:hover {
	background: url(/common/img/btn_langnav_jp_current.gif) no-repeat 0 0;
}

.menuIconInstagram{
	display: flex;
    flex-direction: column;
	align-items: center;
	margin-top: 8px;
}


.siteMenu .menuIconInstagram a:hover img{
	opacity: 0.6;
}

/* ------------------------------------------------------------ pageBody */
#pageBody {
	clear: both;
	margin: 0 0 0 60px;
}
#pageBody .pageBodyInr {
	width: 900px;
	margin: auto;
}

/* ------------------------------------------------------------ mainCol */
.mainCol {
	float: left;
	width: 700px;
}

/* ------------------------------------------------------------ sideCol */
.sideCol {
	float: right;
	width: 170px;
}
.sideCol h2 {
	margin: 0;
	padding: 18px 0;
	line-height: 1.3;
}

/* ------------------------------------------------------------ column */
.colEQ {
	clear: both;
}
.colL {
	float: left;
}
.colR {
	float: right;
}
.colC {
	float: left;
}
.colEQ.inr .colL,
.colEQ.inr .colR,
.boxCaptionImg .colL,
.boxCaptionImg .colR {
	width: 205px;
}

/* ------------------------------ col1 */
.col1 {
	margin: 0 0 25px 0;
}

/* ------------------------------ col2 */
.col2L {
	float: left;
	width: 430px;
}
.col2R {
	float: right;
	width: 430px;
	margin: 0 0 0 40px;
}

/* ------------------------------ col3 */
.col3w {
	float: left;
	width: 280px;
	margin: 0 0 0 30px;
}
.col3w.cld1 {
	margin: 0;
}

/* ------------------------------ colH3LeftEQ */
.section .colH3LeftEQ {
	clear: both;
	margin: 0 0 60px 0;
}
.section .colH3LeftEQ:last-child {
	margin: 0;
}	
.section .colH3Left {
	width: 90px;
	float: left;
}
.colH3BoxL {
	float: left;
	width: 385px;
}
.colH3BoxR {
	float: right;
	width: 385px;
	margin: 0 0 0 40px;
}
.colH3LeftEQ.ptn01 {
	margin: 0;
}
.ptn01 .colH3BoxL {
	width: 250px;
}
.ptn01 .colH3BoxR {
	width: 520px;
}
.colH3LeftEQ.ptn01 .colH3BoxR h4 {
	float: left;
	width: 324px;
}

/* ------------------------------------------------------------ ulLinkAnchor */
.ulLinkAnchor {
	margin: 0 0 45px 0;
}
.ulLinkAnchor ul:first-child {
	margin: 0 0 10px 0;
}
.ulLinkAnchor li {
	float: left;
	margin: 0 0 0 10px;
}
.ulLinkAnchor li:first-child {
	margin: 0;
}

/* ------------------------------------------------------------ pageTop */
.pageTop {
	position: fixed;
	right: 30px;
	bottom: 30px;
	width: 50px;
	height: 50px;
	z-index: 1100;
	background: url(/common/img/btn_pagetop_o.jpg) no-repeat 0 0;
}

/* ------------------------------------------------------------ preLoader */
.preLoader {
	background: #000 url(/common/img/img_preloader.png) no-repeat 50% 50%;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1200;
}
.preLoader img {
	display: none;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -85px 0 0 0;
}

/* ------------------------------------------------------------ margin */
.marginBtmM {
	margin-bottom: 20px!important;
}
.marginBtmLL {
	margin-bottom: 40px!important;
}
.typeDisc li {
	margin: 0 0 0 20px!important;
	list-style-type: disc;
}

/* ------------------------------------------------------------ sns */
.boxSNSArea {
	overflow: hidden;
}
.boxSNSArea span {
	float: left;
	margin-right: 4px;
}
.boxSNSArea iframe {
	margin: 0 !important;
}

/* ------------------------------------------------------------ cf */
.section:after,
.colEQ:after,
.dateTab:after,
.colH3LeftEQ:after,
.ulLinkAnchor ul:after,
.box:after,
#pageBody .pageBodyInr:after,
.footerA .inr:after,
.boxAllergyLink .inr:after {
	clear: both;
	display: block;
	visibility: hidden;
	height: 0;
	font-size: 0;
	content: " ";
}
* html .section,
* html .colEQ,
* html .dateTab,
* html .colH3LeftEQ,
* html .ulLinkAnchor ul,
* html .box,
* html #pageBody .pageBodyInr,
* html .footerA .inr,
* html .boxAllergyLink .inr {
	zoom: 1;
}
*:first-child+html .section,
*:first-child+html .colEQ,
*:first-child+html .dateTab,
*:first-child+html .colH3LeftEQ,
*:first-child+html .ulLinkAnchor ul,
*:first-child+html .box,
*:first-child+html #pageBody .pageBodyInr,
*:first-child+html .footerA .inr,
*:first-child+html .boxAllergyLink .inr {
	zoom: 1;
}
/* 12/10　追記 */
.boxAllergyLink {
  margin: 0 0 0 60px;
  background: #f8f8f8;
  border-top: 1px solid #e5e5e5;
  font-size: 85.7%;
}
.boxAllergyLink .inr {
  display: block;
  width: 900px;
  margin: 0 auto;
  padding: 20px 0 18px 0;
  color: #333;
}
.boxAllergyLink .annotation {
  float: left;
  padding: 0 0 0 23px;
  background: url(/common/img/icon_annotation.png) no-repeat 0 0.2em;
}
.boxAllergyLink .link {
  float: right;
  padding: 0 0 0 10px;
  background: url(/common/img/arrow_link_black.gif) no-repeat 0 0.6em;
    -webkit-transition: color .3s;
    -moz-transition: color .3s;
    -ms-transition: color .3s;
    transition: color .3s;
}
.boxAllergyLink a:hover .link  {
    color: #b2b2b2;
}
/* 2016/06/09　追記 */
.boxSupplementalLink {
  margin: 0 0 0 60px;
  background: #f8f8f8;
  border-top: 1px solid #e5e5e5;
  font-size: 85.7%;
}
.boxSupplementalLink .inr {
  display: block;
  width: 900px;
  margin: 0 auto;
  padding: 20px 0 18px 0;
  color: #333;
  overflow: hidden;
}
.boxSupplementalLink .annotation {
  float: left;
  padding: 0 0 0 23px;
  background: url(/common/img/icon_annotation.png) no-repeat 0 0.2em;
}
.boxSupplementalLink .link {
  float: left;
  margin: 0 0 0 20px;
  padding: 0 0 0 10px;
  background: url(/common/img/arrow_link_black.gif) no-repeat 0 0.4em;
}
.boxSupplementalLink .link a {
  color: #333;
    -webkit-transition: color .3s;
    -moz-transition: color .3s;
    -ms-transition: color .3s;
    transition: color .3s;
}
.boxSupplementalLink .link a:hover  {
    color: #b2b2b2;
}
.boxSupplementalLink .blockAllergy {
  float: left;
  padding: 0 20px 0 0;
  border-right: solid 1px #e5e5e5;
}
.boxSupplementalLink .blockRules {
  float: left;
}

.boxAttentionArea03{
	background-color: #F8F8F8;
	border: solid 1px #E5E5E5;
	margin-top: 5px;
}

.section .boxAttentionArea03 + .boxDetail{
  margin-top: 70px;
}

.boxAttentionArea03 .annotation {
  line-height: 1.5;
  font-weight: bold;
  font-size: 16px;
}

.boxAttentionArea03 .annotation::before{
  content: "";
  background: url(/common/img/icon_annotation.png) no-repeat 0 0.2em;
	background-size: 16px 16px ;
  margin: 0 0 0 0;
  display: inline-block;
  width: 16px;
  height: 20px;
  position: relative;
  top: 3px;
  margin-right: 3px;
}

.boxAttentionArea03 > div{
  padding-top: 20px;
  padding-left: 26px;
  padding-right: 26px;
  padding-bottom: 20px;
}

.boxAttentionArea03.-column2{
  display: flex;
}
.boxAttentionArea03.-column2 > div{
  width: 50%;
  box-sizing: border-box;
}
.boxAttentionArea03.-column2 > div:last-of-type{
  border-left: 1px solid #E5E5E5;
}

.annotation-list{
  margin-top: 6px;
}
.annotation-list li{
  position: relative;
  padding-left: 18px;
  font-size: 12px;
  margin-top: 4px;
  line-height: 1.6;
}

.annotation-list li::before{
  content: "※";
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;

}

.annotation-list.-en li{
  font-size: 14px;
}

.boxAttentionArea03 .annotation-list .detailAnchor{
  text-align: left;
  padding-left: 0;
}

.boxAttentionArea03 .annotation-list .detailAnchor::before{
  display: none;
}

/* ------------------------------------------------------------ turnstile */
.turnstile-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 12px 0;
}