@charset "UTF-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;300;500&display=swap');


*{
	margin:0;
	padding:0;
	font-style:normal;
	border:0;
	zoom:1;
	-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{
  height:100%;}

html>/**/body{
  overflow:-moz-scrollbars-vertical;}

html:first-child body{
  min-height:100%;
  padding-bottom:1px;}

body{
	margin:0;
	padding:0;
	border:0;
	color:#666;
	font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align:center;
	font-size:14px;
	background-color:#DEDCDC;}

	strong{
		font-weight:500;}

	em{
		text-decoration:underline;}

	ruby{
		font-size:50%;}

	a{
	text-decoration:none;
	color:#475B29;}

	a:hover{
    transition : all 0.5s ease 0s;
    color:#7F991F;}

	.txt_xlarge{font-size:140%;}
	.txt_large{font-size:120%;}
	.txt_normal{font-size:100%;}
	.txt_small{font-size:80%;}
	.txt_xsmall{font-size:60%;}
	.txt_serif{font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho", serif;}
	
	.aligncenter{text-align:center;}
	.alignleft{text-align:left;}
	.alignright{text-align:right;}
	
	.floatleft{float:left;}
	.floatright{float:right;}


/*-- HEADER --*/

#header{
	position:fixed;
	width:100%;
	height:50px;
	margin:0 auto 0;
	text-align:center;
	color:#fff;
	z-index:999;}

	#header h1{
		float:left;
		margin-left:50px;
		text-indent:-99999px;}
	
		#header h1 a{
			display:block;
			width:125px;
			height:50px;
			margin:0 auto;
			background-image:url("../img/logo.png");
			background-size:cover;}

	#nav{
		float:right;
		list-style:none;
		margin-right:50px;}

		#nav li{
			float:left;
			display:block;
			margin-left:30px;}

			#nav li a{
				display:block;
				height:50px;
				line-height:50px;
				color:#fff;
				font-size:120%;}
				
			#nav li a:hover{
				border-bottom:4px solid #fff;}


@media(max-width: 768px){
#header{}

    #header h1{
	float:none;
	display:block;
	margin-left:0;
	margin:0 auto;
	text-align:center;
    background:#DEDCDC;}

	#nav{
		position:fixed;
		top:50px;
		float:none;
		display:block;
		width:100%;
		margin-right:0px;
		margin:0 auto;}

		#nav li{
			display:block;
			width:25%;
			height:50px;
			margin:0;
			background:rgba(0,0,0,0.7);}

			#nav li a{
				display:block;
				height:50px;
				line-height:50px;
				color:#fff;
				font-size:80%;}

			#nav li:first-child{margin-left:0;}

}

/*-- MOVIE --*/

#movie{
	width: 100%;
	height: 100%;
	margin:0;
	padding:0;
	background:url("../img/bg.png");
	position:relative;
	top: 0;
	left: 0;
	z-index: 2;
	vertical-align: bottom;}

video {
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	position:relative;
	right: 0;
	top: 0;
	z-index:1;
	vertical-align: bottom;}

#movie div{
	position: absolute;
  	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	z-index:9;
	text-align:center;}
	
	#movie div img{
        width:50%;
        height:auto;}

	#movie div p.copy{
		margin-top:10px;
		font-size:x-small;
		letter-spacing:0.2em;
		color:#fff;
		text-shadow:0 1px 1px rgba(0,0,0,0.2);}



@media(max-width: 768px){
	
#movie{overflow: hidden;
margin-bottom:50px;}

video {
	width:200%;
	left: -50%;}

#movie div{
	position: absolute;
  	top: 55%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	z-index:9;
	text-align:center;}
	
	#movie div img{
        width:100%;
        height:auto;}

		}





/*-- SECTION --*/
section{
	width:100%;
	margin:50px auto 0;
	text-align:center;}

section > *{
	width:90%;
	max-width:800px;
	margin:0 auto;
    text-aligh:left;}

#section1:after,#section2:after,#section3:after{
	content:"";
	display:block;
	width:100%;
	height:50px;
	margin-top:50px;
	background-size:50px 50px;
	background-repeat: no-repeat;
    background-position: center center;
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
    background-image:url("../img/circle.png");}

