@charset "UTF-8";

body{
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

#wrapper {
	font-size: 62.5%;
	line-height: 1.6;
	letter-spacing: 0.15em;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	color: #000812;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	background: #fff;
	position: relative;
}

#wrapper a:link      { text-decoration: none; color: #7cb57d;}
#wrapper a:visited   { text-decoration: none; color: #7cb57d;}
#wrapper a:active     { text-decoration: none; }
#wrapper a:active    { text-decoration: none; }

a,:focus {
	outline: none;
}

input[type="text"],input[type="submit"],input[type="password"],input[type="reset"],input[type="button"],input[type="tel"],input[type="email"],select,textarea {
	-webkit-appearance: none!important;
	border-radius: 0;
}

::-webkit-search-cancel-button {
	-webkit-appearance: none;
}

.img img {
	width: 100%;
	height: auto;
}

.pc   { display: none!important;}
.pctb { display: none!important;}
.tb   { display: none!important;}

.opacity a:active,
.opacity input:active {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
	text-decoration: none!important;
}

/*======================================================
  common
======================================================*/

.cntTtlBox {
	text-align: center;
	margin: 0 0 15px;
}

.cntTtl {
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 2.2em;
	line-height: 1.2;
	letter-spacing: 0.05em;
	white-space: nowrap;
	margin: 0 0 3px;
}

.cntTtlJp {
	font-weight: 400;
	font-size: 0.8em;
	line-height: 0.8;
	display: inline-block;
	position: relative;
}

.cntTtlJp:before {
	content: "-";
	position: absolute;
	top: -1px;
	left: -5px;
}

.cntTtlJp:after {
	content: "-";
	position: absolute;
	top: -1px;
	right: -5px;
}

.cntSubTtl {
	text-align: center;
	position: relative;
	font-weight: 400;
	font-size: 1.6em;
	line-height: 1.25;
	margin: 0 0 20px;
}

.cntSubTtl:after {
	position: absolute;
	content: "";
	bottom: -8px;
	left: 50%;
	width: 30px;
	height: 2px;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translate(-50%);
	background-color: #7cb57d;
}

.cntMinTtl {
	text-align: center;
	font-weight: 500;
	font-size: 1.5em;
	line-height: 1.4;
	margin: 0 0 15px;
}

.cntCthBox {
	text-align: center;
	margin: 0 0 20px;
	letter-spacing: normal;
}

.cntCth {
	display: inline-block;
	font-weight: 600;
	font-size: 1.5em;
	line-height: 1.4;
	padding: 0 0 3px;
	border-bottom: solid 1px #dedab5;
}

.cntBigCth {
	text-align: center;
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1.5;
	white-space: nowrap;
	margin: 0 0 20px;
}

.cntTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2.2;
	margin: 0 0 20px;
}

.cntTxt .atnTxt {
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	color: #ff0000;
}

.srgTxt {
	font-weight: 400;
	color: #7cb57d;
	border-bottom: solid 1px #7cb57d;
}

.cntCtrTxt {
	text-align: center;
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
	margin: 0 0 30px;
}

.cntCtrTxtLst {
	color: #ff0000;
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1.5;
	margin: 0 0 30px;
	padding: 0 20px 0 30px;
	list-style: disc;
}

.lnkTxt a:link,
.lnkTxt a:visited {
	color: #000812!important;
}

.lnkTxtWt a:link,
.lnkTxtWt a:visited {
	color: #fff!important;
}

.grnTxt {
	color: #7cb57d;
}

/* button */
.bdrBtn {
	max-width: 140px;
	width: 100%;
	margin: 0 auto;
}

.bdrBtn2 {
	max-width: 300px;
	width: 100%;
	margin: 0 auto 30px auto;
}

.bdrBtn a,.bdrBtn2 a {
	text-align: center;
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	letter-spacing: -0.005em;
	white-space: nowrap;
	display: block;
	padding: 10px 5px;
	background: rgba(255,255,255,0.95);
	border: solid 1px #000812;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.bdrBtn a span,.bdrBtn2 a span {
	padding: 0 10px 0 0;
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 8px 6px;
}

.bdrBtn a:active,.bdrBtn2 a:active {
	color: #fff!important;
	text-decoration: none!important;
	background: #000812;
}

.bdrBtn a:active span,.bdrBtn2 a:active span {
	background: url(../images/common/icn_arrow_wt.png) right center no-repeat;
	background-size: 8px 6px;
}

.cntBtn {
	max-width: 200px;
	width: 100%;
	margin: 0 auto;
}

.cntBtn a {
	text-align: center;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	letter-spacing: -0.005em;
	white-space: nowrap;
	display: block;
	padding: 15px 5px;
	background: #dedab5;
	border: solid 1px #dedab5;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.cntBtn a span {
	padding: 0 12px 0 0;
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 8px 6px;
}

.cntBtn a:active {
	text-decoration: none!important;
	background: none;
	border: solid 1px #000812;
}

.cntBtn a.wt {
	background: none;
	border: solid 1px #000812;
	margin-top: 30px;
}

.cntBtn a.wt:hover {
	background: #dedab5;	
	border: solid 1px #dedab5;
}

.cntBtn2,.cntBtn3,.cntBtn4 {
	width: 100%;
	margin: 0 auto;
}

.cntBtn2 a {
	text-align: center;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	letter-spacing: -0.005em;
	white-space: nowrap;
	display: block;
	padding: 15px 5px;
	background: #ff8c00;
	border: solid 1px #ff8c00;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.cntBtn3 a {
	text-align: center;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	letter-spacing: -0.005em;
	white-space: nowrap;
	display: block;
	padding: 15px 5px;
	background: #7cb57d;
	border: solid 1px #7cb57d;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.cntBtn4 a {
	text-align: center;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	letter-spacing: -0.005em;
	white-space: nowrap;
	display: block;
	padding: 15px 5px;
	background: #dedab5;
	border: solid 1px #dedab5;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.cntBtn2 a span,.cntBtn3 a span,.cntBtn4 a span {
	padding: 0 12px 0 0;
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 8px 6px;
}

.cntBtn2 a:active,.cntBtn3 a:active,.cntBtn4 a:active {
	text-decoration: none!important;
	background: none;
	border: solid 1px #000812;
}

.cntBtn2 a.wt,.cntBtn3 a.wt,.cntBtn4 a.wt {
	background: none;
	border: solid 1px #000812;
	margin-top: 30px;
}

.cntBtn2 a.wt:hover,.cntBtn3 a.wt:hover,.cntBtn4 a.wt:hover {
	background: #dedab5;	
	border: solid 1px #dedab5;
}


/*======================================================
  header
======================================================*/

.hdrLgiBox,#gNav,.hdrNav {
	display: none;
}	

header {
	background: #000812;
}

.hdrWrp {
	height: 60px;
	padding: 0 0 0 15px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.hdrCntBox {
	display: flex;
	align-items: center;
}

.hdrLg {
	max-width: 200px;
}

/*======================================================
  modal
======================================================*/

.mdlBox {
	position: fixed;
	right: 0;
	top: 0;
	width: 60px;
	height: 60px;
	background: rgba(0,8,18,0.9);
	z-index: 9999;
}

.mdlOpn .mdlBox {
	background: rgba(0,8,18,0)!important;
}

.mdlNavInr {
	position: fixed;
	right: -300px;
	top: 0;
	width: 300px;
	height: auto;
	padding: 25px 0;
	background: rgba(0,8,18,0.9);
	transition: all 0.6s;
	z-index: 200;
	overflow-y: auto;
}

.mdlOpn .mdlNavInr {
	right: 0;
}

.mdlBtn {
	position: absolute;
	right: 0;
	top: 0;
	width: 60px;
	height: 60px;
	cursor: pointer;
	z-index: 300;
}

.mdlNav {
	text-align: center;
	margin: 0 0 15px;
	padding: 0;
	list-style: none;
}

.mdlNav li:not(:last-child) a {
	border-bottom: solid 1px rgba(148,148,148,0.3);
}

.mdlNav li a {
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1;
	display: block;
	padding: 15px 0;
	text-decoration: none;
}

.mdlNav li a:link,
.mdlNav li a:visited {
	color: #fff!important;
}

.mdlNav li a:active {
	background: rgba(148,148,148,0.3)!important;
	text-decoration: none!important;
}

.openTtl {
	text-align: center;
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 0.9em;letter-spacing: -0.005em;
	color: #fff!important;
	margin: 10px 0 0;
}

.mdlBtnLin {
	position: absolute;
	left: 20px;
	width: 20px;
	height: 2px;
	background: #fff;
	transition: all 0.6s;
}

.mdlOpn .mdlBtnLin {
	background: #fff;
}

.mdlBtnLin01 {
	top: 30px;
}

.mdlBtnLin02 {
	top: 37px;
}

.mdlBtnLin03 {
	top: 44px;
}

.mdlBg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 100;
	background: #f4f4f4;
	opacity: 0;
	visibility: hidden;
	transition: all .6s;
	cursor: pointer;
}

.mdlOpn .mdlBg {
	opacity: 0.6;
	visibility: visible;
}

.mdlOpn .openTtl {
	display: none;
}

.mdlOpn .mdlBtnLin01 {
	transform: rotate(45deg);
	top: 40px;
}

.mdlOpn .mdlBtnLin02 {
	width: 0;
	left: 50%;
}

.mdlOpn .mdlBtnLin03 {
	transform: rotate(-45deg);
	top: 40px;
}

.mdrLgiNav li {
	margin: 0 0 5px;
}

.mdrLgiNav li:not(:last-child) {
	text-align: center;
}

.mdrLgiNav li:not(:last-child) input {
	width: 200px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 1.2em;
	color: #afafaf;
	margin: 0 auto;
	padding: 3px;
	background: rgba(148,148,148,0.3);
	border: none;
}

.mdrLgiNav li:last-child {
	margin: 15px 0 0;
}

.mdrLgiNav li:last-child input {
	text-align: center;
	width: 120px;
	display: block;
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 1.2em;
	line-height: 1;
	color: #000812!important;
	margin: 0 auto;
	padding: 8px;
	background: #dedab5;
	border: none;
	cursor: pointer;
}

.mdrLgiNav li:last-child input:active {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

/*======================================================
  manAra
======================================================*/

/* slide */
@-webkit-keyframes zoomUp {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.15);
		transform: scale(1.15);
	}
}

@keyframes zoomUp {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.15);
		transform: scale(1.15);
	}
}

