#topMovieWrap{
	position:fixed;
	top:0px;
	left:0px;
	right:0px;
    width:100%;
    height:100vh;
    overflow: hidden;
    z-index:-2;
}
#topMovie{
    position: relative;
    width:100%;
    height:100%;
    max-height: 100%;
	max-width: 100%;
    overflow: hidden;
}
#topMovie > video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
}
#topMovie button{
	position:absolute;
	bottom:50px;
	right:50px;
	background:none;
	width:60px;
	mix-blend-mode:exclusion;
	cursor:pointer;
}
#topMovieLogo{
	height:calc(100vh / 2);
	width:calc(100vh / 2 / 3.5 );
	margin:0px auto;
	margin-top:calc(100vh / 5 );
	z-index:10000;
	mix-blend-mode:exclusion;
	position:relative;
	text-align:center;
	z-index:1;
}
#topMovieLogo p{
	display:none;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size:3vh;
	letter-spacing:0.1em;
	color:#fff;
	position:absolute;
	top:0px;
	right:-100px;
}
#topMovieLogo img{
	display:none;
	width:100%;
	height:auto;
	margin:0px auto;
	position:absolute;
	top:20px;
	left:0px;
}
@media screen and (max-width : 800px) {
	#topMovieWrap{
		height:60vh;
	}
	#topMovieLogo{
		display:none;
	}
	#topMovie button{
		display:none;
	}
	#topMovie > video {
		height:100%;
	}
}

.scrolldown{
	position:absolute;
	width:2px;
	left:50%;
	bottom:10px;
	height:50px;
}
.scrolldown span{
	position: absolute;
	left:-15px;
	top: -15px;
	color: #eee;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
}
.scrolldown p{
	width:2px;
	margin:0px auto;
	height:50px;
	position:relative;
}
.scrolldown p::after{
	position: absolute;
	top:0;
	width:2px;
	height:30px;
	background: #eee;
	animation: scrolldown 1.4s ease-in-out infinite;
	opacity:0;
}
@keyframes scrolldown{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:30px;
		opacity: 1;
	}
	100%{
		height:0;
		top:50px;
		opacity: 0;
	}
}



.topContents{
	margin-top:100vh;
}
#topContents{
	background-color:#fff;
}
@media screen and (max-width : 800px) {
	.topContents{
		margin-top:60vh;
	}
}




#topConcept{
	min-height:calc(100vh * 0.8);
	text-align:center;
	background-size:100% auto;
	background-position:50% 100%;
	background-image:url(/img/bg_concept.jpg);
	position:relative;
}
#topConcept div{
	position:absolute;
	top:10%;
	bottom:10%;
	left:50%;
    transform: translateX(-50%);
	text-align:center;
	display:inline-block;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
#topConcept h3{
	font-size:27px;
	text-shadow:1px 1px 1px #ccc;
	letter-spacing:8px;
	text-align:left;
	-webkit-text-orientation: upright;
	text-orientation: upright;
}
#topConcept p{
	font-size:15px;
	overflow-wrap: break-word;
	line-height:2.5em;
	letter-spacing:2px;
	margin:0px 50px 0px 0px;
	text-align:left;
	height:100%;
}
#topConcept span{
	display:block;
	text-align:left;
	color:#ccc;
	letter-spacing:2px;
	margin-left:20px;
}
@media screen and (max-width : 800px) {
	#topConcept{
		padding:20px;
		height:auto;
	}
	#topConcept h3{
		letter-spacing:4px;
	}
	#topConcept div{
		width:100%;
		-ms-writing-mode:horizontal-tb;
		writing-mode:horizontal-tb;
		height:auto;
		display:block;
		position:static;
		transform:none;
		padding-bottom:50px;
	}
	#topConcept h3{
		display:inline-block;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	#topConcept span{
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	#topConcept p{
		-ms-writing-mode:horizontal-tb;
		writing-mode:horizontal-tb;
		font-size:13px;
		line-height:2em;
		letter-spacing:0px;
	}

}