#section4:after{
	content:"";
	display:block;
	width:100%;
	height:200px;
	margin-top:100px;
	background-attachment: fixed;
	background-size:cover;
	background-repeat: no-repeat;
    background-position: center center;
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
    background-image:url("../img/bg01.jpg");}

	section h2{
		max-width:800px;
		margin:0 auto;
		padding:0 0 50px;
		font-size:300%;
		font-weight:300;
        font-family: 'Montserrat', sans-serif;
		color:#999;
		text-align:center}

	section h3{
		max-width:800px;
		margin:0 auto;
		padding:50px 0 50px;
		font-size:200%;
		font-weight:500;
        font-family: 'Montserrat', sans-serif;
		font-weight:normal;
		color:#666;}

		section h3 ruby{
			margin-left:1em;}

	section h4{
		max-width:800px;
		margin:0 auto;
		padding:20px 0 20px;
		font-size:120%;
		font-weight:500;
        font-family: 'Montserrat', sans-serif;
		font-weight:normal;
		color:#666;}


	section div{
		width:100%;
		max-width:800px;
		margin:0 auto;
		padding:0 0 50px;
        text-align:left;}

	section p{
		width:100%;
		max-width:800px;
		margin:0 auto;
		padding:0 0 50px;
        text-align:center;
        line-height:1.8em;}

#section1 p{
        line-height:2em;
        text-align:left;}

	section img{
		width:100%;
		padding:0 0 50px;}

	section ul{
        width:50%;
		margin:2em auto 50px;
		list-style:none;
		border-top:1px solid rgba(255,255,255,0.4);}
        
        section ul li{
        text-align: left;
        padding-left:1em;
    line-height:1.6em;
    padding-top:1em;
    padding-bottom:1em;
		border-bottom:1px solid rgba(255,255,255,0.4);}

            section ul li span{
            margin-right:2em;
            font-family: 'Montserrat', sans-serif;
            }


	section dl{
        width:50%;
		padding:0 0 50px;
		border-top:1px solid rgba(255,255,255,0.4);}

	section dt{
    float:left;
    width:30%;
    text-align:left;
    line-height:3em;
    padding-left:1em;
    border-bottom:1px solid rgba(255,255,255,0.4);
    }

	section dd{
    float:right;
    width:70%;
    text-align:left;
    line-height:3em;
    padding-left:1em;
    border-bottom:1px solid rgba(255,255,255,0.4);
    }


section p a,
section li a,
section dd a{text-decoration:underline;
}


/*-- SOCIAL --*/

#iconset{
		width:100%;
		max-width:800px;
		margin:0 auto;
		padding:0 0 50px;
        text-align: center;}

#iconset a{
margin:0 1em;
}

#iconset a i{
font-size:200%;
}



/*-- ITEMLIST --*/

.itemlist{
	display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
    align-items: stretch;}

.itemlist figure{
width:46%;
}

.itemlist figure img{
        margin-bottom:0.5em;
		padding:0 0 0;}

.itemlist figure h4{
margin-bottom:0.5em;
padding:0 0 0;
font-size:100%;
font-weight:500;
}

.itemlist figure p{
line-height:1.4em;
font-size:90%;
}

#section1 .itemlist figure p a:before{
					font-family: "Font Awesome 5 Free";
					margin-right:0.5em;
                    font-weight: 900;
                    content:"\f291";
                    text-decoration:none;}

/*-- MAP --*/
	.ggmap {
	height: 0;
	overflow: hidden;
    margin-bottom:50px;
	padding-bottom: 30%;
	position: relative;
	}
	 
	.ggmap iframe,
	.ggmap object,
	.ggmap embed{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: all 0.7s ease;
    -moz-transition: all 0.7s ease;
    -o-transition: all 0.7s ease;
    transition: all  0.7s ease;
	}

	.ggmap iframe:hover,
	.ggmap object:hover,
	.ggmap embed:hover {
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  filter: grayscale(0%);
}


/*-- FOOTER --*/

#footer{
	width:100%;
	margin: 0 auto 0;
	background-color:#333;}


#footer img{
width:10%;
height:auto;
margin:25px auto 0;
}

address{
	width:100%;
	max-width:1000px;
	margin:0 auto 0;
	padding:25px;
	color:#fff;}



@media(max-width: 768px){

section{
	padding-top: 200px;
    margin-top:-200px;}

	section div,
    section p,
    section ul,
    section dl,
    section img,
    #iconset{
		width:80%;}

.itemlist{
	display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
    align-items: stretch;}

.itemlist figure{
width:100%;
}

#section2 .itemlist figure{
margin-bottom:50px;
}

.itemlist figure img,
.itemlist figure h4,
.itemlist figure p{
        width:100%;}

    section ul li{
    line-height:1.6em;
    padding-top:1em;
    padding-bottom:1em;
    }
    section ul li span{
    display:block;
    }

#section4:after{
	content:"";
	display:none;}

	.ggmap {
	padding-bottom: 50%;
	}

}

/*-----------------------------------------------------------
pagetop:先頭へ戻る
-----------------------------------------------------------*/

#pageTop{
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 30px;
}

@media(max-width: 768px){
#pageTop{
	bottom: 10px;
	right: 10px;
}
}

#pageTop a {
	color:#fff;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
	text-align: center;
	display: block;
}
#pageTop a:hover {
	color:#ddd;}


/*---------------------------------------------------------------------------------
CLEARFIX-HACK
---------------------------------------------------------------------------------*/

#header:after,#nav:after,#contents:after,#groupset:after,section dl:after,#social:after,.ch:after{
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;}

#header,#nav,#contents,#groupset,section dl,#social,.ch{display: inline-block;}

/* Hides from IE-mac \*/
* html #header,* html #nav,* html #contents,* html #groupset,* html section dl,* html #social,* html .ch{height: 1%;}
#header,#nav,#contents,#groupset,section dl,#social,.ch{display: block;}
/* End hide from IE-mac */
