@charset "utf-8";

/* --------------------------------

Primary style

-------------------------------- */
html * {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	}
*, *:after, *:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
body,div,dl,dd,dt,ol,ul,li,a,h1,h2,h3,h4,h5,h6,span,p,table, caption, tbody, tfoot, thead, tr, th, td,
article,figcaption, figure,input,textarea,footer,header{
	font-size: 16px;
	font-family: 'Open Sans', 'YuGothic', '游ゴシック', "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro","メイリオ",sans-serif;
	color: #373737;
	text-decoration: none;
	line-height:1.5;
	list-style:none;
	letter-spacing:0.1em;
	}
body, html {
	height: 100%;
	}
.mt10{ margin-top: 10px !important}
.mt25{ margin-top: 25px !important}
.mt40{ margin-top: 40px !important}
.mt60{ margin-top: 80px !important}
.mr-20{margin-right: -20px !important}

.mb10{margin-bottom:20px}
.mb15{margin-bottom:15px}
.pt10{padding-top: 10px}
.pt15{padding-top: 15px}
.pl30{padding-left: 30px !important}

.w100{width: 100% !important}
em{
	font-style: normal !important;
	letter-spacing: 0;
	}
.fas {
	display: inline !important;
	margin-right: 6px;
	}
.note{
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 10px;
	}
.note.fs {
	padding-bottom: 3px;
	}
.note li .fas {
	display: inline;
	}
.fs,
.fs > li{
	font-size: 15px;
	}
.fb{
	font-weight: bold;
	}
.fn{
	font-weight: normal !important;
	}
.textAlignC{
	text-align: center;
	}
.zindex__{
	z-index: 9;
	}

/* スペックアイコン */
.spec_icon__{
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 15px;
	}
.spec_icon__ li{
	line-height: 1;
	font-size: 14px;
	letter-spacing: 0;
	padding: 6px 5px;
	margin-right: 10px;
	margin-bottom: 10px;
	color: #111;
	border: 1px solid #555;
	}
.spec_icon__ li:last-child{
	margin-right: 0;
	}
/* マーカー */
.markerPen__{
	display: inline-block;
	margin-top: 30px;
	margin-bottom: 15px;
	background: linear-gradient(transparent 70%, #ffe5e5 50%);
	font-size: 22px;
	font-weight: bold;
	color: #da0303;
	}
/* テキスト上ドット */
span.dot-text__ {
	font-size: 45px;
	color: #fff;
	font-weight: bold;
	letter-spacing: 4px;
	padding-bottom: 6px;
	margin-bottom: 15px;
	background: linear-gradient(transparent 70%, rgba(255, 235, 59, 0.9) 50%);
	}
.txt_red{
	color: #da0303;
	font-weight: bold;
	}
figure {
    line-height: 0;
}
/* --------------------------------

Main components

-------------------------------- */
.container{
	padding-bottom:100px;
	}
.cd-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
	}
.cd-header .common-header {
  overflow: hidden;
  width: 100%;
	}
.cd-header:after {
  content: "";
  display: table;
  clear: both;
	}
.cd-main-content {
  height: 100%;
  width:100%;
  position: relative;
  top: 0 !important;
  z-index: 1;
	}
#pano{
  position:absolute;
  top:0;
  left:0;
  bottom:0;
  z-index: 2;
  height:100%;
  width:100%;
	}
.common-header h1 a{
	display: table;
	line-height:1.25;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	}
.common-header h1 a span,
.common-header h1 a i.fas,
.common-header h1 a img{
	display: table-cell;
	vertical-align: middle;
	}
/* --------------------------------

top panotour logo

-------------------------------- */
.logo{
	position:relative;
	top:41%;
	margin:0 auto;
	z-index:4;
	text-align: right;
	pointer-events: none;
	}
.logo a{
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	cursor:pointer;
	pointer-events: auto;
	}
.top_panotour{
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content:flex-end;
	}
.top_panotour .box__{
	padding:25px 30px;
	flex-basis: auto;
	font-weight: bold;
	margin: 0;
	text-align: center;
	line-height: 1.5;
	background: rgba(0, 0, 0, 0.4);
	}
.top_panotour .box__ h1{
	margin: 0;
	color: #fff;
	font-size: 30px;
	letter-spacing: 2px;
	}
.top_panotour .box__ h1 span{
	display: block;
	font-size: 20px;
	color: #fff;
	text-shadow:none;
	}
