@charset "utf-8";
/* ===================================================
Base CSS
====================================================== */
body { 
	/* min-width: 1100px; */
	min-height: 100vh; 
	margin: 0;
	padding: 0;
	background: #fff; 
	color: #000; 
	font-size: 14px; 
	font-weight: normal; 
	line-height: 1.5; 
	font-family: "bizud-mincho-regular"; 
	-webkit-text-size-adjust: 100%;
 }

 .ta-right {
	 text-align: right;
 }

input,
select,
textarea {
	font-size: 13px;
}

div {
	-webkit-box-sizing: border-box; 
	box-sizing: border-box;
}

a { 
	color: #333; 
	text-decoration: none;
}
a:hover { 
	color: #333; 
	text-decoration: underline;
}
a:hover img { 
	opacity: 0.8;
}

#lineup-font-size-sampler { 
	bottom: 0; 
	left: 0;
}
.fixed { 
	width: 100%; 
	position: fixed; 
	top:0; 
	left: 0; 
	z-index: 999;
}

.v_rl{ 
	-webkit-writing-mode: vertical-rl; 
	-ms-writing-mode: tb-rl; 
	writing-mode: vertical-rl;
}

br.br_sp{ 
	display: none;
}
/* br.br_pc{ } */
br.br320{ 
	display: none;
}

@media screen and (max-width: 600px) {
	body,
	input,
	select,
	textarea { font-size: 16px;}
	body { min-width: 0;}

	br.br_sp{ display: block;}
	br.br_pc{ display: none;}
}

@media screen and (max-width: 320px) {
	br.br320{ 
		display: block;
	}
}

@media screen and (min-width: 1100px) {
	.br_scs {
		display:block;
	}
}

@media screen and (max-width: 960px) {
	.br_scs {
		display:none;
	}
}

/* Contents Main Image Start */
.main_img { 
	/* padding-top: 60px; */
	position: relative; 
	height:50vh;
	width: 100%; 
	background: #eee; 
	margin: 0 auto;
	overflow-x: hidden;
}
.main_img .vegas_main {
	height: 50vh;
}
#vegasSliderInner{
    top:40%;
    left:20%;
	height:50%;
	max-height:100px;
    position:absolute;
}
/*
.main_img .logo{ 
	position: absolute; 
	top: 50%; 
	left: 50%; 
	margin-top: calc(50% - 33px);
	padding: 0; 
	z-index: 4; 
	width: 200px; 
	display: block; 
}
*/
/* Contents Main Image End   */


/* ---------------------------------------------------
	objectFitImages (ofi.js)
------------------------------------------------------ */
.ofi { object-fit: cover; font-family: 'object-fit: cover;' }
.ofi_l_t { object-fit: cover; object-position: 0 0; font-family: 'object-fit: cover; object-position: 0 0;' }
.ofi_r_t { object-fit: cover; object-position: 100% 0; font-family: 'object-fit: cover; object-position: 100% 0;' }
.ofi_l_b { object-fit: cover; object-position: 0 100%; font-family: 'object-fit: cover; object-position: 0 100%;' }
.ofi_r_b { object-fit: cover; object-position: 100% 100%; font-family: 'object-fit: cover; object-position: 100% 100%;' }


/* ---------------------------------------------------
	delighters.js（スクロール連動アニメーション）
------------------------------------------------------ */
.delighter.fade { 
	transform:none; 
	opacity:0; 
	transition: all 1s ease-out; 
}

.delighter.fade.started { 
	transform:none; 
	opacity:1!important; 
}

.delighter.LtoR { 
	transform:translate(-20%); 
	opacity:0; 
	transition: all 1s ease-out; 
}

.delighter.LtoR.started { 
	transform:none; 
	opacity:1!important; 
}

.delighter.RtoL { 
	transform:translate(20%); 
	opacity:0; 
	transition: all 1s ease-out; 
}

.delighter.RtoL.started { 
	transform:none; 
	opacity:1!important; 
}

.delighter.BtoT { 
	transform:translateY(50px); 
	opacity:0; 
	transition: all 1s ease-out; 
}

.delighter.BtoT.started { 
	transform:none; 
	opacity:1!important; 
}

.delighter.zoom{ 
	opacity: 1; 
	transform: scale(1.1); 
	transition: transform 2s ease-out;
}

.delighter.zoom.started{ 
	transform: scale(1); 
}

@media screen and (max-width: 600px) {
	.delighter.fade { 
		transform:none; 
		opacity:1; 
		transition: none; 
	}
	.delighter.fade.started { 
		transform:none; 
		opacity:1!important; 
	}

	.delighter.LtoR { 
		transform:none; 
		opacity:1; 
		transition: none; 
	}
	.delighter.LtoR.started { 
		transform:none; 
		opacity:1!important; 
	}

	.delighter.RtoL { 
		transform:none; 
		opacity:1; 
		transition: none; 
	}
	.delighter.RtoL.started { 
		transform:none; 
		opacity:1!important; 
	}

	.delighter.BtoT { 
		transform:none; 
		opacity:1; 
		transition: none; 
	}
	.delighter.BtoT.started { 
		transform:none; 
		opacity:1!important; 
	}
}


