@charset "utf-8";

/*=====================================================
COMMON-LAYOUT
======================================================*/


img{
	-webkit-backface-visibility: hidden;
}


header{
	width:100%;
	position: absolute;
	top:0;
	left:0;
	z-index: 999999;
}

div.header{
	margin:0 auto;
	position:relative;
	max-width:1400px;
	padding:0 10px;
	height:60px;
	box-sizing: content-box;
	position: relative;
}

div.header h1{
	position:absolute;
	top:17px;
	left:10px;
	line-height:0;
	font-size:0;
}

ul.headnavi{
	position:absolute;
	top:0;
	right:10px;
	font-size:0;
	line-height:0;
	/*	width: 640px;*/
	/* width: 960px; */
	border-bottom: solid 1px #fff;
	text-align: center;
	display: flex;
}
ul.headnavi::after{
	content: "";
	width: calc(50vw - 700px);
	height: 1px;
	background: #fff;
	position: absolute;
	left:calc(100% - 10px);
	left:100%;
	bottom:-1px;
}
ul.headnavi li{
	/* float:left; */
	/* width: 12.5%; */
	margin-right:15px;
}
ul.headnavi li:last-child{
	/* width: 25%; */
}
ul.headnavi li a{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	text-align: center;
}
ul.headnavi li a::after{
	content: "";
	display: block;
	width: 0;
	height: 3px;
	background: #fff;
	position: absolute;
	left:50%;
	bottom:0;
	transition:all 0.2s linear;
}
ul.headnavi li a:hover::after{
	width: 100%;
	left:0;
}



.nav_btn{
	position:absolute;
	top:10px;
	right: 10px;
	width: 40px;
	height: 40px;
	margin: 0 auto;
	transition:all 0.5s ease-in-out;
	cursor: pointer;
	z-index: 9999;
	display: none;
}

.nav_btn.opened {
	/*background:rgba(255,255,255,0.7);*/
}
.nav_btn hr{
	width:100%;
	background:#fff;
	height:5px;
	position:absolute;
	border:none;
	transform-origin:center center;
	left:0;
	right:0;
	margin:0 auto;
	transition:top 0.2s ease-in-out 0.3s,transform 0.2s ease-in-out 0s;
}
.nav_btn.opened hr{
	transition:top 0.2s ease-in-out 0s,transform 0.2s ease-in-out 0.3s;
}
.nav_btn hr:nth-child(1){
	top:0;
}
.nav_btn hr:nth-child(2){
	top:27%;
}
.nav_btn hr:nth-child(3){
	top:54%;
}
.nav_btn.opened hr:nth-child(1){
	transform:rotate(45deg);
	top:35%;
}
.nav_btn.opened hr:nth-child(2){
	transform:scaleX(0);
	top:35%;
}
.nav_btn.opened hr:nth-child(3){
	transform:rotate(-45deg);
	top:35%;
}
.nav_btn:after {
	content:"MENU";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:25%;
	font-family: 'Sorts Mill Goudy',"Times New Roman", Times, serif;
	font-size:13px;
	/*font-weight:bold;*/
	color:#fff;
	text-align:center;
	transition:all 0.5s ease-in-out;
}
.nav_btn:before {
	content:"CLOSE";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:25%;
	font-family: 'Sorts Mill Goudy',"Times New Roman", Times, serif;
	font-size:13px;
	/*font-weight:bold;*/
	color:#fff;
	text-align:center;
	transition:all 0.5s ease-in-out;
	opacity:0;
}
.nav_btn.opened:after {
	opacity:0;
}
.nav_btn.opened:before {
	opacity:1;
}


nav.gnavi_wrap{
	position:relative;
}


ul.sp_nav {
	position:fixed;
	top:60px;
	left:0;
	right:0;
	background:#333;
	z-index:9999;
	display:none;
}
.sp_nav li {
	float:left;
	width:25%;
	border:1px solid #FFFFFF;
	box-sizing: border-box;
	text-align:center;
	line-height:40px;
}
.sp_nav li a {
	padding:0 1%;
	display:block;
	background:#EEE;
	color:#333;
	font-weight: bold;
	font-family: "游明朝 Medium", "Yu Mincho Medium", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
}
.sp_nav li a.cr,.sp_nav li a:hover {
	text-decoration:none;
	background:rgba(255,255,255,0.5);
}


.sp_nav li.inq {
	width:50%;
}

