@charset "utf-8";


#top {
	overflow: hidden;
}

#wrap {
	width: 100%;
	overflow: hidden;
}

.mainImg {
	height: 730px;
	width: 100%;
	overflow: hidden;
}

.mainImgBg {
	position: fixed;
	min-width: 1200px;
	min-height: 730px;
	width: 100%;
	z-index: 30;
}

.mainImg .mainImgIn {
	position: relative;
	width: 1200px;
	width: 100%;
	margin: 0 auto;
	background: url(../imgs/bg_main_img_line.png) top center no-repeat;
	height: 730px;
	text-align: center;
	z-index: 31;
	overflow: hidden;
}

.mainImg .mainImgIn h2 {
	clear:both;
	margin: 0 auto 49px auto;
}

.mainImg .mainImgIn ul {
	width: 476px;
	margin: 0 auto 143px auto;
}

.mainImg .mainImgIn ul li {
	float: left;
}

.mainImg .mainImgIn ul li a {
	padding: 34px 0 0 0;
	display: block;
	width:119px;
	height: 41px;
	color: #fff;
	text-align: center;
	text-decoration: none; 
	font-family: RodinPro-L,"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
}

.mainImg .mainImgIn ul li.active a,
.mainImg .mainImgIn ul li a:hover {
	border-bottom: solid 5px #fff;
}

.mainImg .mainImgIn p {
	text-align: center;
}

.mainImg .mainImgIn p.txt01 {
	margin:0 0 36px 0;
}

.mainImg .mainImgIn p.txt02 {
}

.area01 {
	position: relative;
	font-family: RodinPro-L,"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	height: 714px;
	background: url(../imgs/bg_area01.png) top center no-repeat #fff;
	z-index: 31;
}

.area01 h3 {
	position: absolute;
	top:52px;
	width: 100%;
	text-align: center;
}

.area01 p.caption {
	position: absolute;
	top:99px;
	width: 100%;
	text-align: center;
	font-size: 13px;
}

.area01 a {
	color: #000;
}

.area01 ul {
	position: absolute;
	top:160px;
	left: 50%;
	-webkit-transform: translate(-50%,0);
	-moz-transform: translate(-50%,0);
	-ms-transform: translate(-50%,0);
	-o-transform: translate(-50%,0);
	transform: translate(-50%,-0);
	width: 1100px;
}

@media only screen and (max-width:1290px) {
	.pc {
		width: 100%;
		overflow: hidden;
	}
	.area01 ul {
		padding: 0 110px;
		/*max-width: 1000px;
		max-width: 100%;
		width: 100%;*/
	}
	.area01 ul li dl{
		padding: 15px 20px 0!important;
	}
}

.area01 ul li{
	float:left;
	width: 33.3%;
}

.area01 ul li:last-child{
	width: 33.4%;
}

.area01 ul li img{
	width: 100%;
}

.area01 ul li dl{
	padding: 15px 60px 0;
}

.area01 ul li dl dt{
	font-weight: bold;
	font-size: 12px!important;
}

.area01 ul li dl dd{
	font-size: 14px!important;
}

.area01 .btBlock{
	position: absolute;
	bottom:73px;
	width: 100%;
	text-align: center;
}

.btMore {
	display: inline-block;
	width: 200px;
	height: 30px;
	text-align: center;
	text-decoration: none;
	line-height: 30px;
	outline: none;
}
.btMore::before,
.btMore::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.btMore,
.btMore::before,
.btMore::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.btMore {
	position: relative;
	z-index: 2;
	background-color: #fff;
	border: 2px solid #333;
	color: #333;
	line-height: 26px;
	overflow: hidden;
}
.btMore:hover {
	color: #fff;
	text-decoration: none;
}

.btMore:before {
    content: ">";
    left:20px;
}
.btMore:hover::before {
	color: #fff;
	z-index: 3;
}
.btMore::after {
	top:0;
	left: -100%;
	width: 100%;
	height: 100%;

}
.btMore:hover::after {
	top:0;
	left: 0;
	background-color: #333;
}

.area02 {
	position:relative;
	font-family: RodinPro-L,"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	height: 1037px;
	min-width: 1150px;
	background: url(../imgs/bg_area02.png) top center no-repeat #f1f1f1;
	z-index: 31;
}