/* ---------------------------------------------------
	初回読み込み時のみのアニメーション（ページ上部でスクロール発火によらない）
------------------------------------------------------ */
/*.fadein_BtoT{ 
	animation-name: fadeinBtoT; 
	animation-duration: 1s; 
	animation-iteration-count: 1; 
}

.fadein_LtoR{ 
	animation-name: fadeinLtoR; 
	animation-duration: 1s; 
	animation-iteration-count: 1; 
}

.fadein_RtoL{ 
	animation-name: fadeinRtoL; 
	animation-duration: 1s; 
	animation-iteration-count: 1; 
}

@media screen and (max-width: 600px) {
	.fadein_BtoT{ animation-iteration-count: 0; }
	.fadein_LtoR{ animation-iteration-count: 0; }
	.fadein_RtoL{ animation-iteration-count: 0; }
}

@keyframes fadeinBtoT {
	from { opacity: 0; transform: translateY(50px);}
	to { opacity: 1; transform: translateY(0);}
}

@keyframes fadeinLtoR {
from { opacity: 0; transform: translate(-20%);}
to { opacity: 1; transform: translate(0);}
}
@keyframes fadeinRtoL {
from { opacity: 0; transform: translate(20%);}
to { opacity: 1; transform: translate(0);}
}
*/


/* ---------------------------------------------------
共通パーツ
------------------------------------------------------ */
.btn_cmn1, 
.btn_cmn2{ 
	position: relative;
}

.btn_cmn1 a, 
.btn_cmn2 a{ 
	display: inline-block; 
	padding: 15px 50px; 
	font-size: 14px; 
	position: relative; 
	white-space: nowrap;
	text-decoration: none;
}

.btn_cmn1 a{ 
	border-top: solid 1px #003530; 
	border-bottom: solid 1px #003530; 
	color:#003530;
	background:#fff;
}

.btn_cmn2 a{ 
	border-top: solid 1px #fff; 
	border-bottom: solid 1px #fff; 
	color:#fff;
	background:#003530;
}

.btn_cmn1 a:hover, 
.btn_cmn2 a:hover{ 
	background: rgba(255,255,255,0.9);
}

.btn_cmn1 a::before,
.btn_cmn1 a::after, 
.btn_cmn2 a::before,
.btn_cmn2 a::after{ 
	content: ""; 
	display: block; 
	position: absolute; 
	top: 50%; 
	right: 5%;
	height: 1px; 
}

.btn_cmn1 a::before, 
.btn_cmn2 a::before{ 
	width: 6px; 
	transform: rotate(-30deg); 
}
.btn_cmn1 a::after, 
.btn_cmn2 a::after{ 
	width: 6px; 
	transform: rotate(30deg);
}

.btn_cmn1 a::before,
.btn_cmn1 a::after{ 
	background: #003530;
	transform-origin: right bottom;
	transition: all .5s;
}

.btn_cmn2 a::before,
.btn_cmn2 a::after{ 
	background: #fff;
	transform-origin: right bottom;
	transition: all .5s;
}

.btn_cmn1 a:hover::before, 
.btn_cmn2 a:hover::before{ 
	transform: rotate(0deg);
	right: 0%;
}
.btn_cmn1 a:hover::after, 
.btn_cmn2 a:hover::after{ 
	right: 0%;
}

.tit_cmn1{ font-size: 24px; letter-spacing: 0.1em;}
.tit_cmn1 span{ font-size: 12px; color: #786a4b;}

br.br_pc{ display: block;}
br.br_sp{ display: none;}

@media screen and (max-width: 600px) {
.tit_cmn1{ font-size: 20px;}
.tit_cmn1 span{ font-size: 11px;}

br.br_pc{ display: none;}
br.br_sp{ display: block;}
}


/* ---------------------------------------------------
Header
------------------------------------------------------ */
#header_wrap { 
	width: 100%; 
	min-width: 1100px;
	height: 60px; 
	position: fixed; 
	z-index: 100; 
	background: #fff; 
	/*-webkit-transition: top 0.8s; 
	-o-transition: top 0.8s; 
	transition: top 0.8s; */
}
#header_wrap.fixed { 
	top: 0 !important;
}
#header { 
	position: relative; 
	width: 1100px; 
	margin: 0 auto; 
	box-sizing: border-box;
	display: block;
}
#header .hd_logo{ 
	width: 200px; 
	position: absolute; 
	top: 10px; 
	left: 0;
}


/* gnav Start*/
#gnav { 
	width: 1030px; 
	padding: 0 0 0 200px;
}
#gnav #gn_home{ 
	display: none;
}
#gnav ul,
#gnav li,
#gnav a { 
	display: -webkit-flex; 
	display: -ms-flex; 
	display: flex;
}
#gnav > ul li a{ 
	background: #fff; 
	z-index: 2;
}
#gnav > ul a { 
	-ms-align-items: center; 
	align-items: center; 
	padding: 0 18px; 
	position: relative; 
	font-size: 16px; 
	line-height: 50px;
}
#gnav > ul a:before { 
	content: ''; 
	height: 2px; 
	position: absolute; 
	left: 50%; 
	right: 50%; 
	bottom: 0; 
	background: #003530; 
	-webkit-transition: all 0.4s; 
	-o-transition: all 0.4s; 
	transition: all 0.4s;
}

#gnav > ul a:hover { 
	text-decoration: none;
}

/* current Start */
/*
#about #gn_01 a:before,
#room #gn_02 a:before,
#meal #gn_03 a:before,
#spa #gn_04 a:before,
#restaurant #gn_05 a:before,
#facilities #gn_06 a:before,
#sightseeing #gn_07 a:before,
#access #gn_08 a:before,
#gnav > ul a:hover:before { 
	left: 1vw; 
	right: 1vw;
}
*/
#gn_01 a:before,
#gn_02 a:before,
#gn_03 a:before,
#gn_04 a:before,
#gn_05 a:before,
#gn_06 a:before,
#gn_07 a:before,
#gnav > ul a:hover:before { 
	left: 1vw; 
	right: 1vw;
}
/* current End   */