.swiper-slide {
	overflow: hidden;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img {
	-webkit-animation: zoomUp 12s linear 0s;
	animation: zoomUp 12s linear 0s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.slide-img {
    background-size: cover; 
    background-position: center center;
    height: calc(100vh - 50px);
}

#manAra {
	position: relative;
}

.manLg {
	max-width: 120px;
	position: absolute;
	top: calc(50% - 122px);
	left: calc(50% - 60px);
	z-index: 100;
}

.manBn1 {
	max-width: 90%;
	position: absolute;
	top: 20px;
	left: calc(50% - 45%);
	z-index: 200;
}

.manBn2 {
	max-width: 90%;
	position: absolute;
	top: 90px;
	left: calc(50% - 45%);
	z-index: 200;
}

.manNwsBox {
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	padding: 7px 0;
	overflow: hidden;
	background: rgba(255,255,255,0.95);
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	z-index: 100;
}

.manNwsTtl {
	display: none;
}

.manNwsLst {
	padding: 0 15px;
	display: flex;
	align-items: center;
	white-space: nowrap;
	animation: animate-banner 10s linear infinite;
}

@keyframes animate-banner {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

.manNwsLst dt {
	font-weight: 400;
	font-size: 1.1em;
	line-height: 1;
	white-space: nowrap;
	margin: 0 15px 0 0;
}

.manNwsLst dd {
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1.6;
}

.manSchCtn {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 100;
}

.manSchTtlBox {
	text-align: center;
	height: 50px;
	position: relative;
	background: rgba(222,218,181,0.85);
	cursor: pointer;
}

.manSchTtlBox:before {
	content: "";
	width: 30px;
	height: 30px;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	background: rgba(255,255,255,0.9);
}

.manSchTtlBox:after {
	content: "";
	width: 12px;
	height: 12px;
	border-top: solid 1px #000812;
	border-right: solid 1px #000812;
	position: absolute;
	top: calc(50% - 2px);
	transform: rotate(-45deg);
	right: 18px;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all  0.4s ease;
}

.manSchTtlBox.selected:after {
	top: calc(50% - 10px);
	transform: rotate(135deg);
}

.manSchTtlBox:active {
	color: #fff;
	background: #000812;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.manSchTtlInr {
	display: flex;
	align-items: center;
	justify-content: center;
}

.manSchTtlBox .cntTtl {
	font-size: 1.6em;
	line-height: 50px;
	margin: 0 10px 0 0;
}

.manSchTtlBox .cntTtlJp {
	font-size: 1em;
	margin: 2px 0 0;
}

.manSchCntBox {
	display: none;
	color: #fff;
	background: rgba(0,8,18,0.8);
}

.manSchTopBox {
	border-bottom: solid 1px rgba(148,148,148,0.3);
}

.manSchCntTtlBox {
	padding: 10px 15px;
	border-bottom: solid 1px rgba(148,148,148,0.3);
}

.manSchCntTtl {
	text-align: center;
	font-weight: 600;
	font-size: 1.3em;
	line-height: 1.3;
	color: #dab16c;
	margin: 0 0 5px;
	padding: 20px 0 0;
	background: url(../images/common/icn_bestrate.png) top no-repeat;
	background-size: 30px 18px;
}

.manSchCntTtlTxt {
	text-align: center;
	font-weight: 300;
	font-size: 1em;
	line-height: 1.5;
}

.manSchSubNavBox {
	padding: 10px 15px;
}

.manSchSubNav {
	display: flex;
	align-items: center;
	justify-content: center;
}

.manSchSubNav li:not(:last-child) {
	margin: 0 20px 0 0;
}

.manSchSubNav li a {
	font-weight: 500;
	font-size: 1em;
	line-height: 1;
	padding: 0 10px 0 0;
	background: url(../images/common/icn_arrow_wt.png) right no-repeat;
	background-size: 8px 6px;
}

.manSchBtmBox {
	padding: 5px 15px 10px;
}

.manSchNav {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}

.manSchNav li {
	padding: 5px 0;
}

.manSchNav li:first-child {
	width: 100%;
}

.manSchNav li:not(:last-child) {
	margin: 0 10px 0 0;
}

.manSchTypNav {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 400;
	font-size: 1.3em;
	line-height: 1;
}

.manSchTypNav li:first-child {
	width: auto;
}

.manSchTypNav li:not(:last-child) {
	margin: 0 5px;
}

.manSchTypNav span {
	margin: 0 0 0 10px;
}

.manSchTypNav input {
	display: none;
}

.manSchTypNav label {
	position: relative;
	cursor: pointer;
	padding-left: 20px;
}

.manSchTypNav label:before,
.manSchTypNav label:after {
	content: "";
	display: block; 
	border-radius: 50%;
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
}

.manSchTypNav label:before {
	background-color: rgba(148,148,148,0.3);
	border-radius: 50%;
	width: 14px;
	height: 14px;
	left: 5px;
}

.manSchTypNav label:after {
	background-color: #949494;
	border-radius: 50%;
	opacity: 0;
	width: 10px;
	height: 10px;
	left: 7px
}

input:checked + label:after {
	  opacity: 1;
}

.manSchTypNav span:active {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.manSchTbl th {
	font-weight: 400;
	font-size: 1.3em;
	line-height: 1.2;
	padding: 0 10px 0 0;
}

.manSchTbl td {
	font-weight: 400;
	font-size: 1.3em;
	line-height: 1.2;
	padding: 0 5px;
}

.manSchTbl select {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1;
	color: #fff;
	background: none;
	border: none;
	border-bottom: solid 2px rgba(148,148,148,0.3);
	cursor: pointer;
}

.manSchTbl select:active {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.manSchTbl select option {
	color: #000;
	font-size: 0.8em;
}

.schBtn input {
	text-align: center;
	width: 170px;
	display: block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1;
	color: #fff!important;
	padding: 10px;
	background: rgba(148,148,148,0.3);
	border: none;
	cursor: pointer;
}

.schBtn input:active {
	color: #000812!important;
	background: #dedab5;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

/*======================================================
  content
======================================================*/

#content {
	padding: 0 0 50px;
}

/* index */
.idxLstBtn {
	display: inline-block;
}

.idxLstBtn a {
	text-align: center;
	font-weight: 400;
	font-size: 0.8em;
	line-height: 1;
	display: block;
	padding: 6px 8px;
	border: solid 1px #000812;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.idxLstBtn a span {
	padding: 0 10px 0 0;
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 7px 6px;
}

.idxLstBtn a:active {
	text-decoration: none!important;
	color: #fff!important;
	background: #000812;
}

.idxLstBtn a:active span {
	background: url(../images/common/icn_arrow_wt.png) right center no-repeat;
	background-size: 7px 6px;
}

/* idxTpcAra */
#idxTpcAra {
	position: relative;
	padding: 50px 10px 0;
}

#idxTpcAra .idxLstBtnBox  {
	position: absolute;
	top: 15px;
	right: 15px;
}

.idxLstBtnBox  {
	border-bottom: 1px solid #ccc;
	text-align: right;
	margin-bottom: 50px;
	padding: 15px;
}

.idxLstTxt {
	margin-top: 10px;
	font-size: 1.2em;
}

/* slide */
.idxTpcBox {
	position: relative;
	z-index: 1;
}

.slide-arrow {
	width: 30px!important;
	height: 30px!important;
	position: absolute;
	top: calc(50% - 15px);
	z-index: 10;
	cursor: pointer;
}

.slide-arrow:active {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.idxTpcBox .prev-arrow {
	left: 0;
}

.idxTpcBox .next-arrow {
	right: 0;
}

.idxTpcInr {
	margin: 0 5px;
	padding: 0 0 0px;
	position: relative;
}

.idxTpcImgBox {
	margin: 0 0 15px;
	overflow: hidden;
	background: #000812;
}

.idxTpcImg {
	height: 150px;
	background-repeat: no-repeat;
	background-position: top;
	background-size: cover;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all  0.4s ease;
}

.idxTpcImg:active {
	opacity: 0.85;
	filter: alpha(opacity=85);
	-ms-filter: "alpha(opacity=85)";
	-moz-opacity: 0.85;
	-khtml-opacity: 0.85;
	transform:scale(1.05,1.05);
}

.idxTpcTypLst {
	margin: 0 0 10px;
}

.idxTpcTypLst dt{
	text-align: center;
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: em;
	line-height: 1;
	padding: 5px;
}

.idxTpcTypLst dd {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1.4;
	padding: 5px 5px;
	background: #f6f6f6;
	letter-spacing : -0.01em;
}

.idxTpcTypEvt {	
	color: #000812;
	background: #dedab5;
}

.idxTpcTypPln {
	color: #fff;
	background: #7cb57d;
}

.idxTpcTypOtr {
	color: #fff;
	background: #666;
}

.idxTpcTtl {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.2;
	margin: 0 0 10px;
}

.idxTpcTxt {
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1.6;
}

.idxTpcBtnBox .bdrBtn {
	position: absolute;
	bottom: 0;
	left: calc(50% - 60px);
}

/* idxNwsAra */
#idxNwsAra {
	position: relative;
	padding: 0 0 50px;
}

#idxNwsAra .idxLstBtn  {
	position: absolute;
	bottom: 15px;
	right: 15px;
}

.idxNwsCntWrp {
	padding: 0 15px;
	border-bottom: solid 1px ##e4e4e4;
}

.idxNwsLst li {
	padding: 15px 0;
}

.idxNwsLst li:not(:last-child){
	border-bottom: dotted 1px #e4e4e4;
}

.idxNwsDta {
	font-weight: 400;
	font-size: 1.1em;
	line-height: 1;
	display: block;
	white-space: nowrap;
	margin: 0 0 5px;
}

.idxNwsTtl {
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1.8;
}

/* idxInfAra */
#idxInfAra {
	padding: 50px 0 0;
	background: #f6f6f6;
	border-top: solid 1px #e4e4e4;
}

.idxInfWrp {
	max-width: 600px;
	margin: 0 auto;
	padding: 0 10px;
}

.idxInfLst {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 15px;
}

.idxInfLst li {
	width: calc(50% - 12px);
	margin: 0 5px 15px;
	border: solid 1px #bcbdbc;
}

.idxInfLst li img {
	width: calc(100% - 2px)!important;
	border: solid 1px #fff;
}

.idxInfSldBox .prev-arrow {
	left: 10px;
	border: solid 1px rgba(148,148,148,0.3);
}

.idxInfSldBox .next-arrow {
	right: 10px;
}

.idxInfSldInr {
	min-height: 400px;
	position: relative;
	background-position: left 70% center;
	background-repeat: no-repeat;
	background-size: cover;
}

.idxInfSldCntBox {
	width: calc(100% - 30px);
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 15px;
	background: rgba(0,8,18,0.75);
}

.idxInfSldTtl {
	font-weight: 400;
	font-size: 1.8em;
	line-height: 1.4;
	margin: 0 0 7px;
}

.idxInfSldTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
	margin: 0 0 10px;
}

.idxInfSldBtn {
	max-width: 120px;
	width: 100%;
	margin: 0 auto;
}

.idxInfSldBtn a {
	text-align: center;
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	letter-spacing: -0.005em;
	display: block;
	padding: 10px;
	background: #dedab5;
	border: solid 1px #dedab5;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.idxInfSldBtn a span {
	padding: 0 10px 0 0;
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 8px 6px;
}

.idxInfSldBtn a:active {
	text-decoration: none!important;
	color: #fff!important;
	background: none;
	border: solid 1px #fff;
}

.idxInfSldBtn a:active span {
	background: url(../images/common/icn_arrow_wt.png) right center no-repeat;
	background-size: 9px 7px;
}

/* idxIstAra */
#idxIstAra {
	padding: 50px 15px;
	background: #f6f6f6;
	border-bottom: solid 1px #e4e4e4;
}

.idxIstWrp {
	max-width: 600px;
	margin: 0 auto;
}

.idxIstBoxPc {
	display: none;
}

.idxIstBoxSp {
	max-width: 500px;
	margin: 0 auto;
	position: relative;
	z-index: 10;
	overflow: hidden;
}

.idxIstLnkSp a {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
}

/* idxAbtAra */
#idxAbtAra {
	padding: 50px 15px 0;
}

.idxAbtWrp {
	max-width: 600px;
	margin: 0 auto;
}

.idxAbtImg {
	display: none;
}

.idxAbtCntBox {
	min-height: 500px;
	background: url(../images/index/bg_about.jpg) right 0 bottom 0 no-repeat;
	background-size: 325px 365px;
}

.idxAbtTxtBox {
	max-width: 300px;
}

.idxAbtCth {
	display: inline-block;
	font-weight: 500;
	font-size: 1.8em;
	line-height: 2;
	margin: 0 0 15px;
}

.wtBakTxt {
	padding: 3px 0;
	background: rgba(255,255,255,0.95);
}

.idxAbtTxt {
	display: inline-block;
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2.2;
	margin: 0 0 15px;
}

.idxAbtTxt .srgTxt {
	font-weight: 400;
	color: #7cb57d;
}

#idxAbtAra .bdrBtn {
	margin: 0;
}

/* footer */
footer a:link,
footer a:visited {
	color: #8f9397!important;
}

.ptpBtn a {
	text-align: center;
	position: relative;
	display: block;
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1;
	padding: 25px 10px 10px;
	background: #f6f6f6;
	border-top: solid 1px #e4e4e4;
}

.ptpBtn a:before {
	content: "";
	position: absolute;
	top: 13px;
	left: calc(50% - 5px);
	display: inline-block;
	vertical-align: middle;
	color: #333;
	line-height: 1;
	width: 10px;
	height: 10px;
	border: 2px solid #000812;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: rotate(-45deg);
}

.ptpBtn a:active {
	background: #dedab5;
	border-top: solid 1px #dedab5;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
	text-decoration: none!important;
}

.ftrWrp {
	color: #8f9397;
	padding: 20px 0 0;
	background: url(../images/common/bg_footer.png) top no-repeat #000812;
	background-size: auto 100%;
}

.ftrCtr {
	text-align: center;
	padding: 0 15px 20px;
}

.ftrInfBox {
	margin: 0 0 30px;
}

.ftrTtl {
	font-weight: 400;
	font-size: 1.5em;
	line-height: 1;
	margin: 0 0 10px;
}

.ftrAdd {
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1.4;
	margin: 0 0 20px;
}

.ftrTelLst {
	font-weight: 400;
	font-size: 1.4em;
	line-height: 1;
	margin: 0 0 5px;
}

.ftrTelLst li {
	margin: 0 0 10px;
}

.ftrTim {
	font-weight: 400;
	font-size: 1em;
	line-height: 1;
}

.ftrLg {
	max-width: 110px;
	margin: 0 auto 15px;
}

