
/* ==============================================================================
    CSS for touch-screen : common.css
============================================================================== */

/* ----------------------------------------------------------
  Common Settings : css-reset
---------------------------------------------------------- */
html{
font-family: Meiryo,'Hiragino Kaku Gothic ProN','Hiragino Sans',sans-serif;
overflow-y:scroll;
-webkit-text-size-adjust:none;
-webkit-font-smoothing: antialiased;
-webkit-backface-visibility:hidden;
backface-visibility:hidden;
}

body,div,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,form,fieldset,legend,input,textarea,pre,code,blockquote,th,td{
margin:0;
padding:0;
}

div,h2,h3,h4,h5,h6,p,li,dt,dd,pre,code,blockquote,th,td{
word-break:break-all;
}

br{
letter-spacing:0;
}

fieldset,img{
border:0;
}

li{
list-style:none;
}

caption,th{
text-align:left;
}

h1,h2,h3,h4,h5,h6,th{
font-size:100%;
font-weight:normal;
font-style:normal;
}

input,textarea,select{
font-family:inherit;
font-size:inherit;
font-weight:inherit;
color:#121212;
}

input[type="submit"]{
cursor:pointer;
}

select{
background-color:#ffffff !important;
}

address,caption,cite,code,dfn,var{
font-style:normal;
font-weight:normal;
}

abbr,acronym{
border:0;
font-variant:normal;
}

del,u{
text-decoration:none;
}

/*=================================================
 * CSS MAIN
 * ================================================= */

body{
	text-align	: center;
	font-size	: 12px;
	line-height	: 16px;
	font-family: Meiryo,'Hiragino Kaku Gothic ProN','Hiragino Sans',sans-serif;
    -webkit-text-size-adjust: 100%;
	scrollbar-face-color: #ffffff;
	scrollbar-3dlight-color: #553f09;
	scrollbar-highlight-color: #ffffff;
	scrollbar-shadow-color: #ffffff;
	scrollbar-darkshadow-color: #553f09;
	scrollbar-arrow-color: #553f09;
	scrollbar-track-color: #ffffff;
	-webkit-font-smoothing: subpixel-antialiased;
}

a{
	text-decoration	: none;
}

a:hover{
	text-decoration	: underline;
}

a[href^="tel:"] { cursor: pointer; text-decoration: none; color: #fff;}
a[href^="tel:"]:hover{	text-decoration: none;}

h1,h2,h3{
	font-size	: 13px;
}

ul{
	list-style-type	: none;
}

li{
	margin		: 0px;
	padding		: 0px;
}

table{
	font-size	: 13px;
}

table tr{
	vertical-align	: top;
}

i, em{
	font-style		: normal;
}


/*=================================================
 * CSS for PC
 * ================================================= */

body{
	min-width: 1200px;
	background: url(../img/index/pc_bg.jpg) no-repeat top center fixed #000;
	background-size: cover;
}


/** header **/

header{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	justify-content: center;
	height: 85vh;
	margin: 0 0 50px 0;
	background: url(../img/index/logo.png?t=0530) no-repeat 4vw 50px;
	background-size: 650px auto;
}

header h1{
	width: 100%;
	font-size: 11px;
	line-height: 20px;
	margin: 20vh 0 20px 0;
}

nav{
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

nav .enter{
	position: relative;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	justify-content: center;
	font-family: "FontA";
	color: #75d988;
	width: 430px;
	height: 140px;
	background: url(../img/index/enter.png) no-repeat;
	background-size: 430px auto;
	margin-bottom: 30px;
	filter: drop-shadow(10px 10px 10px rgba(0,0,0,0.8));
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-animation-name: blink_icon;
	-webkit-animation-duration: 4.0s;
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count:infinite;
}
@-webkit-keyframes blink_icon{
	0%	{
			opacity: 1;
			filter: alpha(opacity=100);}
	10%	{
			opacity: 1;
			filter: alpha(opacity=100);}
	50%	{
			opacity: 0;
			filter: alpha(opacity=0);}
	90%	{
			opacity: 1;
			filter: alpha(opacity=100);}
	100%	{
			opacity: 1;
			filter: alpha(opacity=100);}
}

nav .enter:hover{
	text-decoration: none;
}

nav .enter em{
	width: 100%;
	font-size: 80px;
	line-height: 1;
}

nav .enter span{
	width: 100%;
	font-size: 18px;
	line-height: 1;
}

nav p{
	font-size: 11px;
	line-height: 20px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
nav p a{	color: #fff; text-decoration: underline;}
nav p a:hover{	text-decoration: none;}



/** main **/

main{
	display: block;
}


/** concept **/

#concept{
	text-align: left;
	margin: 0 0 100px 0;
	overflow-x: hidden;
}

#concept h3{
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	align-content: flex-start;
	justify-content: start;
	color: #fff;
	text-align: left;
	margin: 0 0 20px 0;
}

#concept h3 span{
	width: 100%;
	font-family: "FontA";
	font-size: 140px;
	line-height: 1;
}
#concept h3 em{
	width: 100%;
	font-family: 'Noto Serif JP', serif;
	font-weight: 800;
	font-size: 50px;
	line-height: 1;
	margin: 0 0 10px 0;
	padding-left: 20px;
}
#concept h3 i{
	width: 100%;
	font-family: "FontA";
	font-size: 42px;
	font-style: normal;
	line-height: 1.1;
	padding-left: 50px;
}