.top_panotour .box__ h1 span small{
	display: block;
	margin-top: 10px;
	font-size: 16px;
	line-height: 2;
	}
.top_panotour .box__ ul{
	display: block;
	margin-top: 20px;
	text-align: center;
	}
.top_panotour .box__ ul:after {
  content: "";
  display: table;
  clear: both;
	}
.top_panotour .box__ ul li{
	display: inline-block;
	margin-left: 6px;
	margin-right: 6px;
	padding: 7px 10px;
	min-width: 240px;
	color: #fff;
	font-size: 30px;
	border: 1px solid #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-ms-border-radius: 2px;
	border-radius: 2px;
	}
.top_panotour .box__ ul li a{
	display: block;
	color: #fff;
	font-size: 22px;
	letter-spacing: 3px;
	}
.top_panotour .box__ ul li a > .fas {
	font-size: 86%;
	padding-right: 5px;
	}
h3{
	display: block;
	width: 100%;
	}

/*TOPへ戻る*/
.page_top {
	display: none;
	position: fixed;
	bottom: 60px;
	right: 30px;
	z-index:100;
	color:#373737;
	font-weight:bold;
	}
.page_top a {
  position: absolute;
	bottom: 60px;
	left: 50%;
	z-index: 2;
	display: inline-block;
	-webkit-transform: translate(0, 50%);
	transform: translate(0, 50%);
	text-decoration: none;
	}
.page_top a span{
  position: absolute;
	top: 0;
	left: 50%;
	width: 26px;
	height: 26px;
	margin-left: -14px;
	border-right: 6px solid #373737;
	border-top: 6px solid #373737;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 2s infinite;
	animation: sdb 2s infinite;
	box-sizing: border-box;
	}

@-webkit-keyframes sdb {
	0% {
		-webkit-transform: rotate(-45deg) translate(0, 0);
	}
	20% {
		-webkit-transform: rotate(-45deg) translate(-10px, 10px);
	}
	40% {
		-webkit-transform: rotate(-45deg) translate(0, 0);
	}
}
@keyframes sdb {
	0% {
		transform: rotate(-45deg) translate(0, 0);
	}
	20% {
		transform: rotate(-45deg) translate(-10px, 10px);
	}
	40% {
		transform: rotate(-45deg) translate(0, 0);
	}
}
#down {
	z-index: 9;
	}
.down{
	position:fixed;
	bottom:60px;
	z-index: 10;
	left: 50%;
	width:50px;
	height:50px;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	}
#page_down{
	font-weight:800;
	color:#fff;
	margin-left:-6px;
	width:60px;
	height:60px;
	text-shadow: 0 1px 2px #aaa;
	}
#page_down p {
	position: absolute;
	bottom: 30px;
	left: 50%;
	z-index: 2;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-decoration: none;
	font-weight:800;
	}
#page_down p span {
	position: absolute;
	top: 0;
	left: 50%;
	width: 30px;
	height: 30px;
	margin-left: -12px;
	border-left: 6px solid #fff;
	border-bottom: 6px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 2s infinite;
	animation: sdb 2s infinite;
	box-sizing: border-box;
	box-shadow: -2px 2px 2px #aaa;
	}
.scroll_box1{
	padding-top:-130px;
	margin-top:130px;
	}
/*共通の線*/
.lines-on-sides, h2 {
  display: table;
}
/*マウスオーバー*/
a:hover,
.box a h2:hover,
.box a img:hover,
.header_btn div:hover,
.sns ul li a:hover,
.cd-header h1:hover,
.sns_foot ul li a:hover,
.link__external:hover{
	opacity:0.7;
	transition: 0.3s;
	transition-duration: 0.3s;
	transition-timing-function: ease;
	transition-delay: 0s;
	}
/* 外部リンク */
.link__external{
	border: 1px solid #373737;
	border-radius: 3px;
	padding: 8px;
	text-align: center;
	font-weight: bold;
	margin: 20px 15px 12px;
	}
.link__external a{
	display: block;
	}
/* --------------------------------

inner components

-------------------------------- */
.box .price{
	color:#dc0620;
	font-size:16px;
	font-weight:bold;
	text-align: center;
	}
/*.box h2{
 	border: 2px solid #c83c00  
	} */

.box h2 span {
	color:#c83c00
	}
.box h2 span {
  font-size: 19px;
  display: flex !important;
  align-items: center;
}