.topTopicsWrap{
	max-width:1200px;
	margin:0px auto;
	overflow:hidden;
	padding:50px 0px;
}
.topTopicsWrap h3{
	font-size:24px;
	margin:0px 0px 10px 10px;
	color:#444;
}
#topTopics dt{
	width:100%;
	overflow:hidden;
	position:relative;
}
#topTopics dt::after{
	padding-top:75%;
}

#topTopics dt img{
	transition:1s all;
	object-fit: cover;
}
#topTopics dt img:hover{
	transform:scale(1.2,1.2);
	transition:1s all;
}
#topTopics dd{
	margin-top:14px;
}
#topTopics dd a{
	display:block;
	color:#444;
	font-size:17px;
	line-height:1;
}
#topTopics dd time{
	display:block;
	font-size:11px;
	color:#aaa;
}
#topTopics dd p{
	font-size:13px;
	line-height:1.2em;
	margin-top:20px;
}
.topTopics{
	width:50%;
	float:left;
}
.topTopics ul{
	margin:0px 20px;
}

.topNews{
	margin-left:50%;
}
.topNews ul{
	overflow:hidden;
	padding:0px 20px;
	border-left:1px solid #ccc;
}
.topNews ul li{
	width:50%;
	display:inline-block;
	vertical-align:top
}
.topNews ul li dl{
	margin:0px 5px 20px 0px;
}
.topNews ul li:nth-child(even) dl{
	margin:0px 0px 20px 5px;
}
@media screen and (max-width : 800px) {
	.topTopicsWrap h3{
		text-align:center;
	}
	.topTopics{
		width:100%;
		float:none;
		margin-bottom:50px;
	}
	#topTopics dd a{
		font-size:15px;
	}
	.topNews{
		margin-left:0;
	}
	.topNews ul{
		border:0px;
	}
}
.topMedia{
	margin-top:50px;
	margin-bottom:50px;
	position:relative;
	padding:0px 50px;
}
.topMedia h3{
	text-align:center;
}
.topMedia ul{
}
.topMedia ul li{
}
.topMedia .slick-track{
	display: flex;
}
.topMedia .slick-slide{
	height: auto !important;
	padding:20px;
	margin:0px 10px;
	background-color:#e3ded1;
	border-radius:4px;
}
.topMedia button{
	background:transparent;
	background-repeat:no-repeat;
	background-size:36px;
	background-position:50%;
	width:48px;
	height:100%;
	position:absolute;
	top:0;
}
.topMedia .prev-arrow{
	background-image:url(../img/icon_arrow_prev.png);
	left:-48px;
	z-index:99;
}
.topMedia .next-arrow{
	background-image:url(../img/icon_arrow_next.png);
	right:-48px;
	z-index:99;
}
#topTopics .topMedia dd{
	margin-top:0px;
	margin-bottom:10px;
}
#topTopics .topMedia dd a{
	display:block;
	color:#444;
	font-size:17px;
	line-height:1;
}
#topTopics .topMedia dd time{
	display:block;
	font-size:11px;
	color:#aaa;
}
#topTopics .topMedia dd p{
	font-size:13px;
	line-height:1.2em;
	margin-top:0px;
}
@media screen and (max-width : 800px) {
	.topMedia{
		margin-top:50px;
		margin-bottom:50px;
		position:relative;
		padding:0px;
	}
}


