@charset "utf-8";

/* Preferences
----------------------------------------------------------- */
* {
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Verdana,"ＭＳ Ｐゴシック","MS PGothic",sans-serif !important;
	margin: 0;
	padding: 0;
}
/* html5 reset css */
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, a, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, dialog, figure, footer, header,hgroup, menu, nav, section,time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; background: transparent; } article, aside, dialog, figure, footer, header,hgroup, nav, section {display:block;} nav ul {list-style:none;} blockquote, q {quotes:none;} blockquote:before, blockquote:after,q:before, q:after { content:''; content:none; } ins { background-color:#ff9; color:#000; text-decoration:none; } mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; } del {text-decoration: line-through;} abbr[title], dfn[title] { border-bottom:1px dotted #000; cursor:help; } hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; } input, select {vertical-align:middle;} 
/* //html5 reset css */

body{
	color: #fff;
	line-height: 1.6;
	text-align: left;
	font-size: 14px;
}

@media screen and (max-width: 1000px) {
	body{
	}
}

ul{list-style-type: none;}
ul.circle{list-style-type: circle;margin-left:1.2em;}
ul.disc{list-style-type: disc;margin-left:1.2em;}
ul,ol{margin-left:1.2em;}

h1,h2,h3,h4,h5,h6{
	font-size: 100%;
	font-weight: normal;
}
p{margin-bottom: 1em;}
em,address{
	font-weight: normal;
	font-style: normal;
}
table{
	border-collapse: collapse;
	width: 100%;
}
th,td{
	padding: 0.5em 1em;
	border-bottom: 1px #ddd dotted;
	font-weight: normal;
	vertical-align: middle;
}
@media screen and (max-width: 1000px) {
	th,td{
		font-size: 12px;
	}
}
img{
	border: 0;
	vertical-align: middle;
}
blockquote{
	margin: 0 0 1em;
	padding: 1em;
	background-color: #555;
}
blockquote p{margin: 0;}

a{
	text-decoration: none;
    color: #b81e42;
	outline: none;
}
a:hover{
	text-decoration: underline;
}

/* public css
----------------------------------------------------------------*/
.clear{clear: both;}
.cf:after {visibility: hidden;display: block;font-size: 0;content: " ";clear: both;height: 0;overflow: hidden;}
* html .cf{ zoom: 1; } /* ie6 */
*:first-child+html .cf { zoom: 1; } /* ie7 */

.center{text-align: center;}
.left{text-align: left;}
.right{text-align: right;}
.red{color: #a10000;}
.bold{font-weight: bold;}
.big{font-size: 150%;}
.small{font-size: 75%;}

.fright{float: right;}
.fleft{float: left;}

.br-sp{display: none;}

@media screen and (max-width: 1000px) {
	.fright,.fleft{float: none;}
    .br-sp{display: block;}
}

/*space*/
.mt0{margin-top: 0;}.mt5{margin-top: 5px;}.mt10{margin-top: 10px;}.mt15{margin-top: 15px;}.mt20{margin-top: 20px;}.mt25{margin-top: 25px;}.mt30{margin-top: 30px;}.mt35{margin-top: 35px;}.mt40{margin-top: 40px;}.mt45{margin-top: 45px;}.mt50{margin-top: 50px;}.mt100{margin-top: 100px;}
.mr0{margin-right: 0;}.mr5{margin-right: 5px;}.mr10{margin-right: 10px;}.mr15{margin-right: 15px;}.mr20{margin-right: 20px;}.mr25{margin-right: 25px;}.mr30{margin-right: 30px;}.mr35{margin-right: 35px;}.mr40{margin-right: 40px;}.mr45{margin-right: 45px;}.mr50{margin-right: 50px;}.mr100{margin-right: 100px;}
.mb0{margin-bottom: 0;}.mb5{margin-bottom: 5px;}.mb10{margin-bottom: 10px;}.mb15{margin-bottom: 15px;}.mb20{margin-bottom: 20px;}.mb25{margin-bottom: 25px;}.mb30{margin-bottom: 30px;}.mb35{margin-bottom: 35px;}.mb40{margin-bottom: 40px;}.mb45{margin-bottom: 45px;}.mb50{margin-bottom: 50px;}.mb100{margin-bottom: 100px;}.ml0{margin-left: 0;}
.ml5{margin-left: 5px;}.ml10{margin-left: 10px;}.ml15{margin-left: 15px;}.ml20{margin-left: 20px;}.ml25{margin-left: 25px;}.ml30{margin-left: 30px;}.ml35{margin-left: 35px;}.ml40{margin-left: 40px;}.ml45{margin-left: 45px;}.ml50{margin-left: 50px;}.ml100{margin-left: 100px;}.pt0{padding-top: 0;}
.pt5{padding-top: 5px;}.pt10{padding-top: 10px;}.pt15{padding-top: 15px;}.pt20{padding-top: 20px;}.pt25{padding-top: 25px;}.pt30{padding-top: 30px;}.pt35{padding-top: 35px;}.pt40{padding-top: 40px;}.pt45{padding-top: 45px;}.pt50{padding-top: 50px;}.pt100{padding-top: 100px;}
.pr0{padding-right: 0;}.pr5{padding-right: 5px;}.pr10{padding-right: 10px;}.pr15{padding-right: 15px;}.pr20{padding-right: 20px;}.pr25{padding-right: 25px;}.pr30{padding-right: 30px;}.pr35{padding-right: 35px;}.pr40{padding-right: 40px;}.pr45{padding-right: 45px;}.pr50{padding-right: 50px;}.pr100{padding-right: 100px;}
.pb0{padding-bottom: 0;}.pb5{padding-bottom: 5px;}.pb10{padding-bottom: 10px;}.pb15{padding-bottom: 15px;}.pb20{padding-bottom: 20px;}.pb25{padding-bottom: 25px;}.pb30{padding-bottom: 30px;}.pb35{padding-bottom: 35px;}.pb40{padding-bottom: 40px;}.pb45{padding-bottom: 45px;}.pb50{padding-bottom: 50px;}.pb100{padding-bottom: 100px;}.pl0{padding-left: 0;}
.pl5{padding-left: 5px;}.pl10{padding-left: 10px;}.pl15{padding-left: 15px;}.pl20{padding-left: 20px;}.pl25{padding-left: 25px;}.pl30{padding-left: 30px;}.pl35{padding-left: 35px;}.pl40{padding-left: 40px;}.pl45{padding-left: 45px;}.pl50{padding-left: 50px;}.pl100{padding-left: 100px;}
.mb05e{margin-bottom: 0.5em;}.mb1e{margin-bottom: 1em;}.mb2e{margin-bottom: 2em;}.mb3e{margin-bottom: 3em;}.mb4e{margin-bottom: 4em;}.mb5e{margin-bottom: 5em;}

.sh{
	position: absolute !important;
	clip: rect(1px 1px 1px 1px);
}

/* ---------------- header */
#fixed-top{
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 4;
}

header{
	height: 80px;
    background-color: #121212;
    border-bottom: 1px solid #242424;
}
#header_in{
	width: 1000px;
	margin: 0 auto;
}
#logo{float: left;}
#logo a{
	display: block;
	background: url('../img/logo.png') no-repeat left top;
    width: 276px;
	height: 80px;
	text-indent: -9999px;
	background-size: 100% auto;
	-webkit-background-size: 100% auto;
}