.box h2 span::before,
.box h2 span::after {
  content: "";
  flex-grow: 1;
  border-top: solid 1px #c83c00;
  display: block;
}
.box h2 span::before {
  margin-right: 15px;
}
.box h2 span::after {
  margin-left: 15px;
}
.box p{
	padding-top: 15px;
	}
.sec .box .box2 {
	margin-bottom: 30px;
}
/*  */
p.cap{
	color:#e6461e;
	font-size:16px;
	font-weight:bold;
	}
.cmenu{
	background-color:#f8f8f8;
	font-size:16px;
	padding:15px 10px;
	margin-top: 10px;
	}
.cmenu h4{
	margin-top:5px;
	text-align:center;
	font-size:16px;
	font-weight:bold;
	color:#A28C37;
	}
.smenu{
	margin-top:40px;
	width: 100%;
	}
.smenu h1{
	margin-top:5px;
	font-size:24px;
	line-height: 1.2em;
	font-weight:bold;
	width: 100%;
	}
#map iframe,
#panorama iframe{
	pointer-events: auto!important;
	pointer-events: visible !important;
	}
footer{
	margin-top: 30px;
	display: block;
	text-align: center;
}
/* --------------------------------

ページ下　訴求ボタン

-------------------------------- */
.to_contact{
	position: relative;
	display: block;
	width: 100%;
	margin-top: 20px;
	margin-bottom: 40px;
	z-index: 100;
	}
.to_contact ul{
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	}
.to_contact ul li {
	border: 1px solid rgb(0, 27, 66);
	border-radius: 3px;
	padding-top: 15px;
	padding-bottom: 15px;
	min-width: 320px;
	text-align: center;
	font-weight: bold;
	}
.to_contact ul li a{
	display: block;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
	letter-spacing: 2px;
	font-size: 18px;
	}
.to_contact ul li:hover{
	opacity: 0.7;
	}

/* --------------------------------

オンラインショップボタン

-------------------------------- */

.btn__ {
	margin: 40px auto;
max-width: 320px;
}
.btn__ a {
	display: inline-block;
	width: 100%;
	border: 2px solid #c83c00;
	border-radius: 50px;
	padding-top: 15px;
	padding-bottom: 15px;
	min-width: 300px;
	text-align: center;
	font-weight: bold;
	color: #c83c00;
	font-size: 20px;

border-radius: 50px;
	}

.btn__ a:hover {
	color: #c83c00;
}


/* --------------------------------

Table

-------------------------------- */
.tableScroll{
	width: 100%;
}
table.tableList{
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	}
#rental table.tableList{
  display: -webkit-flex;
  display: flex;
   -webkit-flex-direction: column;
   flex-direction: column;
	}
table.tableList caption{
	text-align: left;
	font-weight: bold;
	padding-bottom: 12px;
	margin-top: -5px;
}
table.tableList th {
	background: #5a5a5a;
	border: solid 1px #ddd;
	color: #fff;
	font-weight: bold;
	padding: 5px 0;
	vertical-align: middle;
	flex-grow: 5;
	line-height: 1.5;
	}
table.tableList .td__ th:nth-of-type(1){
	background: #5a5a5a;
	border: none;
	}
table.tableList td {
	border: solid 1px #ccc;
	border-bottom: none;
	padding: 10px 0;
	vertical-align: middle;
	text-align: center;
	}
table.tableList .td__ td{
	background: #eaeaea;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	}
.last__{
	border-bottom: solid 1px #ccc !important;
	}
/*  */
article.col2_{
	width: 100%;
	display: -webkit-flex;
	display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
	align-items: stretch;
	margin-bottom: 80px;
	}
article.col2_:last-child{
	margin-bottom: 40px;
	}
article.col2_ picture{
	flex-shrink: 1.8;
	padding-right: 40px;
	}
article.col2_ picture img{
	width: 100%;
	}
table.tableList tr.th__{
	display: table;
	width: 100%;
	}
table.tableList tr.th__ th{
	display: table-cell;
	width: 30%;
	background: #eaeaea;
	color: inherit;
	font-weight: normal;
	text-align: left;
	padding: 10px 5px 10px 20px;
	border: solid 1px #fff;
	}
table.tableList tr.th__ td{
	display: table-cell;
	width: 70%;
	padding-left: 20px;
	text-align: left;
	}
/*  */
article.col3_{
	width: 100%;
	display: -webkit-flex;
	display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
	align-items: stretch;
	margin-bottom: 80px;
	}

/* article.col3_:last-child{
	margin-bottom: 40px; 
	}*/
article.col3_ picture{
	flex-shrink: 1.8;
	padding-right: 40px;
	}

/* --------------------------------

You tube

-------------------------------- */
.video {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	}
.video iframe {
    position: absolute;
    top: 20px;
    right: 0;
    width: 100%;
    height: 100%;
    pointer-events: auto!important;
    pointer-events: visible !important;
	}

/* --------------------------------

access

-------------------------------- */
#order dl,
#access dl{
	clear: both;
	padding-bottom: 10px;
	}
