html,body {
	width: 100%;
	/*min-width: 1200px;*/
	min-height: 100%;
	height: 100%;
}

body {
	margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.8;
	position: relative;
	overflow-x: hidden !important;
}



.blur {
	filter: blur(3px);
	-webkit-filter: blur(3px);
	-webkit-transition-duration: .2s;  
	-webkit-transition-timing-function: ease-in-out;  
}

.wrap {
	position: relative;
	z-index: 1;
	width: 100%;
	min-height: 100%;
	padding: 0;
	box-sizing: border-box;
}

#container {
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
}

.container_inner {
	position: relative;
	width: 100%;
	margin: 0 auto;
	min-height: 100%;
	height: 100%;
}

/* .stageBase
--------------------------- */
.stageBase {
	width: 100%;
	/*position: relative;*/
}

dl {
	font-size: 1em;
	line-height: 1.6em;
}

dl dt {
	font-size: 1em;
	font-weight: bold;
	width: 60px;
}

dl dd {
	margin: -1.6em 0 4px 0;
	padding: 0 0 4px 60px;
}

/*========================================================== 
トップページ トップエリア
==========================================================*/

#stage1 {
	height: 60vh !important;
	min-height: 100% !important;
	display: block;
	position: relative;
}


#fst_logomark {
	display: none;
}

.firstblock {
	display: table;
	width: 100%;
	min-height: 100vh;
	height: 100vh;
	text-align: center;
}



.firstblock_inner {
	width: 1000px;
	min-height: 100%;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}

.anim_logo {
	vertical-align: middle;
	z-index: -10;
}


.anim_logo img {
	margin: 0 auto;
}

/* グループロゴ線画アニメーション ※id要素ではないと作動しない */
#group_logo,
#g_logo_fill {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	width: 169px;
	height: 331px;
	display: block;
	margin: 0 auto;
	vertical-align: middle;
	text-align: center;
}




#group_logo {
	z-index: 100;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}

#g_logo_fill {
    display: none;
    z-index: 1000;
	top: 50%;
	right: 50%;
	margin-top: -165px;
	margin-right: -85px;
}

#g_logo_fill02 {
	opacity: 0;
    z-index: 1000;
    position: absolute;
	top: 50px;
	right: 75px;
}

.contents_top {
	width: 600px;
	z-index: 25;
	opacity: 0;
	vertical-align: middle;
	margin: 0 0 0 50px;
}



h1.ttl_top {
	width: 570px;
	height: 60px;
	display: block;
	text-indent: -9999px;
	background: url(../images/title_logo.png) 0 0 no-repeat;
	overflow: hidden;
	margin: 0 0 20px 0;
}

h2.top_txt {
	font-size: 1.2em;
	line-height: 2em;
	text-align: left;
	margin: 0 0 20px 5px;
	text-shadow: -1px -1px #FFF,
		1px -1px #FFF,
		-1px 1px #FFF,
		1px 1px #FFF;
}

h3.second_txt {
	font-size: 1em;
	line-height: 1.8em;
	font-weight: bold;
	padding: 0 0 10px 0;
}

.top_btn {
	text-align: left;
}

.copyright {
	text-align: left;
	font-size: 0.8em;
	margin: 0 0 0 5px;
	text-shadow: -1px -1px #FFF,
		1px -1px #FFF,
		-1px 1px #FFF,
		1px 1px #FFF;
}

.TopSlideBtnS {
	position: absolute;
	bottom: 50px;
	left: 47%;
}


@media screen and (max-width: 768px) {
	.firstblock_inner {
		width: 100%;
		
	}
	#group_logo{
		width: 69px;
		height: 136px;
		z-index: -9999;
	}
	
	#g_logo_fill { display: none; visibility: hidden;}
	
	h1.ttl_top {
		width: 300px;
		margin:0 auto;
		height: 50px;
		background-size: 100%;
		top: 0;
		position: relative;
	}
	
	.anim_logo {display: none;}
	
	.firstblock {
		display: table;
		width: 100%;
		min-height: 500px;
		height: 100%;
		text-align: center;
		overflow: hidden;
	}
	
	.contents_top {
		width: 100%;
		opacity: 1;
		margin: 0 0 0 10px;
		margin-left: 0;
	}
	
	#g_logo_fill02 {
		display: block;
		opacity: 1;
		width: 100px;
		margin: 0 auto;
		top: 0px;
		left: 0;
		right: 0;
		position: relative;
		margin-bottom: 60px;
	}
	
	h2.top_txt {text-align: center;	}
	
	.copyright { text-align: center;}
	.container_inner {
		/*
		min-height: 500px;
		height: 500px;
		*/
		height:  300px !important;
		min-height: 300px !important;
	}
	
	#stage1 {
		/*min-height: 500px !important;*/
		height: inherit !important;
		min-height: inherit !important;
	}
	
	.TopSlideBtnS {
		position: absolute;
		bottom: 25px;
		left: 47%;
	}
	
	.TopSlideBtnS img {
		width: auto;
		height: 23px;
	}

	
}