#nav{float: right;}
#nav #gm{margin: 0;}
#nav #gm li{
	float: left;
}
#nav #gm li a{
	display: block;
	height: 80px;
    color: #fff;
	line-height: 80px;
	text-align: center;
	font-size: 12px;
    padding: 0 1rem;
	transition: all 0.4s ease;
	box-sizing: border-box;
}
#nav #gm li a:hover{
	color: #fff;
    background-color: #8b0000;
	text-decoration: none;
}

#sp_menu{display: none;}

@media screen and (max-width: 1000px) {
	header{
		height: 60px;
	}
	#header_in{
		width: auto;
		padding: 0 1em;
		margin: 0;
	}
	#logo a{
        width: 207px;
		height: 60px;
	}
	#nav{display: none;}
	
	#sp_menu{
		display: block;
		float: right;
		padding: 10px 0;
		height: 40px;
	}
	#sb_btn{
		float: right;
		display: block;
		width: 40px;
		height: 40px;
		text-indent: -9999px;
		background: url('../img/sb_btn.png') no-repeat left top;
		background-size: 100% auto;
		-webkit-background-size: 100% auto;
		margin-left: 10px;
	}
	#sb_tel,#sb_reservation{
		float: right;
		display: block;
		width: 40px;
		height: 40px;
		text-indent: -9999px;
	}
	#sb_tel{
		background: url('../img/sb_tel.png') no-repeat left top;
		background-size: 100% auto;
		-webkit-background-size: 100% auto;
	}
	#sb_reservation{
		background: url('../img/sb_reservation.png') no-repeat left top;
		background-size: 100% auto;
		-webkit-background-size: 100% auto;
	}
}

