@charset "utf-8";
/* CSS Document */
*{
	padding:0; margin:0;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;}
/* 基本設定 */
html {
    margin: 0;
    padding: 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; 
	font-size: 14px;}
	
h1,h2,h3,h4,h5,h6{ font-size: 14px; font-weight: normal; }

a:link,a:visited{ color: #333; text-decoration: none; }
a:hover{ text-decoration: underline; }
body {
    margin: 0;
    padding: 0;
		background: url(../img/bg_body.jpg) no-repeat top center #000; }
.img100{
	display: block;
  max-width: 100% !important;
	height: auto !important;}
.m_ttl{
	font-family: 'Oswald', sans-serif;
	width: 70%;
	margin: 0 auto 30px;
	text-align: center;
	font-size: 200%;
	font-weight: bold;
	line-height: 50px;}
	.m_description{
		font-family: 'Oswald', sans-serif;
		text-align: center;
		font-size: 120%;}
.red{ background: #e60012 !important; color: #fff;}
.gray{ background: #333 !important; color: #fff; }

#pagetop{
	position: fixed;
	bottom: 0;
	right: 10px;
	width: 50px;
	height: 50px;
	background: rgba(255,0,4,1.00);
	color: #fff;
	z-index: 10;
	border-radius: 25px 25px 0 0; 
	-webkit-border-radius: 25px 25px 0 0;
	-moz-border-radius: 25px 25px 0 0;}
	.arrow{ position: absolute; top: 20px; left: 16px; }

/* レイアウト */
#wrap { overflow: hidden;}

/* グローバルナビ */
#navi {
	height: 75px;
	width: 1000px;
	margin: 0 auto;}
	#navi img{
		max-height: 65px;
		float: left;
		margin-left: 10px;
		padding: 8px 0 2px;}
	#navi ul{
		width: 80%;
		margin: 0; padding: 0;
		list-style: none;
		float: right;}
		#navi ul li{
			display: block;
			float: left;
			text-align: center;
			line-height: 75px;
			width: 13%;
			color: #fff;
			background: none;}
			#navi ul li:last-child{ width: 22%; }
			#navi ul li a{
				display: block;
				color: #fff;
				text-decoration: none; }
				#navi ul li ul{
					position: fixed;
					top: 75px;
					left: 0;
					width: 100%;
					padding: 25px 0;
					float: none;
					background: rgba(0,0,0,0.70);
					border-bottom: 1px #fff dotted;}
					#navi ul li ul li{
						width: 25%;
						padding: 20px 30px;
						text-align: left;
						line-height: 2;
						float: left;					
						border-right: 1px rgba(255,255,255,0.60) solid; }
						#navi ul li ul li:last-child{ width: 25%; }
							#navi ul li ul li .ttl{ font-size: 120%; font-weight: bold; }
							#navi ul li ul li .txt{ line-height: 1.4; }

/* banner */
#banner {
	position: relative;
	width: 100%;
	height: 600px;
	background: url(../img/top.jpg) no-repeat center center;
	background-size: cover;
	z-index: 1;}
	#banner::after{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 600px;
		z-index: 2;
		content: '';
		background: url(../img/01.png) repeat;}
	.banner_inner{
		position: absolute;
		top: 0;
		width: 100%;
		height: 600px;
		z-index: 4;
		transition: .8s;}
	#banner h1,
	#banner h2{ text-indent: -8888px; }
	#banner .ttl_area {
			position: absolute;
			top: 40%;
			right: 5%;
			color: #fff;
			z-index: 3;
			overflow: hidden;}
	#banner .m_ttl{
		width: 100%;
		font-size: 300%;
		margin: 0 0 5px;}
		#banner .bg_ttl{
			position: absolute;
			top: 0;
			height: 50px;
			width: 100%;}
	#banner .m_description{
		width: 100%;
		text-align: right;}
		#banner .bg_description{
			position: absolute;
			top: 60px;
			height: 40px;
			width: 100%;}
	#banner #pagedown{
		opacity: 0.7;
		position: absolute;
		bottom: 50px;
		left: 50%;
		width: 50px;
		height: 70px;
		margin-left: -25px;
		background: rgba(255,0,4,1.00);
		color: #fff;
		z-index: 10;
		border-radius: 25px; 
		-webkit-border-radius: 25px;
		-moz-border-radius: 25px;}
		#banner .arrow{ top: 30px !important; }