.ftrNav {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 400;
	font-size: 1.4em;
	line-height: 1;
	margin: 0 0 20px;
}

.ftrNav li:last-child {
	border-left: solid 1px rgba(255,255,255,0.5);
	margin: 0 0 0 15px;
	padding: 0 0 0 15px;
}

.ftrNav li:first-child:after {
	position: absolute;
	content: "|";
	top: 0;
	right: 0;
}

.ftrSubNav {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.1em;
	line-height: 1;
	margin: 0 0 20px;
}

.ftrSubNav li {
	margin: 0 0 10px;
}

.ftrSnsNav {
	display: flex;
	align-items: center;
	justify-content: center;
}

.ftrSnsNav li {
	max-width: 20px;
	margin: 0 7px;
}

.ftrCpyBox {
	position: relative;
	padding: 15px;
	border-top: solid 1px rgba(148,148,148,0.3);
}

.ftrCpy {
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1;
	margin: 0 0 15px;
}

.ftrBnr {
	max-width: 140px;
	margin: 0 auto;
}

/*======================================================
  lower
======================================================*/

#lwrContent {
	padding: 0 0 50px;
} 

/* common */
.cmtBox {
	text-align: center;
	max-width: 500px;
	margin: 30px auto 0;
}

.cmtBox2 {
	text-align: center;
	max-width: 500px;
	margin: 30px auto 0;
}

.cmtBox3 {
	text-align: center;
	max-width: 500px;
	margin: 30px auto 0;
}

.cmtInr {
	display: inline-block;
	padding: 20px 15px;
	position: relative;
	border: solid 3px #f7f7f7;
	z-index: 0;
}

.cmtInr:before {
	content: "";
	width: 12px;
	height: 17px;
	position: absolute;
	top: -10px;
	left: 15px;
	background: url(../images/common/icn_box.png) top no-repeat;
	background-size:  12px 17px;
	z-index: 1;
}

.cmtTelLnk {
	text-align: center;
	font-weight: 600;
	font-size: 2em;
	line-height: 1;
	margin: 0 0 7px;
}

.cmtTelLnk .minTxt {
	font-size: 0.8em;
}

.cmtTelLnk a:link,
.cmtTelLnk a:visited {
	color: #7cb57d!important;
}

.cmtPdfLnk {
	text-align: center;
}

.cmtPdfLnk .minTxt {
	font-size: 0.8em;
}

.cmtPdfLnk a {
	text-align: left;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1.2;
	display: inline-block;
}

.cmtPdfLnk .pdfIcn {
	display: block;
	padding: 20px 0 20px 50px;
	background: url(../images/common/icn_pdf.png) left no-repeat;
	background-size:  40px 47px;
}

.cmtPdfLnk .enqIcn {
	display: block;
	padding: 20px 0 20px 50px;
	background: url(../images/common/icn_enquete.png) left no-repeat;
	background-size:  40px auto;
}

.cmtTxt {
	text-align: center;
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
}

.cmtBigTxt {
	text-align: left;
	font-weight: 300;
	font-size: 1.4em;
	line-height: 2;
}

.cmtMorBigTxt {
	text-align: center;
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.6;
	margin: 0 0 10px;
}

.cmtTxt a:link,
.cmtTxt a:visited,
.cmtBigTxt a:link,
.cmtBigTxt a:visited,
.cmtBigTxt .grTxt {
	color: #7cb57d!important;
	border-bottom: solid 1px #7cb57d;
}

.capTxt {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1.5;
	color: #787878;
	margin: 15px 0 0;
}

.capLst {
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1.5;
	color: #787878;
	margin: 20px 0 0;
}

.capLst li {
	position: relative;
}

.capTxt:before,
.capLst li:before {
	content: "※";
	margin: 0 5px 0 0;
}

.capLst li:not(:last-child) {
	margin: 0 0 5px;
}

.cntDotLst .capLst,
.cntDotLst .capTxt {
	margin: 5px 0 0!important;
	padding: 0 0 0 20px!important;
}

#lwrManAra {
	height: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#lwrBigManAra {
	height: 250px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.pgeTtlBox {
	text-align: center;
}

.pgeTtlEn {
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 1em;
	line-height: 0.8;
	color: #fff;
	text-shadow: 0 0 8px rgba(0,0,0,0.5);
	margin: 0 0 5px;
}

.pgeTtl {
	font-weight: 400;
	font-size: 2em;
	line-height: 1.2;
	padding: 7px 5px;
	background: rgba(255,255,255,0.95);
}

#lwrTtlAra {
	text-align: center;
	margin: 0 0 15px;
	padding: 50px 0 0;
}

.pgeMinTtlEn {
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 1.2em;
	line-height: 0.8;
	margin: 0 0 10px;
}

.pgeMinTtl {
	font-weight: 400;
	font-size: 2em;
	line-height: 1.3;
	padding: 0 10px;
	letter-spacing: 0px;
}

.bdrBox {
	padding: 20px 0;
	position: relative;
	border-top: solid 3px #000;
	border-bottom: solid 3px #000;
}

.bdrBox:before {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	top: 3px;
	left: 0;
	background: #b2b2b2;
}

.bdrBox:after {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 3px;
	left: 0;
	background: #b2b2b2;
}

.cctBox {
	max-width: 418px;
	margin: 30px auto 0;
	padding: 15px;
	background: #f7f7f7;
	border: solid 1px #e4e4e4;
}

.cctBoxTtl {
	text-align: center;
	font-weight: 400;
	font-size: 1.3em;
	line-height: 1.5;
	margin: 0 0 15px;
	padding: 5px;
	background: #fff;
}

.cctBoxImg {
	max-width: 300px;
	margin: 0 auto 15px;
}

.cctCntBox {
	text-align: center;
}

.cctCntTtl {
	font-weight: 400;
	font-size: 1.6em;
	line-height: 1.4;
	margin: 0 0 15px;
}

.cctCntAdd {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.4;
	margin: 0 0 15px;
}

.cctTelLst {
	font-weight: 400;
	font-size: 1.6em;
	line-height: 1.2;
}

.cctTelLst .minTxt {
	font-size: 0.7em;
}

.cctTelLst li:first-child {
	margin: 0 0 5px;
}

.cntDotLst {
	margin: 0 0 35px;
}

.cntDotLst li:not(:last-child) {
	margin: 0 0 10px;
}

.cntDotLstTxt {
	position: relative;
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1.8;
	padding-left: 1.6em;
	text-indent: -1.6em;
}

.cntDotLstTxt:before {
	content: "●";
	font-size: 0.8em;
	color: #e3e3e3;
	margin: 0 7px 0 0;
}

.minDotLst {
	text-align: left;
	font-weight: 300;
	font-size: 1em;
	line-height: 1.6;
	margin-top: 15px;
}

.minDotLst li {
	position: relative;
	margin: 0 0 10px;
	padding-left: 1.8em;
	text-indent: -1.8em;
}

.minDotLst li:before {
	content: "・";
	margin: 0 10px 0 0;
}

.cntTbl {
	width: 100%;
	border-top: solid 1px rgba(0,8,18,0.3);
	border-left: solid 1px rgba(0,8,18,0.3);
}

.cntTbl th {
	text-align: center;
	font-weight: 600;
	font-size: 1.1em;
	line-height: 1.3;
	color: #fff;
	white-space: nowrap;
	padding: 5px;
	background: #3f454c;
	border-right: solid 1px rgba(0,8,18,0.3);
	border-bottom: solid 1px rgba(0,8,18,0.3);
	vertical-align: middle;
}

.cntTbl td {
	text-align: center;
	font-weight: 400;
	font-size: 1.1em;
	line-height: 1.6;
	padding: 5px;
	background: #fff;
	border-right: solid 1px rgba(0,8,18,0.3);
	border-bottom: solid 1px rgba(0,8,18,0.3);
	vertical-align: middle;
}

.cntTbl .subTtl {
	background: #f6f6f6;
}

.cntImg {
	max-width: 600px;
	margin: 0 auto 30px;
}

/*======================================================
  GV.SELECTION
======================================================*/

.gvsMn {
	background: url(../images/gvselection/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

#gvsInfAra {
	padding: 50px 15px;
}

.gvsInfWrp {
	max-width: 600px;
	margin: 0 auto;
}

.gvsMnBox {
	height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 30px;
	background: url(../images/gvselection/bg_gvselection.jpg) top no-repeat;
	background-size:  cover;
}

.gvsMnCntBox {
	text-align: center;
}

.gvsMnLg {
	max-width: 80px;
	margin: 0 auto 10px;
}

.gvsMnCth {
	font-weight: 600;
	font-size: 2em;
	line-height: 1;
	color: #fff;
	margin: 0 0 20px;
	text-shadow: 0 0 10px rgba(0,0,0,0.5);
}

.gvsMnTxt {
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1.3;
	padding: 3px 5px;
	background: rgba(255,255,255,0.95);
}

.sinTxt {
	text-align: center;
	font-weight: 600;
	font-size: 1.2em;
	line-height: 1.3;
	color: #787878;
	margin: -15px 0 20px;
}

.gvsTxt {
	font-weight: 300;
	font-size: 1.3em;
	line-height: 2;
	margin: 0 0 30px;
}

.gvsBtnNavBox {
	max-width: 1000px;
	margin: 0 auto 60px;
}

.gvsBtnNav li:not(:last-child) {
	margin: 0 0 10px;
}

.gvsBtnNav li a {
	text-align: center;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 0.8;
	display: block;
	padding: 15px;
	background: #000812;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.gvsBtnNav li a span {
	padding: 0 15px 0 0;
	background: url(../images/common/icn_arrow_wt.png) right center no-repeat;
	background-size: 9px 7px;
}

.gvsBtnNav li a:active {
	color: #000812!important;
	text-decoration: none!important;
	background: #dedab5;
}

.gvsBtnNav li a:active span {
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 9px 7px;
}

/* gvsOdrAra */
#gvsOdrAra {
	padding: 50px 15px;
	background: #f6f6f6;
	border-top: solid 1px #e4e4e4;
}

.gvsOdrWrp {
	max-width: 600px;
	margin: 0 auto;
}

.gvsOdrCtn {
	text-align: center;
	margin: 0 0 15px;
}

.gvsOdrBox {
	text-align: center;
	margin: 0 0 30px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.gvsOdrLftBox {
	margin: 0 0 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.gvsOdrRitBox {
	margin: 0 0 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.gvsOdrBoxTtl {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1;
	padding: 7px;
	background: #dedab5;
}

.gvsOdrBoxInr {
	padding: 15px 5px;
}

.gvsOdrBoxTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
	margin: 0 0 10px;
}

.gvsOdrBoxTel {
	display: inline-block;
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1;
	padding: 0 0 5px;
	border-bottom: solid 1px #dedab5;
}

.gvsOdrBoxTel .minTxt {
	font-size: 0.8em;
	margin: 0 10px 0 0;
}

.cntWhtBox {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.cntWhtBoxInr {
	padding: 30px 15px;
}

.cntSubNavBox {
	padding: 10px 15px;
	border-top: solid 1px #949494;
}

.cntSubNav {
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	white-space: nowrap;
}

.cntSubNav li {
	width: calc(50% - 10px);
	padding: 5px;
}

.cntSubNav a {
	padding: 0 10px 0 0;
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 8px 6px;
}

#gvsOdrAra .cntTbl {
	table-layout: fixed;
}

/* gvpInfAra */
#gvpInfAra {
	padding: 50px 15px 0;
}

.gvpInfWrp {
	max-width: 600px;
	margin: 0 auto;
}

.gvpSetBox {
	text-align: center;
	margin: 0 0 15px;
	padding: 20px 15px;
	background: #f6f6f6;
}

.gvpSetTtl {
	display: inline-block;
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1;
	background: #fff;
	margin: 0 0 20px;
	padding: 3px 5px;
}

.gvpSetLst li {
	margin: 0 0 15px;
}

.gvpSetLstTxtBox {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 15px;
}

.gvpSetLstNbr {
	width: 22px;
	height: 19px;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	margin: 0 7px 0 0;
	padding: 3px 0 0;
	background: #dedab5;
	border-radius: 50%;
}

.gvpSetLstTxt {
	font-weight: 300;
	font-size: 1.4em;
	line-height: 1;
}

.gvpSetLst li:nth-child(5) .gvpSetLstTxt {
	text-align: left!important;
	line-height: 1.3;
}

.gvpSetLstImg {
	max-width: 180px;
	margin: 0 auto;
}

.gvpSetOrTxt {
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1;
}

.gvpSetBox .capTxt {
	text-align: right;
}

.gvpSetPrcBox {
	text-align: right;
	margin: 0 0 40px;
}

.gvpSetPrcTxt {
	text-align: left;
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1.8;
	margin: 0 0 15px;
}

.gvpSetPrc {
	display: inline-block;
	font-weight: 500;
	font-size: 1.8em;
	line-height: 1;
	padding: 0 0 5px;
	border-bottom: solid 2px #dedab5;
}

.gvpSetPrc .minTxt {
	font-size: 0.6em;
}

.gvpArmLst {
	display: flex;
	flex-wrap: wrap;
}

.gvpArmLst li {
	text-align: center;
	width: calc(50% - 20px);
	margin: 0 10px 30px;
}

.gvpArmLstImg {
	max-width: 50px;
	margin: 0 auto 15px;
}

.gvpArmLstTtl {
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1;
	margin: 0 0 10px;
}

.gvpArmLstTxt {
	font-weight: 500;
	font-size: 1.1em;
	line-height: 1.3;
}

/* gvpItmAra */
#gvpItmAra,
#gdsItmAra {
	padding: 50px 10px 0;
}

