@charset "UTF-8";
/* ****************************************************************** 

	--style.css--

	1. Style setting
		1-1. FontColor styles
		1-2. Headline styles

	2. Layout setting
		2-1. Base styles
		2-2. Header styles
		2-3. Navi styles
		2-4. Main styles
		2-5. Side styles
		2-6. Footer styles

****************************************************************** */

/*==================================================================
	1. Style setting
===================================================================*/

/* ------------------------------------------------------------------
	1-1. FontColor styles
-------------------------------------------------------------------*/
html { color:#FFF; }
a:link, a:visited { color:#06C; }
body {
	background:#643700;
	line-height:1.8em;
	min-width:320px;
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	letter-spacing:0.2em;
}
.touchHover,
.noTapColor,
button { -webkit-tap-highlight-color:rgba(0,0,0,0); }

.pcDisplay {
	display:block;
}
.spDisplay {
	display:none;
}
.tbDisplay {
	display:none;
}
@media screen and (max-width:1200px) {
.pcDisplay {
	display:none;
}
.spDisplay {
	display:block;
}
}

/*==================================================================
	2. Layout setting
===================================================================*/

/* ------------------------------------------------------------------
	2-1. Base styles
-------------------------------------------------------------------*/
#contents {
	clear:both;
	margin:0 auto;
}
.container {
	clear:both;
	max-width:1020px;
	margin:0 auto;
	padding:0 20px;
}
@media screen and (max-width:1200px) {
  .container {
    max-width:1020px;
    margin:0 auto;
    padding:0 25px;
  }
}
/* ------------------------------------------------------------------
	2-2. Header styles
-------------------------------------------------------------------*/
.headerInner {
	margin:0 auto;
	position:relative;
	padding:0 100px;
	left:0;
	top:0;
  width:100%;
	z-index:9999;
	background:transparent;
  display: flex;
  justify-content: space-between;
}
header#header {
	position:fixed;
	z-index:999;
	top:0;
	width:100%;
	transition:0.3s all;
	left:0;
}
h1 {
  display: block;
  padding-top: 37px;
  max-width: 75px;
  transition:0.3s all;
}
h1 a{
  display: block;
  line-height: 0;
}
#logo img {
	width: 100%;
}
.bgHeader {
	background:#000;
}
.bgHeader h1 {
	padding: 15px 0 8px;
	image-rendering: optimizeSpeed;
	image-rendering: -moz-crisp-edges;
	image-rendering: -o-crisp-edges;
	image-rendering: -webkit-optimize-contrast;
	image-rendering: optimize-contrast;
	-ms-interpolation-mode: nearest-neighbor;
}
@media screen and (max-width:768px) {
	.headerInner {
		padding: 13px 0 10px 25px;
	}
	#logo img {
		width: 94px;
	}
  h1 {
    padding-top: 0;
    max-width: 74px;
    transition:0.3s all;
  }
}

/* ------------------------------------------------------------------
	2-3. Navi styles
-------------------------------------------------------------------*/
.hNav {
	float:right;
}
.navi li {
	float:left;
	position:relative;
	margin-left:0px;
	list-style:none outside none;
}
.navi li a {
	position:relative;
	display:block;
	margin:2px 18px 0;
	padding:37px 0 10px;
	color:#FFF;
	font-size:13px;
	font-weight:bold;
	text-decoration:none;
	letter-spacing:2.9px;
	-webkit-transition:all 0.2s linear;
	-moz-transition:all 0.2s linear;
	transition:all 0.2s linear;
}
.navi li a:hover {
	background:transparent;
	color:#FFF;
}
.navi li a:after {
	position:absolute;
	bottom:0;
	left:50%;
	content:"";
	width:0;
	height:2px;
	background:#FFF;
	transition:all 0.3s linear 0s;
	-webkit-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	transform:translateX(-50%);
}
.navi li a:hover:after {
	width:100%;
}
.boxTel,
.openNav {
	display:none;
}
@media screen and (min-width:1201px) {
	#navi {
		display:block !important;
	}
}
@media screen and (max-width:1200px) {
	.hNav {
		overflow:hidden;
		display:none;
	}
	.openNav {
		display:block;
	}
	#navi {
		display:none;
		float:none;
		position:absolute;
		left:0;
		top:100%;
		width:100%;
		margin:0;
		letter-spacing:1px;
		text-align:center;
		overflow:auto;
		padding-bottom:30px;
		-webkit-overflow-scrolling:touch;
	}
	#navi li {
		float:none;
		padding-bottom:45px;
	}
	#navi li a {
		margin:2px 0 0;
		padding:0;
		font-size:14px;
	}
	#navi li a:after {
		display:none;
	}
	#navi .boxTel {
		display:block;
		padding:20px 0 0;
	}
	#navi .boxTel .title {
		padding-bottom:18px;
	}
	#navi .boxTel .phone {
		margin:0 auto;
		max-width:240px;
	}
	#navi .boxTel .phone a {
		padding:16px 15px;
		display:block;
		background:#B9002F;
		color:#FFF;
		text-decoration:none;
		font-size:15px;
		letter-spacing:4px;
	}