.sp_nav li.inq a {
	text-decoration:none;
	background:#ac8d32;
	color:#FFF;
}
.sp_nav li.res a {
	text-decoration:none;
	background:#660000;
	color:#FFF;
}
.sp_nav li.res30 a {
	text-decoration:none;
	background:#cf565d;
	color:#FFF;
}


div.contents_wrap{
	width:100%;
	background: #ebebeb;
}

ul.breadlist{
	max-width:960px;
	margin:0 auto ;
	padding:10px 10px;
	box-sizing: content-box;
}

ul.breadlist li{
	display: inline-block;
}

ul.breadlist li:after{
	content: "> ";
}

ul.breadlist li:last-child:after{
	content: none;
}

ul.breadlist li a{
	text-decoration: underline;
}

ul.breadlist li a:hover{
	text-decoration: none;
}

div.container{
	max-width:1400px;
	margin:0 auto;
	padding:30px 10px 50px;
	box-sizing: content-box;
}

footer{
	width:100%;
	background:#000;
	color: #fff;
}

div.footer{
	max-width:1400px;
	margin:0 auto;
	padding:20px 20px;
	box-sizing: content-box;
}
div.footer .cap_l.capttl{
	font-size: 14px;
}

.copyright{
	background:#000;
	color:#CCC;
	padding:8px 0;
}
address{
	max-width:960px;
	margin:0 auto;
	box-sizing: content-box;
	padding:0 10px;
	text-align:center;
	font-style:normal;
	font-size:12px;
}

.yokoku li:first-child{
	float: left;
	width: 68px;
}
.yokoku li:last-child{
	float: right;
	width: calc(100% - 80px);
}

.pagetop {
	position: absolute;
	right: 5px;
	bottom:5px;
	z-index: 10;
}

.img_cap{
	position: relative;
}

.img_cap span{
	background: rgba(0,0,0,0.6);
	font-size:10px;
	display: block;
	padding:3px 5px;
	line-height: 1.5;
	color: #FFFFFF;
	position: absolute;
	bottom: 0;
	right: 0;
	text-align: right;
}

.img_cap.white span{
	background: rgba(255,255,255,0.6);
	color: #333333;
}


.bnr_wrap_under {
	width: 100%;
	padding: 0 0 25px;
	background: #ebebeb;
}

.bnr_inner p {
	max-width: 720px;
	margin: 0 auto;
}

.bnr_inner {
	max-width: 960px;
	margin: 0 auto;
	padding: 0 20px;
	font-size: 10px;
	line-height: 1.2;
}

.bnr_wrap {
	width: 100%;
	padding: 25px 0 10px;
	background: #ebebeb;
	text-align: center;
}

.bnr_wrap .inner {
	margin: 0 auto;
	max-width: 728px;
	font-size: 10px;
}

.cap_box {
	position: relative;
	width: 100%;
}
.cap_box img{
	width: 100%;
}

.t_cap_r {
	position: absolute;
	right: 5px;
	bottom: 5px;
	text-align: right;
	color: #fff;
	line-height: 1;
	text-shadow: 0 0 3px #000000, 2px 2px 3px #000000, -2px 2px 3px #000000, -2px -2px 3px #000000, 2px -2px 3px #000000;
	font-size: 12px;
	font-weight: bold;
	font-family: "游明朝 Medium", "Yu Mincho Medium", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
}
.t_cap_l {
	position: absolute;
	left: 5px;
	bottom: 5px;
	text-align: left;
	color: #fff;
	line-height: 1;
	text-shadow: 0 0 3px #000000, 2px 2px 3px #000000, -2px 2px 3px #000000, -2px -2px 3px #000000, 2px -2px 3px #000000;
	font-size: 12px;
	font-weight: bold;
	font-family: "游明朝 Medium", "Yu Mincho Medium", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
}

.t_cap_r_b {
	position: absolute;
	right: 5px;
	bottom: 5px;
	text-align: right;
	color: #000;
	text-shadow: 0 0 3px #fff, 2px 2px 3px #fff, -2px 2px 3px #fff, -2px -2px 3px #fff, 2px -2px 3px #fff;
	font-size: 12px;
	font-weight: bold;
	font-family: "游明朝 Medium", "Yu Mincho Medium", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
}
.t_cap_l_b {
	position: absolute;
	left: 5px;
	bottom: 5px;
	text-align: left;
	color: #000;
	text-shadow: 0 0 3px #fff, 2px 2px 3px #fff, -2px 2px 3px #fff, -2px -2px 3px #fff, 2px -2px 3px #fff;
	font-size: 12px;
	font-weight: bold;
	font-family: "游明朝 Medium", "Yu Mincho Medium", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
}

