@charset "UTF-8";

/* clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}

/* 余白/フロート */
.clear{clear:both;}
.float-left{ float:left;}
.float-right{ float:right; }
.align-c{ text-align:center; }
.align-r{ text-align:right; }
.align-l{ text-align:left; }
.align-t{ vertical-align:top; }

.mgB0{   margin-bottom:0px;  }
.mgB5{   margin-bottom:5px;  }
.mgB10{  margin-bottom:10px; }
.mgB15{  margin-bottom:15px; }
.mgB20{  margin-bottom:20px; }
.mgB30{  margin-bottom:30px; }
.mgB40{  margin-bottom:40px; }
.mgB50{  margin-bottom:50px; }
.mgB60{  margin-bottom:60px; }

.mgT0{   margin-top:0px;  }
.mgT5{   margin-top:5px;  }
.mgT10{  margin-top:10px; }
.mgT15{  margin-top:15px; }
.mgT20{  margin-top:20px; }
.mgT30{  margin-top:30px; }
.mgT40{  margin-top:40px; }
.mgT50{  margin-top:50px; }
.mgT60{  margin-top:60px; }

.mgR0{   margin-right:0px;  }
.mgR5{   margin-right:5px;  }
.mgR10{  margin-right:10px; }
.mgR15{  margin-right:15px; }
.mgR20{  margin-right:20px; }
.mgR30{  margin-right:30px; }

.mgL0{   margin-left:0px;  }
.mgL5{   margin-left:5px;  }
.mgL10{  margin-left:10px; }
.mgL15{  margin-left:15px; }
.mgL20{  margin-left:20px; }
.mgL30{  margin-left:30px; }

.pdg10 {padding:10px;}
.pdg20 {padding:20px;}
.pdg30 {padding:30px;}

/* hover action */
.hover {
	text-decoration: none;
	opacity:1;
	transition: all 0.3s ease 0s;
}
.hover:hover {
	opacity:0.6;
}

/* 各デバイスでの表示切り替え */
.sp, .pc {display: none;}/*only SP&TAB*/
.pc {display: block;}/*only PC*/
@media screen and (max-width: 1080px) {
.sp, .tab {display: none;}
.pc {display: block;}
}
@media screen and (max-width: 768px) {
.sp, .pc {display: none;}
.tab {display: block;}
}
@media screen and (max-width: 480px) {
.pc, .tab {display: none;}
.sp {display: block;}
}

/*============================================================================================
↓共通事項====================================================================================
============================================================================================*/
/* TapArea */
* {
  -webkit-tap-highlight-color: rgba(102,102,102,0.3);
  -webkit-touch-callout: none;
  /*-webkit-user-select: none;*/
}
input, textarea {
	/*-webkit-user-select : auto;*/
}

body {
	width: 100%;
	font-family: 'Lora','游明朝', 'Yu Mincho', '游明朝体', serif;
	font-weight: normal;
	font-size : 62.5%;
	-webkit-font-feature-settings: 'pkna';
	font-feature-settings: 'palt';
	letter-spacing:0.25em;
	writing-mode: horizontal-tb;
	-webkit-text-size-adjust:100%;/*←for iOS&Safari TxtSize*/	
}

/* リンクテキスト */
a:link,a:visited {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}

/*フォントファミリー*/
.serif {font-family: 'Lora','游明朝', 'Yu Mincho', '游明朝体', serif;}
.sansserif {font-family: 'Open Sans','游ゴシック体','Yu Gothic',YuGothic, sans-serif;}

.bold {font-weight:bold; }
.underline {text-decoration:underline;}
.strong {color:rgba(184,38,8,1); text-decoration:underline;}

/* レスポンシブ対応＞（上下余白・サイド余白） */
.innerWrap { /*可変幅1080*/
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	overflow:hidden;
}
.innerWrapNarrow { /*可変幅740*/
	max-width: 740px;
	margin-left: auto;
	margin-right: auto;
	overflow:hidden;
}
@media screen and (max-width: 1080px) {
.innerWrap,
.innerWrapNarrow {
	padding-left: 20px;
	padding-right: 20px;
}
}