/* 背景キューブアニメーション */

.back_cube {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -20;
	opacity: 0;
}

/* 背景写真 */

.topBack {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -200;
}

/*========================================================== 
トップ セカンドエリア 共通
==========================================================*/


.ContsNo {
	display: block;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	font-family: 'mplus-1c-light' , sans-serif;
	font-size: 3em;
	color: #333333;
	
}

.ContsNo_W {
	display: block;
	padding: 0;
	margin: 0 auto;
	text-align: center;
	font-family: 'mplus-1c-light' , sans-serif;
	font-size: 3em;
	color: #FFF;
	
}

h2.TArea {
	display: block;
	width: 100px;
	border-top: 1px solid #333333;
	font-size: 1.4em;
	color: #333333;
	margin: 0 auto;
	text-align: center;
}

/*========================================================== 
トップ ニュース エリア
==========================================================*/

#stage2 {
	background: #eeeeee;
	z-index: 100;
	padding: 30px 0;
}

h2.news {
	width: 80px;
	display: block;
	padding: 5px;
	border-bottom: 1px solid #333333;
	margin: 0 auto;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
	font-size: 1.4em;
	color: #333333;
}

.newsArea {
	width: 90%;
	max-width: 1030px;
	margin: 0 auto;
	padding: 20px 0;
	position: relative;
		
}
.newsBlock {
	display: block;
	width: 300px;
	margin: 0 5px;
}

.newsThum {
	width: 300px;
	height: 220px;
	overflow: hidden;
}

.newsThum img {
	max-width: 300px;
}
.newsTitle {
	width: 300px;
	height: 100px;
	background: #FFF;
	font-family: 'mplus-1c-regular' , sans-serif;
	color: #444444;
	box-sizing: border-box;
	padding: 10px;
	line-height: 1.2em;
}

h3.nTitle {
	font-size: 1.1em;
	line-height: 1.6em;
	
}

.nDate {
	font-size: 0.8em;
}

.slick-dots {
	position: absolute;
	bottom: -20px !important;
	display: block;
	width: 100%;
	padding: 0;
	list-style: none;
	text-align: center;
}

.topMoreLink {
	width: 300px;
	margin: 0 auto;
	padding: 10px 0 0 0;
	margin: 30px auto 0 auto;
}
@media screen and (max-width: 1500px) {
	.newsBlock {width: 100%; margin-left: 5px;}	
	.newsThum {	width: 100%; height: auto;	}	
	.newsThum img {	max-width: 100%;	}	
	.newsTitle {width: 100%;}
	
	
}

@media screen and (max-width: 768px) {
	.newsArea {	min-width:90%; }	
	.newsArea .slick-next,
	.newsArea .slick-prev { display:none !important;}
	.newsBlock {width: 100%; margin-left: 5px;}	
	.newsThum {	width: 100%; height: auto;	}	
	.newsThum img {	max-width: 100%;	}	
	.newsTitle {width: 100%;}
	h3.nTitle {	
		font-size: 0.8em;
		line-height: 1.4em;
	}
	.nDate {
		font-size: 0.7em;
		display: block;
		line-height: 1.2em;
		padding: 0 0 10px 0;	
	}
	.topMoreLink {	width: 100%; text-align:center;}
	
}

/*==========================================================
代表メッセージ エリア
==========================================================*/

#stage3 {
	background: #FFF;
}

.TitleArea_Grep {
	width: 100%;
	min-height: 100px;
	margin: 0;
	box-sizing: border-box;
	background: #FFF;
	padding: 30px;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
}

.pictArea_Grep {
	width: 100%;
	height: 500px;
	min-height: 500px;
	margin: 0 0 10px 0;
	display: block;
}

.txtArea_Grep {
	width: 100%;
	padding: 20px 20px 40px 20px;
	box-sizing: border-box;
}

h3.Grep {
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
	font-size: 2em;
	line-height: 4em;
	color: #333333;
}



.GrepDtl {
	width: 80%;
	margin: 10px auto;
}

.GrepDtl p {
	font-size: 1em;
	line-height: 1.8em;
	padding: 0 0 12px 0;
}