.gvpOtrWrp,
.gdsItmWrp {
	max-width: 600px;
	margin: 0 auto;
}

.gvsItmLst {
	display: flex;
	flex-wrap: wrap;
}

.gvsItmLst li {
	width: calc(50% - 10px);
	margin: 0 5px 20px;
	position: relative;
	background: #f6f6f6;
}

.colIcn {
	text-align: center;
	width: 40px;
	position: absolute;
	top: 0;
	left: 0;
	font-weight: 600;
	font-size: 1.2em;
	line-height: 0.8;
	padding: 5px;
	background: #dedab5;
}

.gvsItmImg {
	height: 150px;
	background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
	background-color: #000812;
}

.gvsItmLstBox {
	padding: 5px;
}

.gvsItmTtl {
	font-weight: 600;
	font-size: 1.3em;
	line-height: 1.5;
	letter-spacing: -0.005em;
	margin: 0 0 10px;
}

.gvsItmCth {
	font-weight: 300;
	font-size: 1em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.gvsItmPrc {
	text-align: right;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1.3;
	margin: 0 0 10px;
}

.gvsItmPrc  .minTxt {
	font-size: 0.65em;
}

.gvsItmCntBox {
	padding: 5px;
	background: #fff;
}

.gvsItmCntTtl {
	font-weight: 500;
	font-size: 1em;
	line-height: 1;
	margin: 0 0 10px;
}

.gvsItmCntLst {
	font-weight: 500;
	font-size: 0.8em;
	line-height: 1;
	padding: 0 0 0 15px;
}

.gvsItmCntLst li {
	width: 100%;
	margin: 0 0 5px;
	background: none;
}

.gvsItmCntTxt {
	font-weight: 500;
	font-size: 0.8em;
	line-height: 1.6;
}

#gvpItmAra .cmtBox,
#gdsItmAra .cmtBox {
	margin: 15px auto 30px;
}

/*======================================================
  NEWS
======================================================*/

/* nwsLstAra */
#nwsLstAra {
	padding: 0 15px;
}

.nwsLstWrp {
	max-width: 600px;
	margin: 0 auto;
}

#nwsLstAra .wp-pagenavi {
	text-align: center;
	margin: 30px 0;
}

/* nwsAra */
#nwsAra {
	padding: 0 15px;
}

.nwsWrp {
	max-width: 600px;
	margin: 0 auto;
}

.nwsTtlBox {
	position: relative;
	margin: 0 0 20px;
	border-top: solid 3px #000;
}

.nwsTtlBox:before {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	top: 3px;
	left: 0;
	background: #b2b2b2;
}

.nwsTtlLst {
	border-bottom: solid 1px #b2b2b2;
}

.nwsTtlLst dt {
	text-align:  center;
	font-weight: 500;
	font-size: 1.1em;
	line-height: 1;
	white-space: nowrap;
	margin: 4px 0 0;
	padding: 7px;
	background: #dedab5;
}

.nwsTtlLst dd {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.6;
	padding: 15px 0;
}

.nwsLstWrp .bdrBox {
	margin-bottom: 30px;
}

/*======================================================
  TOPICS
======================================================*/

/* tpcLstAra */
#tpcLstAra {
	padding: 0 10px;
}

.tpcLstWrp {
	max-width: 600px;
	margin: 0 auto;
}

.tpcLst {
	display: flex;
	flex-wrap: wrap;
}

.tpcLst li {
	width: calc(50% - 10px);
	margin: 0 5px 30px;
}

.tpcLstInr {
	padding: 0 0 0px;
	position: relative;
}

.tpcLstImg {
	height: 150px;
	background-repeat: no-repeat;
	background-position: top;
	background-size: cover;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all  0.4s ease;
}

/* wp-pagenavi */
#tpcLstAra .wp-pagenavi {
	text-align: center;
	margin: 0 0 30px;
}

.wp-pagenavi a,
.wp-pagenavi span {
	width: 20px;
	height: 20px;
	color: #000812!important;
	font-size: 14px;
	line-height: 1.5;
	display: inline-block;
	margin: 0 3px;
	padding: 3px;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.wp-pagenavi .current,
.wp-pagenavi a:active {
	background: #dedab5;
	text-decoration: none!important;
}

.wp-pagenavi .prevpostslink {
	font-size: 20px!important;
	line-height: 1!important;
	margin: 0 8px 0 0!important;
	padding: 0!important;
	border: none!important;
	background: none!important;
}

.wp-pagenavi .nextpostslink {
	font-size: 20px!important;
	line-height: 1!important;
	margin: 0 0 0 8px!important;
	padding: 0!important;
	border: none!important;
	background: none!important;
}

.wp-pagenavi .prevpostslink:active,
.wp-pagenavi .nextpostslink:active {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
}

/* tpcAra */
#tpcAra {
	padding: 0 15px;
}

.tpcWrp {
	max-width: 600px;
	margin: 0 auto;
}

.tpcSldLst {
	margin: 0 auto 60px;
}

.slick-dots{
	position: absolute;
	bottom: -25px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
}

.slick-dots li{
	position: relative;
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 3px;
	padding: 0;
	cursor: pointer;
}

.slick-dots li button{
	font-size: 0;
	line-height: 0;
	display: block;
	width: 16px;
	height: 16px;
	padding: 3px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

.slick-dots li button:active,
.slick-dots li button:focus{
	  outline: none;
}

.slick-dots li button:before{
	font-family: 'slick';
	font-size: 18px;
	line-height: 18px;
	position: absolute;
	top: 0;
	left: 0;
	width: 16px;
	height: 16px;
	content: '●';
	text-align: center;
	color: #e3e3e3;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before{
	color: #949494;
}

.tpcCntBox {
	padding: 15px;
}

.tpcSubBox {
	padding: 0 15px;
}

.rteCntBox {
	margin: 0 auto;
}

.rteCntBox h1 {
	font-weight: 500;
	font-size: 2em;
	line-height: 1.6;
	margin: 0 0 20px;
}

.rteCntBox h2 {
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 30px 0 20px;
	padding: 0 0 10px;
	color: #7cb57d;
	border-bottom: 1px solid #7cb57d;
}

.rteCntBox h3 {
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1.6;
	margin: 0 0 10px;
}

.rteCntBox h4 {
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 30px 0 20px;
	padding: 0 0 10px;
	color: #ff6600;
	border-bottom: 1px solid #ff6600;
}

.rteCntBox p {
	font-weight: 300;
	font-size: 1.3em;
	line-height: 1.6;
	margin: 0 0 30px;
}

.rteCntBox ul {
	font-size: 1.3em;
	list-style: disc;
	margin: 0 0 20px 20px;
}

.rteCntBox ul.asterisk {
	list-style-type: none;
	margin: 0 0 30px 15px;
}
.rteCntBox ul.asterisk li {
	text-indent: -1em;
	padding-bottom:5px;
}
.rteCntBox ul.asterisk li:before {
	content: "※";
}

.rteCntBox table {
	font-size: 1.3em;
	margin-bottom: 20px;
	width: 100%;
}

.rteCntBox th {
	text-align: center;
	padding: 10px;
	width: calc(100% - 20px);
	display: block;
}

.rteCntBox td {
	padding: 10px;
	width: calc(100% - 20px);
	display: block;
}

.rteCntBox .table01 {
	font-size: 1.3em;
	border-spacing: 0 5px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	width: calc(100% - 1px);
}

.rteCntBox .table01 th {
	background: #dedab5;
	text-align: center;
	width: calc(100% - 20px);
	display: block;
}

.rteCntBox .table01 td {
	width: calc(100% - 20px);
	text-align: center;
	margin-bottom: 10px;
	display: block;
}

.rteCntBox .table02 {
	font-size: 1.3em;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	width: calc(100% - 1px);
}

.rteCntBox .table02 th {
	background: #f6f6f6;
	text-align: left;
	padding: 10px;
	width: calc(100% - 21px);
	display: block;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.rteCntBox .table02 td {
	width: calc(100% - 21px);
	display: block;
	padding: 10px;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.rteCntBox .box {
	padding: 10px;
	margin-bottom: 20px;
	border: 3px solid #f6f6f6
}

.rteCntBox small {
	font-size: 0.8em;
}

.rteCntBox img {
	max-width: 100%;
	height: auto;
}

.rteCntBox .float,
.rteCntBox .float2,
.rteCntBox .float3 {
	overflow: hidden;
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}

.rteCntBox .float br,
.rteCntBox .float2 br,
.rteCntBox .float3 br {
	display: none;
}

.rteCntBox .float2 img,
.rteCntBox .float3 img {
	width: 100%;
	height: auto;
}

.rteCntBox .float li {
	float: left;
	margin:0 10px 10px 0;
}

.rteCntBox .float2 li:nth-of-type(odd) {
	margin: 0 5px 10px 0;
	width: calc(50% - 5px);
	float: left;
	clear: left;
}

.rteCntBox .float2 li:nth-of-type(even) {
	margin: 0 0 10px 5px;
	width: calc(50% - 5px);
	float: left;
}

.rteCntBox .float3 li {
	width: 32%;
	margin: 0 2% 10px 0;
	float: left;
}

.rteCntBox .float3 li:nth-of-type(3) {
	margin: 0 0 10px 0;
}

.rteCntBox .float3 li:nth-child(3n + 1) {
	clear: left;
}

.sp100 {
	margin-bottom: 0px!important;
	width: 100%!important;
}

.sp100 li {
	float: none!important;
	width: 100%!important;
	margin: 0 0 20px!important;
}

.sp100 img {
	width: 100%!important;
	height: auto!important;
}

.sp80 {
	margin-bottom: 0px!important;
	width: 100%!important;
}

.sp80 li {
	float: none!important;
	width: 100%!important;
	margin: 0 0 20px!important;
}

.sp80 img {
	width: 80%!important;
	height: auto!important;
	margin: 0 auto!important;
}




.tokubetsuShukuhaku {
	border: 2px solid #7cb57d;
	margin: 0 auto 30px;
	position: relative;
}

.tokubetsuShukuhaku h2 {
	background: #7cb57d;;
	color: #fbe314;
	padding: 10px;
	text-align: center;
	font-size: 1.8em;
	margin-bottom: 10px;
}

.tokubetsuShukuhaku h3 {
	font-size: 1.6em;
	margin-bottom: 10px;
	padding-bottom: 10px;
	text-align: center;
	color: #7cb57d;;
	border-bottom: 2px dotted #7cb57d;;
}

.tokubetsuShukuhaku h4 {
	font-size: 1.5em;
	margin-bottom: 10px;
	text-align: center;
}

.tokubetsuShukuhaku table {
	text-align: center;
	margin: 0 auto 15px;
	border-spacing: 0 5px;
	width: auto;
}

.tokubetsuShukuhaku table th {
	background: #ff6600;
	color: #fff;
	padding: 10px;
	font-size: 1.4em;
	width: 1px;
	white-space: nowrap;
	text-align: center;
	vertical-align: middle;
}

.tokubetsuShukuhaku table td {
	font-size: 2em;
	vertical-align: middle;
	text-align: center;
	padding: 0 10px;
	color:  #ff6600;
}

.tokubetsuShukuhaku p {
	font-size: 1.2em;
	text-align: center;
	padding: 0 0 20px;
}


#tpcAra .cmtBigTxt {
	margin: 0;
}

.icnBtnBox {
	text-align: center;
	margin: 30px 0;
}

.icnBtnIcn {
	max-width: 30px;
	margin: 0 auto 10px;
}

.icnBtn {
	display: inline-block;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	padding: 0 0 3px;
	border-bottom: solid 1px #dedab5;
}

.pgrBox {
	margin: 30px 0;
	padding: 15px 0;
	position: relative;
	border-top: solid 3px #000;
	border-bottom: solid 3px #000;
}

.pgrBox:before {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	top: 3px;
	left: 0;
	background: #b2b2b2;
}

.pgrBox:after {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 3px;
	left: 0;
	background: #b2b2b2;
}

.pgrTtl {
	font-weight: 600;
	font-size: 1.3em;
	margin: 0 0 15px;
	text-align: center;
	letter-spacing: 0px;
}

.pgrLst {
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: space-between;	
}

.pgrLst li a {
	min-width: 100px;
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	white-space: nowrap;
	display: block;
	padding: 10px;
	background: #3f454c;
}

.pgrLst li a .minTxt {
	font-size: 0.8em;
}

.pgrLst li:nth-child(2) {
	display: none;
}

 /*=== 画像の表示エリア ================================= */
.slide {
  position   : relative;
  overflow   : hidden;
                    /* 画像のサイズに合わせて変更ください */
  width      : 250px;
  height     : 250px;
  margin     : 0px auto 20px;      /* サンプルは中央寄せの背景：白 */
  background : #fff;
}
 
 /*=== 画像の設定 ======================================= */
.slide img {
  display    : block;
  position   : absolute;
                      /* 画像のサイズを表示エリアに合せる */
  width      : inherit;
  height     : inherit;
  opacity    : 0;
  animation  : slideAnime 18s ease infinite;
}
 
 /*=== スライドのアニメーションを段差で開始する ========= */
.slide img:nth-of-type(1) { animation-delay: 0s }
.slide img:nth-of-type(2) { animation-delay: 3s }
.slide img:nth-of-type(3) { animation-delay: 6s }
.slide img:nth-of-type(4) { animation-delay: 9s }
.slide img:nth-of-type(5) { animation-delay: 12s }
.slide img:nth-of-type(6) { animation-delay: 15s }
 
 /*=== スライドのアニメーション ========================= */
@keyframes slideAnime{
   0% { opacity: 0 }
   10% { opacity: 1 }
  20% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}


/*======================================================
  CATERING
======================================================*/

.catMn {
	background: url(../images/catering/bg_main2.jpg) top no-repeat;
	background-size:  cover;
}

/* catInfAra */
#catInfAra {
	padding: 50px 15px;
}

.catInfWrp {
	max-width: 600px;
	margin: 0 auto;
}

/* catInfAra */
#catMnuAra {
	padding: 50px 15px;
	background: #f6f6f6;
	border-top: solid 1px #e4e4e4;
	border-bottom: solid 1px #e4e4e4;
}

