@charset "UTF-8";

/*---base stylesheet---*/
/*------------------

1.共通設定
2.レイアウト
3.インデックス
4.下層ページレイアウト

-----------------*/


/*1.共通設定
======================================*/
* {
	margin: 0;
	padding: 0;
	color: #626262;
	}
html{
	font-size: 62.5%;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.8;
	background:url(../images/bg.jpg) repeat 0 0;
	}
body#frgPage {
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 15px;
	font-size: 1.5rem;
	}
img {
	border: 0;
	vertical-align:bottom;
	}

a {
	color: #7d0000;
	}

ul, li {
	list-style: none;
	}




/*======================================

Font-size Adjustment
77% = 10px	| 	122% = 16px	|	167% = 22px	
85% = 11px	|	129% = 17px	|	174% = 23px
92% = 12px	|	136% = 18px	|	182% = 24px
100% = 13px	|	144% = 19px	|	189% = 25px
107% = 14px	|	152% = 20px	|	197% = 26px
114% = 15px	|	159% = 21px	|

=======================================*/

/*----マージン・パディング----*/
.mt5  { margin-top: 5px !important;}
.mt10 {	margin-top: 10px !important;}
.mt15 {	margin-top: 15px !important;}
.mt20 {	margin-top: 20px !important;}
.mt25 {	margin-top: 25px !important;}
.mt30 {	margin-top: 30px !important;}
.mt40 {	margin-top: 40px !important;}
.mt50 {	margin-top: 50px !important;}
.mb5  { margin-bottom: 5px !important;}
.mb10 {	margin-bottom: 10px !important;}
.mb15 {	margin-bottom: 15px !important;}
.mb20 {	margin-bottom: 20px !important;}
.mb25 {	margin-bottom: 25px !important;}
.mb30 {	margin-bottom: 30px !important;}
.mb35 {	margin-bottom: 35px !important;}
.mb40 {	margin-bottom: 40px !important;}
.mb50 {	margin-bottom: 50px !important;}
.ml5  {	margin-left: 5px !important;}
.ml10 {	margin-left: 10px !important;}
.ml15 {	margin-left: 15px !important;}
.ml20 {	margin-left: 20px !important;}
.ml25 {	margin-left: 25px !important;}
.ml30 {	margin-left: 30px !important;}
.mr5  {	margin-right: 5px !important;}
.mr10 {	margin-right: 10px !important;}
.mr15 {	margin-right: 15px !important;}
.mr20 {	margin-right: 20px !important;}
.mr25 {	margin-right: 25px !important;}
.mr30 {	margin-right: 30px !important;}
.pb5  {	padding-bottom: 5px !important;}
.pb10 {	padding-bottom: 10px !important;}
.pb15 {	padding-bottom: 15px !important;}
.pb20 {	padding-bottom: 20px !important;}
.pb25 {	padding-bottom: 25px !important;}
.pb30 {	padding-bottom: 30px !important;}
.pt5  {	padding-top: 5px !important;}
.pt10 {	padding-top: 10px !important;}
.pt15 {	padding-top: 15px !important;}
.pt20 {	padding-top: 20px !important;}
.pt25 {	padding-top: 25px !important;}
.pt30 {	padding-top: 30px !important;}
.pt40 {	padding-top: 40px !important;}
.pa10 {	padding: 10px !important;}
.pa20 {	padding: 20px !important;}
.pr5  {	padding-right: 5px !important;}
.pr10 {	padding-right: 10px !important;}
.pr15 {	padding-right: 15px !important;}
.pr20 {	padding-right: 20px !important;}
.pr25 {	padding-right: 25px !important;}
.pr30 {	padding-right: 30px !important;}
.pl120 { padding-left: 120px !important; }


/*----アライン----*/
.cen   { text-align: center !important; }
.left  { text-align: left !important; }
.right { text-align: right !important; }


/*----テキスト----*/
.bold {	font-weight: bold !important;}
.txtRed {	color: #ff0000 !important;}
.txtBlue {	color: #0052E5 !important;}
.txtPink {	color: #F246A4 !important;}
.txtGold {	color: #A98552 !important;}
.txtGray {	color: #666666 !important;}
.txtWhite {	color: #FFFFFF !important;}

.txt11 { font-size: 92% !important;}
.txt13 { font-size: 109% !important;}
.txt14 { font-size: 117% !important;}
.txt15 { font-size: 125% !important;}
.txt17 { font-size: 142% !important;}
.txt18 { font-size: 150% !important;}
.txt20 { font-size: 167% !important;}

	
		


/*----クリア----*/
.clear {
	clear: both;
	}
/*--clearfix--*/
.cf,#main,.contBox {
	*zoom: 1;
	}
.cf:before, .cf:after,#main:before, #main:after,.contBox:before, .contBox:after {
	content: " ";
	display: table;
	}
.cf:after,#main:after,.contBox:after {
	clear: both;
	}

/*----フロート----*/
.fLeft {
	float: left !important;
}

.fRight {
	float: right !important;
}

.img_float_l {
	float: left;
	margin-right: 20px;
}

.img_float_r {
	float: right;
	margin-left: 20px;
}

/*上部固定メニュー*/
div#traceBg {
	z-index: 1000;
	width:100%;
	min-width: 960px;
	height:90px;
	position:fixed;
	top:-90px;
	left:0;
	background:url(../images/tgm_bg.png) repeat 0 0;
	}
	
div#trace {
	width:960px;
	height:90px;
	margin:0 auto;
	position:relative;
	}	
	
div#trace p {
	width:210px;
	height:60px;
	position:absolute;
	top:15px;
	left:0;
	}	
	