p.Govsig {
	padding: 5px 0;
	text-align: right;
	font-family: 'mplus-1c-medium' , sans-serif;
	font-size: 1.2em;
	line-height: 1.6em;
	color: #333333;
}


@media screen and (max-width: 768px) {

	.GrepDtl p {
		font-family: 'mplus-1p-regular' , sans-serif;
	}

	.pictArea_Grep {
		height: 300px;
		min-height: 300px;
	}
	
	h3.Grep { font-size: 1.6em;	line-height: 2em;}	
	.GrepDtl {width: 100%; padding:  0 5px;}
}

/*==========================================================
グループ概要 エリア
==========================================================*/

#stage4 {
	background: #eeeeee;
	width: 100%;
	height: 100%;
	min-height: 100%;
	display: table;
	overflow: hidden;
}

.TitleArea_Gout {
	width: 100%;
	margin: 0;
	box-sizing: border-box;
	padding: 0 0 20px 0;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
}

.pictArea_Gout {
	width: 50%;
	height: 100%;
	display: table-cell;
	min-width: 480px;
	min-height: 100%;
	vertical-align: top;
	
}

.Grp_info_top {
	width: 100%;
	height: 100%;
	min-width: 480px;
	min-height: 640px;
	background: url(../images/pict_group_int2.jpg) 0 0 no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
}

.txtArea_Gout {
	width: 50%;
	height: 100%;
	display: table-cell;
	min-width: 480px;
	min-height: 100%;
}



h3.Gout {
	text-align: center;
	font-size: 2em;
	font-family: 'mplus-1p-regular' , sans-serif;
	margin: 0 0 20px 0;
}

@media screen and (max-width: 768px) {
	.pictArea_Gout { display: block; min-width: 100%;}
	
	
	.Grp_info_top {
		width: 100%;
		min-width: 100%;
		min-height: 300px;
		
	}
	.txtArea_Gout {
		width: 100%;
		display: block;
		min-width: 100%;
	}
	h3.Gout {
		font-size: 1.6em;	line-height: 2em;
	}

}

/*==========================================================
グループ各会社説明 エリア
==========================================================*/

#stage5 {
	background: #FFF;
}

.TitleArea_Gcorp {
	width: 100%;
	min-height: 100px;
	margin: 0;
	box-sizing: border-box;
	background: #FFF;
	padding: 30px;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
}

h2.TArea_Gcorp {
	display: block;
	width: 200px;
	border-top: 1px solid #333333;
	font-size: 1.4em;
	color: #333333;
	margin: 0 auto;
	text-align: center;
}

/* グループ会社紹介用カラム */

.Grap_com_ttl {
	width: 28.5%;
	display: block;
	position: absolute;
	top: 50px;
	left: 50px;
	z-index: 5000;
}

.Grap_com_ttl h2 {
	font-size: 2.0em;
	font-family: 'mplus-2c-light' , sans-serif;
	margin: 0;
}

.Grap_com_ttl p {
	padding: 0;
	margin: 0;
}

.Grap_com_content {
	top: 0;
	left: -50px;
	margin: 40px 0 30px 0;
	padding: 0 50px;
	z-index: 10000;
	overflow-y: hidden;
}

.Grap_com_header {
	width: 100%;
	/*min-width: 1020px;*/
	margin: 0 auto 10px auto;
}

.Grap_com_title {
	display: block;
	float: left;
	width: 30%;
	/*min-width: 300px;*/
	margin: 0 10px 0 0;
}

.Grap_com_clist {
	width: 69%;
	/*min-width: 700px;*/
	display: block;
	float: right;
	margin: 0;
}

.head_clist {
	width: 33%;
	min-width: 228px;
	display: block;
	float: left;
	margin: 0 2px 0 0;
}

.head_clist li a{
	color: #292929;
}

.Grap_com_body {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	/*padding: 10px 10px 0 10px;*/
	display: none;
}

.Grap_com_body_on {display: block;}

.Grap_loading{ text-align: center; padding: 50px 0;}
.Grap_loading img{ width: 100px; height: auto;}
.Grap_loading_off{ display: none;}

@media screen and (max-width: 768px) {
	.Grap_loading img{ width: 100px; height: auto;}
}


.grid_sizer {
    width: 16.6%;
}

figure {
	display: block;
	position: relative;
	overflow: hidden;
	width: 16.6%;
	height: auto;
	/*
	max-width: 200px;
	max-height: 200px;
	*/
	margin: 0;
	cursor: pointer;
	z-index: 1000;
}