.area02 .area02In {
	width: 100%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 47px 0 0 0;
}

.area02 .area02In .aboutBlock {
	position: relative;
	margin: 0 0 18px 0;
	width: 100%;
	max-width:1200px;
}

.area02 .area02In .aboutBlock .imgBox {
	max-width: 740px;
	width: 61.67%;
}

.area02 .area02In .aboutBlock .imgBox h3 img {
	position: relative;
	margin: 0 0 -32px 33px;
	z-index:51;
	width: 100%;
	max-width: 115px;
}

.area02 .area02In .aboutBlock .imgBox img {
	z-index:50;
	width: 100%;
}

.area02 .area02In .aboutBlock .txtBox {
	position: absolute;
	top:0;
	right: 10px;
	width: 420px;
	padding: 126px 0 0 0;
	text-align: center;
	z-index:52;
}

.area02 .area02In .txtBox dt {
	font-size: 26px;
	font-weight: bold;
	margin: 0 0 35px 0;
	line-height: 1.5;
}

.area02 .area02In .txtBox dt span {
	font-size: 20px;
}

.area02 .area02In .txtBox dd.txt {
	text-align: left;
	margin: 0 0 50px 0;
	font-size: 14px;
}

.area02 .area02In .work2014Block {
	position: relative;
	width: 100%;
	max-width: 1200px;
}

.area02 .area02In .work2014Block .imgBox {
	float:right;
	max-width: 740px;
	width: 61.67%;
}

.area02 .area02In .work2014Block .imgBox h3 img {
	position: relative;
	margin: 0 0 -31px 396px;
	z-index:51;
	width: 100%;
	max-width: 322px;
}

.area02 .area02In .work2014Block .imgBox img {
	z-index:50;
	width: 100%;
}

.area02 .area02In .work2014Block .txtBox {
	position: absolute;
	top:0;
	left: 10px;
	width: 420px;
	padding: 125px 0 0 0;
	text-align: center;
	z-index:52;
}
@media only screen and (max-width:1290px) {
	.area02 .area02In .aboutBlock {
		position: relative;
		width: 100%;
		max-width: 1080px;
		padding: 0 0 0 120px;
	}
	.area02 .area02In .aboutBlock .imgBox {
		max-width: 50%;
		width: 50%;
	}
	.area02 .area02In .aboutBlock .txtBox {
		padding: 60px 0 0 20px;
		width: 42%;
	}
	.area02 .area02In .work2014Block {
		width: 100%;
		max-width: 1110px;
		padding: 0 0 0 90px;
	}
	.area02 .area02In .work2014Block .imgBox {
		max-width: 50%;
		width: 50%;
	}
	.area02 .area02In .work2014Block .imgBox h3 img {
		position: relative;
		margin: 0 0 -31px 150px;
		z-index:51;
		width: 100%;
		max-width: 322px;
	}
	.area02 .area02In .work2014Block .txtBox {
		left: 110px;
		padding: 60px 20px 0 0;
		width: 42%;
	}
}


.btDetail {
	display: inline-block;
	width: 318px;
	height: 48px;
	text-align: center;
	text-decoration: none;
	outline: none;
	font-size: 16px;
	font-weight: bold;
	position: relative;
	z-index: 2;
	border: 2px solid #333;
	color: #333;
	line-height: 42px;
	overflow: hidden;
}

.btDetail::before,
.btDetail::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.btDetail,
.btDetail::before,
.btDetail::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.btDetail:hover {
	color: #fff;
	text-decoration: none;
}

.btDetail:before {
    content: ">";
    left:20px;
}
.btDetail:hover::before {
	color: #fff;
	z-index: 3;
}
.btDetail::after {
	top:0;
	left: -100%;
	width: 100%;
	height: 100%;

}
.btDetail:hover::after {
	top: 0;
	left:0;
	background-color: #333;
}

.area03 {
	position: relative;;
	font-family: RodinPro-L,"Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	min-width: 1200px;
	background: url(../imgs/bg_area03.png) top center no-repeat #fff;
	z-index: 31;
}

.area03 h3 {
	position: absolute;
	top:52px;
	width: 100%;
	text-align: center;
}