/* ↓↓↓レストランの子list↓↓↓ */
/*
#gnav > ul li#gn_05 > ul{ 
	display: flex; 
	position: absolute; 
	top: -60px; 
	left: 50%; 
	margin: 0 0 0 -100px; 
	background: #fff; 
	-webkit-transition: all 0.4s; 
	-o-transition: all 0.4s; 
	transition: all 0.4s; 
	z-index: 1;
}

#gnav > ul li#gn_05:hover > ul{ 
	display: flex; 
	top: 60px
}
#gnav > ul li#gn_05 ul li a:before{ 
	content: "・"; 
	position: static; 
	height: auto; 
	width: auto; 
	color: #000; 
	background: none; 
	transition: none;
}
#gnav > ul li#gn_05 ul li a:after { 
	content: ''; 
	height: 2px; 
	position: absolute; 
	left: 50%; 
	right: 50%; 
	bottom: 14px; 
	background: #003530; 
	-webkit-transition: all 0.4s; 
	-o-transition: all 0.4s; 
	transition: all 0.4s;
}
#gnav > ul li#gn_05 ul li a:hover:before { 
	left: 0; 
	right: 0;
}
#gnav > ul li#gn_05 ul li a:hover:after { 
	left: 1vw; 
	right: 1vw;
}
#gnav > ul li#gn_05 ul li a{ 
	font-size: 14px;
}
*/
/* ↑↑↑レストランの子list↑↑↑ */

#gnav .gnav_sns{ 
	position: absolute; 
	top: 16px; 
	right: 100px; 
	width: 70px; 
	display: flex; 
	justify-content: 
	space-between;
}
#gnav .gnav_sns a{ 
	display: block; 
	width: 28px;
}
#gnav .gnav_reserve,
#gnav .gnav_tel{ 
	display: none;
}
#gnav .gnav_lang { 
	width: 120px; 
	text-align: center; 
	position: absolute; 
	top: 18px; 
	right: 0; 
}
#gnav .gnav_lang dt { 
	padding: 3px 0; 
	position: relative; 
	border-bottom: 2px solid #cac2be; 
	cursor: pointer; 
	font-size: 13px; 
	color: #78655b;
}
#gnav .gnav_lang dt span { 
	padding: 0 5px;
}
#gnav .gnav_lang dd { position: relative;}
#gnav .gnav_lang dd ul { display: none; width: 100%; position: absolute; top: 0; left: 0; background: rgba(98, 98, 98, 0.95);}
#gnav .gnav_lang dd a { display: block; width: 100%; padding: 3px 0; border-bottom: 1px dotted #fff; color: #fff; font-size: 14px;}
#gnav .gnav_lang dd a:before { content: none;}
#gnav .gnav_lang dd a:hover { background: rgba(69, 69, 69, 0.95);}
#gnav .gnav_lang dd li:last-child a { border-bottom: none;}

@media screen and (max-width: 1100px) {
	#gnav { 
		display: none;
		width: 100%; 
		position: relative; 
		z-index: 15; 
		background: none; 
		padding: 0;
		background-color: #fff;
	}
	#hamburger {
		display:block;
	}
	#gnav li,
	#gnav a,
	#gnav #gn_home{ 
		display: block;
	}
	/*#gnav .ver_pc { 
		display: none;
	}*/
	#gnav > ul { 
		-webkit-flex-wrap: wrap; 
		-ms-flex-wrap: wrap; 
		flex-wrap: wrap; 
		justify-content: flex-start; 
		/*padding: 50px 4% 0; */
		/* padding:0; */
		padding-bottom: 20px;
		margin:0;
		top:60px;
	}
	#gnav > ul li { 
		flex-basis: 40%; 
		width: 40%; 
		border-bottom: 1px solid #d9d5d2;
		margin: 5px auto;
	}

	/*#gnav > ul li#gn_06 { 
		margin: 5px 0 5px 5%;
	}*/
	
	#gnav ul a {
		line-height:40px;
	}

	#gn_01 a:before,
	#gn_02 a:before,
	#gn_03 a:before,
	#gn_04 a:before,
	#gn_05 a:before,
	#gn_06 a:before,
	#gnav > ul a:hover:before { 
		left: 5px; 
		right: initial;
	}

	#gnav > ul a::before { 
		top:18px;
		left: 5px;
		width: 4px;
		height: 4px;
		border-top: 1px solid #003530;
		border-right: 1px solid #003530;
		border-bottom: none;
		border-left:none;
		background:none;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	#gnav .gnav_sns{ 
		display: none;
	}
	#gnav .gnav_reserve{ 
		display: block; 
		width: 92%; 
		margin: 25px auto; 
		font-size: 14px;
	}
	#gnav .gnav_reserve ul{ 
		display: flex; 
		justify-content: space-between; 
		flex-wrap: wrap;
	}
	#gnav .gnav_reserve li a{ 
		display: block;
	}
	#gnav .gnav_reserve li a:hover{ 
		text-decoration: none;
	}
	#gnav .gnav_reserve li:nth-child(1){ 
		width: 100%; 
		background: #003530; 
		text-align: center; 
		font-size: 18px; 
		margin: 0 0 4%;
	}
	#gnav .gnav_reserve li:nth-child(1) a{ 
		color: #fff; 
		padding: 15px 0;
	}
	#gnav .gnav_reserve li:nth-child(2),
	#gnav .gnav_reserve li:nth-child(3){ 
		width: 48%; 
		border: solid 1px #d9d5d2;
	}
	#gnav .gnav_reserve li:nth-child(2) a,
	#gnav .gnav_reserve li:nth-child(3) a{ 
		padding: 10px 0; 
		text-align: center; 
		position: relative;
	}
	#gnav .gnav_reserve li:nth-child(2) a:before,
	#gnav .gnav_reserve li:nth-child(3) a:before{ 
		content: ""; 
		display: inline-block; 
		position: relative; 
		top: 2px; 
		left: 0; 
		width: 30px; 
		height: 15px; 
		background: url("../img/ico_bed.png") no-repeat 0 0; 
		background-size: 25px;
	}
	#gnav .gnav_reserve li:nth-child(3) a:before{ 
		top: 3px; 
		left: 0; 
		width: 21px; 
		height: 16px; 
		background:url(../img/ico_calender.png) no-repeat 0 0; 
		background-size: 16px;
	}
	#gnav .gnav_reserve li:nth-child(4){ 
		width: 100%; 
		padding: 15px 0 0; 
		text-align: center;
	}
	#gnav .gnav_reserve li:nth-child(4) a{ 
		display: inline-block; 
		background: url(../img/ico_arrow2.png) no-repeat 0 center; 
		background-size: 13px; 
		padding: 0 0 0 20px;
	}
	#gnav .gnav_tel{ 
		width: 230px; 
		font-size: 15px; 
		letter-spacing: 0.1em; 
		margin: 20px auto; 
		text-align: right; 
		display: block; 
		white-space: nowrap;
		padding-bottom:10px;
	}
	#gnav .gnav_tel a,
	#gnav .gnav_tel span{ 
		font-size: 24px; 
		display: inline-block;
	}
	#gnav .gnav_tel p{ 
		display: block; 
		width: 100%; 
		font-size: 13px; 
		text-align: right; 
		letter-spacing: 0;
	}
}

