@charset "utf-8";
@import url(reset.css);
@import url(base.css);
@import url("common.css");


#wrap {
	padding: 70px 0 0;
}

/*-------------------------------------------------------------------
	slider
-------------------------------------------------------------------*/

#slider {
	overflow:hidden;
	zoom:1;
	position: relative;
	border-bottom: 1px solid #c3c3c3;
}

#slider ul {
	width:100%;
}

#slider ul li .into {
	width: 94%;
	height: 800px;
	overflow: hidden;
	zoom:1;
	position: relative;
	margin: 0 auto;
}

#slider ul li .into .link {
	position: absolute;
	bottom: 120px;
	left: 0;
	width: 100%;
	text-align: center;
}

#slider ul li .into .link a {
	display: inline-block;
	background: #e30b20;
	color: #fff;
	width: 320px;
	position: relative;
	line-height: 1.0;
	font-size: 2.5em;
	padding: 12px 0 15px;
	border: 5px solid #fff;
	border-radius: 10px;
}

#slider ul li .into .link a:hover {
	background: #b00617;
}

#slider ul li .into .link a:after {
	width: 7px;
  height: 7px;
  border: 1px solid;
  border-color: #fff #fff transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 7%;
	content: '';
}



#slider ul li .into h2 {
	position: absolute;
	top: 150px;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 5.0em;
	font-weight: 300;
	color:#fff;
}

#slider ul li .into h3 {
	position: absolute;
	top: 260px;
	left: 0;
	width: 100%;
	text-align: center;
	font-weight: 300;
	letter-spacing: 0.1em;
	color:#fff;
}

#slider ul li .into h3 span {
	display: inline-block;
	font-size: 4.0em;
	line-height: 1.0;
	padding: 0 0 10px;
	border-bottom: 1px solid #fff;
	letter-spacing: 0.1em;
}

#slider ul li img {
	width:auto;
	max-width: inherit;
}

#slider ul li:nth-child(2) {
	background: url("../image/index/slide_bg01.jpg") top center no-repeat;
	background-size: auto 100%;
}

#slider ul li:nth-child(1) {
	background: url("../image/index/slide_bg02.jpg") top center no-repeat;
	background-size: cover;
}


#slider .bx-wrapper {
	margin: 0 auto !important;
	padding:0 !important;
}

#slider .bx-wrapper .bx-viewport {
	border:none !important;
	left:0 !important;
	background:none !important;
}

#slider .bx-wrapper .bx-pager {
	bottom: 20px !important;
}

#slider .bx-wrapper {
	margin: 0 auto !important;
	padding:0 !important;
}

#slider .bx-wrapper .bx-pager.bx-default-pager a {
	background:#FFF;
}

#slider .bx-wrapper .bx-pager.bx-default-pager a:hover,
#slider .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #006935 !important;
}

#slider .bx-wrapper .bx-prev {
 	background: url(../image/common/slide_before.png) no-repeat !important;
	z-index:999;
	width: 37px;
	height: 80px;
	left: 10%;
}

#slider .bx-wrapper .bx-next {
 	background: url(../image/common/slide_after.png) no-repeat !important;
	right:10%;
	z-index:999;
	width: 37px;
	height: 80px;
}


/*-------------------------------------------------------------------
	index
-------------------------------------------------------------------*/

#index {
	width: 1040px;
	margin: 0 auto;
	padding: 80px 0 100px;
	font-size: 1.4em;
	line-height: 1.8;
}

#index h2 {
	margin: 0 0 40px;
	text-align: center;
	font-weight: 500;
}

#index h2 span {
	display: block;
	text-align: center;
	line-height: 1.0;
	font-size: 1.2em;
	color: #676767;
}

#index h2 span.jpn {
	font-size: 1.6em;
	color: #fc0100;
	margin: 0 0 10px;
}

#index .bnrbox {
	overflow: hidden;
	zoom:1;
	margin: 0 0 50px;
}

#index .bnrbox li {
	float: left;
	width: 330px;
	margin-right: 25px;
	margin-bottom: 30px;
	border-bottom: 1px solid #7d7d7d;
}

#index .bnrbox li img {
	max-width: 100%;
}

#index .bnrbox li:nth-child(3n) {
	margin-right: 0;
}

#index .bnrbox li a {
	display: block;
}

#index .bnrbox li dd {
	margin: 20px 0 0;
	padding: 0 0 20px;
}