/*---------------------------------------
	openNav
---------------------------------------*/
	.openNav {
		position:absolute;
		top:50%;
		right:100px;
		margin-top:-10px;
	}
	.menu-trigger {
		height:18px;
		position:relative;
		width:23px;
	}
	.menu-trigger span {
		overflow:hidden;
		text-indent:50px;
	}
	.menu-trigger:before,
	.menu-trigger:after {
		content:"";
	}
	.menu-trigger,
	.menu-trigger:before,
	.menu-trigger:after,
	.menu-trigger span {
		box-sizing:border-box;
		display:inline-block;
		transition:all 0.4s ease 0s;
	}
	.menu-trigger span,
	.menu-trigger:before,
	.menu-trigger:after {
		background-color:#FFF;
		height:2px;
		left:0;
		position:absolute;
		width:100%;
	}
	.menu-trigger:before {
		top:0;
	}
	.menu-trigger span {
		top:8px;
	}
	.menu-trigger:after {
		bottom:0;
	}
	.menu-trigger.active:before {
		-webkit-transform:translateY(8px) rotate(45deg);
		-moz-transform:translateY(8px) rotate(45deg);
		transform:translateY(8px) rotate(45deg);
	}
	.menu-trigger.active span {
		opacity:0;
	}
	.menu-trigger.active:after {
		-webkit-transform:translateY(-8px) rotate(-45deg);
		-moz-transform:translateY(-8px) rotate(-45deg);
		transform:translateY(-8px) rotate(-45deg);
	}
	#overlay {
		z-index:90;
		position:fixed;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:none;
		background: #643700;
	}
}
@media screen and (max-width:768px) {
	.openNav {
		right:20px;
	}
}
@media screen and (max-width:414px) {
	#navi {
		padding:12.5% 0 13%;
	}
	#navi li {
		padding-bottom:10.8%;
	}
	#navi .boxTel {
		padding-top:4.8%;
	}
}
/* ------------------------------------------------------------------
	2-4. Main styles
-------------------------------------------------------------------*/
#keyv {
	position:relative;
}
#keyv .keyvImage {
	display:block;
	margin:0 auto;
  max-width: 163px;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 9;
}
#keyv .keyvImage img {
  width: 100%;
}
@media screen and (max-width:1200px) {
  #keyv .keyvImage {
    max-width: 127px;
    left: calc(50% - 14px);
  }
}


.groupNotice {
	padding-top:60px;
}
.groupNotice .title {
	font-size:13px;
  margin-bottom: 5px;
}
.noticeImage {
	background:url(/common/img/bg_notice.jpg) no-repeat 50% 0;
	width:100%;
}
.noticeImage .image {
	position:relative;
	overflow:hidden;
	margin:0 auto;
	min-height:720px;
}
.noticeImage .image img {
	position:absolute;
	top:-100%;
	right:-100%;
	bottom:-100%;
	left:-100%;
	margin:auto;
}
.noticeList {
	margin-bottom:70px;
}
.noticeList dt {
	float:left;
	letter-spacing:3px;
	margin-bottom:5px;
	font-size:12px;
}
.noticeList dd {
	padding:0 0 0 95px;
	margin-bottom:5px;
	font-size:12px;
}
.noticeList dd a {
  color: #fff;
}
.noticeList dd a:link, .noticeList dd a:visited, .noticeList dd a:hover {
  color: #fff;
}
.noticeList dd a:hover {
  text-decoration: none;
}
.loadingShow #keyv {
	opacity:0;
}
.loadingShow #header {
	position:relative;
}
.loadingShow {
	overflow-y:scroll;
	height:100%;
	position:fixed;
	top:0;
	left:0;
	width:100%;
}
#loading {
	z-index:99999;
	position:fixed;
	top:0;
	left:0;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	-webkit-align-items:center;
	-moz-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	justify-content:center;
	width:100%;
	height:100%;
	background:#FFF;
}
@media screen and (max-width:1200px) {
	.noticeImage .image.tbDisplay img {
		height:650px;
	}
	.noticeImage {
		background:url(/common/img/bg_notice.jpg) no-repeat 43% 0;
		width:100%;
	}
	.noticeImage .image {
		padding:40px 35px 70px 35px;
		position:inherit;
		min-height:auto;
	}
	.noticeImage .image img {
		position:inherit;
		max-width:243px;
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		display:-webkit-flex;
		-webkit-flex-direction:column;
		-webkit-align-items:center;
		-webkit-justify-content:center;
		text-align:center;
	}
}
@media screen and (max-width:768px) {
	.groupNotice .title {
		font-size:11px;
		margin-bottom:0;
	}
	.noticeList {
		margin-bottom:60px;
	}
	.noticeList dt {
		float:none;
		margin-bottom:0;
	}
	.noticeList dd {
		padding:0;
		margin-bottom:20px;
	}
	
	#loading img {
		max-width:75px;
	}
  
	#keyv .keyvImage img {
		width:100%;
	}
	.noticeImage {
		background:url(/common/img/bg_notice02.jpg) no-repeat 43% 0;
		width:100%;
		background-size:cover;
	}
}
/* ------------------------------------------------------------------
	2-5. Side styles
-------------------------------------------------------------------*/

/* ------------------------------------------------------------------
	2-6. Footer styles
-------------------------------------------------------------------*/
#footer .boxContact {
	width:100%;
	max-width:730px;
	margin:0 auto;
}
.fBlock {
	padding:53px 0 66px 0;
	letter-spacing:4px;
}
.fBlock .title {
	text-align:center;
	font-size:18px;
	margin-bottom:20px;
}
.fBlock li {
	float:left;
	width:49%;
	margin-right:10%;
}
.fBlock li:last-child {
	width:41%;
	margin-right:0;
}
.fBlock li .bl-hover {
	text-decoration:underline;
	color:#FFF;
}
.copyright {
	text-align:center;
	padding:15px 0;
	font-size:14px;
}
@media screen and (max-width:768px) {
	.fBlock {
		padding:35px 10px 25px;
	}
	.fBlock li {
		float:none;
		width:100%;
		margin-bottom:35px;
	}
	.fBlock li:last-child {
		width:100%;
	}
	.fBlock .title {
		margin-bottom:15px;
		font-size:16px;
	}
	.copyright {
		font-size:11px;
	}
}
@media screen and (max-width:736px) {
	.fBlock .phone a {
		pointer-events:inherit;
	}
}