.corp_ttl {
	display: block;
	position: absolute;
	padding: 10px 10px 0 0;
	background: rgba(0,0,0,0.4);
	color: #fff;
	text-decoration: none;
	width: 100%;
	height: 28px;
	z-index: 100;
	bottom: 0;
	margin: auto;
	vertical-align: middle;
	text-align: center;
	font-size: 0.9em;
	line-height: 1.2em;
	opacity: 1;
}

figure img {
	display: block;	
	width: 100%;
	height: auto;
}

.corp_add {
	font-size: 0.9em;
}

figcaption {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	padding: 10px;
	margin: 0 0 0 -10px;
	color: #FFF;
	background: rgba(0,0,0,.4);
	bpx-sizing: border-box;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
	-webkit-transition: .5s;
	transition: .5s;
	opacity: 0;
	word-wrap : break-word;
	overflow-wrap : break-word;
}

figcaption h3 {
	font-weight: bold;
	font-size: 1em;
}

figcaption .CapLink {
	position: relative;
	top: 38%;
	width: 50%;
	margin: 0 auto;
	text-align: center;
	padding: 10px;
	background: rgba(158,158,158,0.5);
	border: 1px solid #E0E0E0;
}

figure:hover figcaption {
	-webkit-transform: rotateY(0);
	transform: rotateY(0);
	opacity: 1;
}

figure:hover .corp_ttl {
	-webkit-transform: rotateY(0);
	transform: rotateY(0);
	opacity: 0;
}

figure:hover .transform01 {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.transform01 {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

@media screen and (max-width: 768px) {
	.grid_sizer {width: 33.3%;}
	figure {width: 33.3%;}
	.corp_ttl { font-size: 0.8em; line-height: 1em;}
	.Grap_com_body {height: 100%;}
	.Grap_com_body figure:last-child{ display: none;}
	figure:hover figcaption {
		-webkit-transform: none;
		transform:  none;
		opacity: 0;
	}
	
	figure:hover .corp_ttl {
		-webkit-transform: rotateY(0);
		transform: rotateY(0);
		opacity: 1;
	}
	
	figure:hover .transform01 {
		-webkit-transform:  none;
		transform:  none);
	}
	
	.transform01 {
		-webkit-transform:  none;
		transform:  none;
		-webkit-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
	}
	
	.pict_content div {
		width: 100%;
		height: 100%;
		text-indent: -99999px;
		min-width: 100%;
		min-height: 100%;
	}
	
	.corp_ttl {
		height: 34px;
		z-index: 100;
		font-size: 0.7em;
		line-height: 1.2em;
		padding: 5px;
	}
	
}

/* モーダル */

.modal-content {
	width: 100%;
	height: 100%;
	min-width: 1020px;
	min-height: 480px;
	display: table;
}

#CorpDtl {
	width: 100%;
	height: 100%;
	min-width: 1020px;
	min-height: 480px;
	display: table;
	background: rgba(255,255,255,0.9);
}

.pict_content div {
	width: 100%;
	height: 100%;
	text-indent: -99999px;
	min-width: 480px;
	min-height: 480px;
}

.btn-close-modal {
	position: absolute;
	right: 12px;
	top: 12px;
	font-size: 24px;
	cursor: pointer;
	border:1px #212121 solid;
	padding: 0 12px;
	z-index: 5000;
	background: rgba(255,255,255,0.8);
}

/*==========================================================
グループ沿革 エリア／山梨文化会館と丹下健三 エリア
==========================================================*/

#stage6 {
	background: #313c3e;
	overflow: hidden;
}

.TopHistoryBackHis {
	width: 100%;
	height: 800px;
	min-height: 760px;
	padding: 50px 0;
}

.TitleArea_History {
	width: 100%;
	min-height: 100px;
	margin: 0;
	box-sizing: border-box;
	padding: 30px;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
	color: #FFF;
}

h2.TArea_History {
	display: block;
	width: 100px;
	border-top: 1px solid #FFF;
	font-size: 1.4em;
	color: #FFF;
	margin: 0 auto;
	text-align: center;
}

.thumSlideHis {
	width: 100%;
	margin: 30px 0;
	display: none;
}

.thumSlideHis img {
	max-height: 300px;
}

.arrowBig {
	margin: 0 auto;
	height: 65px;
	width: 60px;
	display: block;
	position: relative;
} 

.Shita {
	overflow:hidden;
	height:45px;
}

.Shita:before{
	content:''; 
	height:40px; 
	width:40px; 
	display:block; 
	border: 2px solid #FFF; 
	border-right-width:0; 
	border-top-width:0; 
	transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg); 
	position:absolute; 
	bottom: 10px; 
	left: 10px;
}

.HisBtnArea {
	padding: 50px 0;
}