div#trace ul {
	width:618px;
	position:absolute;
	right:0;
	top:15px;
	}
	
div#trace ul li {
	float:left;
	}		
	
	
	

/*2.レイアウト
======================================*/
#wrapper {
	width: 100%;
	position: relative;
	overflow: hidden;
}

.cont_s {
	display: none;
}
@media screen and (max-width:768px) {
	.cont_s {
		display: block;
	}
}


/*ヘッダー*/
header{
	width:960px;
	height:170px;
	position:relative;
	margin:0 auto;
	background:url(../images/header_bg.jpg) no-repeat center 0;
	}
header#frgHeader {
	background:url(../images/header_bg.jpg) no-repeat 0 0;
	}
@media screen and (max-width:768px) {
	header#frgHeader {
		width:100%;
		height:120px;
		background:url(../images/header_bg.jpg) no-repeat center 0;
		}
}
h1,header h2,header nav {
	position:absolute;
	}	
	
h1 {
	font-size:11px;
	top:5px;
	left:0;
	}
h1.frg_h1 {
	top: 75px;
	left: 150px;
	font-size: 12px;
	letter-spacing: 0.5em;
}
header h2 {
	width:200px;
	height:90px;
	left:378px;
	top:39px;
	/*z-index:9999;*/
	}
header#frgHeader h2 {
	width:132px;
	height:63px;
	left: 0;
	top:42px;
}
@media screen and (max-width:768px) {
	h1.frg_h1 {
		width: 100%;
		top: 10px;
		left: 0;
		font-size: 1.0rem;
		text-align: center;
		letter-spacing: 0.5em;
	}
	header#frgHeader h2 {
		width:100%;
		top:40px;
		text-align: center;
	}
}
header#frgHeader p {
	position: absolute;
}
.h_tel {
	top: 40px;
	right: 0;
	font-size: 30px;
}
.h_tel span {
	display: inline-block;
	margin: 0 10px 0 0;
	font-size: 15px;
	color: #a40000;
}
.h_tel img {
	display: inline-block;
	margin: 0 10px 0 0;
	vertical-align: baseline;
}
.h_add {
	top: 80px;
	right: 0;
	font-size: 15px;
}
@media screen and (max-width:768px) {
	.h_tel, .h_add {
		display: none;
	}
}


/*グローバルナビ*/
header nav {
	width:930px;
	height:130px;
	top:40px;
	left:30px;
	}	
	
header nav li {
	float:left;
	width:30px;
	margin:0 30px 0 0;
	}
	
header nav li.gn_sp {
	margin:0 360px 0 0;
	}	
	
header nav li a {
	display:block;
	width:30px;
	height:130px;
	}	

header nav#frgNav {
	width: 100%;
	top: 130px;
	left: 0;
	box-sizing: border-box;
}
@media screen and (max-width:768px) {
	header nav#frgNav {
		display: none;
	}
}
header nav#frgNav ul {
	width: 100%;
	text-align: center;
	font-size: 0;
	box-sizing: border-box;
}
header nav#frgNav ul li {
	display: inline-block;
	width: 20%;
	height: 20px;
	margin: 0;
	border-left: 1px solid #000000;
	line-height: 1.0;
	box-sizing: border-box;
}
header nav#frgNav ul li:last-child {
	border-right: 1px solid #000000;
}
header nav#frgNav ul li a {
	display: block;
	width: 100%;
	color: #000000;
	font-size: 15px;
	line-height: 1.0;
	text-align: center;
	text-decoration: none;
}
header nav#frgNav ul li a:hover {
	color: #a40000;
}

header ul.langChange {
	position: absolute;
	width: 500px;
	top: 3px;
	right: 0;
	text-align: right;
}

header ul.langChange li{
	display: inline-block;
	padding: 0 5px 0 0;
}

header ul.langChange li a{
	color: #000;
	font-size: 13px;
	text-decoration: none;
	background: url(../images/icon01.png) no-repeat 0 6px;
	padding: 0 0 0 12px;
}