.catMnuWrp {
	max-width: 600px;
	margin: 0 auto;
}

.catMnuLst li {
	padding: 10px 15px;
	background: #fff;
	border-top: solid 5px #dedab5;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.catMnuLst li:not(:last-child) {
	margin: 0 0 30px;
}

.catMnuImg {
	max-width: 300px;
	margin: 0 auto 15px;
}

.catMnuNme {
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.catMnuCntBox {
	margin: 0 0 10px 0;
}

.catMnuNme .minTxt {
	font-size: 0.75em;
}

.catMnuPrc {
	text-align: right;
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1;
	margin: 0 0 15px;
}

.catMnuTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
	margin: 0 0 15px;
}

.catMnuDta {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1.5;
	color: #787878;
}

.catMnuAtnTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
	color: #ff0000;
	margin: 15px 0 0;
}

#catBtnAra {
	padding: 30px 15px 0;
}

/* catFrmInfAra */
#catFrmInfAra {
	padding: 20px 15px 0;
}

.catFrmInfWrp {
	max-width: 600px;
	margin: 0 auto;
}

/* catFrmItmAra */
#catFrmItmAra {
	padding: 40px 15px 0;
}

.catFrmItmWrp {
	max-width: 600px;
	margin: 0 auto;
}

#catFrmItmAra .bdrBox {
	padding: 0;
}

.catFrmItmLst li {
	padding: 20px 0;
	border-bottom: solid 1px #b2b2b2;
}

.catFrmItmLst li:last-child {
	border: none;
}

.catFrmItmImg {
	max-width: 300px;
	margin: 0 auto 15px;
}

.catFrmItmCntBox {
	text-align: center;
}

.catFrmItmNme {
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.catFrmItmPrc {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1;
	margin: 0 0 15px;
}

.catFrmItmValBox {
	display: inline-block;
	padding: 5px 10px;
	background: #dedab5;
}

.catFrmItmValInr {
	display: flex;
	align-items: center;
	justify-content: center;
}

.catFrmItmVal {
	font-weight: 400;
	font-size: 1.2em;
	line-height: 2;
}

.catFrmItmVal input {
	width: 40px;
	margin: 0 10px;
	padding: 5px;
	border: none;
}

.catFrmItmTtlPrc {
	text-align: center;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	margin: 20px 0 0;
	padding: 0 0 7px;
}

.catFrmItmTtlPrc .bigTxt {
	font-size: 1.4em;
	margin: 0 0 0 15px;
	border-bottom: solid 2px #dedab5;
}

/* catFrmAra */
#catFrmAra {
	padding: 50px 15px 0;
}

.catFrmWrp {
	max-width: 600px;
	margin: 0 auto;
}

#catFrmAra .bdrBox {
	margin: 0 0 40px;
}

.noPdg li {
	padding: 0!important;
}

.chkBoxCtn {
	text-align: center;
	margin: 0 0 15px;
}

.chkBoxCtn .chkBox {
	justify-content: center;
}

/*======================================================
  CONTACT
======================================================*/

#frmAra {
	padding: 0 15px;
}

.frmWrp {
	max-width: 600px;
	margin: 0 auto;
}

.bdrBoxInr {
	margin: 0 0 20px;
	padding: 0 0 20px;
	border-bottom: solid 2px #000;
}

.frmLst li {
	padding: 15px 0;
}

.frmLst li:first-child {
	padding: 0 0 15px;
}

.frmLst li:last-child {
	align-items: flex-start;
	padding: 15px 0 0;
}

.frmLst li:not(:last-child) {
	border-bottom: solid 1px #b2b2b2;
}

.frmTtl {
	width: 100%;
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1;
	margin: 0 0 10px;
}

.frmIcon {
	font-size: 0.8em;
	color: #7cb57d;
	margin: 0 0 0 5px;
}

.frmRed {
	font-size: 0.6em;
	color: #ff0000;
	margin-top: 5px;
}

.frmCnt {
	width: 100%;
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1.8;
}

.frmCnt td {
	padding-right: 5px;
}

.frmCnt .question {
	display: block;
	margin-bottom: 10px;
	margin-top: 15px;
	font-weight: bold;
}

.frmCnt .question:first-child {
	margin-top: 0;
}

.frmCnt .questionAst {
	font-size: 0.8em;
	font-weight: normal;
}

.frmCnt input[type="number"],
.frmCnt input[type="text"],
.frmCnt input[type="email"],
.frmCnt input[type="search"],
.frmCnt textarea,
.frmCnt select {
	width: calc(100% - 12px);
	font-family: 'Noto Serif JP', serif;
	font-size: 1em;
	padding: 5px;
	background: #f6f5ea;
	border: solid 1px #ece9cd;
}

.frmCnt input[type="radio"],
.frmCnt input[type="checkbox"] {
	width: 12px;
	height: 12px;
	margin-top: 5px;
}

.checks {
	display: block;
}

.checks label {
	float: left;
	margin: 0 20px 0 0;
}

.frmAfr {
	display: inline-block;
	padding-top: 2px;
}

.frmMsg {
	margin-top: 10px;
}

.sonota input {
	margin-top: 15px;
}

.frmBox02 {
	height: 150px;
}

.frmBox03 {
	width: 40px!important;
}

.frmBox04 {
	width: 50%!important;
}

.frmBox05 {
	height: 150px;
}

.frmBox06 {
	width: 250px!important;
}

.frmBox07 {
	width: 70%!important;
}

.frmBox08 {
	width: calc(100% - 12px)!important;
}

.frmBox09 {
	width: 35%!important;
}

.frmBox11 {
	width: 50px!important;
}

.frmBox12 {
	width: 60px!important;
	margin-bottom: 10px;
}

.frmBox13 {
	width: 60px!important;
}

.frmNmeTbl {
	width: 100%;
}

#fminute {
	margin-top: 10px;
}

.frmNmeTbl th {
	font-weight: 500;
	font-size: 1em;
	line-height: 1.3;
	white-space: nowrap;
	vertical-align: middle;
	padding: 5px 15px 5px 0;
}

.frmNmeTbl td {
	vertical-align: middle;
	padding: 5px 0;
}

.frmTxt  {
	font-weight: 400;
	font-size: 1em;
	line-height: 1.3;
	display: inline-block;
	padding: 5px 5px 0 10px;
}



.frmSubTxt {
	font-weight: 400;
	font-size: 1em;
	line-height: 1.8;
	display: inline-block;
	margin: 5px 0 0;
}

.chkBoxCtn {
	font-size: 1.4em;
}

.chkBtn {
	font-weight: 500;
	font-size: 1em;
	line-height: 1.3;
	white-space: nowrap;
	margin: 0 0 5px;
}

.frmAddTbl {
	width: 100%;
}

.frmAddTbl tr,
.frmAddTbl th,
.frmAddTbl td {
	display: block!important;
}

.frmAddTbl th {
	font-weight: 500;
	font-size: 1em;
	line-height: 1.3;
	padding: 5px;
	vertical-align: middle;
}

.frmAddTbl td {
	padding: 5px;
	vertical-align: middle;
}

.chkBtn input {
	width: auto!important;
	margin: 5px 10px 0 0;
	background: none;
	border: none;
}

.frmSndBtn {
	max-width: 200px;
	margin: 20px auto 0;
}

.frmSndBtn input {
	width: 100%;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1;
	display: block;
	padding: 15px;
	background: #dedab5;
	border: solid 1px #dedab5;
	cursor: pointer;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.frmSndBtn input:active {
	background: rgba(255,255,255,0.95);
	border: solid 1px #000812;
}

.frmBckBtn {
	max-width: 140px;
	margin: 15px auto 0;
}

.frmBckBtn input,
.frmBckBtn button {
	width: 100%;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	color: #fff;
	display: block;
	padding: 10px;
	background: #51565d;
	border: solid 1px #51565d;
	cursor: pointer;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.frmBckBtn input:hovactiveer,
.frmBckBtn button:active {
	color: #000812;
	background: none;
	border: solid 1px #51565d;
}

/*======================================================
  STAY
======================================================*/

.styMn {
	background: url(../images/stay/bg_main2.jpg) top no-repeat;
	background-size:  cover;
}

/* styGrmAra */
#styGrmAra {
	padding: 50px 15px 0;
}

.styGrmWrp {
	max-width: 600px;
	margin: 0 auto;
}

.styGrmLst {
}

.styGrmLst li:not(:last-child) {
	margin: 0 0 30px;
}

.styGrmImgBox {
	position: relative;
	margin: 0 0 10px;
}

.styGrmImg {
	position: relative;
	z-index: 1;
}

.styGrmDtaLst {
	width: 100%;
	display: flex;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 10;
}

.styGrmDtaLst dt {
	text-align: center;
	width: 60px;
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 1.1em;
	line-height: 0.8;
	padding: 10px 5px 0;
	background: #dedab5;
}

.styGrmDtaLst dd {
	width: calc(100% - 90px);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 0.8em;
	line-height: 1.6;
	color: #fff;
	padding: 5px 10px;
	background: rgba(0,8,18,0.7);
}

.styGrmNme {
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 0 0 10px;
}

.styGrmTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
}

#styGrmAra .cmtBox {
	margin: 20px 0 0;
}

.styPceLst {
	display: flex;
	flex-wrap: wrap;
}

.styPceLst li {
	text-align: center;
	width: calc(50% - 24px);
	margin: 0 2px 4px;
	padding: 10px;
	background: #f6f6f6;
}

.styPceImg {
	max-width: 60px;
	margin: 0 auto 10px;
}

.styPceTxt {
	font-weight: 600;
	font-size: 1.2em;
	line-height: 1.3;
	color: #6b6b6b;
	white-space: nowrap;
}

.styCntBtnBox {
	margin: 30px 0 50px;
}

/* styPlnAra */
#styPlnAra {
	padding: 50px 0 0;
}