/* content */
.contents{}
.contents_inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 35px 50px;
	background: #fff;}

	/* concept */
	#concept .contents_inner{
		background: #000;
		color: #fff;}
		#concept .contents_inner img{
			display: block;
			text-align: center;
			margin: 0 auto 30px; }
		#concept .contents_inner .txt{
			margin-bottom: 30px;}
			#concept .contents_inner .txt:last-child{ margin: 0; }

	/* news */
	#news{ background: #fff; }
	#news .contents_inner{}
		#news .contents_inner ul{}
			#news .contents_inner ul li{
				border-bottom: #f04 1px dotted;
				padding: 10px 50px;}
				#news .contents_inner ul li a::after{
					content: '　>>> more';
					color: rgba(255,0,4,1.00);}
				#news .contents_inner ul li .date{
					background: rgba(255,0,4,1.00);
					font-size: 80%;
					color: #fff;
					padding: 2px 8px;
					margin-right: 10px; }

	/* blogs */
	#blogs{
		position: relative;
		background: url(../img/bg_top_contents.jpg) no-repeat center center;
		background-size: cover;
		z-index: 1;}
		#blogs::after{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 2;
			content: '';
			background: rgba(0,0,0,0.50) url(../img/01.png) repeat;}
		#blogs .contents_inner{
			position: relative;
			z-index: 3;
			background: none; }
		#blogs .m_ttl{ color: #fff; }
		#blogs .contents_inner .box_list3 {}
			#blogs .contents_inner .box_list3 li{
				background: rgba(255,255,255,0.60);
				width: 29.3333%;
				margin: 0 2% 20px;
				padding: 0 0 20px;
				z-index: 3;}
				#blogs .contents_inner .box_list3 li .date{
					display: inline-block;
					background: rgba(255,0,4,1.00);
					margin: 0 20px 5px;
					padding: 5px 10px;
					line-height: 1;
					color: #fff;
					font-size: 12px;
					font-weight: bold;}
				#blogs .contents_inner .box_list3 li .ttl{
					font-weight: bold;
					font-size: 18px;
					line-height: 1.2;
					margin: 0 20px 10px;}
				#blogs .contents_inner .box_list3 li .txt{
					line-height: 1.4;
					margin: 0 20px 10px;}
				#blogs .contents_inner .box_list3 li .more{
					margin: 0 20px;
					padding: 10px;
					color: #fff;
					text-align: center;
					font-weight: bold;}
					#blogs .contents_inner .box_list3 li .more a{
						display: block;
						text-decoration: none;
						color: #fff;}

	/* photo gallary */
	#photo_gallary{ color: #fff; }
	#photo_gallary .contents_inner{ overflow: hidden; padding: 50px 50px 75px; background: none; }
		#photo_gallary .m_ttl{
			color: #fff;
			z-index: 3;}
		#photo_gallary .contents_inner .b50{ position: relative; padding: 0 25px; }
		#photo_gallary .contents_inner .box_list3{ }
			#photo_gallary .contents_inner .box_list3 li{	padding: 0 !important; }
			#photo_gallary .contents_inner .box_list3 li .img{ margin: 0 !important; }
			#photo_gallary .contents_inner .b50 .txt{
				position: absolute;
				top: 50%;
				-ms-transform: translateY(-50%);
				-webkit-transform : translateY(-50%);
				transform : translateY(-50%);}

	/* Google map */
	#gmap{
		-moz-opacity: 0.7;
		opacity: 0.7;}

	/* footer */
#footer {
	width: 100%;
	height: 150px;
	clear: both;
	border-top: rgba(255,0,4,1.00) solid 1px; }
	#footer .contents_inner{ background: none; }
		#footer .contents_inner ul{ text-align: center; margin: 0 auto 15px; }
			#footer .contents_inner li{
				display: inline-block;}
				#footer .contents_inner li a{
					margin: 0 10px; color: #fff; }
		#footer .contents_inner .txt { text-align: center; color: #fff; }

/*=タブレット表示=*/	
@media only screen and (max-width: 736px) {
/* 共　通 */
.m_ttl{
	width: 90%;
	font-size: 120%; }

.contents{}
.contents_inner{ padding: 35px 20px; }

/* グローバルナビ */
#navi { display: none; }
#navi ul li ul li .ttl{ font-size: 100%; font-weight: normal; }
	
/* banner */
	#banner {
		width: 100%;
		height: 300px; }
		#banner::after{
			height: 300px; }
		.banner_inner{
			height: 300px;}
		#banner .ttl_area {
			top: 38%;
			right: 50%;
			margin-right: -95px;}
		#banner .m_ttl{
			font-size: 180%;
			text-align: center;}
	#banner .m_description{
		text-align: center;}
	
	/* news */
	#news{}
		#news .contents_inner ul li{ padding: 10px 15px;}
			#news .contents_inner ul li .date{ display: inline-block; margin: 0 0 5px; }
			#news .contents_inner ul li .txt{ display: block; }
	/* blogs */
	#blogs{}
		#blogs .contents_inner .box_list3 li{
			margin: 0 0 20px; }
	
	/* photo gallary */
	#photo_gallary{}
	#photo_gallary .contents_inner{ padding: 50px 25px 75px; }
		#photo_gallary .contents_inner .b50{ margin-bottom: 50px; }
				#photo_gallary .contents_inner .b50:last-child{
				margin-bottom: 0;}
			#photo_gallary .contents_inner .box_list3 li{
				float: left;
				width: 33.33333% !important;}
}