#index .bnrbox li a dd {
	position: relative;
	padding-right: 20px;
	color: #1a1a1a;
}

#index .bnrbox li a dd:after {
	width: 10px;
  height: 10px;
  border: 2px solid;
  border-color: #fc0100 #fc0100 transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 7px;
	content: '';
}


#index .news {
	margin: 0 0 80px;
}

#index .news.last {
	margin: 0;
}

#index .news dl {
	overflow: hidden;
	zoom:1;
	border-bottom: 1px solid #000000;
	padding: 20px 0;
}

#index .news dl:first-child {
	border-top: 1px solid #000000;
}

#index .news dl dt {
	float: left;
}

#index .news dl dd {
	margin-left: 110px;
}

#index .news dl dd a {
	color:#373636;
}

#index .news dl dd a:hover {
	text-decoration: underline;
}
#news .nothing,
#index .news .nothing {
	text-align: center;
	padding: 30px 0;
	background: #e4e4e4;
	font-size: 1.15em;
	line-height: 1.4;
}

#index .news .link,
#index .newsbox .link {
	margin: 40px 0 0;
	text-align: center;
}

#index .news .link a,
#index .newsbox .link a {
	display: inline-block;
	line-height: 1.0;
	color: #fc0100;
	border: 1px solid #fc0100;
	width: 250px;
	padding: 20px 0;
	border-radius: 50px;
	position: relative;
	line-height: 1.0;
	font-size: 1.15em;
}

#index .news .link a:hover,
#index .newsbox .link a:hover {
	color: #fff;
	background: #fc0100;
}

#index .news .link a:after,
#index .newsbox .link a:after {
	width: 7px;
  height: 7px;
  border: 1px solid;
  border-color: #fc0100 #fc0100 transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 10%;
	content: '';
}

#index .news .link a:hover:after,
#index .newsbox .link a:hover:after {
	 border-color: #fff #fff transparent transparent;
}

/* newsbox */

#index .newsbox {
	margin: 0 0 80px;
}

#index .newsbox .inbox {
	overflow: hidden;
	zoom:1;
}

#index .newsbox .inbox dl {
	width: 320px;
	float: left;
	margin: 0 40px 40px 0;
	line-height: 1.6;
	position:relative;
}

#index .newsbox .inbox dl:after {
	position:absolute;
	top:0;
	left:0;
	width:1px;
	height:100%;
	background:#7d7d7d;
	content:'';
	z-index:-1;
}


#index .newsbox .inbox dl:nth-child(3n) {
	margin: 0 0 40px;
}

#index .newsbox .inbox dl dt img {
	max-width: 100%;
}

#index .newsbox .inbox dl dd {
	/*border-left: 1px solid #7d7d7d;*/
	padding: 20px 0 0 20px;
}

#index .newsbox .inbox dl dd .time {
	line-height: 1.0;
	margin: 0 0 15px;
}

#index .newsbox .inbox dl dd h3 {
	font-size: 1.15em;
	margin: 0 0 15px;
}

#index .newsbox .inbox dl dd .links {
	text-align: right;
	margin: 20px 0 0;
}

#index .newsbox .inbox dl dd .links a {
	display: inline-block;
	color: #fc0100;
	line-height: 1.0;
	padding: 5px 15px 5px 0;
	position: relative;
}

#index .newsbox .inbox dl dd .links a:after {
	width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #fc0100 #fc0100 transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 5px;
	content: '';
}

#index .newsbox .inbox dl dd .links a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #fc0100;
	content: '';
}

#index .newsbox .inbox dl dd .links a:hover:before {
	display: none;
}


/*-------------------------------------------------------------------
	新着情報
-------------------------------------------------------------------*/

h2#title {
	margin: 0 0 40px;
	text-align: center;
	font-weight: 500;
}

h2#title span {
	display: block;
	text-align: center;
	line-height: 1.0;
	font-size: 1.2em;
	color: #676767;
}

h2#title span.jpn {
	font-size: 1.6em;
	color: #fc0100;
	margin: 0 0 10px;
}

#news dl {
	overflow: hidden;
	zoom:1;
	border-bottom: 1px solid #000000;
	padding: 20px 0;
}

#news dl:first-child {
	border-top: 1px solid #000000;
}

#news dl dt {
	float: left;
}

#news dl dd {
	margin-left: 110px;
}

#news dl dd a {
	color:#373636;
}

