﻿html:not(.responsive) {
	min-width: 1200px; /* viewport */
}

*{
	box-sizing: border-box;
}

/*=============================================
 * body
 *=============================================*/

body {
	color: #000;
	font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ明朝体 Pro", "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 15px;
	line-height: 40px;
	letter-spacing: 2.2px;
	background: url('../img/shared/pat1.jpg');
	min-width: inherit;
	min-height: inherit;
	max-height: 100%;
}



/*=============================================
 * fonts - DON'T EDIT
 *=============================================*/

.fnt-mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.fnt-meiryo {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.fnt-gothic {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}



/*=============================================
 * .fnt - customs
 *=============================================*/

.fnt-mincho {
}
.fnt-meiryo {
}
.fnt-gothic {
}
.fnt-garamond {
}



/*=============================================
 * <main>
 *=============================================*/

main {
	clear: both;
	width: 100%;
	position: relative;
	overflow: hidden;
}
.wrap {
	width: 1000px;
}



/*=============================================
 * <header>
 *=============================================*/

header {
	position: relative;
	z-index: 2;
}
header:before{
	content: '';
	height: 11px;
	background-image: url('../img/shared/line.png');
	background-repeat: repeat-x;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
}
header h1 {
	padding-top: 5px !important;
	margin-left: -4px !important;
	letter-spacing: 0.6px;
}
header .logo {
	width: 201px;
	float: left;
	margin-left: 30px;
	margin-top: 24px;
}
header nav {
	width: 400px;
	height: 177px;
	float: left;
	margin-left: 48px;
	margin-top: 32px;
}
header nav a{
	line-height: 25px;
	font-size: 18px;
	font-weight: bold;
	height: 177px;
	cursor: pointer !important;
	letter-spacing: 1px;
	margin-right: 13px;
	transition: 0.2s all ease-in-out;
	position: relative;
}
header nav a span{
	cursor: pointer !important;
}
header nav a:before{
	transition: 0.2s all ease-in-out;
}
header nav a:hover{
	text-decoration: none;
	color: #ce090f;
}
header nav a.active{
	color: #ce090f;
}
header nav a:hover:before,
header nav a.active:before{
	content: '';
	width: 5px;
	height: 5px;
	background: #ce090f;
	border-radius: 50%;
	position: absolute;
	top: -13px;
	left: 50%;
	transform: translateX(-50%);
}
header .hd-right{
	width: 265px;
	float: right;
	margin-top: 13px;
	margin-right: 21px;
}
header .hd-right .tel{
	margin-bottom: 20px;
}
header .hd-btn{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
header .hd-btn p + p{
	margin-left: 10px;
}
header .nav-fixed{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	opacity: 0;
	transition: opacity 0.5s ease;
	padding: 13px 0 12px;
	background: #fff;
	visibility: hidden;
}
header .nav-fixed .wrap{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
header .nav-fixed ul{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	font-weight: bold;
	line-height: 18px;
	margin-top: 15px;
	padding-left: 16px;
}
header .nav-fixed ul li{
	margin-top: 12px;
	margin-right: 18px;
	letter-spacing: 0.2px;
	text-align: center;
}
header .nav-fixed ul li:nth-child(5){
	margin-top: 0;
}
header .nav-fixed ul li:last-child{
	margin-right: 0;
}
header .nav-fixed ul li a{
	transition: 0.2s all ease-in-out;
}
header .nav-fixed ul li a:hover{
	text-decoration: none;
	color: #ce090f;
}
header .nav-fixed ul li a:hover span{
	border-bottom: 2px solid #ce090f;
}
header .nav-fixed ul li a.active{
	color: #ce090f;
}
header .nav-fixed ul li a span{
	padding-bottom: 11px;
}
header .nav-fixed ul li:nth-child(5) a span{
	padding-bottom: 3px;
}
header .nav-fixed ul li a.active span{
	border-bottom: 2px solid #ce090f;
}
header .nav-fixed .fixed-tel{
	margin: 7px 0;
}
header .nav-fixed.fixed {
	opacity: 1;
	visibility: visible;
}
header .fixed-btn{
	width: 55px;
	position: fixed;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 999;
	opacity: 0;
	visibility: hidden;
	transition: 0.5s all ease-in-out;
}
header .fixed-contact{
	margin-top: 15px;
}
.has_nav header .fixed-btn{
	opacity: 1;
	visibility: visible;
}

header .bnr_sns{
	display: flex;
	justify-content: space-between;
	padding: 15px 0 0 185px;
}
header .bnr_sns .icon-instagram{
	display: block;
	width: 30px;
	height: 30px;
	background: url("../img/shared/icon-instagram_b.png") no-repeat center center / contain;
}
header .bnr_sns .icon-x{
	display: block;
	width: 30px;
	height: 30px;
	background: url("../img/shared/icon-x_b.png") no-repeat center center / contain;
}

/*=============================================
 * key
 *=============================================*/


/*=============================================
 * <section>
 *=============================================*/

section {
	position: relative;
	z-index: 1;
}
section:before{
	content: '';
	height: 159px;
	background-image: url('../img/shared/pat5.png');
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: -1;
}
.pat1{
	background-image: url('../img/shared/pat1.jpg');
}
.pat2{
	background-image: url('../img/shared/pat2.jpg');
}
.pat3{
	background-image: url('../img/shared/pat3.jpg');
}
.pat4{
	background-image: url('../img/shared/pat4.jpg');
}
.pat5{
	background-image: url('../img/shared/pat5.jpg');
}

/*=============================================
 * <footer>
 *=============================================*/

footer {
	background: #fff;
	padding-bottom: 136px;
	position: relative;
	z-index: 1;
}
footer:before{
	content: '';
	height: 115px;
	background-image: url('../img/shared/pat5.png');
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}
footer:after{
	content: '';
	height: 115px;
	background-image: url('../img/shared/pat1.jpg');
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
}
footer .logo {
	text-align: center;
	width: 100%;
	margin: 56px 0 61px;
}
footer .tel {
}
footer nav {
	margin: 0 auto;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	border-bottom: 1px solid #7f7f7f;
	padding: 12px 0 11px;
	letter-spacing: 1px;
}
footer nav > a + a:before{
	content: '/';
	padding-right: 9px;
}
footer nav > a + a{
	padding-left: 9px;
}
footer .df{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
footer .df .tel{
	margin-left: 63px;
	margin-right: 59px;
}
footer .ft-reserve{
	margin-top: 7px;
	margin-right: 20px;
}
footer .ft-contact{
	margin-top: 7px;
}
footer .vcard{
	line-height: 30px;
	margin: 56px 0 38px;
}
footer .vcard-left{
	width: 470px;
	float: left;
}
footer .vcard-right{
	width: 470px;
	float: right;
}
footer .vcard dl{
	border-bottom: 1px solid #7f7f7f;
	padding-bottom: 15px;
	margin-bottom: 14px;
	letter-spacing: 2px;
}
footer .ft-bot{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	margin-top: 9px;
}
footer .ft-bot address,
footer .ft-bot .cookies_link{
	margin: 0 10px;
}
/*=============================================
 * .socialbuttons
 *=============================================*/



/*=============================================
 * copyright
 *=============================================*/

address {
	letter-spacing: 2.3px;
}
.cookies_link{
	letter-spacing: 2.3px;
}
@media all and (-ms-high-contrast:none) {
	.btn a img{
		transition: opacity 0s ease !important;
		-moz-transition: opacity 0s ease !important;
		-webkit-transition: opacity 0s ease !important;
	}
}
@-moz-document url-prefix() {
	.txt-vertical .txt-latin{
		position: relative;
		left: 4px;
	}
}