@media screen and (max-width: 320px) {
#gnav > ul a { padding: 10px 0 10px 20px; font-size: 14px;}
}

/* gnav End  */


/* ---------------------------------------------------
Side button ( Fixed )
------------------------------------------------------ */
#side_btn{ 
	position: fixed; 
	top: 50%; 
	right: 0; 
	text-align: center; 
	z-index: 11; 
	width: 50px; 
	height: 200px; 
	margin: -100px 0 0;
	font-family: "bizud-pmincho-regular";
	outline: 1px solid rgb(255, 255, 255);
	outline-offset: -2px;
}
#side_btn a{ 
	display: block; 
	width: 50px; 
	height: 200px; 
	background: #003530; 
	color: #fff; 
	line-height: 50px; 
	letter-spacing: 0.3em; 
	font-size: 14px; 
	cursor: pointer;
}

#side_btn a:hover{ 
	text-decoration: none; 
	background:#0a5a6a;
}

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


/* ---------------------------------------------------
	modal_box
------------------------------------------------------ */
#modal_box { width: 1000px; margin: -250px 0 0 -500px; padding: 50px 30px; background: #fff; position: fixed; top: 50%; left: 50%; display: none; z-index: 1001; text-align: center;}
#modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 120%; background: rgba(0,0,0,0.50); display: none; z-index: 1000;}
#modal_box .modal_tit{ margin: 0 auto; padding: 0 0 30px; width: 190px;}
#modal_box .modal_close{ position: absolute; top: 20px; right: 20px; width: 32px; cursor: pointer;}
#modal_box #search_489ban{ display: block; background: url("../img/modal_bg.png"); border: solid 1px #c9c9c9; padding: 15px 40px; overflow: hidden; position: relative;}
#modal_box #search_489ban .date_489ban,
#modal_box #search_489ban .inbox_489ban,
#modal_box #search_489ban .stay_489ban,
#modal_box #search_489ban .room_489ban,
#modal_box #search_489ban .person_489ban{ float: left; padding: 0 10px 0 0;}
#modal_box #search_489ban .date_489ban{ display: table;}
#modal_box #search_489ban .date_489ban dt,
#modal_box #search_489ban .date_489ban dd{ display: block;}
#modal_box #search_489ban dt,
#modal_box #search_489ban dd{ text-align: left; font-size: 14px; line-height: 1.2;}
#modal_box #search_489ban dt{ padding: 0 0 3px;}
#modal_box #search_489ban input[type="text"]{ height: 50px; margin: 0; box-sizing: border-box; border: solid 1px #8a8f92; border-radius: 0; padding: 5px 15px; font-size: 16px; line-height: 1;}
#modal_box #search_489ban input[type="text"]:disabled{ color: graytext;}
#modal_box #search_489ban .hasDatepicker{ background:url(../img/ico_calender.png) no-repeat right 10px center #fff; background-size: 16px; width: 260px;}
#modal_box #search_489ban select{ height: 50px;  margin: 0 3px 0 0; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius:0; border:solid 1px #8a8f92; padding: 5px 25px 5px 15px; background:url(../img/ico_select.png) no-repeat right center #fff; background-size:20px; font-size: 16px;}
#modal_box #search_489ban select::-ms-expand { display: none;}
#modal_box #search_489ban select:disabled{ color: graytext;}
#modal_box #search_489ban option{ font-size: 14px;}
#modal_box #search_489ban button{ height: 50px; padding: 0 20px; color: #fff; text-align: center; font-size: 16px; background: rgba(0,0,0,1.00); -webkit-appearance: button; appearance: button; border: none; border-radius: 0; box-sizing: border-box; cursor: pointer; font-family: "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; position: absolute; bottom: 15px; right: 40px;}
#modal_box #search_489ban button:hover{ background: rgba(0,0,0,0.8);}
#modal_box .modal_tel{ clear: both; float: left; width: 240px; font-size: 18px; letter-spacing: 0.1em; margin: 35px 0 0;}
#modal_box .modal_tel span{ font-size: 28px;}
#modal_box .modal_tel p{ display: block; width: 100%; font-size: 14px; text-align: right; letter-spacing: 0;}
#modal_box ul{ float: right; width: 675px; margin: 40px 0 0; font-size: 14px;}
#modal_box ul li{ float: left; width: 220px; height: 48px; margin: 0 0 0 5px; border: solid 1px #b2b2b2; box-sizing: border-box;}
#modal_box ul li a{ display: block; background: #fff; line-height: 46px;}
#modal_box ul li a:hover{ background: #e4e4e4;}
#modal_box ul li:nth-child(1) a:hover,
#modal_box ul li:nth-child(2) a:hover,
#modal_box ul li:nth-child(3) a:hover{ text-decoration: none;}
#modal_box ul li:nth-child(2) a{ background: url("../img/ico_bed.png") no-repeat 25px center #fff; background-size: 25px; padding: 0 0 0 30px;}
#modal_box ul li:nth-child(2) a:hover{ background: url("../img/ico_bed.png") no-repeat 25px center #e4e4e4; background-size: 25px;}
#modal_box ul li:nth-child(3) a{ background:url(../img/ico_calender.png) no-repeat 25px center #fff; background-size: 16px; padding: 0 0 0 30px;}
#modal_box ul li:nth-child(3) a:hover{ background:url(../img/ico_calender.png) no-repeat 25px center #e4e4e4; background-size: 16px;}
#modal_box ul li:nth-child(4){ float: right; margin: 10px 0 0; border: none; width: auto;}
#modal_box ul li:nth-child(4) a{ background: url(../img/ico_arrow2.png) no-repeat 0 center; background-size: 13px; padding: 0 0 0 20px;}


