﻿/*# sourceURL=shared/css/shared.css */
/*@ sourceURL=shared/css/shared.css */
html:not(.responsive) {
	min-width: 1300px; /* viewport */
}



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

body {
	color: #000;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	line-height: 30px;
	letter-spacing: 0;
	background: #FFF;
	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 {
}

.fnt-bell{
	font-family: 'Bellefair', serif;
}
.fnt-ami{
	font-family: 'Amiri', serif;
}
.fnt-noto{
	font-family: 'Noto Serif JP', serif;
}

.fnt-noto-san{
	font-family: 'Noto Sans JP', sans-serif;
}

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

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



.ttl{
	color: #FFF;
	background: rgba(195, 60, 1, 0.9);
	display: inline-block;
	font-size: 36px;
	padding: 10px 60px;
	font-weight: lighter;
}


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

header {
}
header h1 {
	font-size: 10px;
	color: #FFF;
	position: absolute;
	top: 120px;
	right: 75px;
}
header .logo {
	position: absolute;
	top: 50px;
	left: 0;
}
header .tel {
	position: absolute;
	top: 50px;
	right: 0;
}
header .navi {
	position: absolute;
	top: 400px;
	left: 0;
	width: 230px;
}

#navi_right {
	position: fixed;
	top: 50px;
	right: 0;
	z-index: 2;
	position: fixed;
	right: 0;
	height: 100%;
	z-index: 998;
	/* overflow-y: auto; */
	transition: all 0.5s;
}

#navi_right:before {
	position: absolute;
	content: "";
	background: #000;
	width: 300px;
	height: 100%;
	right: -300px;
	top: -50px;
	z-index: -1;
}

#navi_right.active {
	right: 300px;
}

#navi_right .btn1 {
	margin-bottom: 2px;
	margin-top: 2px;
	cursor:pointer;
}

#navi_right .btn_menu .bar {
	display: block;
	height: 4px;
	background-color: #fff;
	margin: 8px 0;
	transition: all 0.2s;
	transform-origin: 0 0;
}

#navi_right .btn_menu.btn1 {
	position: absolute;
	top: 26px;
	z-index: 999999;
	left: 0;
	right: 0;
	width: 35px;
	margin: 0 auto;
	cursor:pointer;
}

#navi_right .btn_menu.active .bar1 {
	transform: rotate(43deg);
	position: relative;
	top: 2px;
	left: 5px;
}

#navi_right .btn_menu.active .bar2 {
	opacity: 0;
}

#navi_right .btn_menu.active .bar3 {
	transform: rotate(-41deg);
	top: 1px;
	position: relative;
}

.navfix {
	background: rgba(32, 16, 8, 0.90);
	visibility: hidden;
	width: 300px;
	right: -300px;
	position: fixed;
	top: 0;
	transition: all 0.5s;
	z-index: 999;
	height: 100%;
}

.navfix.active {
	display: block;
	visibility: visible;
	position: fixed;
	top: 0;
	right: 0;
}

.navfix nav {
	padding-top: 85px;
	margin: 0 auto;
	width: 100%;
}

.navfix .btn_close, .tel_navi .btn_close {
	margin: 28px auto 0;
	text-align: center;
	cursor:pointer;
}

.navfix a {
	display: block;
}

#nav_right .navfix.active {
	display: block;
}

.tel_navi {
	background: rgba(32,16,8,0.92);
	visibility: hidden;
	width: 300px;
	right: -300px;
	position: fixed;
	top: 0;
	transition: all 0.5s;
	z-index: 999;
	padding-top: 138px;
	height: 100%;
}

.tel_navi.active {
	display: block;
	visibility: visible;
	position: fixed;
	top: 0;
	right: 0;
}




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

#key {
	background-color: #000;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	min-height: 860px;
	position: relative;
}
#key ul {
	min-height: inherit;
}
#key li {
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	min-height: inherit;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}



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

section {
}



/*=============================================
 * #socialbuttons
 *=============================================*/

#socialbuttons {
	text-align: center;
	padding-top: 40px;
}



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

footer {
	color: #FFF;
	background: url("../img/shared/bg-ft.jpg");
}
footer .logo {
	text-align: center;
	padding-top: 65px;
}
footer .tel{
	font-weight: lighter;
	width: 636px;
	margin: 17px auto 0;
	border-top: 1px solid #765f3b;
	border-bottom: 1px solid #765f3b;
	padding: 12px 0;
	text-align: center;
}

footer .mini{
	font-size: 14px;
}

footer .numbertel{
	font-size: 36px;
	padding: 3px 0;
}

footer .numbertel img{
	vertical-align: top;
    padding-top: 2px;
    margin-right: 3px;
}

footer .last{
	font-size: 12px;
} 

footer .menu-list{
	margin-left: 250px;
	padding-top: 30px;
}
footer .menu-list dl{
	line-height: 18px;
	padding-bottom: 15px;
}
footer .menu-list dt{
	width: 170px;
	float: left;
}
footer .menu-list dd{
	float: left;
}

footer .nav-inline{
	text-align: center;
	padding-top: 60px;
}

footer .nav-inline > a + a:before {
    content: "\7C";
    padding-right: 20px;
    padding-left: 20px;
}



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

address {
	font-size: 11px;
	padding-bottom: 55px;
	text-align: center;
	padding-top: 20px;
}


/*~~~~~~~~~*/

/*txt_eff*/

.wow.fadeInDown {
	position: relative;
}
.wow.fadeInDown .mask {
	content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #ddd0b1;
    left: 0;
	bottom: 0;
	z-index: 1;
}
@keyframes fadeMask {
	0% {
		height: 100%;
	}
	100% {
		height: 0;
		
	}
}
.fadeInDown .mask {
    -webkit-animation-name: fadeMask;
    animation-name: fadeMask;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
	animation-direction: alternate;
	-webkit-animation-fill-mode:both;
	animation-fill-mode:both;
}

.wow.fadeInDown .mask1 {
	content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #f9f9f6;
    left: 0;
	bottom: 0;
	z-index: 1;
}


.wow.fadeInLeft {
	position: relative;
}
.wow.fadeInLeft .mask {
	content: "";
    display: block;
    position: absolute;
    width: 100%;
	height: 100%;
    background-color: #cca973;
	right: 0;
	bottom: 0;
	z-index: 1;
}
@keyframes fadeLeftMask {
	0% {
		width: 100%;
	}
	100% {
		width: 0;
	}
}
.fadeInLeft .mask {
    -webkit-animation-name: fadeLeftMask;
    animation-name: fadeLeftMask;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
	animation-direction: alternate;
	-webkit-animation-fill-mode:both;
	animation-fill-mode:both;
}

/*~~~~~~~~~*/


/*btn_eff*/
.btn_ani1 {
    position: relative;
    overflow: hidden;
}

.btn_ani1 a {
    display: inline-block;
    position: relative;
}

.btn_ani1 .line {
    display: inline-block;
    position: relative;
}

.btn_ani1 .line:hover:before {
    width: 100%;
    transition: all 0.4s linear 0.5s;
}
.btn_on{
    position: absolute;
    left: 0;
    top: 0;
    visibility: visible;
    opacity: 1;
    transition: visibility 3s, opacity 2s linear 1s;

}

.btn_ani1:hover .btn_on{
  visibility: hidden;
  opacity: 0;
  transition: visibility 1s, opacity 0.5s linear;
}
/*~~~~~~~~~*/



/* OTHER */
.block{
	display: block;
}

.c-yell{
	color: #CCA00A;
}