.area03 p.caption {
	position: absolute;
	top:99px;
	width: 100%;
	text-align: center;
	font-size: 13px;
}

.area03 .area03In {
	position: relative;
	width: 1200px;
	height: 617px;
	margin: 0 auto;
}

.area03In .slideBox {
	position: absolute;
	top:177px;
	left: 50%;
	width: 1160px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: .5s;
	transition: .5s;
}
.slideBox.slideBox-state-off {
	opacity: 0;
	visibility: hidden;
}
.slideBox .slick-list {
	padding-bottom: 20px;
}
.slideBox.slick-dotted.slick-slider {
	margin-bottom: 0;
}
.slides {
	float: left;
	width: 358px;
	margin: 0 15px;
	background-color: #fff;
	border:solid 1px #ccc;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
.slides a {
	color: #000;
}
.slides a img {
	transition: .3s;
}
.slides .slides__inner {
	padding: 40px 20px 20px 20px;
}

.slides .slides__inner dt {
	font-size: 0.8rem;
	font-weight: bold;
}

.slides .slides__inner dd {
	font-size: 0.7rem;
}

.slides .slides__title {
	color: #333;
	/*font-size: 12px;*/
	font-weight: normal;
}

.slides:hover {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
.slides a:hover {
	text-decoration: none;
}
.slides a:hover img {
	opacity: .8;
}
.slides	.historyBox {
	position: relative;
}

.slides	.year {
	position: absolute;
	top:184px;
	left:29px;
}

.slides	.sp {
	display: none;
}

.slideBox .slick-dots {
	bottom: -30px;
}
.slideBox .slick-dots li {
	width: auto;
	height: auto;
	margin: 0 12px;
}
.slideBox .slick-dots li button {
	width: 38px;
	height: 5px;
	padding: 0;
	background-color: #d2d2d2;
}
.slideBox .slick-dots li.slick-active button {
	background-color: #7b7b7b;
}
.slideBox .slick-dots li button:before {
	display: none;
}

.slideBox .slick-prev, .slideBox .slick-prev:hover,
.slideBox .slick-next, .slideBox .slick-next:hover {
	width: 16px;
	height: 32px;
	background-image: url(/imgs/icn-slide_sprite.png);
	background-repeat: no-repeat;
}
.slideBox .slick-prev, .slideBox .slick-prev:hover, .slideBox .slick-prev:focus {
	background-position: left center;
}
.slideBox .slick-next, .slideBox .slick-next:hover, .slideBox .slick-next:focus {
	background-position: right center;
}
.slideBox .slick-prev::before,
.slideBox .slick-next::before {
	display: none;
}
.slideBox .slick-arrow:hover {
	opacity: .7;
}

.area04 {
	position: relative;;
	height: 218px;
	padding:62px 0 0 0;
	min-width: 1200px;
	background: url(../imgs/bg_area04.png) top center no-repeat #f1f1f1;
	text-align: center;
	z-index: 31;
}

#gFooter {
	z-index: 31;
	background: #fff;
}

.spOnly {display: none;}


@media only screen and (max-width:599px) {
	#wrap {
		position: relative;
		top:-6vw;
		margin: 0 0 -6vw 0;
	}

	.sp img {
		width: 100%;
	}

	.sp .mainImgSp {
		position:relative;
		width: 100%;
		height: 125vw;
		margin: 0;
	}

	.sp .mainImgSp .bg{
		position:fixed;
		top:19vw;
		z-index: 30;
	}


	.sp .mainImgSp .txt01{
		position:absolute;
		width: 57.97vw;
		top:37vw;
		left:8.2vw;
		z-index: 31;
	}

	.sp .mainImgSp .txt02{
		position:absolute;
		width: 78.81vw;
		top:57.34vw;
		left:10.59vw;
		z-index: 31;
	}

	.sp .mainImgSp .txt03{
		position:absolute;
		width: 82.81vw;
		top:88.59vw;
		left:8.59vw;
		z-index: 31;
	}

	.sp .mainImgSp h2{
		position:absolute;
		top: 31.41vw;
		left:32.19vw;
		width: 35.78vw;
		z-index: 31;
	}


	.area01Sp {
		position: relative;
		padding:10.94vw 0 12.5vw 0;
		background: #fff;
		z-index: 31;
	}

	.area01Sp h3 {
		margin: 0 auto 3.06vw auto;
	    width: 60vw;
	}

	.area01Sp .caption {
		font-size: 0.8rem;
		text-align: center;
		margin: 0 0 8.47vw 0;
	}

	.area01Sp ul {
		margin: 0 0 10.38vw 0;
	}

	.area01Sp ul li a {
		color: #000;
	}

	.area01Sp ul li img {
		width: 50vw;
		float: left;
	}

	.area01Sp ul li dl {
		float: right;
		box-sizing: border-box;
		width: 50vw;
		padding: 0.5vw 3.5vw 0 3.5vw;
		font-size: 0.6rem;
	}

	.area01Sp ul li dl dt{
		font-weight: bold;
		margin: 0 0 1vw 0;
	}

	.area01Sp ul li dl dd{
		line-height: 1.6;
	}

	.area01Sp .btBlock{
		text-align: center;
	}

	.btMoreSp {
		display: inline-block;
		width: 59.06vw;
		height: 9.53vw;
		text-align: center;
		text-decoration: none;
		line-height: 9.53vw;;
		border: 2px solid #333;
		color: #333;
		font-size: 0.7rem;
		font-weight: bold;
		position: relative;
		background: url(../imgs/sp/icon_bt01.png) 3.13vw center no-repeat;
		background-size:1.5vw auto;
	}

	.btMoreSp:hover {
		text-decoration: none;
	}

	.btDetailSp {
		display: inline-block;
		width: 59.06vw;
		height: 9.53vw;
		text-align: center;
		text-decoration: none;
		line-height: 9.53vw;;
		border: 2px solid #333;
		color: #333;
		font-size: 0.7rem;
		font-weight: bold;
		position: relative;
		background: url(../imgs/sp/icon_bt01.png) 3.13vw center no-repeat;
		background-size:1.5vw auto;
	}

	.btDetailSp:hover,
	.btDetailSp:visited {
		color: #333;
	}

	.btDetailSp:hover {
		text-decoration: none;
	}

	.area02Sp {
		position: relative;
		background: #f1f1f1;
		padding:12.5vw 6.25vw;
		z-index: 31;
	}

	.area02Sp .photo {
		margin: 0 0 8.75vw 0;
	}

	.area02Sp .aboutBlock {
		margin: 0 0 12.5vw 0;
	}

	.area02Sp .txtBox dt {
		margin: 0 0 9.84vw 0;
		font-size: 1rem;
		text-align: center;
		line-height: 1.66;
		font-weight: bold;
	}

	.area02Sp .txtBox dd.txt {
		font-size: 0.7rem;
		line-height: 1.66;
		margin: 0 0 9.38vw 0;
	}

	.area02Sp .txtBox dd.bt {
		text-align: center;
	}

	.area03 {
		position: relative;
		width: 100%;
		min-width: auto;
		background: #fff;
		z-index: 31;
		color:#fff;
	}

	.area03 h3 {
		position: relative;
	    width: 32vw;
	    margin: 0 auto;
	    top:12vw;
	}

	.area03 p.caption {
		top:22.5vw;
	    font-size: 0.8rem;
	}

	.area03 .area03In {
		position: relative;
		width: 100%;
		height: 150vw;
		margin: 0 auto;
	}

	.area03In .slideBox {
		top:35vw;
		left: 50%;
		width: 100%;
		height: auto;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		-webkit-transition: .5s;
		transition: .5s;
	}

	.slides {
		/*float: left;
		width: 300px;
		margin: 0 3%;
		background-color: #fff;
		border:solid 1px #ccc;
		-webkit-box-shadow: none;
    	-moz-box-shadow: none;
    	box-shadow: none;*/
	}

	.slick-list {
	    /*overflow: visible!important;
	    width: 150%;*/
	}

	.slides	.year {
		display: none;
	}

	.slides	.photo {
		display: none;
	}

	.slides	.sp {
		display: block;
	}

	.slides .slides__inner {
		padding: 3.91vw 5.47vw 3.91vw 5.47vw ;
	}


	.area04 {
		display: none;
	}

	.pcOnly {display: none;}
	.spOnly {display: block;}

	#gFooter {
		position: relative;
		background: #fff;
		z-index: 31;
	}

}