.styGryCtn {
	padding: 40px 15px;
	background: #f6f6f6;
	border-top: solid 1px #e4e4e4;
	border-bottom: solid 1px #e4e4e4;
}

.styPlnWrp {
	max-width: 600px;
	margin: 0 auto;
}

.styPlnLst li:not(.capLst li) {
	background: #fff;
	box-shadow: 0 0 15px rgba(0,0,0,0.05);
}

.styPlnLst li:not(:last-child,.capLst li) {
	margin: 0 0 30px;
}

.styPlnImg {
	min-height: 250px;
	background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.styPlnBox {
	padding: 15px;
}

.styPlnTtl {
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.styPlnTtl .minTxt {
	font-size: 0.8em;
}

.styPlnPrc {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.6;
	margin: 0 0 15px;
}

.styPlnTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2.2;
	margin: 0 0 15px;
}

.styPlnSubTtl {
	font-weight: 600;
	font-size: 1.3em;
	line-height: 1.3;
	margin: 0 0 15px;
	color: #7cb57d;
}

.styPlnSubTbl {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.6;
	margin: 15px 0;
	padding: 5px;
	background: #fff;
	border: solid 1px #e3e3e3;
}

.styPlnSubTbl th {
	width: 60px;
	padding: 5px;
}

.styPlnSubTbl td {
	padding: 5px;
}

.styPlnBtn {
	max-width: 150px;
	width: 100%;
	margin: 0 auto;
}

.styPlnBtn a {
	text-align: center;
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	display: block;
	padding: 12px;
	background: #52575e;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.styPlnBtn a span {
	padding: 0 15px 0 0;
	background: url(../images/common/icn_arrow_wt.png) right center no-repeat;
	background-size: 8px 6px;
}

.styPlnBtn a:active {
	text-decoration: none!important;
	color: #000812!important;
	background: #dedab5;
}

.styPlnBtn a:active span {
	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
	background-size: 8px 6px;
}

/* styInfAra */
#styInfAra {
	padding: 50px 0 0;
}

.styInfWrp {
	max-width: 600px;
	margin: 0 auto;
}

.styInfTimLst {
	text-align: center;
	display: flex;
	justify-content: center;
	margin: 0 0 30px;
}

.styInfTimLst li {
	max-width: 200px;
	width: 100%;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.styInfTimLst li:first-child {
	margin: 0 5px 0 0;
}

.styInfTimLst li:last-child {
	margin: 0 0 0 5px;
}

.styInfTimTtl {
	font-weight: 600;
	font-size: 1.3em;
	line-height: 1.3;
	padding: 5px;
	background: #dedab5;
}

.styInfTimTxt {
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.3;
	padding: 15px;
	background: #fff;
}

.styInfMsgLst li:not(.capLst li) {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.styInfMsgLst li:not(:last-child,.capLst li) {
	margin: 0 0 30px;
}

.styInfMsgTtl {
	text-align: center;
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.3;
	color: #fff;
	padding: 5px;
	background: #7cb57d;
}

.styInfMsgBox {
	padding: 15px;
}

.styInfMsgTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
	margin: 0 0 15px;
}

.styInfMsgAtnTxt {
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1.8;
	color: #ff0000;
	margin: 0 0 15px;
}

.styInfMsgCth {
	font-weight: 300;
	font-size: 1.6em;
	line-height: 1.6;
}

.styInfMsgImgBox {
	margin: 0 0 15px;
}

.styInfMsgImg {
	max-width: 200px;
	margin: 0 auto 15px;
}

.styInfMsgSubTxt {
	font-weight: 300;
	font-size: 1em;
	line-height: 1.8;
}

/* styOtrAra */
#styOtrAra {
	padding: 50px 0 0;
}

.styOtrWrp {
	max-width: 600px;
	margin: 0 auto;
	padding: 0 15px;
}

.styOtrSvsLst {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 0 20px;
}

.styOtrSvsLst li {
	width: 120px;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 10px 10px;
	background: #dedab5;
	border-radius: 50%;
}

.styOtrSvsTxt {
	text-align: center;
	font-weight: 600;
	font-size: 1.1em;
	line-height: 1.6;
	white-space: nowrap;
}

.styOtrSvsTxt .bigTxt {
	font-size: 1.2em;
}

/*======================================================
  FLOOR
======================================================*/

.flrMn {
	background: url(../images/floor/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

#flrLstAra {
	padding: 50px 10px 0;
}

.flrLstWrp {
	max-width: 600px;
	margin: 0 auto;
}

.flrLst {
	display: flex;
	flex-wrap: wrap;
}

.flrLst li {
	width: calc(50% - 10px);
	margin: 0 5px 30px;
	padding: 0 0 50px;
	position: relative;
	background: #f6f6f6;
}

.flrLstIcn {
	position: absolute;
	top: 0;
	left: 0;
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1;
	padding: 5px;
	background: #dedab5;
	z-index: 50;
}

.flrLstImgBox {
	overflow: hidden;
	background: #000812;
}

.flrLstImg {
	height: 150px;
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all  0.4s ease;
}

.flrLstImg:active {
	opacity: 0.85;
	filter: alpha(opacity=85);
	-ms-filter: "alpha(opacity=85)";
	-moz-opacity: 0.85;
	-khtml-opacity: 0.85;
	transform:scale(1.05,1.05);
}

.flrLstBox {
	padding: 5px;
}

.flrLstTtl {
	text-align: center;
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.6;
	margin: 0 0 5px;
}

.flrLstTxt {
	text-align: center;
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.6;
}

.flrLstBtnBox .bdrBtn {
	position: absolute;
	bottom: 10px;
	left: calc(50% - 70px);
}

/* flrCpcAra */
#flrCpcAra {
	padding: 20px 15px 0;
}

.flrCpcWrp {
	max-width: 600px;
	margin: 0 auto;
}

#flrCpcAra .acdLst {
	margin: 0;
}

#flrCpcAra .acdLst dd {
	display: none;
	background: #fff!important;
}

#flrCpcAra .cntTbl {
	font-size: 1.0em;
}

#flrCpcAra .cntTbl th,
#flrCpcAra .cntTbl td {
	font-size: 1.0em;
	padding: 3px;
}

/* flrPlnAra */
#flrPlnAra {
	padding: 50px 0 0;
}

.flrPlnWrp {
	padding: 0 15px;
}

/* flrBqtAra */
#flrBqtAra {
	padding: 50px 15px 0;
}

.flrBqtWrp {
	max-width: 600px;
	margin: 0 auto;
}

#flrBqtAra .acdLst {
	margin: 0 0 15px;
}

/* accordion */
.acdLst {
	margin: 0 0 30px;
}

.acdLstTtl {
	height: 40px;
	position: relative;
	padding: 5px 10px;
	font-weight: 600;
	font-size: 1.5em;
	line-height: 40px;
	background: #dedab5;
	cursor: pointer;
}

.acdLstTtl:before {
	content: "";
	width: 30px;
	height: 30px;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	background: rgba(255,255,255,0.9);
}

.acdLstTtl:after {
	content: "";
	width: 12px;
	height: 12px;
	border-top: solid 1px #000812;
	border-right: solid 1px #000812;
	position: absolute;
	top: calc(50% - 10px);
	right: 18px;
	transform: rotate(135deg);
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all  0.4s ease;
}

.acdLstTtl.selected:after {
	top: calc(50% - 2px);
	transform: rotate(-45deg);
}

.acdLstTtl:active {
	color: #fff;
	background: #000812;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.acdLst dd {
	display: none;
	padding: 15px;
	background: #f6f6f6;
	border-top: none;
	border: solid 1px #e4e4e4;
}

.acdLst:first-of-type dd {
	display: block;
}

.acdPdfLnkBox {
	padding: 5px;
	background: #fff;
	border: solid 1px #e4e4e4;
}

.flrBnqImg {
	max-width: 250px;
	margin: 0 auto 15px;
}

.flrBnqCntBox {
	
}

.flrBnqCntCth {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.6;
	margin: 0 0 15px;
}

.flrBnqCntTbl {
	width: 100%;
}

.flrBnqCntTbl tr,
.flrBnqCntTbl th,
.flrBnqCntTbl td {
	display: block;
}

.flrBnqCntTbl th {
}

.flrBnqCntTblTtl {
	text-align: center;
	font-weight: 600;
	font-size: 1.2em;
	line-height: 1.3;
	padding: 3px;
}

.flrBnqCntTbl td {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
	padding: 5px;
}

/*
.flrBnqCntTbl td br {
	display: none;
}
*/

/* flrDtlAra */
#flrDtlAra .styGryCtn {
	margin: 0 0 30px;
}

.flrDtlWrp {
	max-width: 600px;
	margin: 0 auto;
}