/* ---------------------------------------------------
Contents
------------------------------------------------------ */
#contents_wrap { 
	clear: both; 
	width: 100%; 
	padding: 60px 0 0; 
	z-index: 1;
}

@media screen and (max-width: 600px) {
	#contents_wrap { 
		padding: 0;
	}
}


/* ---------------------------------------------------
Breadcrumb
------------------------------------------------------ */
#breadcrumb { 
	margin: -25px auto 0; 
	width: 1100px; 
	font-size: 14px; 
	text-align: left; 
	color: #fff; 
	position: relative; 
	z-index: 5;
}

#breadcrumb:before{ 
	content: ""; 
	background: #003530; 
	width: 50vw; 
	height: 25px; 
	position: absolute; 
	left: -50vw; 
	top: -1px; 
	padding: 0; 
	line-height: 1;
	border-top: 1px solid #fff;
	opacity: 0.7;
}
#breadcrumb li { 
	padding-left: 0.5em;
	float: left; 
	line-height: 1.6; 
	background: #003530; 
	list-style: none;
	margin-top: -1px;
	border-top: 1px solid #fff;
	opacity: 0.7;
}
#breadcrumb li:before { 
	content: '/'; 
	margin: 0 5px;
}
#breadcrumb li:first-child:before { 
	display: none;
}
#breadcrumb li a{ 
	color: #fff; 
	/* padding: 0 10px; */
	padding: 0;
	height: 25px; 
	line-height: 25px;
	opacity: 1;
}
#breadcrumb li .current{ 
	opacity: 1;
	/* height: 25px; */
	margin-left: 5px;
	padding-right: 5px; 
	line-height: 25px;
	font-weight: lighter;
}
/*#breadcrumb li:first-child a{ 
	padding: 0 10px 0 0;
}*/

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


/* ---------------------------------------------------
Footer
------------------------------------------------------ */
#footer {
	margin-top:50px;
}

#footer_block1_wrap {
	width: 100%;
	background: url("../image/footer_bg.jpg") no-repeat center center; 
	background-size: cover; 
	color: #fff;
	position:relative;
	height:150px;
	
	

	/*
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.5);
	*/ /*半透明のフィルターをかける*/
}

#footer .ft_block1 {
	position: absolute;
	width: 100%;
	background: rgba(0, 0, 0, 0.5);
	text-align: center;
	height:150px;
}

/*
#footer .ft_block1{ 
	width: 100%;
	background: url("../image/footer_bg.jpg") no-repeat center center; 
	background-size: cover; 
	color: #fff;
	position:relative;
}
*/

#footer .ft_block1 a{ 
	color: #fff;
}

/*#footer .ft_block1 .acc_tit{ 
	display: none;
}*/

#footer .ft_block1 > div{ 
	width: 1100px; 
	margin: 0 auto; 
	padding: 60px 0 40px 0; 
	display: flex; 
	justify-content: space-around;
}

/* #footer .ft_block1 ul{} */
#footer .ft_block1 ul li{ 
	margin: 0 0 20px 0;
}

#footer .ft_block1 ul li a{ 
	background: url("../img/ico_arrow5.png") no-repeat left center; 
	background-size: 6px; 
	padding: 0 0 0 15px;
}

#footer .ft_block1 ul li ul{ 
	padding: 0 0 0 2em;
}

#footer .ft_block1 ul li ul li{ 
	list-style: disc; 
	margin: 0;
}

#footer .ft_block1 ul li ul li a{ 
	background: none; 
	padding: 0;
}

#footer .ft_block2{ 
	background-image: url('../image/bg02.jpg');
	text-align: center; 
	padding: 50px 0;
}