#concept div{
	font-size: 40px;
	line-height: 1.2;
	color: #fff;
	letter-spacing: 40px;
	padding: 0 50px;
	margin: 0 0 20px 0;
}

#concept p{
	font-size: 13px;
	line-height: 25px;
	padding: 0 50px;
}



/** outlink **/

.outlink{
}
.outlink_in{
	width: 1200px;
	margin: 0 auto;
	padding: 0 0 100px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#fgo{	padding-bottom: 40px;}
#fgo2{	padding-bottom: 40px;}
.fgo{
	width: 1060px;
	display: table;
	font-size: 0;
	line-height: 0;
	table-layout: fixed;
	margin: 0 auto 10px auto;
}
.fgo_in{
	display: table-cell;
	vertical-align: top;
}
.fgo_in table{	margin: 0 auto;}

.link_list{
	font-size: 0;
	line-height: 0;
	padding: 0 0 30px 0;
}

.link_list a{
	display: inline-block;
	vertical-align: top;
	margin: 0 5px 10px 5px;
}

.fgo_pc{	display: block;}
.fgo_sp{	display: none;}

#hg{	margin-bottom: 50px;}

.link_table{
	display: inline-block;
	vertical-align: top;
	margin: 0 0 10px 0;
}


/** footer **/

footer{
	position: relative;
	text-align: right;
	padding: 0 90px 120px 0;
}

#finfo{
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	margin: 0 0 30px 0;
}
#finfo h2{
	font-size: 14px;
	line-height: 20px;
	margin: 0 0 10px 0;
}
#finfo p{
	font-size: 14px;
	line-height: 20px;
}

#fmenu{
	position: relative;
	width: 440px;
	font-size: 10px;
	line-height: 20px;
	margin-left: auto;
	padding: 30px 0 0 0;
	border-top: 1px solid #fff;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#fmenu a{
	position: relative;
	color: #fff;
}
#fmenu br{	display: none;}

footer #copyright{
	font-family: "FontA";
	font-size: 11px;
	line-height: 14px;
	position: absolute;
	bottom: 190px;
	right: -150px;
	-webkit-transform: rotate(90deg);
	   -moz-transform: rotate(90deg);
	    -ms-transform: rotate(90deg);
	     -o-transform: rotate(90deg);
	        transform: rotate(90deg);
}
footer #copyright br{	display: none;}
footer #copyright a{	color: #fff;}
footer #copyright a:hover{	text-decoration: none;}


.pc_none{	display: none;}

#fgo_pc{
	margin-bottom: 40px;
}
#fgo_sp{
	display: none;
}


#etc_link .box{
	margin-bottom: 5px;
}

#etc_link .box.b468{
	width: 468px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;
}