@media screen and (max-width: 768px) {
	.TopHistoryBackHis {
		height: 500px;
		min-height: 500px;
		padding: 30px 0;
	}
	.thumSlideHis {	margin: 0px 0;	height: 120px;	}
		
	.thumSlideHis img {	max-width: 480px;	}
	.arrowBig {	margin-top: 10px;} 	
	.HisBtnArea {	padding: 10px 0;}
	.TitleArea_History {
		min-height: 50px;
	}
	
	.simply-scroll { /* Customisable base class for style override DIV */
		width: 100%;
		height: 150px;
		margin-bottom: 0;

	}

		.simply-scroll .simply-scroll-clip {
			width: 100%;
			height: 150px;
		}
		
			.simply-scroll .simply-scroll-list {}
			
			.simply-scroll .simply-scroll-list li {
				float: left;
				width: 480px;
				height: 120px;
			}
	
}

/*==========================================================
山梨文化会館と丹下健三 エリア
==========================================================*/

#stage7 {
	background: #8c1d21;
	overflow: hidden;
}

.TopHistoryBackYBK {
	width: 100%;
    padding: 50px 0;
   	height: 800px;
	min-height: 760px;
}

h2.TArea_Tange {
	display: block;
	width: 400px;
	border-top: 1px solid #FFF;
	font-size: 1.4em;
	color: #FFF;
	margin: 0 auto;
	text-align: center;
}

.thumSlideYBK {
	width: 100%;
	margin: 30px 0;
	display: none;
}

.thumSlideYBK img {
	height: auto;
}

@media screen and (max-width: 768px) {
	.thumSlideYBK img {
		max-width: 480px;
	}
	
	.TopHistoryBackYBK {
		padding: 30px 0;
		height: 520px;
		min-height: 520px;
		height: 120px;	
	}
	.thumSlideYBK {
		height: 120px;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	h2.TArea_Tange {
		width: 90%;
		
	}

}


/*==========================================================
見学 エリア
==========================================================*/

#stage8{
	background: #FFF;
}

h3.Tour {
	width: 100%;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
	font-size: 1.6em;
	padding: 10px 0 20px 0;
}



.TourBody {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	/*padding: 10px 10px 0 10px;*/
}

.Tourttl {
	display: block;
	position: absolute;
	padding: 10px 5px;
	background: rgba(0,0,0,0.4);
	color: #fff;
	text-decoration: none;
	width: 100%;
	/*height: 28px;*/
	z-index: 100;
	bottom: 0;
	margin: auto;
	vertical-align: middle;
	text-align: center;
	font-size: 1.2em;
	line-height: 1.2em;
	opacity: 1;
	text-align: center;
}

.Touradd {
	font-size: 0.9em;
}

figure.Tour {
	width: 33.3%;
	float: left;
	transform : translate(0, 50px);
	transition : all 500ms;
	opacity: 0.1;
}

/* 2つ目の要素に200msのdelayをかける */
.TourBody > figure.Tour:nth-of-type(2) {
	-moz-transition-delay:200ms;
	-webkit-transition-delay:200ms;
	-o-transition-delay:200ms;
	-ms-transition-delay:200ms;
}

/* 3つ目の要素に400msのdelayをかける */
.TourBody > figure.Tour:nth-of-type(3) {
	-moz-transition-delay:400ms;
	-webkit-transition-delay:400ms;
	-o-transition-delay:400ms;
	-ms-transition-delay:400ms;
}

figure.Tour.scrollin {
	transform : translate(0, 0);
	opacity: 1;
}

figcaption.Tour {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.6);
	-webkit-transform: rotateX(-180deg);
	transform: rotateX(-180deg);
	-webkit-transition: .5s;
	transition: .5s;
	opacity: 0;
}


figcaption.Tour h3 {
	width: 70%;
	font-size: 1.2em;
	text-align: center;
	vertical-align: middle;
	padding: 20px;
	margin: 30px auto;
	border: 1px solid #FFF;
}

figure.Tour:hover .Tourttl {
	-webkit-transform: rotateY(0);
	transform: rotateY(0);
	opacity: 0;
}

figure.Tour:hover .transform02 {
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
}

.transform02 {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}


figure.Tour:hover figcaption.Tour {
	-webkit-transform: rotateX(0);
	transform: rotateX(0);
	opacity: 1;
}

.TourDesc {
	width: 80%;
	margin: 20px auto 0 auto;
	padding: 20px 20px 40px 20px;
}

figcaption.Tour h2 {
	width: 100%;
	padding: 10px;
	font-size: 1.2em;
	box-sizing: border-box;
	border-bottom: 1px solid #FFF;
}