/*============================================================================================
↓背景カラー／パターン========================================================================
============================================================================================*/
.bg-wh {background-color:rgba(255,255,255,1); padding-bottom:30px;}
.bg-bk {background-color:rgba(0,0,0,1);}
.bg-jppaper {
	background-color:rgba(237,236,232,1);
	background-image:url(../img/bg-jppaper.jpg);
	background-position:center top;
	background-repeat:repeat;
}

/*============================================================================================
↓書字方向（本文縦書き）======================================================================
============================================================================================*/
.verticalModeWrap {
	position:relative;
	width:100%;
	height:;/*高さはそれぞれ指定*/
}
.verticalModeWrap .inner{
  position:absolute;
  top:50%;
  left:50%;
  display:inline;
  transform:translate(-50%, -50%);
}
.verticalMode {
	text-align:left;
	white-space:nowrap;
	line-height: 100%;
	letter-spacing: 0.25em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	font-feature-settings: 'pkna'; 
}
@media screen and (max-width: 768px) {/*モバイル時は横書きにする*/
.verticalModeWrap {
	height:inherit !important;
}
.verticalModeWrap .inner{
	position:inherit;
	top:inherit;
	left:inherit;
	display:inherit;
	transform:none;
}
.verticalMode {
	white-space:normal;
	line-height: 1.6em;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
	font-feature-settings: 'palt';
}
}

/*============================================================================================
↓＜レイアウト＞==============================================================================
============================================================================================*/
#wrapper {
    width: 100%;
	position: absolute;
    top: 0;
	visibility:hidden;
}
#container {
	position:relative;
	width:100%;
	background-color:rgba(255,255,255,1);
	transition:all 0.3s ease 0s;
}
.sectionWrap {
	padding:30px 0;
	box-sizing:border-box;
}

/*============================================================================================
↓header =====================================================================================
============================================================================================*/
#header{
	width:100%;
	height:74px;
	background:rgba(0,0,0,1);
	width:100%;
	position:fixed;
	top:0;
	left:0;
	z-index:99;
	transition:all 0.3s ease 0s;
}
#header h1 {
	display:table-cell;
	vertical-align:middle;
}
#header h1 a:link,
#header h1 a:visited {
	width: 200px;
	height: 40px;
	margin: 17px 20px;
	background: rgba(0,0,0,1) url(../img/logo-header.png) no-repeat center center;
	background-size:100%;
	display: block;
	text-indent: -9999px;
	white-space: nowrap;
	opacity:0.7;
	transition: all 0.3s ease 0s;
}
#header h1 a:hover {
	opacity:1;
}

@media screen and (max-width: 640px) {
#header h1 a:link,
#header h1 a:visited {
	width: 150px;
	height: 30px;
	margin: 22px 0 22px 20px;
}
}


/*============================================================================================
↓言語切り替え select ====================================================================
============================================================================================*/
select#choice-lang {
	/* リセット */
	margin: 0;
	padding: 0;
	background: none;
	border-radius: 0 !important;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none !important;
	/* リセット */
	background-color: rgba(255,255,255,0.2);
	color: #aaa;
	padding: 0 30px 0 10px;
	line-height: 26px;
	position: fixed;
	font-size: 1.2em;
	top: 25px;
	right: 230px;
	letter-spacing: 0.05em;
	background-image: url(../img/ico-lower-wh.png);
    background-position: center right -7px;
    background-repeat: no-repeat;
    background-size: 40px 34px;
    font-family: 'Lora','游明朝', 'Yu Mincho', '游明朝体', serif;
    z-index: 99;
}

select::-ms-expand {
    display: none;
}

@media screen and (max-width: 640px) {
select#choice-lang {
	background-color: rgba(255,255,255,0.2);
	font-size: 1.1em;
	right: 80px;
}
}

@media screen and (max-width: 340px) {
select#choice-lang select {
	right: 60px;
}
}