.flrDtlBox {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.flrDtlCntBox {
	text-align: center;
	padding: 15px;
}

.flrDtlNme {
	font-weight: 400;
	font-size: 2em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.flrDtlNme .minTxt {
	font-size: 0.6em;
	margin: 0 15px 0 0;
}

.flrDtlTyp {
	display: inline-block;
	font-weight: 400;
	font-size: 1.2em;
	line-height: 1.3;
	margin: 0 0 15px;
	padding: 3px 5px;
	background: #dedab5;
}

.flrDtlPlc {
	max-width: 200px;
	margin: 0 auto;
}

.flrDtlImgBox {
	height: 250px;
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.flrDtlImg {
	height: 250px;
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* flrInfAra */
#flrInfAra {
	padding: 0 15px;
}

.flrInfWrp {
	max-width: 600px;
	margin: 0 auto;
}
.flrInfMapBox {
	max-width: 370px;
	margin: 0 auto 30px;
	padding: 15px;
	background: #f6f6f6;
}

.flrInfTblBox {
	max-width: 900px;
	margin: 0 auto 60px;
}

.flrInfStgBox li {
	max-width: 200px;
	margin: 0 auto 20px;
}

.flrInfStgImg {
	margin: 0 0 10px;
	border: solid 3px #e7e7e7;
}

.flrInfStgTtl {
	text-align: center;
	font-weight: 600;
	font-size: 1.3em;
	line-height: 1.3;
}

/*======================================================
  RESTAURANT
======================================================*/

.rstMn {
	background: url(../images/restaurant/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

/* rstLstTxtAra */
#rstLstTxtAra {
	padding: 50px 15px 20px;
}

.rstLstTxt {
	text-align: center;
	font-weight: 500;
	font-size: 1.8em;
	line-height: 1.3;
}

/* rstLstAra */
#rstLstAra {
	padding: 40px 15px;
	background: #f6f6f6;
	border-top: solid 1px #e4e4e4;
	border-bottom: solid 1px #e4e4e4;
}

.rstLstWrp {
	max-width: 600px;
	margin: 0 auto;
}

.rstLst li {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.rstLst li:active {
	opacity: 0.50;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.50;
	-khtml-opacity: 0.50;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.rstLst li:not(:last-child) {
	margin: 0 0 30px;
}

.rstLstBox {
	text-align: center;
}

.rstLstImg {
	min-height: 250px;
	background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.rstLstCntBox {
	padding: 15px;
}

.rstLstLg {
	max-width: 180px;
	margin: 0 auto 10px;
}

.rstLstNme {
	font-weight: 600;
	font-size: 1.3em;
	line-height: 1.3;
	margin: 0 0 20px;
}

.rstLstNme2 {
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1.3;
	margin: 0 0 20px;
}

.rstLstCth {
	font-weight: 400;
	font-size: 1.4em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.rstLstTbl {
	text-align: left;
	max-width: 300px;
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1.3;
	margin: 0 auto 15px;
}

.rstLstTbl th {
	width: 60px;
	padding: 5px;
}

.rstLstTbl td {
	padding: 5px;
}

.rstLstAtnTxt {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.1em;
	line-height: 1.5;
	color: #ff0000;
}

.rstLstImg2 {
	max-width: 320px;
	margin-top: 15px;
	margin-bottom: 15px;
}

.rstLstImg3 {
	margin: 20px 20px 0px 20px;
}

/* rstDtlAra */
.brpMn {
	background: url(../images/restaurant/bonrepas/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

.espMn {
	background: url(../images/restaurant/esperanto/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

.hnmMn {
	background: url(../images/restaurant/hanamura/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

/* rstItrAra */
#rstItrAra {
	padding: 50px 15px;
}

.rstItrBrpBox {
	background: none;
}

.rstItrVipBox {
	background: none;
}

.rstItrCntBox {
	text-align: center;
	margin: 15px 0 0;
	padding: 20px 15px;
	background: #fff;
	border: solid 1px #c5c5c5;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.rstItrLg {
	max-width: 180px;
    margin: 0 auto 10px;
}

.rstItrNme {
	font-weight: 600;
	font-size: 1.3em;
	line-height: 1.3;
	margin: 0 0 20px;
}

.rstItrCth {
	font-weight: 400;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 0 0 20px;
}

.rstItrTxt {
	font-weight: 300;
	font-size: 1.3em;
	line-height: 1.3;
	margin: 0 0 30px;
}

.rstItrTbl {
	text-align: left;
	max-width: 300px;
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1.3;
	margin: 0 auto 15px;
}

.rstItrTbl th {
	width: 70px;
	padding: 5px;
}

.rstItrTbl td {
	padding: 5px;
}

.rstItrAtnTxt {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.1em;
	line-height: 1.5;
	color: #ff0000;
}

.rstItrBnr {
	max-width: 500px;
	margin: 30px auto 50px;
}

/* rstMnuAra */
#rstMnuAra .styGryCtn {
	margin: 0 0 50px;
	padding: 40px 0;
}

.rstMnuWrp {
	max-width: 600px;
	margin: 0 auto;
	padding: 0 15px;
}

.rstMnuLst {
	margin: 0 0 50px;
}

.rstMnuLst li {
	background: #fff;
	box-shadow: 0 0 15px rgba(0,0,0,0.05);
}

.rstMnuLst li:not(:last-child) {
	margin: 0 0 30px;
}

.rstMnuLstImg {
	min-height: 250px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.hnm .rstMnuLstImg {
	min-height: auto;
}

.rstMnuLstCntBox {
	padding: 20px 15px;
}

.rstMnuLstTtl {
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.rstMnuLstPrc {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.rstMnuLstTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
	margin-top: 10px;
}

.lncLst li {
	border-top: solid 5px #dedab5;
}

.dinLst li {
	border-top: solid 5px #000812;
}

.drkLst li {
	border-top: solid 5px #c5c5c5;
}

.dinLst li .rstMnuLstImg,
.drkLst li .rstMnuLstImg {
	order: 2;
}

.dinLst li .rstMnuLstCntBox,
.drkLst li .rstMnuLstCntBox {
	order: 1;
}

.alcLst li {
	border-top: solid 5px #7cb57d;
}

.rstMnuOtrBox {
	border-top: solid 5px #c5c5c5;
	margin: 0 0 50px;
	padding: 20px 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.rstMnuOtrTtl {
	font-weight: 600;
	font-size: 1.4em;
	line-height: 1.3;
	margin: 0 0 10px;
}

.rstMnuOtrPrc {
	font-weight: 600;
	font-size: 1.2em;
	line-height: 1.6;
	margin: 0 0 10px;
}

.rstMnuOtrTxt {
	font-weight: 300;
	font-size: 1.1em;
	line-height: 2;
	margin: 0 0 10px;
}

.rstCmtBox {
	margin: -20px 0 0;
	padding: 20px 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.rstCntBtnBox {
	margin: -20px 0 50px;
}

.rstBtnLst {
	text-align: center;
}

.rstBtnLst li:not(:last-child) {
	margin: 0 0 15px;
}

.rstBtn img {
	max-width: 100px;
}

.rstBtn a {
	display: block;
	padding: 10px 15px;
	border: solid 1px #000812;
	background: url(../images/restaurant/icn_arrow.png) bottom right no-repeat;
	background-size:  13px 13px;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.rstBtn a:active {
	background: url(../images/restaurant/icn_arrow.png) bottom right no-repeat #dedab5;
	background-size:  13px 13px;
}

/* rstTpcAra */
#rstTpcAra {
	padding: 50px 0 0;
}

#rstTpcAra .styGryCtn {
	padding: 20px 0;
}

.sldPlnLst {
	position: relative;
}

.sldPlnLst .prev-arrow {
	left: 0;
}

.sldPlnLst .next-arrow {
	right: 0;
}

.sldPlnLst li {
	margin: 0 5px;
	overflow: hidden;
	background: #000812;
}

.sldPlnInr {
	min-height: 180px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	display: flex;
	align-items: flex-end;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.sldPlnInr:active {
	opacity: 0.85;
	filter: alpha(opacity=85);
	-ms-filter: "alpha(opacity=85)";
	-moz-opacity: 0.85;
	-khtml-opacity: 0.85;
	transform:scale(1.05,1.05);
}

.sldPlnLst a {
	display: block;
}

.sldPlnTtl {
	width: calc(100% - 10px);
	font-weight: 600;
	font-size: 1.1em;
	line-height: 1.5;
	color: #fff;
	text-shadow: 0 0 3px rgba(0,0,0,0.5);
	padding: 5px;
	background: rgb(0,0,0);
	background: linear-gradient(0deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
}

.hanamuratext {
	text-align: center;
	font-weight: 400;
	font-size: 1.6em;
	line-height: 1.5;
	margin: 30px 0 20px 0;
}

/*======================================================
  ACCESS
======================================================*/

.acsMn {
	background: url(../images/access/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

#acsMapAra {
	padding: 50px 15px;
}

.acsMapWrp {
	max-width: 600px;
	margin: 0 auto;
}

.acsMapCntBox {
	text-align: center;
	margin: 0 0 30px;
}

.acsMapTtl {
	font-weight: 500;
	font-size: 1.8em;
	line-height: 1.3;
	white-space: nowrap;
	margin: 0 0 15px;
}

.acsMapAdd {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.3;
	margin: 0 0 15px;
}

.acsMapCntBox .cctTelLst {
	text-align: center;
	display: block;
}

.acsMapCntBox .cctTelLst li {
	margin: 0 0 5px;
}

.acsMapBox {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}

.acsMapBox iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

/* acsTspAra */
#acsTspAra {
	padding: 50px 15px;
	background: #f6f6f6;
	border-top: solid 1px #e4e4e4;
}

.acsTspWrp {
	max-width: 600px;
	margin: 0 auto;
}

.acsWhtTpBox {
	margin: 0 0 30px;
	padding: 30px 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.acsTspLst li {
	
}

.acsTspLst li:first-child {
	border-bottom: solid 1px #e4e4e4;
}

.acsTspLst li:last-child {
	padding: 20px 0 0;
}

.acsTspLstTtlBox {
	margin: 0 0 15px;
}

.acsTspLstTtl {
	text-align: center;
	font-weight: 600;
	font-size: 1.2em;
	line-height: 1;
	white-space: nowrap;
	padding: 10px;
}

.gldTtl {
	background: #dedab5;
}

.grnTtl {
	color: #fff;
	background: #7cb57d;
}

.acsTspLstTbl tr,
.acsTspLstTbl th,
.acsTspLstTbl td {
	display: block;
}

.acsTspLstTbl th {
	width: 100px;
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1;
	padding: 0 0 10px;
}

.acsTspLstTbl td {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
	padding: 0 0 20px;
}

.acsTspLstTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
}

.acsWhtBtBox {
	padding: 20px 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.acsCarCntBox {
	margin: 0 0 30px;
}

.acsCarLst li {
	text-align: center;
	font-weight: 600;
	font-size: 1.2em;
	line-height: 1.3;
}

.acsCarLst li:not(:last-child) {
	margin: 0 0 10px;
}

.acsCarTtl {
	padding: 10px;
}

.acsCarTxt {
	padding: 10px;
	background: #efefef;
}

.acsCarPrkBox {
	margin: 0 0 30px;
}

.acsCarPrkLftBox {
	margin: 0 0 10px;
}

.acsCarSvcBox .cntTbl {
	table-layout: fixed;
}

.acsCarSvcBox .cntTbl td {
	padding: 5px;
}

/*======================================================
 MEMBER
======================================================*/

.mbrMn {
	background: url(../images/member/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

/* mbrLinAra */
#mbrLinAra {
	padding: 50px 15px 0;
}

.mbrLinWrp {
	max-width: 600px;
	margin: 0 auto;
}

.mbrLinImg {
	max-width: 215px;
	margin: 0 auto;
}

.mbrLinTtlBox {
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: -10px 0 0;
	background: #2dbe19;
}

.mbrTtl {
	text-align: center;
	font-weight: 500;
	font-size: 1.6em;
	line-height: 1.4;
	color: #fff;
}

.mbrTtl img {
	max-width: 130px;
	margin: 5px auto 0;
}

.mbrCntBox {
	padding: 30px 15px;
	background: #f6f6f6;
}

.mbrCntCth {
	text-align: center;
	font-weight: 300;
	font-size: 1.6em;
	line-height: 1.6;
	margin-bottom: 8px;
}

.mbrCntCth2 {
	text-align: center;
	font-weight: 300;
	font-size: 1.3em;
	line-height: 1.6;
}

.mbrCntBox .capTxt {
	text-align: center;
	margin: 10px 0 20px;
}

.mbrQrImg {
	text-align: center;
	max-width: 200px;
	margin: 0 auto 30px;
	padding: 10px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.mbrQrImg img {
	max-width: 100px;
}

.mbrDotLstBox {
	width: calc(100% - 30px);
	display: inline-block;
	margin: 0 auto 30px;
	padding: 20px 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.grnDot .cntDotLstTxt:before {
	color: #2dbe19;
}

.prpDot .cntDotLstTxt:before {
	color: #CF2E92;
}

.bluDot .cntDotLstTxt:before {
	color: #0597b7;
}

/* mbrInsAra */
#mbrInsAra {
	padding: 50px 15px 0;
}

.mbrInsWrp {
	max-width: 600px;
	margin: 0 auto;
}

.mbrInsImg {
	max-width: 215px;
	margin: 0 auto;
}

.mbrInsTtlBox {
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: -10px 0 0;
	background: #CF2E92;
}

.mbrQrImg2 {
	text-align: center;
	max-width: 200px;
	margin: 0 auto 30px;
	padding: 10px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.mbrQrImg2 img {
	max-width: 125px;
}



/* mbrEmmAra */
#mbrEmmAra {
	padding: 50px 15px 0;
}

.mbrEmmWrp {
	max-width: 600px;
	margin: 0 auto;
}

.mbrEmmTtlBox {
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #0597b7;
}

.mbrEmmMalBox {
	margin: 20px 0;
}

.mbrEmmMalBoxAra {
	overflow: hidden;
	padding-bottom: 40px;
}

.s2_error {
	clear:both;
}

.mbrEmmMalBoxAra input[type="email"],
.mbrEmmMalBox input {
	width: calc(100% - 30px);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.4em;
	line-height: 1.3;
	color: #787878;
	padding: 15px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
	border: none;
}
.mbrEmmMalBoxAra input[type="email"] {
	margin-bottom: 20px;
}

.mbrEmmMalBox input::placeholder {
	color: #9d9d9d!important;
}

.mbrEmmMalBox input::-ms-input-placeholder {
	color: #9d9d9d!important;
}

.mbrEmmMalBox input:-ms-input-placeholder {
	color: #9d9d9d!important;
}

.mbrEmmBtnLst {
	margin: 0 0 30px;
}

.mbrEmmBtnLst li {
	margin: 0 0 10px;
}

.mbrEmmMalBoxAra .boxL input[type="submit"],
.mbrEmmRgtBtn input {
	width: 100%;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 1.4m;
	line-height: 1;
	display: inline-block!important;
	padding: 15px;
	background: #dedab5;
	border: solid 1px #dedab5;
	cursor: pointer;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.mbrEmmRgtBtn input:active {
	background: #f6f6f6;
	border: solid 1px #000812;
}

.mbrEmmMalBoxAra .boxR input[type="submit"],
.mbrEmmCclBtn input {
	width: 100%;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 1.4em;
	line-height: 1;
	color: #fff;
	display: inline-block!important;
	padding: 15px;
	background: #51565d;
	border: solid 1px #dedab5;
	cursor: pointer;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.boxL {
	width: calc(50% - 10px);
	float: left;
	text-align: right;
}

.boxR {
	width: calc(50% - 10px);
	float: right;
	text-align: left;
}

.mbrEmmCclBtn input:hover {
	color: #000812;
	background: #f6f6f6;
	border: solid 1px #000812;
}

.mbrEmmCclBtn input:active {
	color: #000812;
	background: #f6f6f6;
	border: solid 1px #000812;
}

.mbrCntTxt {
	font-weight: 400;
	font-size: 1.2em;
	line-height: 2;
}

/*======================================================
  PRIVACY POLICY
======================================================*/

.pvcMn {
	background: url(../images/privacy/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

#pvcAra {
	padding: 50px 15px;
}

.pvcWrp {
	max-width: 600px;
	margin: 0 auto;
}

.pvcLst {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
	margin: 0 0 30px;
}

.pvcLst dt {
	margin: 0 0 5px;
}

.pvcLst dd:not(:last-child) {
	margin: 0 0 20px;
}

.pvcTxt {
	text-align: right;
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
}

/*======================================================
  RECRUIT
======================================================*/

.rctMn {
	background: url(../images/recruit/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

/* rctTpcAra */
#rctTpcAra {
	padding: 50px 15px 0;
}

.rctTpcWrp {
	max-width: 600px;
	margin: 0 auto;
}

#rctTpcAra .bdrBox {
	padding: 0;
}

.rctTpcLst li {
	display: flex;
	padding: 15px 0;
}

.rctTpcLst li:not(:last-child){
	border-bottom: solid 1px #b2b2b2;
}

.rctTpcDta {
	width: 60px;
	font-weight: 400;
	font-size: 1em;
	line-height: 1;
	white-space: nowrap;
	margin: 5px 20px 0 0;
}

.rctTpcTtl {
	width: calc(100% - 80px);
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1.6;
}

/* rctInfAra */
#rctInfAra {
	padding: 50px 15px 0;
}

.rctInfWrp {
	max-width: 600px;
	margin: 0 auto;
}

.rctCntBtnBox {
	margin: 15px 0 30px;
}

#rctInfAra .cntTbl td {
	text-align: left;
}

/* rctAppAra */
#rctAppAra {
	padding: 20px 15px 0;
}

.rctAppWrp {
	max-width: 600px;
	margin: 0 auto;
}

/*======================================================
  RESERVE
======================================================*/

.rsvMn {
	background: url(../images/reserve/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

#rsvAra {
	padding: 50px 15px 0;
}

.rsvWrp {
	max-width: 600px;
	margin: 0 auto;
}

.rsvBox {
	color: #fff;
	margin: 0 0 30px;
	position: relative;
	background: #000812;
	border-top: solid 10px #dbb26c;
	box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.rsvBoxIcn {
	max-width: 80px;
	position: absolute;
	top: -17px;
	left: -7px;
}

.rsvCntBox {
	text-align: center;
	padding: 20px 15px;
}

.rsvTtl {
	font-weight: 600;
	font-size: 2em;
	line-height: 1;
	color: #dab16c;
	margin: 0 0 20px;
	padding: 30px 0 0;
	display: inline-block;
	background: url(../images/common/icn_bestrate.png) top no-repeat;
	background-size: 40px 23px;
}

.rsvTxt {
	font-weight: 300;
	font-size: 1.4em;
	line-height: 1.3;
	margin: 0 0 20px;
}

.rsvSchNav {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 0 20px;
}

.rsvSchNav li:first-child {
	width: 100%;
}

.rsvSchNav .manSchTypNav {
	justify-content: center;
	align-items: center;
    font-size: 1.4em;
	margin: 0 0 20px;
}

.rsvSchNav .manSchTypNav li:first-child {
	width: auto;
}

.rsvSchNav .manSchTbl th {
	 font-size: 1.4em;
	  padding: 5px 15px;
}

.rsvSchNav .manSchTbl td {
	 font-size: 1.3em;
}

.rsvSchBtn input {
	text-align: center;
	max-width: 300px;
	width: 100%;
	display: block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 1.4em;
	line-height: 1;
	color: #fff!important;
	margin: 0 auto;
	padding: 15px;
	background: rgba(148,148,148,0.3);
	border: none;
	cursor: pointer;
}

.rsvSchBtn input:active {
	color: #000812!important;
	background: #dedab5;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}

.rsvSubNavBox {
	padding: 20px 15px;
	border-top: solid 1px rgba(148,148,148,0.3);
}

.rsvSubNav li:not(:last-child) {
	margin: 0 0 15px;
}

.rsvSubNav li a {
	font-weight: 500;
	font-size: 1.2em;
	line-height: 1;
	padding: 0 15px 0 0;
	background: url(../images/common/icn_arrow_wt.png) right no-repeat;
	background-size: 8px 6px;
}

#rsvAra .cntCtrTxt {
	text-align: left;
}

/*======================================================
  FOOD ALLERGY SUPPORT
======================================================*/

.fasMn {
	background: url(../images/allergy/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

#fasAra {
	padding: 50px 15px 0;
}

.fasWrp {
	max-width: 600px;
	margin: 0 auto;
}

.nbrLst {
	margin: 0 0 30px;
	border-top: solid 1px #e4e4e4;
}

.nbrLst li {
	align-items: center;
	padding: 15px 0;
	border-bottom: solid 1px #e4e4e4;
	width: 100%;
	display: table;
}

.nbrLstNbr {
	font-family: 'Cinzel', serif;
	font-weight: 600;
	font-size: 3em;
	font-style: italic;
	line-height: 1;
	margin: 0 15px 0 0;
	color: #e4e4e4;
	display: table-cell;
	width: 50px;
	vertical-align: middle;
}

.nbrLstTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
	display: table-cell;
	vertical-align: middle;
	width: calc(100% - 50px);
}

.fasCntTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 1.8;
	margin: 0 0 30px;
}

.fasSgnTxt {
	text-align: right;
	font-weight: 500;
	font-size: 1.3em;
	line-height: 1.2;
}

/*======================================================
  MEASURES
======================================================*/

.msrMn {
	background: url(../images/measures/bg_main.jpg) top no-repeat;
	background-size:  cover;
}

/* msrImgAra */
#msrImgAra {
	padding: 50px 15px 0;
}

.msrImgWrp {
	max-width: 600px;
	margin: 0 auto;
}

.msrImgLst {
	display: flex;
	flex-wrap: wrap;
}

.msrImgLst li {
	text-align: center;
	width: calc(50% - 17px);
	padding: 5px;
	background: #fff;
	border: solid 1px #91c591;
	border-radius: 6px;
}

.msrImgLst li:nth-child(odd) {
	margin: 0 5px 20px 0;
}

.msrImgLst li:nth-child(even) {
	margin: 0 0 20px 5px;
}

.msrImgTxt {
	font-weight: 600;
	font-size: 1.1em;
	line-height: 1.3;
	color: #fff;
	margin: 0 0 10px;
	padding: 5px;
	background: #91c591;
	letter-spacing: 1px;
}

.msrImgEnTxt {
	font-weight: 300;
	font-size: 1em;
	line-height: 1;
	margin: 0 0 10px;
}

.msrImgKrTxt {
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1;
	margin: 0 0 10px;
}

.msrImg {
	max-width: 180px;
	margin: 0 auto;
}

/* msrInfAra */
#msrInfAra {
	padding: 30px 15px 0;
}

#msrInfAra .acdLst {
	margin: 0 0 20px;
}

#msrInfAra .acdLstTtl {
	background: #91c591;
	color: #fff;
}

#msrInfAra .acdLst dd {
	background: #fff;
}

.msrInfWrp {
	max-width: 600px;
	margin: 0 auto;
}

.nbrLstSubBox {
	margin: 10px 0 0;
	padding: 10px 10px 5px;
	background: #f6f6f6;
}

.nbrLstSubTtl {
	font-weight: 500;
	font-size: 1em;
	line-height: 1.3;
	margin: 0 0 10px;
}

.nbrLstSubBox .minDotLst {
	font-size: 0.8em;
}

.nbrLstSubBox .minDotLst li {
	margin: 0 0 5px;
	padding: 0 0 0 0.05em;
	text-indent: -0.05em;
	border: 0;
}

/*======================================================
  MARCHANT
======================================================*/

/* mctAra */
#mctAra {
	padding: 50px 15px 0;
}

.mctWrp {
	max-width: 600px;
	margin: 0 auto;
}

#mctAra .pvcLst dt {
	color: #7cb57d;
}

.pvcLst .capTxt,
.pvcLst .capLst {
	font-size: 10px!important;
}

/* gvsPvcAra */
#gvsPvcAra {
	padding: 50px 15px 0;
}

.bdrBckBtnBox {
	margin: 30px auto 0;
}


.page404 {
	margin: 30px 20px;
	padding: 50px 0;
	border: 1px solid #ccc;
	text-align: center;
}

.p01 {
	font-size: 1.4em;
	margin-bottom: 20px;
	font-weight: bold;
}

.p02 {
	font-size: 1.2em;
	
}

.paper {
	background: #303031; 
	text-align: center;
}

.paper a {
	color: #fff;
	display: block;
	font-size: 1.4em;
	padding: 15px;
	border-top: 1px solid #000;
}

.paper a:hover {
	opacity: 0.6;
}

.rstDtlImg {
	height: 250px;
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

/*---------------------------------------------------
2023.01.06 STAY 多言語化
---------------------------------------------------*/

.styLngNav {
	margin: 25px auto 0;
	padding: 0 15px;
	width: calc(100% - 30px):
}

.styLngNav .gvsBtnNav {
	width: 100%;
	display: flex;
}

.styLngNav li {
	width: 33%;
	margin: 0!important;
}

.styLngNav li:nth-child(2) {
	margin: 0 0.5%!important;
}

.styLngNav .gvsBtnNav li a {
	background: #999;
	padding: 15px 0!important;
	font-size: 11px!important;
	letter-spacing: 0px;
}

.styLngNav .current a {
	background: #dedab5!important;
	color: #000!important;
}

.styLngNav .gvsBtnNav li a span {
  	padding: 0 11px 0 0!important;
}

.gvsBtnNav li.current a span {
  	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
    background-size: auto;
	background-size: 9px 7px;
}

.styLngNav .gvsBtnNav li a:hover {
	background: #dedab5!important;
	color: #000!important;
}

.styLngNav .gvsBtnNav li a:hover span{
  	background: url(../images/common/icn_arrow_bk.png) right center no-repeat;
    background-size: auto;
	background-size: 9px 7px;
}

.en {
	word-break: break-word;
}

.ch .styOtrSvsLst,
.en .styOtrSvsLst {
	width: 80%;
	display: block;
	margin: 0 auto 10px;
}

.ch .styOtrSvsLst li,
.en .styOtrSvsLst li {
	width: calc(100% - 40px);
	padding: 20px;
	float: none;
	border-radius: 5px;
	height: auto;
	margin: 0 0 10px;
	display: block;
	align-items: auto;
	justify-content: auto;
}

.ch .styOtrSvsTxt,
.en .styOtrSvsTxt {
	white-space: normal;
}

.ch .cntBtn,
.en .cntBtn {
	max-width: 300px;
}

/*---------------------------------------------------
2025.06.09 STAY
---------------------------------------------------*/

.styInfWrp:nth-child(1) {
	display: block;
	margin: 0 auto 30px;
	max-width: 100%;
}
.styInfMsgLst {
	margin: 0 auto;
}
.styInfTimTtl {
	text-align: center;
}
.styInfTimTxt {
	text-align: center;
	padding: 20px 15px;
}
.styInfTimLst {
	flex-wrap: wrap;
	margin: 0;
}

.styInfTimLst li {
	max-width: 100%;
	margin: 0 0 10px;
}

.styInfTimLst li:nth-child(1) {
	width: calc(50% - 5px);
	margin: 0 5px 10px 0;
}

.styInfTimLst li:nth-child(2) {
	width: calc(50% - 5px);
	margin: 0 0 10px 5px;
}
.styInfTimLst li:nth-child(3){
	width: 100%;
}

.styInfTimLst li:last-child {
	margin: 0;
}

.styInfTimLst li:nth-child(3) .styInfTimTxt {
	font-size: 14px !important;
}
.styInfMsg {
	width: auto;
	max-width: 100%;
	margin: 0 auto;
	display: inline-block;
	background: #fff;
	text-align: left;
}

.styInfWrpLft {
	width: 100%;
	margin-bottom: 10px;
}
.styInfWrpRht {
	width: 100%;
	background: #fff;
}
.styInfPkgTtl {
	font-weight: 600;
	font-size: 1.6em;
	line-height: 1.3;
	padding: 7px;
	background: #dedab5;
	text-align: center;
}
.styInfPkgBox {
	padding: 30px;
}
.styInfPkgBoxTxt {
	font-weight: 300;
	font-size: 1.2em;
	line-height: 2;
	margin: 0 0 20px;
}
.styInfPkgBoxPrc {
	font-weight: 300;
	font-size: 1.8em;
	line-height: 1.6;
	letter-spacing: 0.15em;
	font-weight: 300;
	color: #000812;
	word-wrap: break-word;
	margin: 0 0 30px;
}
.styInfPkgBoxLst {
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1.5;
	color: #787878;
}
.styInfMsgImg {
	width: 700px;
	max-width: 100%;
	margin: 0 auto!important;
	max-width: auto;
}