.TourCap {
	box-sizing: border-box;
	color: #FFF;
	line-height: 1.6em;
	padding: 10px;
}

.TourDesc p {
	text-align: center;
}

.TourDesc dl {
	width: 400px;
	margin: 30px auto 10px auto;
	padding: 10px;
	border: 1px solid #CCC;
}

.TourDesc a{ color: #000;}

@media screen and (max-width: 768px) {
	
	h3.Tour {
		font-size: 1.6em;	
		line-height: 1.4em;
	}
	
	figcaption.Tour h3 {
		width: 80%;
		font-size: 1.1em;
		text-align: center;
		vertical-align: middle;
		padding: 10px;
		margin: 0 auto;
		border: 1px solid #FFF;
	}
	
	figure.Tour {
		width: 33.3%;
		float: left;
		margin: 10px auto;
	}
	
	figcaption {
		margin: 0;
	}
	
	.TourCap {
		box-sizing: border-box;
		color: #FFF;
		font-size: 0.9em;
		line-height: 1.6em;
		padding: 10px;
	}
	
	.TourDesc {
		width: 90%;
		margin: 20px auto 0 auto;
		padding: 20px 10px 20px 10px;
		font-size: 0.9em;
	}
	
	.TourDesc dl {
		width: 100%;
		margin: 30px auto 10px auto;
		padding: 10px;
		border: 1px solid #CCC;
	}
	
	.TourDesc p {
	    text-align: left;
	}
	
	.Tourttl {
		height: 36px;
		font-size: 1em;
		line-height: 1.2em;
	}
	
	
}

@media screen and (max-width: 567px) {
	figure.Tour {
		width: 90%;
		float: none;
		margin: 10px auto;
	}
}


/*==========================================================
tour エリア
==========================================================*/

#stage9 {
	background: #FFF;
}

#stage9 h3.Tour {
	width: 100%;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
	font-size: 1.6em;
	padding: 10px 0 20px 0;
}



#stage9 .TourBody {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	/*padding: 10px 10px 0 10px;*/
}

#stage9 .Tourttl {
	display: block;
	position: absolute;
	padding: 10px 5px;
	background: rgba(0,0,0,0.4);
	color: #fff;
	text-decoration: none;
	width: 100%;
	/*height: 28px;*/
	z-index: 100;
	bottom: 0;
	margin: auto;
	vertical-align: middle;
	text-align: center;
	font-size: 1.2em;
	line-height: 1.2em;
	opacity: 1;
	text-align: center;
}

#stage9 .Touradd {
	font-size: 0.9em;
}

#stage9 figure.Tour {
	width: 25%;
	float: left;
	/*transform : translate(0, 50px);
	transition : all 500ms;
	opacity: 0.1;*/
}

/* 2つ目の要素に200msのdelayをかける */
#stage9 .TourBody > figure.Tour:nth-of-type(2) {
	-moz-transition-delay:200ms;
	-webkit-transition-delay:200ms;
	-o-transition-delay:200ms;
	-ms-transition-delay:200ms;
}

/* 3つ目の要素に400msのdelayをかける */
#stage9 .TourBody > figure.Tour:nth-of-type(3) {
	-moz-transition-delay:400ms;
	-webkit-transition-delay:400ms;
	-o-transition-delay:400ms;
	-ms-transition-delay:400ms;
}

figure.Tour.scrollin {
	transform : translate(0, 0);
	opacity: 1;
}

#stage9 figcaption.Tour {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.6);
	-webkit-transform: rotateX(-180deg);
	transform: rotateX(-180deg);
	-webkit-transition: .5s;
	transition: .5s;
	opacity: 0;
}


#stage9 figcaption.Tour h3 {
	width: 70%;
	font-size: 1.2em;
	text-align: center;
	vertical-align: middle;
	padding: 20px;
	margin: 30px auto;
	border: 1px solid #FFF;
}

#stage9 figure.Tour:hover .Tourttl {
	-webkit-transform: rotateY(0);
	transform: rotateY(0);
	opacity: 0;
}

#stage9 figure.Tour:hover .transform02 {
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
}

#stage9 .transform02 {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}


#stage9 figure.Tour:hover figcaption.Tour {
	-webkit-transform: rotateX(0);
	transform: rotateX(0);
	opacity: 1;
}

#stage9 .TourDesc {
	width: 80%;
	margin: 20px auto 0 auto;
	padding: 20px 20px 40px 20px;
}

#stage9 figcaption.Tour h2 {
	width: 100%;
	padding: 10px;
	font-size: 1.2em;
	box-sizing: border-box;
	border-bottom: 1px solid #FFF;
}

