﻿@charset "utf-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;

	font-size: 1em;
}
@font-face {
    font-family: 'NotoSans';
    font-style: normal;
    font-weight: 300;
    src: url('../../font/NotoSansCJKjp-DemiLight.eot');
    src: url('../../font/NotoSansCJKjp-DemiLight-1.eot') format('embedded-opentype'),
    url('../../font/NotoSansCJKjp-DemiLight.woff') format('woff'),
    url('../../font/NotoSansCJKjp-DemiLight.ttf')  format('truetype');
}

@font-face {
    font-family: 'NotoSans';
    font-style: normal;
    font-weight: 400;
    src: url('../../font/NotoSansCJKjp-Regular.eot');
    src: url('../../font/NotoSansCJKjp-Regular-1.eot') format('embedded-opentype'),
    url('../../font/NotoSansCJKjp-Regular.woff') format('woff'),
    url('../../font/NotoSansCJKjp-Regular.ttf')  format('truetype');
}

@font-face {
    font-family: 'NotoSans';
    font-style: normal;
    font-weight: 700;
    src: url('../../font/NotoSansCJKjp-Bold.eot');
    src: url('../../font/NotoSansCJKjp-Bold-1.eot') format('embedded-opentype'),
    url('../../font/NotoSansCJKjp-Bold.woff') format('woff'),
    url('../../font/NotoSansCJKjp-Bold.ttf')  format('truetype');
}

/*!
 * "ipaexm" is lisenced under the IPAフォントライセンスv1.0
 * by http://ipafont.ipa.go.jp/node17#jp
 */

@font-face {
    font-family: 'ipaexm';
    font-style: normal;
    font-weight: 400;
    src: url('../../font/ipaexm.eot');
    src: url('../../font/ipaexm-1.eot') format('embedded-opentype'),
    url('../../font/ipaexm.woff') format('woff'),
    url('../../font/ipaexm.ttf')  format('truetype');
}

@font-face {
    font-family: 'YuMinN';
    src: url('../../fonts/YuMinN.eot');
    src: url('../../fonts/YuMinN.eot?#iefix') format('embedded-opentype'),
    url('../../font/ヒラギノ明朝\ ProN\ W3.woff') format('woff'),
    url('../../font/ヒラギノ明朝\ ProN\ W3.ttf')  format('truetype');
}
@font-face {
    font-family: 'trajan';
    src: url('../../font/trajan.eot');
    src: url('../../font/trajan.eot?#iefix') format('embedded-opentype'),
    url('../../font/TrajanPro-Regular.woff') format('woff'),
    url('../../font/TrajanPro-Regular.ttf')  format('truetype');
}
body,
table,
input, textarea, select, option {
	font-family: "NotoSans", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 300;
	line-height: 1.1;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

img {
	vertical-align: top;
}

a,
a:link {
	color: #000;
	text-decoration: none;
}

a:visited {
	color: #000;
	text-decoration: none;
}

a:hover {
	color: #000;
	text-decoration: none;
}

a:active {
	color: #000;
	text-decoration: none;
}

a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}

/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1200px;
	color: #222;
	font-size: 12px;
	line-height: 1.5;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
	background: url(../../img/common/body_bg.jpg) repeat center top;
}

#container {
	text-align: left;
}

#main {
	padding: 134px 0 130px;
}


/*--#main.bento {
	padding: 20px 0 0;
}--*/

#cover {
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1000;
	background-color: #000;
}

.coverNone {
	display: none !important;
}

/*------------------------------------------------------------
	headerロゴ 追加
------------------------------------------------------------*/
#gHeader .topBox .logoBox {
    padding: 20px 30px 20px 0;
    float: right;
    position: relative;
    z-index: 100;
}

#gHeader .topBox .logoBox a {
    float: left;
    display: inline-block;
    margin-left: 28px;
}

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	width: 100%;
	position: fixed;
	z-index: 2000;
	background-color: #fff;
	min-width: 1100px;
	left: 0;
	top: 0;
}

#gHeader .logo {
	padding: 11px 0 0 27px;
	float: left;
}

#gHeader .rLink {
	float: right;
	font-size: 0;
}

#gHeader .rLink a {
	display: inline-block;
	position: relative;
	overflow: hidden;
}

#gHeader .rLink a img {
 	display: block;
}

#gHeader .rLink a:before {
	position: absolute;
	z-index: -2;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: #C99E61;
}