#order dl dt,
#access dl dt{
	float: left;
	width: 7em;
	font-weight: bold;
	}
#order dl dt{
	width: 3em;
	}
#order dl dd.note ul,
#access dl dd.note ul{
    margin-bottom: 0 !important;
	}
#order dl dd,
#access dl dd{
	display: inline-block;
	margin-bottom: 0 !important;
	}

/* --------------------------------

SP

-------------------------------- */
/*スマホ版*/
@media screen and (max-width : 640px){
.br-pc{
	display:none !important;
	}
.container{
	padding-bottom:50px;
	}
.cd-main-content{
	position:fixed;
	top:50px !important;
	}
.common-header h1{
	position:absolute;
	left:6px;
	top:0;
	letter-spacing: 0;
	}
.common-header h1 a {
    height: 60px;
	}

.common-header h1 a span.cd_logo__ img{
	width: auto;
	height: 40px;
	}
.common-header h1 a span.cd_ttl__{
/* 	display: none; */
	padding-left: 10px;
	font-size: 14px;
	max-width: 200px;
	}
.logo{
	position:relative;
	top:27%;
	margin:0 auto;
	z-index:4;
	text-align: center;
	}
.logo a{
	width: 86%;
	}
.sp_w100{
	width: 100% !important;
	display: block !important;
	}
.sp_mt0{margin-top: 0 !important}
.sp_mt15{margin-top: 15px !important}
.sp_mt20{margin-top: 20px !important}
.sp_mt40{margin-top: 40px !important}
.sp_mb30{margin-bottom: 30px !important;}

/* --------------------------------

top panotour logo

-------------------------------- */
.top_panotour{
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	}
.top_panotour .box__{
	width: 100%;
	padding: 20px 10px;
	}
.top_panotour .box__ h1 span{
    display: block;
    font-size: 17px;
    color: #fff;
    text-shadow: none;
    line-height: 1.75;
	}
.top_panotour .box__ h1 span small {
    display: block;
    margin-top: 10px;
    font-size: 15px;
    line-height: 1.5;
	}
.top_panotour .box__ ul li {
	display: block;
	min-width: 220px;
	max-width: 280px;
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
	}
.top_panotour .box__ ul li a {
	display: block;
	color: #fff;
	font-size: 20px;
	letter-spacing: 2px;
	}
/* iPhone13~ */
#home .pano_scroll_lock:before{
	content: " ";
	position: absolute;
	display: block;
	width: 100%;
	height: 85%;
	top: 100px;
	bottom:0;
	left: 0;
	right: 0;
	background: url(../images/bgclear.png) repeat;
	background-size:100%;
	z-index: 9;
	}
.tb{
	position:absolute;
	right:70px;
	top:9px;
	z-index: 10;
	background:#646464;
	border-radius:3px;
	padding:7px;
	}
.tb a i{
	color:#fff;
	margin-left:3px;
	font-size:26px;
	display:block;
	}
.main{
 	width:100%;
 	height:100%;
 }
.sns ul{
	z-index: 999;
	position: absolute;
	bottom: 30px;
	right: 15px;
	width:48px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
	align-content:space-between;
	}
.sns ul li{
	width:34px;
	}
.sns ul li:last-child{
	margin-right:0;
	margin-top: 15px;
	}
.sns ul li a img{
	width:100%;
	display:block;
	}
.back h1 {
	font-size: 20px;
	display:inline-block;
	font-weight:bold;
	}
.sec{
	display: block;
	margin-bottom: 0;
	width:100%;
	height:100%;
	overflow:hidden;
	}
.sec:last-child{
	margin-bottom:0;
	}
.sec.mb0:last-child{
	margin-bottom:0;
	}