#stage9 .TourCap {
	box-sizing: border-box;
	color: #FFF;
	line-height: 1.6em;
	padding: 10px;
}

#stage9 .TourDesc p {
	text-align: center;
}

#stage9 .TourDesc dl {
	width: 400px;
	margin: 30px auto 10px auto;
	padding: 10px;
	border: 1px solid #CCC;
}

#stage9 .TourDesc a{ color: #000;}

@media screen and (max-width: 768px) {
	
	#stage9 h3.Tour {
		font-size: 1.6em;	
		line-height: 1.4em;
	}
	
	#stage9 figcaption.Tour h3 {
		width: 80%;
		font-size: 1.1em;
		text-align: center;
		vertical-align: middle;
		padding: 10px;
		margin: 0 auto;
		border: 1px solid #FFF;
	}
	
	#stage9 figure.Tour {
		width: 25%;
		float: left;
		margin: 10px auto;
	}
	
	#stage9 figcaption {
		margin: 0;
	}
	
	#stage9 .TourCap {
		box-sizing: border-box;
		color: #FFF;
		font-size: 0.9em;
		line-height: 1.6em;
		padding: 10px;
	}
	
	#stage9 .TourDesc {
		width: 90%;
		margin: 20px auto 0 auto;
		padding: 20px 10px 20px 10px;
		font-size: 0.9em;
	}
	
	#stage9 .TourDesc dl {
		width: 100%;
		margin: 30px auto 10px auto;
		padding: 10px;
		border: 1px solid #CCC;
	}
	
	#stage9 .TourDesc p {
	    text-align: left;
	}
	
	#stage9 .Tourttl {
		height: 36px;
		font-size: 1em;
		line-height: 1.2em;
	}
	
	
}

@media screen and (max-width: 567px) {
	#stage9 figure.Tour {
		width: 90%;
		float: none;
		margin: 10px auto;
	}
}

/*==========================================================
アクセス エリア
==========================================================*/

/*#stage9 {
	background: #FFF;
}*/

.backAccess {
	width: 100%;
	height: 450px;
	min-height: 450px;
	display: block;
	background: url(../images/pict_Access02.jpg) top center no-repeat fixed;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	/*background-attachment: fixed;*/
}

@media screen and (max-width: 768px) {
	.backAccess {
		height: 200px;
		min-height: 200px;
		background: url(../images/pict_Access02.jpg) top center no-repeat;
		background-size: 100%;
	}	
}

.TitleArea_Access {
	width: 100%;
	min-height: 100px;
	margin: 0;
	box-sizing: border-box;
	padding: 30px;
	text-align: center;
	font-family: 'mplus-1c-regular' , sans-serif;
	z-index: 10;
}

h2.TArea_Access {
	display: block;
	width: 100px;
	border-top: 1px solid #333333;
	font-size: 1.4em;
	color: #333333;
	margin: 0 auto;
	text-align: center;
}

.AccessBody {
	width: 100%;
	margin: 0;
	padding: 40px 0;
	background: #FFF;
}

.AccessConts {
	width: 980px;
	margin: 10px auto;
}


.AccessBlock {
	display: block;
	float: left;
	width: 49%;
}

h3.AccessTitle {
	font-size: 1.2em;
	font-family: 'mplus-1m-medium' , sans-serif;
}

@media screen and (max-width: 768px) {
	.AccessConts {
		width: 100%;
	}
	
	.AccessBlock {
		float: none;
		width: 90%;
		margin: 10px auto;
	}

}

/* GoogleMaps レスポンシブ */

.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin: 30px 0;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 96%;
	height: 100%;
}



/*==========================================================
リンク エリア
==========================================================*/

#stage11 {
	background: #555555;
}

.LinkBody {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	padding: 30px 0;
}


h2.Link {
	text-align: center;
	padding: 0;
	font-size: 1.4em;
	color: #FFF;
	font-family: 'mplus-1c-regular' , sans-serif;
}

.LinkBtnArea {
	
}



/* フッターリンクボタン */

a.btnfLink {
	display: inline-block;
	width: 30%;
	margin: 0 0 10px 0;
	padding: 15px 10px;
	border: 1px solid #FFF;
	background: rgba(255,255,255,0);
	color: #FFF;
	text-align: center;
	text-decoration: none;
	line-height: 1;
	transition: .3s;
}

@media screen and (max-width: 768px) {
	a.btnfLink {
		display: block;
		width: 90%;
		margin: 0 auto 5px auto;
	}
}

a.fLink {
	position:relative;
	z-index:2;
	overflow:hidden;
	transition-delay:0;
}