#gHeader .rLink a:nth-child(1):before {
	background-color: #c19f65;
}

#gHeader .rLink a:nth-child(2):before {
	background-color: #9c804b;
} 

#gHeader .rLink a:after {
	position: absolute;
	display: block;
	left: -100%;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	content: "";
    box-sizing: border-box;
    transition: all 0.3s ease 0s;
}

.ie8 #gHeader .rLink a:after,
.ie9 #gHeader .rLink a:after {
	left: 0;
}

#gHeader .rLink a:hover:after {
	left: 0;
	background-color: #E9B366;
}

.mobile #gHeader .rLink a:hover:after {
	display: none;
}

#gHeader .spMenu {
	display: none;
}

#gHeader .menuBox {
	display: none;
}

/*------------------------------------------------------------
	gNavi
------------------------------------------------------------*/
#gNavi {
	margin-left: -278px;
	width: 556px;	
	position: absolute;
	left: 50%;
	top: 23px;
}

#gNavi li {
	padding-left: 27px;
	float: left;
}

#gNavi li:first-child {
	padding-left: 0;
}

#gNavi a {
	position: relative;
	display: inline-block;
	transition: .3s;
}

#gNavi a:after {
	position: absolute;
	bottom: -2px;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #BA9257;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%); 
}

.ie8 #gNavi a:after,
.ie9 #gNavi a:after {
	left: 0;
}

#gNavi a:hover:after {
	width: 100%;
}

.mobile #gNavi a:hover:after {
	display: none;
}

#gNavi a:hover img {
	visibility: hidden;
}

#gNavi .navi01 a {
	background: url(../../img/common/navi01_over.gif) no-repeat center top;
	background-size: cover;
}

#gNavi .navi02 a {
	background: url(../../img/common/navi02_over.gif) no-repeat center top;
	background-size: cover;
}

#gNavi .navi03 a {
	background: url(../../img/common/navi03_over.gif) no-repeat center top;
	background-size: cover;
}

#gNavi .navi04 a {
	background: url(../../img/common/navi04_over.gif) no-repeat center top;
	background-size: cover;
}

#gNavi .navi05 a {
	background: url(../../img/common/navi05_over.gif) no-repeat center top;
	background-size: cover;
}

#gNavi .navi06 a {
	background: url(../../img/common/navi06_over.gif) no-repeat center top;
	background-size: cover;
}

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	padding: 33px 0 20px;
	overflow: hidden;
	background-color: #fff;
}


#gFooter .pageTop {
	margin-bottom: 104px;
	text-align: center;
}

#gFooter .pageTop a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

#gFooter .fBox {
	margin: 0 auto 90px;
	width: 730px;
}

#gFooter .fBox .fLink {
	width: 106px;
	float: right;
	padding: 3px 0;
}

#gFooter .fBox .fLink img {
	display: block;
}

#gFooter .fBox .fLink a {
	display: inline-block;
	position: relative;
}

#gFooter .fBox .fNavi {
	float: left;
}

#gFooter .fBox .fNavi li {
	padding-left: 27px;
	float: left;
}

#gFooter .fBox .fNavi li a {
	display: block;
	position: relative;
}


#gFooter .fBox .fNavi li a:after,
#gFooter .fBox .fLink a:after {
	position: absolute;
	bottom: -2px;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #BA9257;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.ie8 #gFooter .fBox .fNavi li a:after,
.ie8 #gFooter .fBox .fLink a:after,
.ie9 #gFooter .fBox .fNavi li a:after,
.ie9 #gFooter .fBox .fLink a:after {
	left: 0;
}

#gFooter .fBox .fNavi li a:hover:after,
#gFooter .fBox .fLink a:hover:after {
	width: 100%;
}

.mobile #gFooter .fBox .fNavi li a:hover:after,
.mobile #gFooter .fBox .fLink a:hover:after {
	display: none;
}

#gFooter .fBox .fNavi li a:hover img {
	visibility: hidden;
}

#gFooter .fBox .fNavi .navi01 a {
	background: url(../../img/common/f_link01_over.gif) no-repeat center top;
	background-size: cover;
}

#gFooter .fBox .fNavi .navi02 a {
	background: url(../../img/common/f_link02_over.gif) no-repeat center top;
	background-size: cover;
}

#gFooter .fBox .fNavi .navi03 a {
	background: url(../../img/common/f_link03_over.gif) no-repeat center top;
	background-size: cover;
}