#footer .ft_block2 .ft_logo{ 
	width: 112px; 
	padding: 0 0 25px; 
	margin: 0 auto;
}

#footer .ft_block2 p{ 
	font-size: 15px; 
	line-height: 2;
}

#footer .ft_block2 .name{ 
	font-size: 18px;
}

#footer .ft_block2 .addr .zip{ margin: 0 20px 0 0;}
#footer .ft_block2 .tel{ font-size: 16px; letter-spacing: 0.05em; line-height: 1.3;}
#footer .ft_block2 .tel .num{ font-size: 26px; line-height: 1.3;}
#footer .ft_block2 .time{ font-size: 12px;}
#footer .ft_block2 .ft_sns{ margin: 15px 0; display: flex; justify-content: center;}
#footer .ft_block2 .ft_sns a{ display: block; width: 28px; margin: 0 5px;}
#footer .ft_block2 .ft_btns{ width: 356px; margin: 0 auto;}
#footer .ft_block2 .ft_btns li:first-child{ margin: 0 0 20px;}
#footer .ft_block2 .ft_btns li:first-child a{ display: block; background: #003530; color: #fff; text-align: center; padding: 15px 0; font-size: 17px;}
#footer .ft_block2 .ft_btns li:first-child a:hover{ text-decoration: none; background:#106070;}
#footer .ft_block2 .ft_btns li:last-child a{ display: inline-block; background: url("../img/ico_arrow2.png") no-repeat left center; background-size: 13px; padding: 0 0 0 20px;}
#footer .ft_block3{ background: #000; color: #fff;}
#footer .ft_block3 a{ color: #fff; text-decoration: none;}
#footer .ft_block3 a:hover{ text-decoration: underline;}
#footer .ft_block3 ul{ display: flex; justify-content: center;}
#footer .ft_block3 ul li{ margin: 0 0 0 25px;}
#footer .ft_block3 ul li a{ display: block; padding: 15px 20px 15px 0; line-height: 1.1; background: url("../img/ico_arrow4.png") no-repeat center right; background-size: 12px;}
#footer .ft_block3 ul li:first-child{ background: url("../img/ico_logo.png") no-repeat center left; background-size: 26px; padding: 0 0 0 40px;}


#ft_pagetop,
#ft_copyright{ 
	position: fixed; 
	height: auto; 
	color: #fff; 
	z-index: 12;
}

#ft_pagetop{ 
	letter-spacing: 0.05em;
	bottom: 0; 
	line-height: 50px; 
	font-size: 14px;
	width: 50px; 
	display:none;
}

#ft_copyright{ 
	letter-spacing: 0.1em;
	top:50%;
	line-height: 30px; 
	color: #333;
	text-shadow: 1px 1px 1px #fff;
	font-size: 10px;
	width: 30px; 
}

#ft_pagetop:before,
#ft_pagetop:after{ 
	content: ""; 
	display: block; 
	position: absolute; 
	height: 1px; 
	background: #666; 
	line-height: 0;
}

#ft_pagetop:before{ 
	top: 7px; 
	left: 14px; 
	width: 15px; 
	transform: rotate(-60deg); 
	transform-origin: top center;
}

#ft_pagetop:after{ 
	top: 7px; 
	left: 23px; 
	width: 15px; 
	transform: rotate(60deg); 
	transform-origin: top center;
}


#ft_pagetop a{ 
	color: #333; 
	text-decoration: none; 
	display: block; 
	width: 50px; 
	height: 10em; 
	position: relative; 
	padding: 35px 0 0; 
	line-height: 50px; 
	box-sizing: border-box;
	text-shadow: 1px 1px 1px #fff;
}

/*#ft_pagetop a:hover{ 
	color: #999;
}*/

#ft_pagetop{ right: 0;}
#ft_copyright { left: 0; padding: 0 0 1em;}
#ft_copyright small{ -webkit-text-orientation: sideways; text-orientation: sideways;}