.contents{
	margin: 0 auto;
	width:100%;
	}
.box {
	width:100%;
	height:100%;
	display:inline-block;
	margin-top: 25px;
	}
.box h2{
	display: block;
	margin-top:15px;
/* 	padding-top: 8px; */
	padding-bottom: 8px;
	text-align:center;
	font-size:18px;
	font-weight:bold;
	}
.box h3 {
  font-size: 1em;
  font-weight: bold;
	}
.box p{
	padding-bottom:6px;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: 15px;
	}
.box img{
	width:100%;
	height:100%;
	display:block;
	margin-top:20px;
	}
hr.g{
  display:block;
  width: 100%;
  height: 1px;
  border: 0;
  border-top: 1px dashed #cccccc;
  margin-bottom: 10px;
  margin-top: 10px;
	}
/* --------------------------------

access

-------------------------------- */
.contents .info {
    display: block;
    padding-top: 15px;
    margin-bottom: 30px;
	}
#order dl,
#access dl{
    display: block;
    width: 100%;
    border-top: 1px dashed #cccccc;
    margin-top: 10px;
    padding-top: 6px;
    padding-bottom: 0;
	}
#order dl dd.note,
#access dl dd.note{
    clear: both;
    display: block;
	}
#access dl dt{
    width: 5em;
	}
#access dl dt.fn{
    width: 7em;
	}
#order dl dt.fn,
#order dl dt{
	width: 3em;
	}
/*  */
.map_area {
	position:relative;
	height: 100%;
	width: 100%;
	}
#map {
	height: 300px;
	width: 100%;
	margin:0 auto;
	}
.down{
	bottom:0;
	left: 50%;
	width: 60px;
	height: 64px;
	}
#page_down{
	margin-left: 0;
	width:60px;
	height:60px;
	font-size:13px;
	text-align: center;
	}
#page_down p {
	bottom: 0;
	left: 50%;
	height:30px;
	margin-left: -4px;
	}
#page_down p span{
	left: 50%;
	width: 30px;
	height: 30px;
	margin-left: -12px;
	}
.page_top {
	bottom: 24px;
	right: 10px;
	width:50px;
	}
.page_top a {
	bottom: 60px;
	left:2px;
	}
.page_top a span{
	width: 30px;
	height: 30px;
	margin-left: 2px;
	}
#footer {
	position:relative;
	margin:0 auto;
	bottom:0;
	width:90%;
	color : #373737;
	z-index: 2;
	}
#footer .copyright{
	display:inline-block;
	font-size : 11px;
	margin-top: 30px;
	}
#footer .copyright em{
	letter-spacing: -1px;
	font-style: normal !important;
	}
#footer.txLeft{
	left: 0;
	display: inline;
	}
#footer.txLeft a{
	text-align: left;
	}
/* SNS */
.sns_foot ul{
	width:200px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
/* 	justify-content:space-between; */
	align-content:space-between;
	 left: 15px;
	bottom: 27px;
	z-index: 2;
	}
.sns_foot ul li{
	width:40px;
	margin-right: 30px;
	}
.sns_foot ul li a img{
	width:100%;
	display:block;
	}
.fot_rb {
	margin: 0 auto;
	border:1px solid #373737;
	border-radius:3px;
	padding:15px;
	width:100%;
	margin-bottom:50px;
	display:block;
	text-align: center;
	font-size:18px;
	}
.scroll_box{
	position:relative;
	top:0;
	width:100%;
	margin:0 auto;
	padding-top:100px;
	max-width:90%;
  margin-bottom: 0 !important;
	}
table.tableList caption {
	margin-top: 10px;
	}
.sp_mb0{margin-bottom: 0 !important}
.sp_mt30{ margin-top: 30px}
.sp_mb70{margin-bottom: 70px}
.sp_mb0{ margin-bottom: 0}
/* マーカー */
.markerPen__{
	display: inline;
	}
/* 訴求ボタン */
.to_contact {
	margin-bottom: 0;
	margin-top: 20px;
	}
} /* end SP */