#news dl dd a:hover {
	text-decoration: underline;
}


#news .link,
#detail .link {
	text-align: center;
	margin: 60px 0 0;
}

#news .link a,
#detail .link a {
	display: inline-block;
	line-height: 1.0;
	color: #fc0100;
	border: 1px solid #fc0100;
	width: 250px;
	padding: 15px 0;
	border-radius: 50px;
	position: relative;
	line-height: 1.0;
	font-size: 1.15em;
}

#news .link a:hover,
#detail .link a:hover {
	color: #fff;
	background: #fc0100;
}

#news .link a:after,
#detail .link a:after {
	width: 7px;
  height: 7px;
  border: 1px solid;
	border-color:  transparent transparent #fc0100 #fc0100;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	left: 10%;
	content: '';
}

#news .link a:hover:after,
#detail .link a:hover:after {
	 border-color:  transparent transparent #fff #fff;
}

#news .newsbox {
	border-bottom: 1px solid #7d7d7d;
}

#news .newsbox .box {
	overflow: hidden;
	zoom:1;
	padding: 20px 0 0;
	margin: 0 0 20px;
	border-top: 1px solid #7d7d7d;
}

#news .newsbox .thumb {
	width: 250px;
	float: left;
}

#news .newsbox .thumb img {
	max-width: 100%;
}

#news .newsbox .texts  {
	margin-left: 270px;
}

#news .newsbox .texts .time {
	line-height: 1.0;
	margin: 0 0 15px;
}

#news .newsbox .texts h3 {
	font-size: 1.15em;
	margin: 0 0 15px;
}

#news .newsbox .texts .links {
	text-align: right;
	margin: 20px 0 0;
}

#news .newsbox .texts .links a {
	display: inline-block;
	color: #fc0100;
	line-height: 1.0;
	padding: 5px 15px 5px 0;
	position: relative;
}

#news .newsbox .texts .links a:after {
	width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #fc0100 #fc0100 transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 5px;
	content: '';
}

#news .newsbox .texts .links a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #fc0100;
	content: '';
}

#news .newsbox .texts .links a:hover:before {
	display: none;
}


/* 詳細ページ */

#detail .thumb {
	margin: 0 0 30px;
	text-align: center;
}


#detail .thumb img {
	max-width: 100%;
}

#detail .time {
	font-size: 1.15em;
	line-height: 1.0;
	color: #4c4c4c;
	margin: 0 0 20px;
}


#detail h3 {
	border-bottom: 1px solid #282828;
	font-size: 1.4em;
	line-height: 1.4;
	font-weight: 500;
	padding: 0 0 20px;
	margin: 0 0 20px;
}

#detail .txtarea {
	overflow: hidden;
	zoom:1;
	position: relative;
	font-size: 1.05em;
	line-height: 2.0;
	border-bottom: 1px solid #282828;
	padding: 0 0 40px;
}

#detail .txtarea a {
	color: #1a1a1a;
	text-decoration: underline;
}

#detail .txtarea a:hover {
	text-decoration: none;
}


#detail .txtarea img {
	max-width: 100%;
}



/*===============================================
  画面の横幅が1024px以下に適用
===============================================*/
@media screen and (max-width: 1024px){
	#slider .bx-wrapper .bx-prev {
		background: url(../image/common/slide_before.png) no-repeat !important;
		background-size: cover;
		z-index:999;
		width: 20px;
		height: 60px;
		left: 5%;
	}

	#slider .bx-wrapper .bx-next {
		background: url(../image/common/slide_after.png) top right no-repeat !important;
		background-size: cover !important;
		z-index:999;
		width: 20px;
		height: 60px;
		right:5%;
	}
	
	
	
	/* index */

	#index {
		width: 94%;
		margin: 0 auto;
		padding: 50px 0;
		font-size: 1.2em;
		line-height: 1.6;
	}

	#index .bnrbox {
		overflow: hidden;
		zoom:1;
		margin: 0 0 20px;
	}

	#index .bnrbox li {
		float: left;
		max-width: 32%;
		margin-right: 2%;
	}

	#index .bnrbox li:nth-child(3n) {
		margin-right: 0;
	}

	
	/* newsbox */

	#index .newsbox .inbox dl {
		width: 32%;
		float: left;
		margin: 0 2% 40px 0;
		line-height: 1.6;
	}
	
}