/*============================================================================================
↓予約メニュー　開・閉====================================================================
============================================================================================*/
#btnReserve {
	position: fixed;
    top: 15px;
    right: 80px;
    z-index: 999;
    width: 130px;
}
#btnReserve .openTrigger {
	font-size: 1.2em;
	color: #fff;
	width: 100%;
    height: 44px;
    padding: 10px;
    border: solid 1px rgba(255,255,255,0.3);
	box-sizing:border-box;
	display: flex;
	align-items: center;
	opacity: 0.7;
	background-image: url(../img/ico-lower-wh.png);
    background-position: center right -7px;
    background-repeat: no-repeat;
    background-size: 40px 34px;
    opacity: .7;
    transition: all 0.3s ease 0s;
    cursor: pointer;
}
#btnReserve .openTrigger:hover {
	opacity: 1;
}
#btnReserve .shopList {
	padding: 0;
	margin: 0;
	list-style-type: none;
	display: none;
}
#btnReserve .shopList a {
	color: #000;
	font-size: 1.2em;
	text-align: center;
	text-decoration: none;
	padding: 15px 0;
	margin: 0 0 1px;
	display: block;
	background: rgba(255,255,255,1);
	transition: all 0.3s ease 0s;
}
#btnReserve .shopList a:hover {
	background: rgba(255,255,255,0.8);
}
#btnReserve .shopList a:last-child {
	margin: 0;
}

@media screen and (max-width: 640px) {
#btnReserve {
	display: none;
}
}


/*============================================================================================
↓グランドメニュー　開・閉====================================================================
============================================================================================*/
#navTrigger {
	position: fixed;
    top: 15px;
    right: 20px;
    z-index: 999;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
	box-sizing:border-box;
	border:solid 1px rgba(255,255,255,0.3);
}

@media screen and (max-width: 768px) {
#navTrigger {
    right: 20px;
}
}

@media screen and (max-width: 340px) {
#navTrigger {
    right: 6px;
}
}

/*============================================================================================
↓グランドメニュー============================================================================
============================================================================================*/
.bg-layer {
	position:fixed;
	width: 100%;
	height:100%;
    top: 0;
	left: 0;
    z-index: 9;
	background-color:rgba(0,0,0,0.8);
}
#grandNaviWrap {
	width: 100%;
	height:100%;
	overflow: hidden;
    position: fixed;
    top: 0px;
	left: 0;
    z-index: 9;
	display:none;
}
#grandNavi {
	position: absolute;
	top: 55%;
	left: 50%;
	z-index: 9;
	transform: translate(-50%, -50%);
}
#grandNavi ul {
	padding:0;
	margin:0 0 0 20px;
	list-style-type: none;
}
#grandNavi ul:last-child {
	margin:0;
}
#grandNavi ul li a:link,
#grandNavi ul li a:visited {
	color:rgba(255,255,255,1);
	font-size:1.6em;
	line-height:1em;
	text-decoration:none;
	position:relative;
	display:block;
	padding:30px 10px;
	transition:all 0.3s ease 0s;
}
#grandNavi ul li a:hover {
	transform:translate(0,4px);
}
#grandNavi ul li a span.ico {
	position:absolute;
	width:50px;
	height:50px;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	background-image:url(../img/ico-lower-wh.png);
	background-position:center -15px;
	background-repeat:no-repeat;
	background-size:50px 50px;
}
#grandNavi ul li a span.hotelName {
	font-size: 70%;
	margin-right: 10px;
    display: block;
	opacity: 0.7;
}
@media screen and (max-width: 768px) {
#grandNavi {
	width:85%;
}
#grandNavi ul {
	margin:0;
}
#grandNavi ul li a:link,
#grandNavi ul li a:visited {
	font-size:1.4em;
	line-height:1.6em;
	padding:3px 30px;
	width: 100%;
}
#grandNavi ul li a:hover {
	transform:translate(4px,0);
}
#grandNavi ul li a span.ico {
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	background-image:url(../img/ico-toright-wh.png);
	background-position:-10px center;
	background-repeat:no-repeat;
	background-size:50px 50px;
}
}

/*グロナビ　オンライン予約部分*/
#grandNavi .navReserve {
	display: none;
}
#grandNavi .navReserve .ttl {
	color:  #fff;
	font-size: 1.4em;
	text-align: center;
	padding: 0 20px;
	display: flex;
	align-items: center;
	justify-content: center;

}
#grandNavi .navReserve .ttl::before {
	content: '';
	width: 15px;
	height: 1px;
	background-color: #fff;
	display: block;
	margin-right: 5px;
}
#grandNavi .navReserve .ttl::after {
	content: '';
	width: 15px;
	height: 1px;
	background-color: #fff;
	display: block;
	margin-left: 5px;
}
#grandNavi .navReserve .shopList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px;
}
#grandNavi .navReserve .shopList a {
	color:  #fff;
	font-size: 1.4em;
	text-align: center;
	text-decoration: none;
	width: calc(50% - 5px);
	border: solid 1px rgba(255,255,255,.3);
	padding: 10px;
	box-sizing: border-box;
}
#grandNavi .navReserve .shopList a:hover {
}
@media screen and (max-width: 640px) {
#grandNavi .navReserve {
	display: block;
}
}