@media screen and (max-width : 320px){
.common-header h1 a span.cd_ttl__{
	font-size: 13px;
	width: 160px;
	}
.common-header h1 a span.cd_logo__ img {
	height: 30px;
	}
.logo a {
	width:96%;
	}
.top_panotour .box__ h1 span {
	font-size: 16px;
	}
}/* end SP */
/* --------------------------------

PC

-------------------------------- */
/*パソコン版*/
@media screen and (min-width : 641px){
.br-sp {
	display: none !important;
	}
.cd-header .common-header {
	margin: 0;
	height:100px;
	background: #fff;
	border-bottom:1px solid #C8C8C8;
	z-index: 900;
	}
.common-header h1 {
	position:absolute;
	top:5px;
	left:20px;
	font-size:20px;
	font-weight:bold;
	}
.common-header h1 a{
	height: 90px;
	}
.common-header h1 a span.cd_logo__{
	vertical-align: middle;
	}
.common-header h1 a span.cd_logo__ img{
	height: 70px;
	width: auto;
	}
.common-header h1 a span.cd_ttl__{
	padding-left: 10px;
	}
.header_btn{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position:absolute;
	top:14px;
	right:40px;
	z-index: 3;
	}
.header_btn div{
	border: 1px solid #373737;
	border-radius:3px;
	padding:8px;
	}
.header_btn div a{
	font-weight:bold;
	display:block;
	}
.header_btn .tb{
	margin-right:10px;
	}
.cd-main-nav {
	position: absolute;
	background: none;
	top:54px;
	right: 10px;
	}
.cd-main-nav ul {
	width: 100%;
	z-index:10;
	}
.cd-main-nav ul .menu1{
	margin-right: 25px;
	margin-top: 10px;
	padding-bottom: 15px;
	}
.main{
	width:100%;
	height:100%;
	}
.sns_foot ul{

	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	align-content:space-between;
	 left: 15px;
	bottom: 27px;
	z-index: 2;

width: 100%;
    margin: 0 auto;
    padding-left: 10px;
    padding-right: 10px;
    max-width: 980px;

	}
.sns_foot ul li{
	width:40px;
	margin-right: 30px;
	}
.sns_foot ul li > a{
	padding: 0 !important;
	}
.sns_foot ul li a img{
	width:100%;
	display:block;
	}
/*  */
.sns ul{
	display: inline-block;
	position: absolute;
	right: 40px;
	width: 50px;
	top: 120px;
	z-index: 9;
	}
.sns ul li{
	margin-bottom:15px;
	display:block;
	}
.sns ul li a{
	width:50px;
	height:50px;
	}
.back{
	position:relative;
	top:0;
	width:100%;
	margin:0 auto;
	padding-left: 10px;
	padding-right: 10px;
	max-width:980px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	}
.back h1 {
	font-size: 20px;
	display:block;
	font-weight:bold;
	}
.back2{
	position:relative;
	top:0;
	width:100%;
	margin:0 auto;
	margin-top: 180px;
	padding-top:40px;
	max-width:960px;
	}
.back2 h1 {
	font-size: 20px;
	display:block;
	font-weight:bold;
	}
.contents_first{
	margin-bottom: 60px !important;
	}
.contents{
	margin: 0 auto;
	width:100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	}
.sec{
	width:47%;
	overflow:hidden;
	margin-top:10px;
	display:block;
	-webkit-flex-direction: row; /* Safari */
	flex-direction: row;

	}
#feature > .contents_first > .sec {
    width: 31%;
	}
.box {
	width:100%;
	}
.box h2{
	display: table;
	width: 100%;
	line-height: 1.45;
	min-height: 3em;
	font-weight: bold;
	font-size: 20px;
	}
.contents_first:first-of-type .box h2{
font-weight: bold;
    font-size: 23px;
    min-height: inherit;
    border: none;
	}
/* add */

.box h2 span {
	display: table-cell;
	text-align: center;
	font-size: 23px;
	padding-bottom: 10px;
	font-feature-settings: "palt";
	font-weight: bold;
	white-space: normal;
	letter-spacing: 5px;
	vertical-align: middle;

	}
.box h3{
	margin-bottom: 20px;
	font-size:18px;
	font-weight: bold;
	}
.box p{
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: 16px;
	font-feature-settings: "palt";
	letter-spacing: 3px;
	}
.box img{
	width: 100%;
	height: 100%;
	margin-bottom: 10px;
	display: block;
	}
.cmenu{
	min-height: 230px;
	}
.cmenu.mimHeight{
	min-height: 540px;
	}
.map_area {
	position:relative;
	top:0;
	height: 100%;
	width: 100%;
	margin-top: 30px;
	margin-bottom: 24px;
	}