/*===============================================
  画面の横幅が768px以下に適用
===============================================*/
@media screen and (max-width: 768px){
	
	
	
	

}

/*===============================================
  画面の横幅が640px以下に適用
===============================================*/
@media screen and (max-width: 640px){
	
	#wrap {
		padding: 50px 0 0 !important;
	}
	
	#index .bnrbox {
		overflow: hidden;
		zoom:1;
		margin: 0 0 20px;
	}

	#index .bnrbox li {
		max-width: 48%;
		margin: 0 0 20px;
	}
	
	#index .bnrbox li:nth-child(even) {
		float: right;
	}
	/*
	#index .bnrbox li:last-child {
		margin: 0 auto;
		float: none;
		clear: both;
	}
	*/

	#index .news {
		margin: 0 0 50px;
	}

	#index .news.last {
		margin: 0;
	}

	#index .news dl {
		padding: 15px 0;
	}

	#index .news dl dt {
		float: none;
	}

	#index .news dl dd {
		margin:0;
	}

	#index .news .link {
		margin: 30px 0 0;
		text-align: center;
	}

	#index .news .link a {
		width: 60%;
	}

#index .news .link a:hover {
	color: #fff;
	background: #fc0100;
}

#index .news .link a:after {
	width: 7px;
  height: 7px;
  border: 1px solid;
  border-color: #fc0100 #fc0100 transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 10%;
	content: '';
}

#index .news .link a:hover:after {
	 border-color: #fff #fff transparent transparent;
}
	
	/* newsbox */

	#index .newsbox {
		margin: 0 0 50px;
	}


	#index .newsbox .inbox dl {
		width: auto;
		float: none;
		margin: 0;
		line-height: 1.6;
		overflow:hidden;
		padding:20px 0;
		zoom:1;
		border-top:1px solid #7d7d7d;
	}

	#index .newsbox .inbox dl:nth-child(3n) {
		margin: 0;
		border-bottom:1px solid #7d7d7d;
	}
	
	#index .newsbox .inbox dl:after {
		display:none;
	}
	
	#index .newsbox .inbox dl dt {
		width:40%;
		float:left;
		margin:0;
	}
	
	#index .newsbox .inbox dl dd {
		margin:0 0 0 42%;
		padding:0;
	}



#index .newsbox .inbox dl dd .time {
	line-height: 1.0;
	margin: 0 0 15px;
}

#index .newsbox .inbox dl dd h3 {
	font-size: 1.15em;
	margin: 0 0 15px;
}

#index .newsbox .inbox dl dd .links {
	text-align: right;
	margin: 20px 0 0;
}

#index .newsbox .inbox dl dd .links a {
	display: inline-block;
	color: #fc0100;
	line-height: 1.0;
	padding: 5px 15px 5px 0;
	position: relative;
}

#index .newsbox .inbox dl dd .links a:after {
	width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #fc0100 #fc0100 transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 5px;
	content: '';
}

#index .newsbox .inbox dl dd .links a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #fc0100;
	content: '';
}

#index .newsbox .inbox dl dd .links a:hover:before {
	display: none;
}
	
	
	
	#news dl {
		padding: 15px 0;
	}

	#news dl dt {
		float: none;
	}

	#news dl dd {
		margin:0;
	}
	
	#news .newsbox .thumb {
		width: 40%;
	}
	#news .newsbox .texts  {
		margin-left: 42%;
	}
	
	
	/* slide */
	
	
	
	#slider ul li .into {
		height: 450px;
	}

	#slider ul li .into .link {
		position: absolute;
		bottom: 10%;
		left: 0;
		width: 100%;
		text-align: center;
	}

	#slider ul li .into .link a {
		width: 60%;
		font-size: 1.5em;
		border:3px solid #fff;
		padding:10px 0;
	}

	#slider ul li .into h2 {
		top: 10%;
		font-size: 3.0em;
	}

	#slider ul li .into h3 {
		top: 25%;
	}

	#slider ul li .into h3 span {
		font-size: 1.8em;
		letter-spacing:0;
	}

	#slider ul li img {
		width:auto;
		max-width: inherit;
	}

	#slider ul li:nth-child(2) {
		background: url("../image/index/slide_bg01_sp.jpg") bottom center no-repeat;
		background-size: auto 100%;
	}
	#slider ul li:nth-child(1) {
	background: url("../image/index/slide_bg02.jpg") top center no-repeat;
	background-size: cover;
	
}