.t_cap_r_b.no {
	text-shadow: none;
}


.mincho .cap_l{text-align:left;font-size:12px;font-weight: bold;}
.mincho .cap_r{text-align:right;font-size:12px;font-weight: bold;}


#topStageNav {
	position: fixed;
	top: 50%;
	right: 20px;
	width: 23px;
	height: 155px;
	margin-top: -77.5px;
	z-index: 9999
}

#topStageNav:before {
	content: "";
	display: block;
	position: absolute;
	top: -16px;
	left: 11px;
	width: 1px;
	height: 16px;
	background: -webkit-linear-gradient(top, rgba(170,141,104,0) 0%, rgba(170,141,104,.6) 100%);
	background: linear-gradient(to bottom, rgba(170,141,104,0) 0%, rgba(170,141,104,.6) 100%);
}

#topStageNav:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -16px;
	left: 11px;
	width: 1px;
	height: 16px;
	background: -webkit-linear-gradient(top, rgba(170,141,104,.6) 0%, rgba(170,141,104,0) 100%);
	background: linear-gradient(to bottom, rgba(170,141,104,.6) 0%, rgba(170,141,104,0) 100%);
}

#topStageNav li {
	position: relative;
	padding-bottom: 10px;
}

#topStageNav li:after {
	content: "";
	display: block;
	position: absolute;
	top: 23px;
	left: 11px;
	width: 1px;
	height: 10px;
	background-color: rgba(170,141,104,.6);
}

#topStageNav li:last-child {
	padding-bottom: 0;
}

#topStageNav li:last-child:after {
	content: none;
}

#topStageNav a {
	display: block;
	position: relative;
	width: 23px;
	height: 23px;
	border: 1px solid transparent;
	border-radius: 11.5px;
}

#topStageNav a:before {
	content: "";
	display: block;
	position: absolute;
	top: -1px;
	left: 10px;
	width: 1px;
	height: 5px;
	background-color: rgba(170,141,104,.6);
}

#topStageNav a:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -1px;
	left: 10px;
	width: 1px;
	height: 5px;
	background-color: rgba(170,141,104,.6);
}

#topStageNav span {
	display: block;
	position: absolute;
	top: 4px;
	left: 4px;
	width: 13px;
	height: 13px;
	border-radius: 6.5px;
	background-color: rgba(170,141,104,.6);
	text-indent: -9999px;
	overflow: hidden;
	transition: background-color .2s linear;
}

#topStageNav a:hover span,
#topStageNav a:active span,
#topStageNav a.cr span {
	background-color: #aa8d68;
}

#topStageNav a.cr {
	border-color: rgba(170,141,104,.6);
}

#topStageNav a.cr:before,
#topStageNav a.cr:after {
	content: none;
}

@media screen and (max-width: 1420px){
	ul.headnavi::after{
		width: 10px;
	}
}
@media screen and (max-width: 1220px){
	div.header h1{
		width: 27%;
	}

	ul.headnavi{
		width: 70%;
	}

    ul.headnavi li{
    	margin-right:8px;
    }	
}




@media screen and (max-width: 768px){
	
	header{
		position: fixed;
		top:0;
		left:0;
		background: rgba(0,0,0,1);
	}

	div.header h1{
		width: 60%;
		top:10px;
	}
	
	ul.headnavi::after{
		display: none;
	}
	
	ul.headnavi{
		display:none;
	}
	

	.nav_btn{
		display:block;
	}
	

	
	
.yokoku li:first-child{
	float: none;
}
.yokoku li:last-child{
	float: none;
	width: 100%;
}
	
.t_cap_r {
	right: 5px;
	bottom: 5px;
	font-size: 10px;
}
.t_cap_l {
	left: 5px;
	bottom: 5px;
	font-size: 10px;
}

.t_cap_r_b {
	right: 5px;
	bottom: 5px;
	font-size: 10px;
}
.t_cap_l_b {
	left: 5px;
	bottom: 5px;
	font-size: 10px;
}


div.footer .cap_l.capttl{
	font-size: 11px;
}

	
	#topStageNav {
		display: none;
	}	
.mincho .cap_l{text-align:left;font-size:10px;font-weight: bold;}
.mincho .cap_r{text-align:right;font-size:10px;font-weight: bold;}
}


@media screen and (max-width: 600px){

	.sp_nav li {
		width:50%;
	}
	.sp_nav li.long {
		width:100%;
	}
	.sp_nav li.inq {
		width:100%;
	}
	.sp_nav li.res {
		width:100%;
	}	
}