@media screen and (max-width: 1100px){
	#footer .ft_block1 > div{ 
		width: 100%; 
	}
}
@media screen and (max-width: 600px) {
	#footer { 
		padding: 0 0 10px;
	}

	#footer .ft_block1{ 
		background: #000;
		padding-top:5px;
	}

	/*#footer .ft_block1 .acc_tit{ 
		display: block; 
		text-align: center; 
		padding: 10px 0; 
		position: relative;
	}

	#footer .ft_block1 .acc_tit:before,
	#footer .ft_block1 .acc_tit:after{ 
		content: ""; 
		display: block; 
		width: 10px; 
		height: 1px; 
		background: #fff; 
		position: absolute; 
		top: 50%;
	}

	#footer .ft_block1 .acc_tit:before{
		right: 17px; 
		transform: rotate(45deg);
	}

	#footer .ft_block1 .acc_tit:after{ 
		right: 10px; 
		transform: rotate(-45deg);
	}

	#footer .ft_block1 .acc_tit.active:before{ 
		right: 17px; 
		transform: rotate(-45deg);
	}

	#footer .ft_block1 .acc_tit.active:after{ 
		right: 10px; 
		transform: rotate(45deg);
	}*/

	#footer .ft_block1 > div{ width: 92%; margin: 0 auto; padding: 0 0 10px; display: block;}
	#footer .ft_block1 ul{ font-size: 14px; display: flex; flex-wrap: wrap;}
	#footer .ft_block1 ul li{ margin: 0; width: 50%;}
	#footer .ft_block1 ul li.full{ width: 100%;}
	#footer .ft_block1 ul li a{ background: url("../img/ico_arrow5.png") no-repeat 15px center; background-size: 6px; padding: 8px 0 8px 2em; display: block;}
	#footer .ft_block1 ul li ul{ padding: 0 0 0 4em; display: block;}
	#footer .ft_block1 ul li ul li{ list-style: disc; margin: 0; width: 100%;}
	#footer .ft_block1 ul li ul li a{ background: none; padding: 5px 0;}
	#footer .ft_block2{ padding: 25px 0;}
	#footer .ft_block2 .ft_logo{ padding: 0 0 15px;}
	#footer .ft_block2 .ft_btns{ width: 92%; margin: 0 auto;}
	#footer .ft_block3{ padding: 10px 4%; font-size: 11px;}
	#footer .ft_block3 ul{ display: flex; justify-content: flex-start; flex-wrap: wrap; padding: 0 0 0 35px;}
	#footer .ft_block3 ul li{ margin: 0 20px 0 0;}
	#footer .ft_block3 ul li a{ padding: 10px 20px 10px 0;}
	#footer .ft_block3 ul li:first-child{ padding: 0 0 0 35px; margin: 0 20px 0 -35px;}

	#ft_pagetop,
	#ft_copyright{ 
		position: static; 
		width: 50%; 
		line-height: 1.2;
	}

	#ft_pagetop{ 
		float: right; 
		text-align: right; 
		padding: 0 4% 80px 0; 
		position: relative;
	}

	#ft_pagetop:before,
	#ft_pagetop:after{ 
		content: ""; 
		display: block; 
		position: absolute; 
		height: 1px; 
		background: #003530 !important; 
		line-height: 0; 
		/* transform-origin: 0 0; */
		transform-origin: right top;
	}

	#ft_pagetop:before{ 
		/* top: 9px; */
		top: 0px; 
		left: inherit; 
		right: 18px;
		/* right:0; */
		width: 10px; 
		transform: rotate(-45deg);
	}

	#ft_pagetop:after{  
		/* top: 2px; */
		top:10px;
		left: inherit; 
		/* right: 10px; */
		right:17px;
		width: 10px; 
		transform: rotate(90deg);
	}

	#ft_pagetop a{ color: #666; text-decoration: none; display: block; width: 100%; height: auto; padding: 0 20px 0 0; box-sizing: border-box; line-height: 1; -webkit-writing-mode: horizontal-tb; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb;}
	#ft_pagetop{ float: right; text-align: right; padding: 0 4% 80px 0;}
	#ft_copyright { float: left; padding: 0 0 80px 4%;}
	#ft_copyright small{ -webkit-text-orientation: sideways; text-orientation: sideways; -webkit-writing-mode: horizontal-tb; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb;}
}

@media screen and (max-width: 320px) {
	#footer .ft_block2 ul li{ 
		font-size: 13px;
	}
}


/* ---------------------------------------------------
sp_nav
------------------------------------------------------ */

/*
#sp_nav {
	display: none;
}

@media screen and (max-width: 1100px) {
	#sp_nav { 
		display: block; 
		position: fixed; 
		bottom: 0; 
		left: 0; 
		background: #fff; 
		border-top: 1px solid #000; 
		z-index: 10;
	}
	#sp_nav ul { 
		display: table; 
		width: 100%; 
		table-layout: fixed; 
		height: 70px;
	}
	#sp_nav li { 
		display: table-cell; 
		-webkit-box-sizing: border-box; 
		box-sizing: border-box; 
		vertical-align: middle;
	}
	#sp_nav li:nth-child(2){ 
		border-left: 1px solid #78655b;
	}
	#sp_nav li:nth-child(3){ 
		background: #78655b; 
		border-right: 1px solid #fff;
	}
	#sp_nav li:nth-child(4){ 
		background: #003530; 
		border-right: 1px solid #fff;
	}
	#sp_nav li:nth-child(5){ 
		background: #000;
	}
	#sp_nav li > div,
	#sp_nav a { 
		display: block; 
		padding: 10px; 
		text-align: center;
	}
	#sp_nav img { 
		width: 55px;
	}
}
*/