@media screen and (max-width:768px) {
	header ul.langChange {
		display: none;
	}
}
/*----メイン画像----*/
div#mainImg {
	width:960px;
	height:500px;
	margin:0 auto 40px;
	position:relative;
	}
	
div#mainImg p.txt,
div#mainImg p.btn {
	position:absolute;
	}	


div.mainImg {
	width:1560px;
	height:500px;
	margin:0 -300px;
	
	}
	
div.mainImg_area {
	width:1560px;
	height:500px;
	
	}	
	
div#mainImg p.img {
	}	
	
div#mainImg p.txt {
	width:90px;
	left:435px;
	top:60px;
	z-index:999;
	}	

div#mainImg p.btn {
	width:176px;
	height:181px;
	right:0;
	bottom:20px;
	z-index:999;
	}		
	
	
	
/*pankuzu*/
div.pankuzuArea {
	width:960px;
	margin:-30px auto 20px;
	position:relative;
	}
@media screen and (max-width:768px) {
	div.pankuzuArea {
		width: 90%;
		}
}
ul.pankuzu {
	}
	
	ul.pankuzu li {
		float:left;
		font-size:11px;
		}
		ul.pankuzu li a {
			color:#6a3906;
			font-size:11px;
			}
		ul.pankuzu li a:hover {
			text-decoration:none;
			}
		ul.pankuzu li p {
			display:inline;
			color:#a40000;
			}
	


/*----検索パネル----*/
form#panel {
	width:600px;
	color:#000;
	font-size:11px;
	}
	
	form#panel p {
		border-top:1px dotted #CCC;
		color:#000;
		padding:10px 0 0;
		margin:8px 0 0;
		}
	
	.form_l,.form_s {
		border:1px solid #CCC;
		background:#fff;
		color:#000;
		margin:0 0 5px;
		}
	
	option,label {
		background:#fff;
		color:#000;
		}	
	
	.form_l {
		width:60px;
		}
		
	.form_s {
		width:45px;
		}
		
	.form_b {
		width:120px;
		padding:3px;
		margin:5px auto 0;
		color:#000;
		display:block;
		}


/*----フッター----*/
div#footer {
	width:100%;
	height:460px;
	background:url(../images/footer_bg.jpg) repeat 0 0;
	}
@media screen and (max-width:768px) {
	div#footer {
		height:auto;
		padding: 0 0 10px;
		}	
}
footer {
	width:960px;
	background:url(../images/footer_shadow.png) no-repeat center 0;
	position:relative;
	margin:0 auto;
	}
@media screen and (max-width:768px) {
	footer {
		width:100%;
		position: static;
	}
}	
footer p,
footer nav {
	position:absolute;
	color:#d4ceca;
	font-size:11px;
	text-align:center;
	}	
@media screen and (max-width:768px) {
	footer p,
	footer nav {
		position:static;
		text-align:center;
		}	
}
p#f_logo {
	width:200px;
	height:105px;
	left:378px;
	top:89px;
	}
@media screen and (max-width:768px) {
	p#f_logo {
		width:100%;
		height:auto;
		margin-bottom: 20px;
		}
}
footer nav {
	width:930px;
	height:130px;
	top:89px;
	left:30px;
	}	
	
footer nav li {
	float:left;
	width:30px;
	margin:0 30px 0 0;
	}
	
footer nav li.gn_sp {
	margin:0 360px 0 0;
	}	
	
footer nav li a {
	display:block;
	width:30px;
	height:130px;
	}
	
p.f_txt {
	width:800px;
	left:80px;
	top:300px;
	}	
	
p.f_add {
	width:800px;
	left:80px;
	top:320px;
	}	
	
p.copy {
	width:800px;
	left:80px;
	top:380px;
	}						
@media screen and (max-width:768px) {
	p.f_txt, p.f_add, p.copy {
		width:100%;
		margin: 0 auto 15px;
		}	
}
/*pageTop*/
#pageTop {
	width:120px;
	left:420px;
	top:20px;
	}
@media screen and (max-width:768px) {
	#pageTop {
		width:100%;
		margin: 0 auto 20px;
		padding: 10px 0 0;
		}
}
	
/*----Ttl----*/	
.h3_ttl {
	width:600px;
	margin:0 auto;
	}

.h3_ttl_sub {
	width:600px;
	margin:20px auto 0;
	}

.ttl_txt {
	color:#ae906b;
	text-align:center;
	margin:0 0 30px;
	}	
	
	
/*----Btn----*/
p.btn_l {
	width:290px;
	margin: 0 auto ;
	clear:both;
	}	
	

			
	

/*3.レイアウト
======================================*/
div#main {

}

.contArea {
	background:url(../images/bg2.jpg) repeat 0 0;
	border-top:1px solid #f1e7d7;
	}
		