/*============================================================================================
↓ページTOP===================================================================================
============================================================================================*/
#pageTop {
	position:fixed;
	bottom:15px;
	right:30px;
	width:50px;
	height:50px;
	border-radius:50%;
	box-sizing:border-box;
	display:block;
	background-image:url(../img/arr-upper-wh.png);
	background-position:center center;
	background-repeat:no-repeat;
	background-size:50px 50px;
	background-color:rgba(0,0,0,0.7);
	text-indent:-9999px;
	cursor:pointer;
	z-index:9;
}
#pageTop:hover {
	background-color:rgba(0,0,0,1);
}
@media screen and (max-width: 768px) {
#pageTop {
	right:15px;
}
}

/*============================================================================================
↓footer======================================================================================
============================================================================================*/
#footer {
	position:relative;
	width:100%;
	background-color:rgba(0,0,0,1);
	padding:20px;
	box-sizing:border-box;
	color:rgba(255,255,255,1);
	text-align:center;
}
#footer .footerLogo {
	width: 255px;
	height: 40px;
	margin:20px auto;
}
#footer .footerLogo a:link,
#footer .footerLogo a:visited {
	width:100%;
	height:100%;
	display: block;
	background: url(../img/logo-horizontal.png) no-repeat center center;
	background-size:cover;
	text-indent: -9999px;
	white-space: nowrap;
	opacity:0.7;
	transition: all 0.3s ease 0s;
}
#footer .footerLogo a:hover {
	opacity:1;
}

/*店舗リンク*/
#footer .shopListWrap {
	list-style:none;
	padding:0;
}
#footer .shopListWrap li {
	font-size:14px;
	line-height:1.5em;
	letter-spacing:0.1em;
	padding:0 10px;
	display:inline-block;
}

/*SNSリンク*/
#footer .snsListWrap {
	margin:20px auto;
	list-style:none;
	padding:0;
}
#footer .snsListWrap li {
	display:inline-block;
	margin:0 5px;
}
#footer .snsListWrap li a:link,
#footer .snsListWrap li a:visited {
	width:40px;
	height:40px;
	display:block;
	border:solid 1px rgba(255,255,255,0.5);
	box-sizing:border-box;
	border-radius:50%;
	transition: all 0.3s ease 0s;
}
#footer .snsListWrap li a:hover {
	background-color:rgba(255,255,255,0.2);
}
#footer .snsListWrap li img {
	width:100%;
	height:auto;
}
#footer .copyright {
	font-size:10px;
	letter-spacing:0.1em;
	opacity:0.7;
}
@media screen and (max-width: 768px) {
#footer .shopListWrap li,
#footer .shopListWrap li:last-child {
	display:block;
	border-left:none;
	border-right:none;
}
}

/*フッターリンクテキスト*/
#footer a:link,
#footer a:visited {
	color:rgba(255,255,255,1);
	opacity:0.7;
}
#footer a:hover {
	opacity:1;
	text-decoration:none;
}

/*============================================================================================
↓ローディング================================================================================
============================================================================================*/
#loadingWrap {
    width: 100%;
	height: 100vh;
	overflow: hidden;
    position: fixed;
    top: 0;
	left: 0;
    z-index: 99999;
	background-color:rgba(237,236,232,1);
	background-image:url(../img/bg-jppaper.jpg);
	background-position:left top;
	background-repeat:repeat;
}
#loadingWrap .loading {
	width:60px;
	height:60px;
	position: absolute;
	left: 50%;
    top: 50%;
	margin-left:-30px;
	margin-top:-30px;
	opacity:0.8;
	background-image:url(../img/loader.svg);
	background-position:center center;
	background-repeat:no-repeat;
	background-size:contain;
}
#fade{
    width: 100%;
    height: 100%;
    display: none;
    background-color:rgba(237,236,232,1);
	background-image:url(../img/bg-jppaper.jpg);
	background-position:left top;
	background-repeat:repeat;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 9999;
}