/* ---------------- footer */
footer{
    background-color: #8b0000;
	padding: 1em 0;
}
#f_wrap{
	color: #fff;
	font-size: 85%;
	text-align: center;
}

#sp_gm{
	margin: 0;
	border-bottom: 1px solid rgba(255,255,255,0.1);
}
#sp_gm li{
	border-top: 1px solid rgba(255,255,255,0.1);
	border-bottom: 1px solid rgba(0,0,0,0.1);
}
#sp_gm li a{
	display: block;
	color: #fff;
	padding: 1em;
}
#sp_gm li a:hover{
	background-color: #2d2d2d;
}

/* ---------------- contents */
.top-padding{padding-top: 81px !important;}
#contents{padding-bottom: 80px;}

#visual_top{
	width: 100%;
	height: 0;
    padding-top: 50%;
    background-image: url('../img/img15.jpg');
/*    background-image: url('../img/visual_top.jpg');*/
	background-repeat: no-repeat;
	background-position: 50% 50%;
	/* background-attachment: fixed; */
	background-size: cover;
	-webkit-background-size: cover;
	position: relative;
}
#visual_text{
	width: 100%;
	text-align: center;
    padding-top: 40px;
}
#visual_text h2{
	font-size: 30px;
	line-height: 1.4;
}

.section_wrap{
	padding-top: 81px;
	width: 100%;
}
#s1.section_wrap{
	padding-top: 40px;
}

.title_wrap{
	width: 100%;
	padding: 2em 0;
	margin: 0 0 2em;
    background: url("../img/title_bg.png") repeat left top #8b0000;
}

.title_wrap .title{
	width: 1000px;
	margin: 0 auto;
	color: #fff;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif !important;
	font-size: 30px;
	line-height: 1.13;
	font-style: italic;
}

.section_inner{
	width: 1000px;
	margin: 0 auto;
}

.section_img{
    clear: both;
    margin-bottom: 1rem;
}
.section_img.mb0{
    margin-bottom: 0;
}
.section_img img{
    max-width: 100%;
    height: auto;
}

.ir{float: right;}
.il{float: left;}

.text_box{
	width: 490px;
	line-height: 2.2;
}
.info_box{
	width: 490px;
}
.text_box p{
    font-size: 16px;
}
#s7 .text_box p{
    font-size: 14px;
}

.sub_title{
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif !important;
	font-size: 130%;
	line-height: 1.4;
	padding: 0.4em 0;
	margin-bottom: 0.5em;
	text-align: center;
    background-color: #242424;
	border-radius: 0.2em;
	-webkit-border-radius: 0.2em;
	-moz-border-radius: 0.2em;
}

.sub_title_font{
    color: #b81e42;
	font-size: 120%;
    font-weight: bold;
}

#info{list-style: circle;}

.about_box{
    width: 490px;
    font-size: 16px;
}
.sitemap{
    font-size: 16px;
}
.sitemap ul{
    margin-left: 0;
}

.sitemap ul li ul {
    margin-top: .5em;
    margin-bottom: .75em;
    margin-left: 48px;
}

.sitemap ul li ul li {
    margin-bottom: .25em;
    position: relative;
}

.sitemap ul li ul li::before {
    content: "";
    position: absolute;
    top: -0.5em;
    left: -16px;
    width: 10px;
    height: calc(100% + .75em);
    border-left: 1px solid #777;
}

.sitemap ul li ul li:last-child::before {
    height: calc(1em + .25em);
}

.sitemap ul li ul li::after {
    content: "";
    position: absolute;
    top: .75em;
    left: -16px;
    width: 10px;
    border-bottom: 1px solid #777;
}

