@charset "utf-8";
/* CSS Document */
body{overflow-x: hidden;}
#logo_25th{display: none;}
#Billbord{background: url(/assets/25th/images/image_live_o.jpg) no-repeat 50% 50%; background-size: cover; min-height: 500px;}
#Main-Logo,
#Main-Menu{height: 45vh; position: relative; text-align: center; width: 100%;}
#Main-Logo img{vertical-align: top;}
#Logo_Faith{max-width: 206px; width: 33%;}
#Logo_25th{margin-left: 5%; max-width: 346px; width: 55%;}
#mobile-menu-icon:hover{ background-color: rgba(255,255,255,.3);}
#mobile-menu-icon > span{border-color: #fff;}
#Main-Menu li{display: inline-block; max-width: 320px; vertical-align: top; width: 26%;}
#Main-Menu .sp_talk_zadankai{ background: url(/assets/25th/images/sp-talk-zadankai.png) no-repeat 50% 50%; background-size: cover;}
#Main-Menu a{ display: block; max-width: 240px; margin: 0 auto;}
#Main-Menu a::after{content: ""; display: block; padding-top: 100%;}
#Main-Menu a:hover{ }
#Prologue{ background-color:#eee;}
.screen-center{ left:50%; position: absolute; top:50%; -webkit-transform:translate(-50% ,-50%); transform:translate(-50% ,-50%);}
.screen-center.massage{ max-width: 800px; width: 80%;}
.message + .message{ margin-top: 40px;}
.massage-image{ background-color: #eee; padding: 30% 0;}
.massage-box { margin: 0 auto; max-width: 500px; width: 90%;}
#Message{ font-family: "Sawarabi Mincho"; }
.message-text{ font-size: 1.2em;}
.message-main{ margin-top: 3em; padding: 0 1em;}
.message-main > p{line-height: 1.8; margin: 1em auto; max-width: 760px;}
.message-text h2{font-size: 2em; font-weight: bold; margin-bottom: 2em; text-align: center;}
.message-text > .message-prologue{ font-size: 1.5em; font-weight: bold; margin-top: 2em; text-align: center; padding: 0 1em;}
.message-text .right{ padding: 0 0 3em; text-align: right; font-size: 1em; }
.message-text .right > span{ display: inline-block; text-align: left; }
#index_copylight{ background-color: #1C2035; color: #fff; text-align: center; display: block; padding: 1em; }
.nextBt{ position: relative; color: #fff; height: 10vh; margin: 0 auto; width: 150px; display: block; }
.nextBt > div{ text-align: center; opacity: 0; -webkit-transition: opacity 1s 0s ease-out; transition: opacity 1s 0s ease-out; }
.nextBt:hover> div{ opacity: 1; -webkit-transition-duration: .6s; transition-duration: .6s; }
.icon-dl-arrow{ position: relative; display: block; height: 60px; }
.icon-dl-arrow > span{ position: absolute; bottom: 12px;; width: 60px; border-bottom: solid 1px; -webkit-transition: -webkit-transform 1s 0s ease-out; transition: transform 1s 0s ease-out; }
.icon-dl-arrow > span:nth-of-type(1){ left: 15px; -webkit-transform-origin: right; transform-origin: right; -webkit-transform: rotate(30deg); transform: rotate(30deg); }
.icon-dl-arrow > span:nth-of-type(2){ left: 75px; -webkit-transform-origin: left; transform-origin: left; -webkit-transform: rotate(-30deg); transform: rotate(-30deg); }
a:hover .icon-dl-arrow > span:nth-of-type(1){ -webkit-transform: translateY(20px)rotate(35deg); transform: translateY(20px) rotate(35deg); -webkit-transition-duration: .6s; transition-duration: .6s; }
a:hover .icon-dl-arrow > span:nth-of-type(2){ -webkit-transform: translateY(20px)rotate(-35deg); transform: translateY(20px) rotate(-35deg); -webkit-transition-duration: .6s; transition-duration: .6s; }

#Main-Logo{ opacity: 0; -webkit-filter: blur(50px); filter: blur(50px); -webkit-transition: -webkit-fillter 3s 0s,opacity 3s 0s; transition: fillter 3s 0s,opacity 3s 0s; }
.on #Main-Logo{ opacity: 1; -webkit-filter: blur(0px); filter: blur(0px); }
@-webkit-keyframes slide1{
	0%{-webkit-transform: translateX(200%); opacity: 0;}
	10%{-webkit-transform: translateX(0%); opacity: 1;}
	90%{-webkit-transform: translateX(0%); opacity: 1;}
	99.9%,to{-webkit-transform: translateX(-200%); opacity:0;}
}
@keyframes slide1{
	0%{transform: translateX(200%); opacity: 0;}
	10%{transform: translateX(0%); opacity: 1;}
	90%{transform: translateX(0%); opacity: 1;}
	99.9%,to{transform: translateX(-200%); opacity:0;}
}
.massage-box .message{  -webkit-transition:all 0s 0s; transition:all 0s 0s; opacity: 0; }
.on .massage-box .message{ opacity: 1; transform:rotateY(0deg) translate3d(0,0,0); -webkit-transition-duration: 2s; transition-duration: 4s; }
.on #massage01{ -webkit-transition-delay: 0s; transition-delay: 0s; }
.on #massage02{ -webkit-transition-delay: 1.5s; transition-delay: 1.5s; }
.on #massage03{ -webkit-transition-delay: 3s; transition-delay: 3s; }
.message-prologue{line-height: 2; }

@media (max-height:600px) { 
	#Main-Logo,
	#Main-Menu{ height: 200px;}
}

@media (min-width:44em) {
	body{min-width: 1024px;}
	#Main-Logo,
	#Main-Menu{transition: width 1s; margin: 0 auto; }
	#Main-Menu li{ -webkit-transform: translateX(500%);transform: translateX(500%); -webkit-animation: slide 12s 0s both; animation: slide 12s 0s both;}
	#Main-Menu ul{ left: 200%;}
	#Main-Menu .act{left: 0;}
	.on #Main-Menu .act li:nth-of-type(1){-webkit-animation: slide1 12s 0s forwards; animation: slide1 12s 0s forwards; }
	.on #Main-Menu .act li:nth-of-type(2){-webkit-animation: slide1 12s .1s forwards; animation: slide1 12s .1s forwards; }
	.on #Main-Menu .act li:nth-of-type(3){-webkit-animation: slide1 12s .2s forwards; animation: slide1 12s .2s forwards; }

	#Main-Logo .inner{ position: absolute; top: 60%; left: 50%; transform: translate(-50% , -50%); }
	#Main-Menu li + li{  margin-left: 5%; }
	#Main-Menu-Inner > ul{  position: absolute;  top: 50%;  width: 100%;  text-align: center;  transform: translateY(-50%); }
	#Main-Menu .sp_talk_comming_soon{ background: url(/assets/25th/images/sp-talk-comming-soon.png) no-repeat 50% 50%; background-size: cover; }
}
@media (max-width:44em) {
	#Billbord {
	    background: #010005 url(/assets/25th/images/image_live_o.jpg) no-repeat 50% 0%;
	    background-size: 264% auto;
		display: flex;
		flex-direction: column;
		justify-content: space-around;
		height: 100vh;
	    min-height: 500px;
		overflow: hidden;
		width: 100%;
	}
	#Main-Logo{  height: auto;  min-height: 0; }
	#Main-Logo .inner { margin: 10vh auto 0; width: 80%;}
	#Main-Menu{	overflow: hidden;}
	#Main-Menu-Inner{
		display: inline-block;
		padding-bottom: 30px;
		position: relative;
	}
	#Main-Menu-Wrapper {
		bottom: -20px;
		overflow-x:auto;
		padding: 0;
		position: relative;
		white-space: nowrap;
		-webkit-overflow-scrolling:touch;
	}
	#scroll-bar{
		background-color: rgba(255,255,255,.1);
		height: 5px;
		margin: 20px auto 0;
		position: relative;
		width: 100%;
	}
	#scroll-bar-thumb{
		background:rgba(255,255,255,.3);
		border-radius: 5px;
		height: 5px;
		left: 0%;
		position: absolute;
		width: 10%;
	}
	#scroll-bar-thumb::before{
		bottom: -20px;
		content: "";
		display: block;
		left: 0;
		position: absolute;
		top: -20px;
		width: 100%;
	}
	#scroll-arrow{
		border: solid 8px rgba(0,0,0,0);
		border-left-color: rgba(255,255,255,.8);
		margin-top: -8px;
		position: absolute;
		right: 0;
		top: 50%;
		transition: opacity 1s;
		width: 0;
	}
	#scroll-arrow.hide{
		opacity: 0;
	}
	/*
	#Main-Menu::-webkit-scrollbar{height:5px;}
	#Main-Menu::-webkit-scrollbar-track{background:rgba(255,255,255,.1); margin: 10px;}
	#Main-Menu::-webkit-scrollbar-track-piece {background: rgba(255,255,255,.1); }
	#Main-Menu::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);  border-radius: 5px;}*/

	#main-menu-body{
		position: relative;
		overflow: hidden;
	}
	#Main-Menu-Inner > ul {
		white-space: nowrap;
		display: inline-block;
	}
	#Main-Menu li { display: inline-block;  width: 48vw; padding: 2% 0%;   margin: 0 auto; max-width: none;}
	/*
	#Main-Menu > ul{  position: absolute;  top:0;  width: 100%;  text-align: center;  transform: translateY(0%);left: -200%;}
	#Main-Menu > .act{  position:relative; left: 0%;}
	#Main-Menu .sp_talk_comming_soon{  background: url(../images/sp-talk-comming-soon_sp.png) no-repeat 50% 50%;  background-size: contain;  width: 80%;  margin: 0 auto;  opacity: 0; }
	.on #Main-Menu .sp_talk_comming_soon{  opacity: 1;  transition:opacity 2s 4.5s; }
	*/
	#Main-Menu .sp_talk_comming_soon::after{  padding-top: 40%;}
	/*
	#Main-Menu ul:nth-of-type(1) > li:nth-child(1) {background-color: rgba(15,33,139,.0)}
	#Main-Menu ul:nth-of-type(1) > li:nth-child(2) {background-color: rgba(15,33,139,.4)}
	#Main-Menu ul:nth-of-type(1) > li:nth-child(3) {background-color: rgba(15,33,139,.6)}
	#Main-Menu ul:nth-of-type(2) > li:nth-child(1) {background-color: rgba(15,33,139,.8)}
	#Main-Menu ul:nth-of-type(2) > li:nth-child(2) {background-color: rgba(15,33,139,1)}
	#Main-Menu ul:nth-of-type(3) > li:nth-child(1) {background-color: rgba(15,33,139,.8)}
	#Main-Menu ul:nth-of-type(3) > li:nth-child(2) {background-color: rgba(15,33,139,.6)}
	*/

}
.massage-image{
	padding: 0;
}
.massage-box{
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	height: 100vh;
	padding: 20vh 0;
}
.company-list{ background-color: #efefef; }
.fukidashi { margin: 0 auto; color: #3e474a; text-align: center; letter-spacing: -1em; max-width: 960px; padding: 4em 0; background: #efefef; }
.fukidashi li { display: inline-block; list-style: none; margin: 0; width: calc(100% / 6); letter-spacing: normal; }
.fukidashi a { display: inline-block; padding: 1em 0; vertical-align: middle; }
.fukidashi figure { display: block; position: relative; width: 130px; text-decoration: none; transition: .3s; left: 0; right: 0; margin: auto; }
.fukidashi figure img { width: 80%; }
.fukidashi figure figcaption { position: absolute; opacity: 0; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0); top: -150px; left: -15px; right: 0; margin: auto; width: 160px; padding: 10px; background: url(/assets/25th/images/pt_2.png) left top repeat; color: #3e474a; font-size: 12px; line-height: 1; transition: .3s; display: block; z-index: -10; }
.fukidashi figure figcaption p { background: #ffffff; box-sizing: border-box; font-size: 10px; line-height: 1.5; padding: 10px; text-align: left; }
.fukidashi figure figcaption::after { position: absolute; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0); top: 100%; left: 60px; height: 0; width: 0; content: ""; }
.fukidashi strong { display: block; padding: 8px 0; text-align: center; }
.fukidashi strong::after { display: block; content: ""; width: 15px; margin: 8px auto 5px; background: #99a3d0; height: 4px; }
.fukidashi figure figcaption span { display: block; background: #0f218b; padding: 5px; margin: 10px 0; color: #ffffff; text-align: center; }

@media (min-width:64em) {
	.fukidashi figure:hover figcaption { opacity: 1; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100); top: -160px; z-index: 10; }
}
@media (max-width:64em) {
	.fukidashi li { width: 33.33%; }
}
@media (max-width:44em) {
	#Main-Logo,
	#Main-Menu a{
	display: block;
	margin: 0 auto;
	overflow: hidden;
	width: 100%;
}
	#Main-Menu{ height: auto;}
	.fukidashi{
		display: -webkit-flex;
		display: flex;
		padding: 0;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.fukidashi li { width: 50%;}
	.fukidashi a { display: block; padding: 2em 0; }
	.nextBt{  bottom:40px; display: none; left: auto;  margin: 5vh auto 0; position: relative;  top:0; width: 150px }

}
@media (min-width:44em) {
	#Billbord{ background-attachment: fixed; }
}
#specialtalk-list{
	background: #0D218B;
	padding: 2em 0;
}
#specialtalk-list > h2{
	padding:3em 0 1em;
	text-align: center;
}
#specialtalk-list > h2 > img{
	max-width: 90%;
}
#specialtalk-list ul{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto;
	max-width: 1600px;
	padding: 1% 0;
}
@media(min-width:44em){
	#specialtalk-list .i12 ul li{
		margin: .5%;
		width: 15.5%;
	}
	#specialtalk-list .i14 ul li{
		margin: .2%;
		width: 13.8%;
	}
}
#specialtalk-list ul li{
	background: #000;
	margin: 1%;
	width: 18%;
}
#specialtalk-list ul li a{
	opacity: 1;
	transition:opacity .6s ;
}
#specialtalk-list ul li a:hover{
	opacity: .8;
}
#specialtalk-list .last-content{
	background: url(/assets/25th/images/25th_logo_s.png) no-repeat 50% 50%;
}
#specialtalk-list .last-content::before{
	content: "";
	display: block;
	padding-top: 100%;
}
#specialtalk-list ul li a img{
	vertical-align: bottom;
	}
@media (max-width:44em) {
	#specialtalk-list > h2{
		padding:3em 10% 3em;
	}
	#specialtalk-list ul li{
		width: 48%;
	}
}