a.fLink::after {
	display:block;
	content:"";
	position:absolute;
	z-index:-1;
	top:0;
	left:-100%;
	width:100%;
	height:100%;
	margin:0;
	background:#FFF;
	opacity: 0.9;
	transition:.3s;
	transition-delay:.3s
}

a.fLink:hover {
	color:#555555;
	transition-delay:.3s
}

a.fLink:hover::after {
	left:0;
	transition-delay:0;
}


.txt_center {
	width: 300px;
	margin: 40px auto 20px auto;
}

/*========================================================== 
セカンドページ
==========================================================*/

/* 基本レイアウト */
.contents_wrap {
	width: 100%;
	height: 100%;
	/*min-width: 1020px;*/
	min-height: 480px;
	display: table;
}

.txt_area {
	width: 50%;
	height: 100%;
	display: table-cell;
	min-width: 480px;
	min-height: 480px;
}

.pict_area {
	width: 50%;
	height: 100%;
	display: table-cell;
	min-width: 480px;
	min-height: 480px;
	vertical-align: top;
}

/* 写真エリア 2カラム*/
.pict_content {
	width: 100%;
	height: 100vh;
	position: relative;
	top: 0;	
	margin: 0;
	padding: 0;
	vertical-align: top;
}

/* 文章エリア 2カラム */

.txt_content {
	margin: 20px 0 50px 0;
	padding: 30px 50px 0 50px;
	z-index: 10000;
	overflow: auto;
}

h1.txt_base {
	font-size: 2.0em;
	font-family: 'mplus-2c-light' , sans-serif;
	margin: 0 0 30px 0;
	
}

.txt_dtl {
	font-size: 1em;
	line-height: 1.8em;
}

.txt_dtl p{

}

/* 各会社紹介ページ */

.corp_dtl_info {
	margin: 50px 0 0 0;
}

.corp_dtl_info a{ color: #000;}

@media screen and (max-width: 768px) {
	.contents_wrap {
		min-height: 100%;
		display: block;
	}
	
	.txt_area {
		width: 100%;
		height: 100%;
		display: block;
		min-width: 100%;
		min-height: 100%;
	}
	
	.pict_area {
		width: 100%;
		height: 100%;
		display: block;
		min-width: 100%;
		min-height: 100%;

	}
	
	
	.pict_content {
		height: 300px;
		min-height: 300px;
		margin-bottom: -25px;
	}
	
	.pict_content div {
		width: 100%;
		height: 300px;
		text-indent: -99999px;
		min-width: 100%;
		min-height: 300px;
		
	}
	
	
	
	.modal-content {
		width: 100%;
		height: 100%;
		min-width: 100px;
		min-height: 100%;
		display: block;
		
	}
	
	#CorpDtl {
		width: 100%;
		height: 100%;
		min-width: 100%;
		min-height: 100%;
		display: block;
		background: rgba(255,255,255,0.9);
	}
	
	.txt_dtl {
		font-family: 'mplus-1p-regular' , sans-serif;
		font-size: 1em;
		line-height: 1.8em;
	}

	.txt_dtl p{
		font-family: 'mplus-1p-regular' , sans-serif;
	}
	
	
}

/* グループ情報
================================================================*/

.Grp_info_second {
	width: 100%;
	height: 100%;
	text-indent: -99999px;
	min-width: 480px;
	min-height: 480px;
	background: url(../images/pict_group_his.jpg) 0 0 no-repeat;
	background-size: cover;
}

.Grp_info_third {
	width: 100%;
	height: 100%;
	text-indent: -99999px;
	min-width: 480px;
	min-height: 480px;
	background: url(../images/pict_group_info.jpg) 0 0 no-repeat;
	background-size: cover;
}

canvas#grp_info {
	width: 100%;
	height: 100%;
	z-index: -10;
}


@media screen and (max-width: 768px) {
	.contents_wrap {
		width: 100%;
		height: 100%;
		/*min-width: 1020px;*/
		min-height: 100%;
		display: block;
	}
	
	.txt_area {
		width: 100%;
		height: 100%;
		display: block;
		min-width: 100%;
		min-height: 200px;
	}
	
	.pict_area {
		width: 100%;
		height: 100%;
		display: block;
		min-width: 100%;
		min-height: 200px;
	}
	.txt_content {	padding: 30px 20px 0 20px;	}
	
	.Grp_info_second {
		min-width: 100%;
		min-height: 100px;
	}
	
	.Grp_info_third {
		min-width: 100%;
		min-height: 100px;
	}
	
	canvas {
		display: none;
	}
	
	
}