.for_sp{	display: none !important;}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 650px) {
	body{
		min-width: 0;
		background: #000;
	}
	
	body:before{
		content: '';
		width: 100vw;
		height: 100vh;
		position: fixed;
		z-index: -1;
		top: 0;
		left: 0;
		background: url(../img/index/sp_bg.jpg) no-repeat top center;
		background-size: cover;
	}
	
	a[href^="tel:"] { cursor: pointer;}
	a:hover{	text-decoration: none;}

	/** header **/
	header{
		height: 75vh;
		margin: 0;
		background: url(../img/index/logo.png?t=0530) no-repeat 2vw 2vh;
		background-size: 74vw auto;
	}
	header h1{
		font-size: 10px;
		line-height: 20px;
		margin: 90px 0 20px 0;
	}
	nav .enter{
		width: 240px;
		height: 78px;
		background: url(../img/index/enter.png) no-repeat;
		background-size: 240px auto;
		margin-bottom: 20px;
		filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.6));
	}
	nav .enter em{
		font-size: 44px;
	}
	nav .enter span{
		font-size: 12px;
	}
	nav p{
		font-size: 10px;
		line-height: 17px;
	}


	/** main **/
	main{
	}


	/** concept **/

	#concept{
		text-align: left;
		margin: 0 0 50px 0;
	}

	#concept h3{
		position: relative;
		width: 100%;
		margin: 0 0 10px 0;
	}
	#concept h3:after{
		top: 7.5vw;
	}
	#concept h3 span{
		font-size: 15vw;
		line-height: 1;
	}
	#concept h3 em{
		font-size: 15px;
		line-height: 1;
		margin: 0 0 5px 0;
		padding-left: 1px;
	}
	#concept h3 i{
		font-size: 13px;
		line-height: 15px;
		padding-left: 10px;
	}
	#concept div{
		font-size: 15px;
		color: #fff;
		letter-spacing: 15px;
		padding: 0 10px;
		margin: 0 0 10px 0;
	}
	#concept p{
		font-size: 12px;
		line-height: 20px;
		padding: 0 10px;
	}


	/** outlink **/
	.outlink{
		padding: 0 10px 10px 10px;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.outlink_in{
		width: auto;
		margin: 0;
		padding: 0;
	}
	#fgo{	padding-bottom: 10px;}
	#fgo2{padding:0 0 10px 0;}
	.fgo{
		width: auto;
		display: block;
		margin: 0;
	}
	.fgo_in{
		display: block;
		margin: 0 0 5px 0;
		padding: 0 10px;
	}
	.link_list{
		padding: 0 0 5px 0;
	}
	.link_list:last-child{
		padding: 0 0 5px 0;
	}
	.link_list a{
		margin: 0 2px 5px 2px;
	}
	.fgo_pc{	display: none;}
	.fgo_sp{	display: block;}
	.bnr46860 img,
	#bnr46860 img{ width: 100%;	max-width: 300px; height: auto;}
	#bnr468 img{	width: 100%; max-width: 300px; height: auto;}
	#hg{	margin-bottom: 30px;}


	/** footer **/
	footer{
		padding: 0 10px 40px 10px;
	}
	#finfo{
		display: inline-block;
		font-family: 'Noto Serif JP', serif;
		font-weight: 600;
		margin: 0 0 20px 0;
		padding: 0 0 20px 0;
		border-bottom: 1px solid #fff;
	}
	#finfo h2{
		font-size: 12px;
		line-height: 14px;
		margin: 0 0 10px 0;
	}
	#finfo p{
		font-size: 11px;
		line-height: 14px;
	}
	#fmenu{
		width: auto;
		padding: 0;
		border-top: none;
	}
	#fmenu br{	display: inline;}
	footer #copyright{
		position: static;
		margin: 30px 0 0 0;
		padding: 0;
	-webkit-transform: rotate(0deg);
	   -moz-transform: rotate(0deg);
	    -ms-transform: rotate(0deg);
	     -o-transform: rotate(0deg);
	        transform: rotate(0deg);
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	footer #copyright br{	display: inline;}

	.pc_none{	display: inline;}
	.sp_none{	display: none;}

	#fgo_pc{
		display: none;
	}
	#fgo_sp{
		display: block;
		margin-bottom: 40px;
	}

	#etc_link .bn468 img{
		width: 300px;
		height: auto;
	}

	#etc_link .box.b468{
		width: 300px;
	}

	.for_pc{	display: none !important;}
	.for_sp{	display: block !important;}

}
