@charset "utf-8";



*:focus {
  outline: none;
}
body{
    margin: 0;
    padding:0;
}
#ha_bg{
	background: #000000;
	margin: 0;
	padding: 0;
}
#ha_wrap{
    max-width:750px;
    width: 100%;
	text-align: center;
    position: relative;
	padding: 0;
    margin: 0 auto;
	color: #000000;
    display: block;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 1px;
}
.NotoSerifJP{
    font-family: "Noto Serif JP", sans-serif;
}
.Inter{
    font-family: "Inter", sans-serif;
}
.MrsEave{
 font-family: "mrs-eaves-xl-serif", serif;
}
.Notosans{
    font-family: "Noto Sans JP", sans-serif;
}
.Spectral{
    font-family: spectral, sans-serif;
  }


#ha_wrap img{
    width: 100%;
    border: 0;
    line-height: 0;
    vertical-align:top;
} 
#ha_wrap ul,#ha_wrap li{
	padding: 0;
    margin: 0 auto;
    list-style: none;
}

#ha_wrap a{
    text-decoration: none;
}
#ha_wrap a:hover{
    opacity: 1;
}
#ha_head{
	position: relative;
	margin: 0 auto;
	padding: 0;
	display: block;
}

#ha_contents{
    width: 100%;
	background: #FFFFFF;
    position: relative;
    overflow: hidden;
	margin: 0 auto;
	padding: 0;
}
#ha_contents section{
	width: 100%;
	display: block;
	text-align: center;
	margin: 0;
	padding: 0;
	line-height: 1em;
}
/*=======================
タイトル
=======================*/
#ha_contents .title-reveal{
	position: absolute;
	top: 5%;
	left: 5%;
	height: 100%;
	color: #FFFFFF;
	font-size:30px;
	line-height: 30px;
	text-align: left;
	white-space:nowrap;
	overflow:hidden;
	writing-mode: vertical-rl;
	margin: 0;
	padding: 0;
	font-family: "mrs-eaves-xl-serif", serif;
	animation: title-reveal 4s linear forwards;
}
@keyframes title-reveal {
  from { height: 0; }
  to { height: 100%; }
}
#s1,#s2,#s3 {
	display:inline-block;
	overflow:hidden;
	white-space:nowrap;
	height:0%;
}
#s1{
	font-size: 15px;
	animation:s1 4s forwards;
}
@keyframes s1{
      from { height:0em; }
      33% { height: 8em; }
      to { height:8em; }
}
#s2 {
animation:s2 4s forwards;
}
@keyframes s2{
      0% { height:0em; }
      33% { height:0em; }
      66% { height:8em; }
      to { height:8em; }
}
#ha_contents section ul{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	list-style: none;
	padding: 0;
	margin: 0;
}
#ha_contents section ul li{
	margin: 0;
	padding: 0;
}

#ha_contents .img_wrap {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
}
#ha_contents .img {
	width: 100%;
	display: block;
	margin: 0;
	padding: 0;
}
#ha_contents .more {
	position: absolute;
	right: 3%;
	bottom: 3%;
	width: 5%;
	z-index: 5;
}

/************************************************************
               button
************************************************************/

.btn_all a {
    background: #000000;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20% auto;
    width:85%;
    padding: 3% 0%;
    color: #FFFFFF;
    transition: 0.3s ease-in-out;
    font-weight: 400;
    font-size: 15px;
    border-radius: 0px;
    line-height: 2em;
    border: #333 1px solid;
    letter-spacing: .5px;
    font-family: "mrs-eaves-xl-serif", serif;
    
}




.pc{
	display: block;
}
.sp{
	display: none;
}

.Right{
    float: right;
}
.Left{
    float: left;
}

.small{
	font-size:60%;
}

.clear {
	clear: both;
}


/************************************************************
                sp
************************************************************/

@media only screen and (max-width:768px){
	#ha_bg{
		background: #FFFFFF;
	}
	#ha_wrap {
        width:100%;
		text-align: center;
        margin: 0 auto;
	}
	#ha_contents .title-reveal{
		left: 2.5%;
		font-size: 22px;
		line-height: 22px;
	}
	#s1{
		font-size: 11px;
		line-height: 11px;
	}
	
	#ha_contents .more{
		width: 6%
	}
	
    .pc {
		display:none;
	}
	.sp {
		display:block;
		width: 100%;
	}
    .Left{
        float: none;
    }
    .Right{
        float: none;
    }

}

/************************************************************
               動き
************************************************************/

.fade{
	opacity: 0;
	transition: 1.8s all 0s ease;
}
.fade01{
	opacity: 0;
	transition: 1.8s all 0.2s ease;
}
.fade02{
	opacity: 0;
	transition: 1.8s all 0.6s ease;
}
.fade03{
	opacity: 0;
	transition: 1.8s all 1s ease;
}
.fade04{
	opacity: 0;
	transition: 1.8s all 1.4s ease;
}
.fade.ac,
.fade01.ac,
.fade02.ac,
.fade03.ac,
.fade04.ac{
	opacity: 1;
    transform: translate(0);
}