@media screen and (max-width: 1000px) {
	.top-padding{padding-top: 61px !important;}
	#contents{padding-bottom: 60px !important;}
	
	#visual_top{
        padding-top: 55%;
    }
	#visual_text{
		width: auto;
		padding-top: 1.5em;
	}
	#visual_text h2{
		font-size: 170%;
		line-height: 1.4;
	}
	
	.section_wrap{padding-top: 61px;}
    #s1.section_wrap{padding-top: 1.5em;}
    .title_wrap{
		width: auto;
		padding: 1em 1em;
		margin: 0 0 2em;
		background-size: 25px auto;
		-webkit-background-size: 25px auto;
	}
	.title_wrap .title{
		width: 100%;
		margin: 0;
		font-size: 143%;
	}
	.section_inner{
		width: auto;
		padding: 0 1em;
		margin: 0;
	}
	.ir,.il{
		float: none;
		width: 100%;
		height: auto;
		margin-bottom: 1em;
	}
    #s3 .ir,
    #s8 .ir{
		margin-bottom: 0;
	}
	.text_box,
    .info_box{
		width: auto;
    }
    .info_box{
		margin-bottom: 1em;
    }
	.text_box p{
        font-size: 14px;
    }
    .about_box{
        width: auto;
        font-size: 14px;
        margin-bottom: 1em;
    }
    .sitemap{
        font-size: 14px;
    }
    .sitemap ul li ul {
        margin-left: 24px;
    }
}

/* 概要 */
.overview th,.overview td{
	vertical-align: top;
	box-sizing: border-box;
	line-height: 1.75;
}
.overview th{width: 28%;}
.overview td{width: 72%;}

@media screen and (max-width: 1000px) {
	.overview th,.overview td{
		padding: 0.5em;
	}
    .overview th{width: 30%;}
    .overview td{width: 70%;}
}

/* マップ */
#map_box{
	width: 480px;
	float: right;
}
#map_wrap{
	padding-top: 62.5%;
	height: 0;
	overflow: hidden;
	position: relative;
}
#map_wrap iframe{
	height: 100% !important;
	left: 0;
	position: absolute;
	top: 0;
	width: 100% !important;
}

@media screen and (max-width: 1000px) {
	#map_box{
		width: auto;
		float: none;
		padding-top: 2em;
	}
}

/* お知らせ */
.info_list{
    margin: 0;
}
.info_list li{
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px #ddd dotted;
}
.info_list li:last-child{
    margin-bottom: 0;
}
.info_list li > p{
    margin-bottom: 0.5rem;
}
.info_list li > p .info_data{
    font-size: 75%;
}
.info_list li > p .info_title{
    font-size: 130%;
}
.info_list li > :last-child{
    margin-bottom: 0;
}

@media screen and (max-width: 1000px) {
    .info_list li > p .info_title{
        font-size: 16px;
    }
}

/* フォーム */
#conform{
	border-top: 1px dotted #ddd;
	padding-top: 1em;
}
.form_box{
	border-bottom: 1px dotted #ddd;
	padding: 0 0 1em;
	margin: 0 0 1em;
}
.form_box .ft{
	width: 25%;
	float: left;
	margin: 0;
}
.form_box .fc{
	width: 75%;
	float: right;
}
.check_label #check{
	margin-right: 5px;
}
#submit_box{
	margin: 0;
	text-align: center;
}
#submit_btn{
	font-size: 110%;
	padding: 0.2em 0.5em;
}

input[type="text"],input[type="email"],input[type="tel"],textarea,select{
	padding: 2px;
	border-style: solid;
	border-width: 1px;
	border-color: #e3e3e3;
	margin-bottom: 0;
	vertical-align: baseline;
	box-sizing: border-box;
	font-size: 100%;
	line-height: 1.6;
}
input[type="text"],input[type="email"],input[type="tel"],textarea{
	width: 100%;
}
input[type="text"]#zip{
	width: auto;
}

#privacy_box{width: 480px;}
#pp{
	font-size: 75%;
	line-height: 1.8;
}
#pp ol li{margin-bottom: 1em;}
#pp ol li:last-child{margin-bottom: 0;}
#pp ol li ul{margin-top: 1em;}
#pp ol li ul li{margin-bottom: 0;}

@media screen and (max-width: 1000px) {
	.form_box .ft,.form_box .fc{
		font-size: 12px;
	}
	#privacy_box{
		width: auto;
		padding-top: 2em;
	}
}