#map {
	height: 400px;
	width: 100%;
	margin:0 auto;
	}
hr.g{
  display:none;
	}
#footer {
/* 	position:fixed; */
	bottom:0;
	left:0;
	margin:0 auto;
	color : #373737;
	z-index: 10;
	}
#footer a{
	display:inline-block;
	padding:10px;
	font-size : 12px;
	text-align:center;
	}
#footer.txLeft{
	left: 0;
	display: inline;
	}
#footer.txLeft a{
	text-align: left;
	}
.scroll_box{
	position:relative;
	top:0;
	width:100%;
	margin:0 auto;
	margin-top:-130px;
	padding-top:130px;
	max-width:960px;
	}
.scroll_box:first-of-type{
	margin-top: 0px;
	}
/* .sns_foot{
	display: none;
	} */
/* ページ下　訴求ボタン */
#to_contact{
	margin-top: 80px;
	margin-bottom: 80px;
	}
#to_contact ul{
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	}
#to_contact ul li {
	border: 1px solid #373737;
	border-radius: 3px;
	padding-top: 15px;
	padding-bottom: 15px;
	width: 400px;
	margin-left: 20px;
	margin-right: 20px;
	text-align: center;
	font-weight: bold;
	}
#to_contact ul li a{
	display: block;
	text-decoration: none;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
	letter-spacing: 2px;
	}
#to_contact ul li a:hover{
	opacity: 0.7;
	}
.pc_pt10{padding-top: 10px;}
.pc_pb10{padding-bottom: 10px;}
.pc_mt30{ margin-top: 30px !important}
.pc_mt60{ margin-top: 80px !important}
.pc_mb0{margin-bottom: 0 !important}

} /* end PC */
/* --------------------------------

横向き　

-------------------------------- */
@media (orientation: landscape) and (max-width: 778px){
.back {
	width: 98% !important;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	}
.down {
	bottom: 0;
	}
.container {
  padding-bottom: 50px;
	}
.common-header .fa-phone:before {
	display: none;
	}
.cd-main-nav ul .menu {
	margin-right: 14px;
	}
.cd-main-nav ul li a{
	font-size: 15px;
	letter-spacing: 0;
	}
.cd-main-nav ul .menu:last-child{
	margin-right: 0;
	}
.header_btn {
	right: 0;
	}
.sns.top_sp.br-pc{
	display: none;
	}
.sns_foot {
	display: block;
	}
.sns_foot ul{
	margin-left: 2%;
	margin-bottom: 20px;
	width:200px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
/* 	justify-content:space-between; */
	align-content:space-between;
	z-index: 2;
	}
.sns_foot ul li{
	width:40px;
	margin-right: 30px;
	}
.sns_foot ul li a img{
	width:100%;
	display:block;
	}
#footer .sns_foot ul li a {
	padding: 0;
	}
#footer {
	position: static;
	}
#footer a{
	text-align: left;
	}
table.tableList .th__ th {
    padding: 5px 5px 10px 10px;
	}
.br-sp{
	display: none;
	}
#footer .br-sp a.fot_rb {
	display: none;
	}
.logo img {
  width: 210px;
	}
.top_panotour > h1 {
	font-size: 30px;
	}

}/* end SP778 */

/* --------------------------------

table

-------------------------------- */

@media screen and (max-width: 640px) {
#tokutei{
	height: auto !important;
}
table.tableList td {
	font-size: 14px;
	border-top: solid 1px #ccc;
	}
table.tableList th {
	padding: 5px;
	font-size: 14px;
	}
table.tableList .th__ td{
	min-width: 100px;
	padding: 5px 10px !important;
	font-size: 14px;
	}
table.tableList .th__ th{
	padding-left: 10px !important;
	font-size: 14px;
	}
table.tableList .th__ td ul li,
table.tableList .th__ td a{
	font-size: 14px;
	}

} /* end SP */

/* --------------------------------

info ifame

-------------------------------- */
#information iframe{
	pointer-events: auto !important;
	position: static;
	}
/* clearfix */
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
	}
.clearfix:after {	clear: both;}
.clearfix{ zoom: 1;}

.mb0{margin-bottom:0 !important}

/* --------------------------------

キャンペーンバナー

-------------------------------- */
.campaign_bnr{
  margin-top: 20px;
}
.campaign_bnr img{
  width:100%;
  margin-top: 20px;
}