.topAbout{
	height:calc( 100vh - 102px ) ;
	min-height:700px;
	position:relative;
}
.topAboutWrap{
	width:100%;
	margin:0px auto;
	overflow:hidden;
	position:absolute;
	top:100px;
	left:0px;
	right:0px;
	bottom:100px;
}
.topAboutBG{
	position:absolute;
	top:0px;
	left:0px;
	right:0px;
	height:40%;
	background-size:cover;
	z-index:-1;
}
.topAbout dl{
	max-width:1200px;
	height:100%;
	margin:0px auto;
	background-size:auto 100%;
}
.topAbout dl dt{
	height:40%;
}
.topAbout dl dt h3{
	width:220px;
	height:220px;
	background-color:#4a3e1b;
	position:relative;
	float:right;
	margin-top:10%;
	margin-right:20px;
	box-shadow:8px 8px 0px #777;
}
.topAbout dl dt h3 strong{
	display:block;
	font-size:60px;
	color:#fff;
	font-family: Noto Serif JP, "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	position:absolute;
	line-height:1.0em;
}
.topAbout dl dt h3 strong:nth-child(1){
	top:40px;
	right:40px;
}
.topAbout dl dt h3 strong:nth-child(2){
	bottom:40px;
	right:40px;
}
.topAbout dl dt h3 strong:nth-child(3){
	top:40px;
	left:40px;
}
.topAbout dl dt h3 strong:nth-child(4){
	bottom:40px;
	left:40px;
}
.topAbout dl dd{
	position:relative;
	height:60%;
	padding:20px 300px 20px 40%;
}
.topAbout dl dd div{
	display: flex;
	font-size:17px;
	overflow-wrap: break-word;
	line-height:2em;
	width:100%;
	height:100%;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	align-items: center;
}
.topAbout dl dd a{
	position:absolute;
	right:10px;
	bottom:10px;
}



.topEchigojowa{
	background-size:100% auto;
	padding-top:calc(100vw / 5 * 3);
	margin-bottom:100px;
	text-align:center;
	background-image:url(/img/top_echigojowa.jpg);
	background-position:50% 100px;
	background-color:#000;
	overflow:hidden;
}
.topEchigojowa .border{
	display:block;
	width:2px;
	height:80px;
	margin:-50px auto 0px auto;
	position:relative;
}
.topEchigojowa .border::after{
	content:"";
	position:absolute;
	top:0px;
	left:0px;
	width:2px;
	height:80px;
	background-color:rgba(188,181,155,1);
	animation:pathmove 2s ease-in-out infinite;
	opacity:0;
}
@keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:30px;
		opacity: 1;
	}
	100%{
		height:0;
		top:50px;
		opacity: 0;
	}
}
.topEchigojowa h5{
	display:inline-block;
	font-size:27px;
	overflow-wrap: break-word;
	line-height:2em;
	letter-spacing:1.2em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	height:400px;
	color:#fff;
}
.topEchigojowa dl{
	padding:80px 0px 40px 0px;
	background-color:#fff;
}
.topEchigojowa dt, .topEchigojowa dd{
	background-size:80% auto;
	width:100%;
	height:calc( 70vw / 2 );
	position:relative;
	box-sizing:border-box;
	margin-bottom:40px;
}
.topEchigojowa dl dt:nth-of-type(1){
	background-position:0% 50%;
	background-image:url(/img/top_echigojowa_01.jpg);
}
.topEchigojowa dl dd:nth-of-type(1){
	background-position:100% 50%;
	background-image:url(/img/top_echigojowa_02.jpg);
}
.topEchigojowa dl dt:nth-of-type(2){
	background-position:0% 20%;
	background-image:url(/img/top_echigojowa_03.jpg);
}
.topEchigojowa dl dd:nth-of-type(2){
	background-position:100% 50%;
	background-image:url(/img/top_echigojowa_04.jpg);
}
.topEchigojowa dl dt div{
	position:absolute;
	top:-20%;
	right:8%;
	height:calc( 70vw / 2 );
	padding:5%;
	z-index:10;
}
.topEchigojowa dl dd div{
	position:absolute;
	top:-20%;
	left:8%;
	height:calc( 70vw / 2 );
	padding:5%;
	z-index:10;
}
.topEchigojowa dl div{
	text-align:left;
	background-color:rgba(255,255,255,0.8);
	overflow-wrap: break-word;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	align-items: center;
	font-size:15px;
	text-shadow:1px 1px 1px #fff;
	line-height:2.5em;
}
@media screen and (max-width : 800px) {
	.topEchigojowa{
		padding-top:calc(100vw / 8 * 7);
		margin-bottom:20px;
		background-image:url(/img/top_echigojowa_sp.jpg);
	}
	.topEchigojowa h5{
		font-size:23px;
		overflow-wrap: break-word;
		line-height:1.5em;
		letter-spacing:0.5em;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		height:250px;
	}
	.topEchigojowa dt, .topEchigojowa dd{
		width:100%;
		background-size:90% auto;
		height:auto;
		padding-top:50px;
	}
	.topEchigojowa dt{
		background-position:0% 0% !important;
	}
	.topEchigojowa dd{
		background-position:100% 0% !important;
	}
	.topEchigojowa dl div{
		-ms-writing-mode:horizontal-tb;
		writing-mode:horizontal-tb;
		font-size:13px;
		line-height:1.5em;
		height:auto !important;
		background-color:rgba(255,255,255,0.7);
	}
	.topEchigojowa dl dt div{
		padding:20px;
		position:static;
		margin:100px 0px 0px 40px;
	}
	.topEchigojowa dl dd div{
		padding:20px;
		position:static;
		margin:100px 40px 0px 0px;
	}
}