#gFooter .fBox .fNavi .navi04 a {
	background: url(../../img/common/f_link04_over.gif) no-repeat center top;
	background-size: cover;
}

#gFooter .fBox .fNavi .navi05 a {
	background: url(../../img/common/f_link05_over.gif) no-repeat center top;
	background-size: cover;
}

#gFooter .fBox .fNavi .navi06 a {
	background: url(../../img/common/f_link06_over.gif) no-repeat center top;
	background-size: cover;
}

#gFooter .fBox .fNavi .navi07 a {
	background: url(../../img/common/f_link07_over.gif) no-repeat center top;
	background-size: cover;
}

#gFooter .fBox .fNavi li:first-child {
	padding-left: 0;
}

#gFooter .smallLink {
	margin: 0 21px 20px;
}

#gFooter .smallLink li {
	padding-left: 22px;
	float: left;
}

#gFooter .smallLink li a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

#gFooter .smallLink li:first-child {
	padding-left: 0;
}

#gFooter .smallLink .facebook a{
	margin: 2px 0 0;
	display: block;
	width: 176px;
}

#gFooter .smallLink .facebook img{
	width: 100%;
}

#gFooter .fLinkUl {
	padding-left: 30px;
	float: left;
}

#gFooter .fLinkUl li {
	margin-right: 10px;
	display: inline;
	font-size: 11px;
	float: left;
}

#gFooter .fLinkUl li a {
	margin-right: 10px;
	display: inline-block;
	position: relative;
}

#gFooter .fLinkUl li a:after {
	position: absolute;
	bottom: -2px;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #555;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.ie8 #gFooter .fLinkUl li a:after,
.ie9 #gFooter .fLinkUl li a:after {
	left: 0;
}

.mobile #gFooter .fLinkUl li a:hover:after {
	display: none;
}

#gFooter .bottomBox {
	position: relative;
}

#gFooter .fLinkUl li a:hover:after {
	width: 100%;
}

#gFooter .copyright {
	padding: 5px 30px 0 0;
	float: right;
	text-align: right;
	font-size: 10px;
}

#gFooter .p_mark {
	position: absolute;
	bottom: 27px;
	right: 30px;
}

.sp {
	display: none !important;
}

.f_txt {
	float: left;
}

/*メニューをページ下部に固定*/
#sp-fixed-menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
   opacity: 0.9;
   z-index: 99;
}

/*メニューを横並びにする*/
#sp-fixed-menu ul{
   display: flex;
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
}

#sp-fixed-menu li{
   justify-content: center;
   align-items: center;
   width: 33%;
   padding:0;
   margin:0;
   font-size: 14px;
   border-right: 1px solid #fff;
   background-color:#030;
}



/*ボタンを調整*/
#sp-fixed-menu li a{
   color: #fff;
   text-align: center;
   display:block;
   width: 100%;

}