/*============================================================================================
↓ファーストビューコンテンツ==================================================================
============================================================================================*/
.fullScreenWrap-inn {
	position:relative;
	width: 100%;
	top:0;
	left:0;
	padding:5%;
	box-sizing:border-box;
}
.fullScreenWrap {
	position:relative;
	width: 100%;
	top:0;
	left:0;
	box-sizing:border-box;
}

/*スクロールマーカー*/
.scrollMarker {
	position:absolute;
	width:22px;
	height:80px;
	bottom:20px;
	left:50%;
	margin-left:-11px;
	overflow:hidden;
	opacity:0.6;
}
.scrollMarker div.txt {
	position:absolute;
	right:0;
	top:0;
}
.scrollMarker div.arr {
	position:absolute;
	left:0;
	bottom:0;
	animation: arrAnimation 2s linear infinite 0s;
}
	  @keyframes arrAnimation { 
		  0% {
			  bottom:10%;
			  animation-timing-function: ease-in;
		  }
		  30% {
			  bottom:0;
			  animation-timing-function: ease-out;
		  }
		  50% {
			  bottom:10%;
		  }
		  100% {
			  bottom:10%;
			  
		  }
	  }


/*============================================================================================
↓下層ページ ファーストビュー背景画像=========================================================
============================================================================================*/
.backImage {
    position:fixed;
    width: 100%;
    top: 0px;
    left: 0px;
    z-index: -1;
	background-color:rgba(0,0,0,1);
	text-align:center;
}
.backImage img {
	width:auto;
	height:100%;
}

/*============================================================================================
↓見出し======================================================================================
============================================================================================*/
/*下層ページ日本語メイン 中央配置*/
.ttleStyle-page1 {
	color:rgba(255,255,255,1);
	font-weight:normal;
	text-align:center;
	transform: scale(0.9,1);
}
.ttleStyle-page1  > .ja {
	font-size:1.4em;
	display:block;
	letter-spacing:0.5em;
	text-indent: 0.5em;
}
.ttleStyle-page1  > .en {
	font-size:0.8em;
	line-height:1.6em;
	display:block;
	letter-spacing:0.5em;
	text-indent: 0.5em;
}

/*下層ページ英語メイン 中央配置*/
.ttleStyle-page2 {
	color:rgba(255,255,255,1);
	font-weight:normal;
	text-align:center;
	transform: scale(0.9,1);
}
.ttleStyle-page2  > .en {
	font-size:1.8em;
	display:block;
	letter-spacing:1em;
	text-indent: 1em;
}
.ttleStyle-page2  > .ja {
	font-size:0.8em;
	line-height:1.6em;
	display:block;
	letter-spacing:0.5em;
	text-indent: 0.5em;
}
@media screen and (max-width: 480px) {
.ttleStyle-page2  > .en {
	letter-spacing:0.3em;
	text-indent: 0.5em;
}
.ttleStyle-page2  > .ja {
	letter-spacing:0.25em;
	text-indent: 0.25em;
}
}

/*縦書き 右配置*/
.ttlStyle-vertical-right {
	width:120px;
	color:rgba(0,0,0,1);
	font-weight:normal;
	position:absolute;
	top:-40px;
	right:5%;
	z-index:2;
}
.ttlStyle-vertical-right .ttl-ja {
	display:block;
	padding:0 20px;
}
.ttlStyle-vertical-right .ttl-en {
	font-size:50%;
	display:block;
	margin:0 10px;
	padding:0 10px;
	border-right:solid 1px rgba(0,0,0,1);
}
@media screen and (max-width: 768px) {
.ttlStyle-vertical-right {
	width:inherit;
	text-align: center;
	position:inherit;
	top:inherit;
	right:inherit;
	margin:20px auto;
}
.ttlStyle-vertical-right .ttl-ja {
	text-align:center;
	padding:10px 0;
}
.ttlStyle-vertical-right .ttl-en {
	display:inline;
	text-align:center;
	margin:0;
	padding:10px 0 0;
	border-right:none;
	border-top:solid 1px rgba(0,0,0,1);
}
}