.sample1_1 {
	margin-left: 50px;
}
.sample1_1::before {
	top:10px;
	position:absolute;
	content:'';
	left: 35px;
	width: 5px;
	height: 1px;
	background: #7a0;
}
.sample1_1::after {
	top:8px;
	position:absolute;
	content:'';
	left: 35px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #7a0;
	border-right: 1px solid #7a0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/* Section Dark Start */
.type_dark{ 
	position: relative; 
	background: #003530; 
	color: #fff; 
	display: flex; 
	flex-direction: row-reverse; 
	padding: 50px 0 100px; 
	overflow: hidden;
	border-top:1px solid #fff;
}

.type_dark .img{ 
	width: 56%; 
	text-align: right;
}

.type_dark .img img{ 
	width: 800px; 
	height: auto;
}

.type_dark .wrap{ 
	width: 44%; 
	min-width: 480px;
}

.type_dark .box_txt{ 
	position: relative; 
	width: 480px; 
	margin: 0 auto; 
	font-size: 15px; 
	line-height: 2; 
	padding: 0 0 40px 0; 
	box-sizing: content-box;
}

.type_dark .box_txt h2{ 
	font-size: 30px; 
	line-height: 1; 
	letter-spacing: 0.1em; 
	width: 100%; 
	text-align: center; 
	margin: 60px auto 80px;
}

.type_dark .box_txt h2 span{ 
	font-size: 14px; 
	color: #8EF090; 
	border-bottom: solid 1px #8EF090; 
	display: block; 
	padding: 0 0 10px; 
	margin: 0 0 20px;
}

.type_dark .box_txt h3{ 
	font-size: 24px; 
	line-height: 1.7; 
	letter-spacing: 0.1em;
}

.type_dark .box_txt p{ 
	font-size: 15px; 
	line-height: 2; 
	padding: 40px 0 60px;
}

.type_dark .box_txt p.btn_cmn1{ 
	float: right; 
	margin: 0 30px 0 0;
}



/* Section Dark End   */


/* Section Type Light Start */

.type_light{ 
	position: relative; 
	background: #fff; 
	display: flex; 
	padding: 100px 0; 
	overflow: hidden;
}

.type_light .img{ 
	width: 56%;
}
.type_light .img img{ 
	width: 737px; 
	height: auto;
}

.type_light .wrap{ 
	width: 44%; 
	min-width: 480px;
}

.type_light .box_txt{ 
	position: relative; 
	width: 480px; 
	margin: 0 auto; 
	font-size: 15px; 
	line-height: 2; 
	padding: 0 0 40px 0; 
	box-sizing: content-box;
}

.type_light .box_txt h2{ 
	font-size: 30px; 
	line-height: 1; 
	letter-spacing: 0.1em; 
	width: 100%; 
	text-align: center; 
	margin: 60px auto 80px;
}

.type_light .box_txt h2 span{ 
	font-size: 14px; 
	color: #5a3025; 
	border-bottom: solid 1px #000; 
	display: block; 
	padding: 0 0 10px; 
	margin: 0 0 20px;
}

.type_light .box_txt h3{ 
	font-size: 24px; 
	line-height: 1.7; 
	letter-spacing: 0.1em;
}

.type_light .box_txt p{ 
	font-size: 15px; 
	line-height: 2; 
	padding: 40px 0 60px;
}

.type_light .box_txt p.btn_cmn1{ 
	float: left; 
	padding: 0;
}

.type_light .box_txt p.btn1{ 
	margin: 50px 70px 0 0;
}

.type_light .box_txt p.btn_cmn1 a{ 
	padding: 20px 50px;
}


@media screen and (max-width: 1100px) {
	.type_dark .wrap, 
	.type_light .wrap{ 
		width: 60% !important; 
		min-width: initial !important;
	}
	.type_dark .box_txt, 
	.type_light .box_txt{ 
		width: 100% !important; 
	}
	.type_dark .box_txt h2, 
	.type_light .box_txt h2{ 
		font-size: 1.7em; 
		margin: 0.5em auto 1em;
	}
	.type_dark .box_txt h3, 
	.type_light .box_txt h3{ 
		font-size: 1.2em; 
		text-align: center;
	}
	.type_dark .box_txt p, 
	.type_light .box_txt p{ 
		font-size: 1em; 
		text-align:center;
	}
	.type_dark .box_txt p.btn_cmn1, 
	.type_light .box_txt p.btn_cmn1{ 
		/* float: none; */
		float:initial !important; 
		margin: 0 !important; 
		text-align: center !important;
	}
}


@media screen and (max-width: 600px) {
	.type_dark{ 
		display: block; 
		padding: 30px 0;
	}

	.type_dark .img{ 
		width: 92%; 
		margin: 0 auto
	}

	.type_dark .img img{ 
		width: 100%; 
		height: auto;
	}

	.type_dark .wrap{ 
		width: 92%; 
		min-width: 0; 
		margin: 0 auto;
	}

	.type_dark .box_txt{ 
		position: relative; 
		width: 100%; 
		margin: 0; 
		padding: 0 0 20px 0;
	}

	.type_dark .box_txt h2{ 
		margin: 0 auto 30px;
	}

	.type_dark .box_txt h3{ 
		font-size: 20px; 
		text-align: center;
	}

	.type_dark .box_txt p{ 
		padding: 20px 0 20px;
	}

	.type_dark .box_txt p.btn_cmn1{ 
		float: none; 
		margin: 0; 
		text-align: center;
	}
}

@media screen and (max-width: 600px) {
	.type_light{ 
		min-height: 0; 
		display: block; 
		padding: 30px 0;
	}

	.type_light .img{ 
		width: 92%; 
		margin: 0 auto
	}

	.type_light .img img{ 
		width: 100%; 
		height: 100%;
	}

	.type_light .wrap{ 
		width: 92%; 
		min-width: 0; 
		margin: 0 auto;
	}

	.type_light .box_txt{ 
		position: relative; 
		width: 100%; 
		margin: 0; 
		font-size: 15px; 
		line-height: 2; 
		padding: 0 0 20px 0; 
		box-sizing: content-box;
	}

	.type_light .box_txt h2{ 
		margin: 0 auto 20px;
	}

	.type_light .box_txt h3{ 
		font-size: 20px;
	}

	.type_light .box_txt h3 br{ 
		display: none;
	}

	.type_light .box_txt p{ 
		padding: 20px 0 20px;
	}

	.type_light .box_txt .btns{ 
		display:flex; 
		justify-content: center;
	}

	.type_light .box_txt p.btn_cmn1{ 
		padding: 0; 
		margin: 0 30px 10px 0;
	}

	.type_light .box_txt p.btn1{ 
		margin: 0 50px 10px 0;
	}

	.type_light .box_txt p.btn_cmn1 a{ 
		padding: 20px 30px;
	}

}

@media screen and (max-width: 320px) {
	.type_light .box_txt p.btn1{ 
		margin: 0 40px 10px 0;
	}

	.type_light .box_txt p.btn_cmn1 a{ 
		padding: 20px 20px;
	}

}
/* Section Type Light End   */