@media all and (min-width: 0px) and (max-width: 768px) {
	.pc {
		display: none !important;
	}
	
	.sp {
		display: block !important;
	}
	
	.target {
		opacity: 0;
	}
	
	a {
		line-height: 1.8;	
	}
	
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
	

	
	/*------------------------------------------------------------
		レイアウト
	------------------------------------------------------------*/
	body {
		min-width: inherit;
		background: url(../../img/common/body_bg.jpg) repeat center top;
		background-size: 650px auto;
	}
	
	#cover {
		display: none !important;
	}
	
	#main {
		padding: 90px 0 10px;
	}
	
	#main.bento {
    	padding: 90px 0 10px;
	}
	
	/*------------------------------------------------------------
		ヘッダー
	------------------------------------------------------------*/	
	#gHeader {
		padding: 9px 16px 8px;
		box-sizing: border-box;
		min-width: inherit;
	}
	
	#gHeader .logo {
		padding: 0;
		width: 57px;
		float: left;
	}
	
	#gHeader .header .hInner .logo img {
		width: 100%;
	}
	
	#gHeader .hInner .logo img {
		width: 57px;
		height: 30px;
	}
	
	
	#gHeader .rLink {
		display: none;
	}
		
	#gHeader .spMenu {
		padding: 0 1px 0 0;
		display: block;
		float: right;
	}
	
	#gHeader .menuBox {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 9999;
		overflow-y: auto;
		background: url(../../img/common/sp_bg01.png) repeat left top;
	}
	
	#gHeader .menuBox .close {
		padding: 14px 20px 30px 0;
		text-align: right;
	}
	
	#gHeader .menuBox .spNavi {
		width: 251px;
		margin: 0 auto;
		margin-top: 10px;
		margin-bottom: 52px;
	}
	
	#gHeader .menuBox .spNavi li {
		margin-bottom: 13px;
		opacity: 0;
		filter: alpha(opacity=0);
	}
	#gHeader .menuBox .spNavi li:nth-child(2n + 1){
		margin-right: 23px;
	}
	#gHeader .menuBox .spNavi li:nth-child(7){
		margin-bottom: 40px;
	}
	#gHeader .menuBox .spNavi li:nth-child(-n + 7) {
		float: left;
	}
	#gHeader .menuBox .spNavi li:nth-last-child(2) {
		margin-bottom: 11px;
	}

	#gHeader .menuBox .spNavi li a {
		display: block;
		text-align: center;
	}
	#gHeader .menuBox .spLink {
		width: 280px;
		margin: 0 auto;
		padding-bottom: 25px;
		padding-left: 8px;
		text-align: center;
		line-height: 2.8;
		clear: both;
	}
	
	#gHeader .menuBox .spLink .last {
		display: block;
	}
	
	#gHeader .menuBox .spLink li {
		margin: 0 3px;
		display: inline;
		opacity: 0;
		filter: alpha(opacity=0);
		font-size: 10px;
		color: #000;
	}
	
	#gHeader .menuBox .spLink li a {
		margin-right: 10px;
	}
	
	.spNavi_tel{
		margin-bottom: 35px !important;
	}
	
	.spButton{
		width: 359px !important;
		margin: 0 auto!important;
		margin-bottom: 20px !important;
		padding-left: 0px !important;
	}
	
	.spButton li{
		margin: 0 !important;
	}
	
	.spButton li:last-child{
		margin-left: -4px !important;
	}
	
	.spButton li a{
		margin: 0 !important;
	}
	
	
	/*------------------------------------------------------------
		gNavi
	------------------------------------------------------------*/
	#gNavi {
		display: none;
	}
	
		
	/*------------------------------------------------------------
		フッター
	------------------------------------------------------------*/
	#gFooter {
		padding: 20px 0 5px;
		overflow: hidden;
		background-color: #fff;
	}
	
	
	#gFooter .pageTop {
		display: none;
	}
	
	#gFooter .fBox {
		display: none
	}
	
	#gFooter .fBox .fLink {
		float: none;
	}
	
	#gFooter .fLinkUl {
		width: 304px;
		margin: 14px auto 35px;
		padding: 0 0 0 16px;
		float: none;
		text-align: center;
	}
	
	#gFooter .fLinkUl li {
		margin: 0 3px;
		float: left;
		display: inherit;
		line-height: 2.4;
	}
	
	#gFooter .fLinkUl li a:after {
		display: none;
	}
	
	#gFooter .fLinkUl .purpose02 {
		padding-left: 92px;
	}
	
	#gFooter .copyright {
		padding: 0;
		float: none;
		text-align: left;
		margin-left: -21px;
		margin-bottom: 7px;
	}
	
	#gFooter .smallLink {
		margin-bottom: 14px;
		margin-left: 5px;
		text-align: left;
	}
	
	#gFooter .smallLink li {
		margin: 0 5px;
		padding: 0;
		display: inline;
		float: none;
	}
	
	#gFooter .smallLink .facebook a{
		margin: 14px 0 0 4px;
	}
	
	#gFooter .f_middle {
		padding-top: 2px;
	}
	
	#gFooter .fl01 {
		padding-left: 20%;
	}
	
	#gFooter .p_mark {
		position: absolute;
		bottom: 7px;
		right: 12px;
	}
	
	#gFooter .smallLink li span {
		margin-left: 5px;
	}
	
	#gFooter .p_mark img {
		width: 58px;
		height: auto;
	}
	
	#gFooter .fLinkUl li a {
		margin-right: 5px;
	}
	
	.dsn {
		display: none;;
	}
	
	
}

@media all and (max-width: 359px) {
	
	.spButton{
		width: 300px !important
	}

	.spButton li img{
		width: 140px;
	}



}

@media (min-width: 768px) {
   .for-sp{
      display:none;
    }
}

/* Safe desktop nav fix */
@media screen and (min-width: 768px) {
  #gHeader .spMenu,
  #gHeader .menuBox {
    display: none !important;
  }
}