/*縦書き 左配置*/
.ttlStyle-vertical-left {
	color:rgba(255,255,255,1);
	font-weight:normal;
	position:absolute;
	top:40px;
	left:5%;
	z-index:2;
}
.ttlStyle-vertical-left .ttl-ja {
	display:block;
	padding:0 20px;
}
.ttlStyle-vertical-left .ttl-en {
	font-size:50%;
	display:block;
	margin:0 10px;
	padding:0 10px;
	border-right:solid 1px rgba(255,255,255,1);
}
@media screen and (max-width: 768px) {
.ttlStyle-vertical-left {
	text-align:center;
	color:rgba(0,0,0,1);
	position:inherit;
	top:inherit;
	left:inherit;
	margin:20px auto;
}
.ttlStyle-vertical-left .ttl-ja {
	padding:10px 0;
	text-align: center;
}
.ttlStyle-vertical-left .ttl-en {
	display:inline;
	text-align:center;
	margin:0;
	padding:10px 0 0;
	border-right:none;
	border-top:solid 1px rgba(0,0,0,1);
}
}

/*中央配置　白*/
.ttlStyle1 {
	color:rgba(255,255,255,1);
	font-size:2em;
	line-height: 1.6em;
	font-weight:normal;
	text-align:center;
	margin:20px auto 20px;
}
.ttlStyle1 .ttl-ja {
	display:block;
	padding:10px 0;
	margin: 0 auto;
}
.ttlStyle1 .ttl-en {
	font-size:50%;
	text-align:center;
	margin:0;
	padding:10px 20px 0;
	border-top:solid 1px rgba(255,255,255,1);
}

/*中央配置　黒*/
.ttlStyle2 {
	color:rgba(0,0,0,1);
	font-size:2em;
	line-height: 1.6em;
	font-weight:normal;
	text-align:center;
	margin:20px auto 20px;
}
.ttlStyle2 .ttl-ja {
	display:block;
	margin: 0 auto;
}
.ttlStyle2 .ttl-en {
	font-size:50%;
	text-align:center;
	margin:0;
	padding:10px 20px 0;
	border-top:solid 1px rgba(0,0,0,1);
}
@media screen and (max-width: 768px) {
.ttlStyle2 .ttl-ja {
	min-height:inherit;
}
}

/*中央配置2段　白*/
.ttlStyle3 {
	color:rgba(255,255,255,1);
	font-size:2em;
	font-weight:normal;
	line-height:1.6em;
	letter-spacing:0.25em;
	text-align:center;
}
.ttlStyle3 > .en {
	font-size:50%;
	display:block;
}

/*サイドフレーム付　白*/
.ttlStyle4 {
	position:relative;
	width:100%;
	height:50px;
	display:table;
	font-size:1.8em;
	font-weight:normal;
	line-height:1.6em;
}
.ttlStyle4::before {
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:10px;
	height:50px;
	position:absolute;
	background-image:url(../img/ttl-leftframe-wh.png);
	background-position:center left;
	background-repeat:no-repeat;
	background-size:contain;
}
.ttlStyle4::after {
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:10px;
	height:50px;
	position:absolute;
	background-image:url(../img/ttl-rightframe-wh.png);
	background-position:center right;
	background-repeat:no-repeat;
	background-size:contain;
}
.ttlStyle4 span {
	display:table-cell;
	vertical-align:middle;
	padding: 0 20px;
}

/*サイドフレーム付　黒*/
.ttlStyle5 {
	position:relative;
	width:100%;
	height:50px;
	display:table;
	font-size:1.8em;
	font-weight:normal;
	line-height:1.6em;
}
.ttlStyle5::before {
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:10px;
	height:50px;
	position:absolute;
	background-image:url(../img/ttl-leftframe-bk.png);
	background-position:center left;
	background-repeat:no-repeat;
	background-size:contain;
}
.ttlStyle5::after {
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:10px;
	height:50px;
	position:absolute;
	background-image:url(../img/ttl-rightframe-bk.png);
	background-position:center right;
	background-repeat:no-repeat;
	background-size:contain;
}
.ttlStyle5 span {
	display:table-cell;
	vertical-align:middle;
	padding: 0 20px;
}

/*============================================================================================
↓404notfound=================================================================================
============================================================================================*/
.notfound {
	color:rgb(255,255,255);
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:100%;
	max-width:360px;
	font-size:14px;
	line-height:2em;
	text-align:center;
}