.topItem{
	background-color:#fff;
	margin-bottom:50px;
}
.topItem ul{
}
.topItem li a{
	display:block;
	margin:10px;
	text-align:center;
}
.topItem li a strong{
	display:block;
	font-size:13px;
	text-align:center;
	color:#444;
	line-height:1.2;
	margin-top:10px;
}
.topItem li a b{
	display:block;
	margin-top:6px;
	font-size:15px;
	font-weight:bold;
	text-align:center;
	color:rgba(188,181,155,1);
}
.topItem p{
	text-align:center;
}
.topItem p a{
	display:inline-block;
	font-size:23px;
	color:#fff;
	background-color:#de1f1f;
	padding:8px 20px;
}



.topTakikata{
	background-size:100% auto;
	background-position:50% 0%;
	padding-top:calc(100vw / 4);
	margin-bottom:100px;
	text-align:center;
	position:relative;
}
.topTakikata h5{
	position:absolute;
	top:calc(100vw / 7);
	left:0px;
	width:100%;
	text-align:center;
	font-size:36px;
	color:#fff;
	text-shadow:1px 1px 1px #444;
}
.topTakikata ul{
	max-width:1200px;
	margin:0px auto;
	overflow:hidden;
}
.topTakikata ul li{
	box-sizing:border-box;
	width:50%;
	float:left;
	padding:20px;
}
.topTakikata ul li div{
	width:100%;
	padding-top:56.25%;
	position:relative;
}
.topTakikata ul li iframe{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
}
@media screen and (max-width : 800px) {
	.topTakikata{
		background-size:200% auto;
		padding-top:calc(100vw / 2);
	}
	.topTakikata h5{
		position:absolute;
		top:calc(100vw / 4);
	}
	.topTakikata ul li{
		width:100%;
		float:nome;
		padding:20px;
	}

}




.topEatShop{
	background-size:cover;
	background-position:50%;
	padding:100px 0px 150px 0px;
}
.topEatShop h3{
	font-family: Noto Serif JP, "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size:32px;
	margin:0px 0px 32px 0px;
	color:#444;
	letter-spacing:4px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	align-items: center;
	line-height:1.5em;
	width:100%;
	display:flex;
}
.topEatShop ul li{
	margin:0px 10px !important;
	line-height:0;
}
.topEatShop ul li, .topEatShop ol li{
	vertical-align:top;
}
.topEatShop p{
	margin-top:40px;
	text-align:center;
}