.contArea02 {
	margin-bottom:-10px;
	padding-bottom:40px;
	background:url(../images/bg3.jpg) repeat 0 0;
	border-top:1px solid #f1e7d7;
	}
	
div#under_contactArea {
	width:100%;
	background:url(../images/undex_contact_bg.png) repeat-x 0 0;
	padding:10px 0 0;
	}	
	
div.under_contactBox {
	width:960px;
	margin:0 auto;
	background:url(../images/undex_contact_shadow.jpg) repeat-y 620px 0;
	}	
	
div.uc_l {
	width:635px;
	float:left;
	padding:30px 0;
	}
	
div.uc_l h3 {
	margin:0 0 10px;
	}

div.uc_l ul {
	margin:15px 0 0;
	}
	
div.uc_l li a{
	display:block;
	float:left;
	background:url(../images/mark01.png) no-repeat 0 4px;
	padding:0 0 0 20px;
	color:#930;
	}		
	
div.uc_r {
	width:300px;
	float:right;
	padding:30px 0;
	}
	
div.uc_r p.txt {
	color:#996c33;
	font-size:12px;
	margin:0 0 15px;
	}	
	
div.uc_r p.btn {
	margin:0 0 10px;
	}



/*--プルダウンメニュー--*/
@media screen and (max-width:768px) {
	p.menu {
		width:30px;
		right:10px;
		top:70px;
		position:absolute;
		z-index:1000;
		}

	p.menu .menu-trigger,
	p.menu .menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
		}
	p.menu .menu-trigger {
		position: relative;
		width: 30px;
		height: 24px;
		}
	p.menu .menu-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 4px;
		background-color: #a40000;
		border-radius: 4px;
		}
	p.menu .menu-trigger span:nth-of-type(1) {
		top: 0;
		}
	p.menu .menu-trigger span:nth-of-type(2) {
		top: 10px;
		}
	p.menu .menu-trigger span:nth-of-type(3) {
		bottom: 0;
		}
	p.menu .menu-trigger span:nth-of-type(4) {
		bottom: -7px;
		font-size:10px;
		color: #039e5f;
		background:none;
	}	

	p.menu .menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(10px) rotate(-45deg);
		transform: translateY(10px) rotate(-45deg);
	}
	p.menu .menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}
	p.menu .menu-trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) rotate(45deg);
		transform: translateY(-10px) rotate(45deg);
	}
	.closebtn {
		display: block;
		width: 80%;
		margin: 20px auto 50px;
		padding: 15px 0;
		background: #666666;
		text-align: center;
		color: #ffffff;
		font-size: 1.6rem;
		text-decoration: none;
	}
	.reservlink {
		display: block;
		width: 80%;
		margin: 20px auto 0;
		padding: 15px 0;
		background: #910f0f;
		text-align: center;
		color: #ffffff;
		font-size: 1.6rem;
		text-decoration: none;
	}
	.dl-menu {
		display:none;
		width:100%;
		height: 100vh;
		padding: 30px 0 0;
		position:absolute;
		top:0;
		right:0;
		z-index:999;
		background-color: rgba( 0, 0, 0, 0.9 );
		overflow: auto;
	}
	ul#spNav {
		width: 80%;
		height: auto;
		margin: 0 auto 30px;
	}
	ul#spNav li {
		padding: 10px 0;
	}
	ul#spNav li a {
		display: block;
		width: 100%;
		font-size: 2.5rem;
		color: #ffffff;
		text-align: center;
		text-decoration: none;
	}
	ul.splangNav {
		width: 100%;
		margin: 0 0 20px;
		text-align: center;
		font-size: 0;
	}
	ul.splangNav li {
		display: inline-block;
		width: 25%;
		text-align: center;
	}
	ul.splangNav li a {
		display: inline-block;
		padding: 0 0 0 15px;
		background: url(../images/li_arr.png) no-repeat 0 7px;
		font-size: 1.5rem;
		color: #f5f5f5;
		text-decoration: none;
	}
	.dl-menu p {
		margin: 0 auto 20px;
		font-size: 3.0rem;
		color: #ffffff;
		text-align: center;
	}
	.dl-menu p a {
		color: #ffffff;
		text-decoration: none;
	}
	.dl-menu p img {
		display: inline-block;
		margin: 0 10px 0 0;
		vertical-align: baseline;
	}
	.dl-menu p span {
		font-size: 2.0rem;
		color: #ffffff;
	}
}


.reservBtn {
	position: fixed;
	top: 25%;
	right: 0;
}
.reservBtn a {
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.reservBtn a:hover {
	opacity: 0.6;
}
@media screen and (max-width:480px) {
	.reservBtn {
		display: none;
	}
}


/*--Add 180403--*/
.fix_chat {
	position: fixed;
	width: 240px;
	height: 77px;
	bottom: 0;
	right: 0;
}



