@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Noto+Sans+JP:wght@100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

*:focus {
outline: none;
}

body{
    margin: 0 auto;
    padding: 0;
}

#st_wrap{
	width: 100%;
    display: block;
    text-align: center;
    margin: 0 auto;
    padding: 0;
    position: relative;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.7em;
    overflow: hidden;
    font-family: "Noto Sans JP", serif;
	background-color: #fdf4eb;
}

#st_wrap img{
    width: 100%;
    border: 0;
	vertical-align: bottom;
    line-height: 0;
}
#st_wrap ul,#st_wrap li{
	padding: 0;
	margin: 0;
    list-style: none;
}
#st_wrap a,#st_wrap a:hover,#st_wrap a:link{
	text-decoration: none;
    opacity: 1;
}
.Roboto{
    font-family: "Roboto", sans-serif;
}
.NotoSans{
    font-family: "Noto Sans JP", serif;
}
.Inter{
    font-family: "Inter", serif;
}

/************************************************************
inner
************************************************************/
#st_wrap .inner{
    max-width: 580px;
    width: 100%;
    text-align: center;
    margin: 0 auto;
    background: #ffedc5;
    display: inline-block;
    padding: 0 0 5%;
}

/************************************************************
header
************************************************************/
#st_head{
    width: 100%;
	position:relative;
    display: block;
    text-align: center;
    margin: 0 auto;
}
#st_head .head{
    width: 100%
}
#st_head .visual_box{
    width: 100%;
    position: relative;
    display: inline-block;
}
#st_head .visual_box img{
    max-width: 90%;
}
#st_head .visual_box .visual{
    width: 100%;
    float: right;
    filter: blur(15px);
    opacity: 0;
    animation: blurFadeIn 1.0s ease-out forwards;
    margin: auto;
}
@keyframes blurFadeIn {
  0% {
    filter: blur(15px);
    opacity: 0;
  }
  100% {
    filter: blur(0px);
    opacity: 1;
  }
}
#st_head .visual_box .title{
    position: absolute;
    width: 20%;
    left: 0;
    top: 2%;
}
 .title{
    width: 85%;
	margin: 3% auto 2%;
}
 .main_01{
    width: 65%;
	margin: 2% auto 2%;
}
 .main_02{
    width: 85%;
	margin: 15% auto 0%;
}
 .main_03{
    width: 85%;
	margin: -7% auto 0%;
}
 .main_04{
    width: 85%;
	margin: 0% auto 8%;
}
 .main_05{
    width: 85%;
	margin: 7% auto 0%;
}
 .btn_item{
    width: 60%;
    text-align: center;
    margin: 5% auto 4%;
}
#st_head .line-up_box {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    margin: 8% auto;
}
#st_head .line-up-title {
    margin-right: 5%;
    margin-top: 2%;
    width: 3.5%;
    height: auto;
}
#st_head .line-up-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
#st_head .line-up-list li {
    padding: 2.5% 0;
}


/************************************************************
contents
************************************************************/
#st_contents{
    width: 100%;
	position:relative;
    display: block;
    margin: 5% auto;
    text-align: center;
}
#st_contents .section{
    width: 100%;
    position: relative;
    padding: 5% 0;
    display: inline-block;
}
#st_contents .section:nth-of-type(2){
    background:#014d1c;
}
#st_contents .section:nth-of-type(3){
    background:#9e0120;
}

#st_contents .section .ttl{
    width:40%;
    text-align: center;
    margin: 5% auto;
}
#st_contents .section ul li{
    width: 100%;
    position: relative;
    box-sizing: border-box;
    display: inline-block;
}
#st_contents .section .img{
	position: relative;
    width: 100%;
}
#st_contents .section ul:nth-of-type(2) li:nth-of-type(2){
    width: 90%;
    text-align: center;
    margin: 5% auto;
}
#st_contents .section:nth-of-type(1) ul:nth-of-type(3) li:nth-of-type(2){
    width: 90%;
    float: right;
}
#st_contents .section:nth-of-type(1) ul:nth-of-type(3) li:nth-of-type(3){
    width: 70%;
    text-align: center;
    margin: 5% auto;
}
#st_contents .section:nth-of-type(2) ul:nth-of-type(2) li:nth-of-type(2){
    width: 100%;
}
#st_contents .section:nth-of-type(3) ul:nth-of-type(1) li:nth-of-type(2){
    width: 95%;
    float: right;
    margin: 5% auto;
}
#st_contents .section .credit_l{
    width: 100%;
    float: left;
    margin-left: 3%;
    position: relative;
    display: inline-block;
    letter-spacing: 0px;
    font-size: 13px;
    color:#9b001f;
    text-align: left;
}
#st_contents .section .credit_r{
    width: 100%;
    float: right;
    margin-right: 3%;
    position: relative;
    display: inline-block;
    letter-spacing: 0px;
    font-size: 13px;
    color:#9b001f;
    text-align: right;
}
#st_contents .section .credit_l a,#st_contents .section .credit_r a{
    margin-right: 2%;
}
#st_contents .section a{
    font-weight: 500;
    text-align: left;
    color:#9b001f;
    
}
#st_contents .section:nth-of-type(2) a{
    color: #FFFFFF;
}
#st_contents .section:nth-of-type(2) p{
    color: #FFFFFF;
}
#st_contents .section:nth-of-type(3) a{
    color: #FFFFFF;
}
#st_contents .section:nth-of-type(3) p{
    color: #FFFFFF;
}


#st_contents .section .main01{
    width: 100%;
    position: relative;
}

#st_contents .section .parent {
    display: flow-root;
	position: absolute;
	width: 34%;	
	top:0%;
	right:5%;
	font-size: 15px;
	color: #247fa6;
	letter-spacing: 0.01em;
}
#st_contents .section .parent2 {
    display: flow-root;
	position: absolute;
	width: 34%;	
	top:1%;
	left:8%;
	font-size: 15px;
	color: #247fa6;	
	letter-spacing: 0.01em;
}
#st_contents .section .parent3 {
    display: flow-root;
	position: absolute;
	width: 34%;	
	bottom:3%;
	left:6%;
	font-size: 15px;
	color: #247fa6;	
	letter-spacing: 0.01em;
}
#st_contents .section .parent a{
	color: #247fa6;
}
#st_contents .section .parent2 a{
	color: #247fa6;
}
#st_contents .section .parent3 a{
	color: #247fa6;
}
#st_contents .section .left {
    float: left;
}
#st_contents .section .right {
    float: right;
}
#st_contents .section .sml {
    font-size: 8px;
}

#st_contents .section .check1 {
	width: 80%;	
	margin-top: 5%;
}

/************************************************************
footer
************************************************************/
#st_foot{
    width: 100%;
    display: block;
    position: relative;
    text-align: center;
    margin: 0 auto;
    padding: 5% 0;
}
#st_foot .btn{
    width: 35%;
    text-align: center;
    margin: 4% auto 5%;
}
#st_foot .line{
    width: 100%;
    margin: 10% auto;
}
#st_foot .ig_box{
    width: 40%;
    text-align: center;
    display: inline-block;
    position: relative;
    margin: 0 auto;
}
#st_foot .ig_box .ttl{
    width: 25%;
    text-align: center;margin: 0 auto;
}
#st_foot .ig_box ul{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    column-gap: 10%;
    margin: 10% auto;
}
#st_foot .ig_box ul li{
    position: relative;
}
#st_foot .pblogo{
    width: 35%;
    text-align: center;
    margin: 15% auto 2%;
}
#st_foot .cp{
    font-size: 15px;
	font-weight: bold;
    text-align: center;
    margin: 2% auto 1%;
    letter-spacing: 0px;
    
}
#st_foot .cp_link{
    font-size: 13px;
	font-weight: bold;
    color: #000;
    text-align: center;
    margin: 8% auto 5%;
    letter-spacing: 0px;
    
}
#st_foot .cp_link a{
    color: #000;
	text-decoration: underline;
	text-underline-offset: 10px;
    
}



/************************************************************
               button
************************************************************/

.btn_01 a {
    display: flex; 
    justify-content: space-between;
    align-items: center;
    padding: 3% 4%;
    border: 2px solid #9e0120; 
    border-radius: 10px;
    width: 68%;
    letter-spacing: 0px;
    background-color: #FFFFFF;
    color: #9e0120; 
    text-decoration: none; 
    font-weight: bold;
    box-sizing: border-box;
    margin: 5% auto 10%;
    font-family: "Inter", serif;
    
}
.btn_01 .item-name {
  font-size: 20px;
}
.btn_01 .buy-button {
  font-size: 20px; 
}
#st_contents .section:nth-child(2) .btn_01 a{
    color: #014d1c; 
    border: 2px solid #014d1c;
}
#st_contents .section:nth-child(3) .btn_01 a{
    color: #9e0120; 
    border: 2px solid #9e0120;
}


.Right{
    float: right;
}
.Left{
    float: left;
}
.small{
	font-size:80%;
}
.clear {
	clear: both;
}
.pc{
	display: block;
}
.sp{
	display: none;
}


@media only screen and (max-width:768px){
	#st_wrap {
        width:100%;
        letter-spacing: 0.5px;
	}
    #st_contents .section .ttl{
        width: 50%;
    }
    #st_contents .section .credit_l{
        width: 90%;
    }
    #st_contents .section .credit_r{
        width: 90%;
    }
#st_contents .section .parent {
	width: 40%;	
	top:0%;
	right:2%;
	font-size: 11px;
	letter-spacing: 0.01em;
}
#st_contents .section .parent2 {
	width: 40%;	
	top:1%;
	left:5%;
	font-size: 11px;
	letter-spacing: 0.01em;
}	
#st_contents .section .parent3 {
	width: 40%;	
	bottom:0%;
	left:3%;
	font-size: 11px;
	letter-spacing: 0.01em;
}		
#st_contents .section .left {
    float: left;
	margin-top: -6%;
}
#st_contents .section .right {
    float: right;
	margin-top: -6%;	
}
#st_contents .section .sml {
    font-size: 6px;
	margin-top: -6%;	
}
#st_contents .section .check1 {
	width: 80%;	
	margin-top: 3%;
}
	
	
    #st_foot .btn{
        width: 45%;
    }
#st_foot .cp{
    font-size: 13px;
    margin: 2% auto 1%;
    
}	
#st_foot .cp_link{
    font-size: 12px;
}	
#st_foot .pblogo{
    width: 40%;
    text-align: center;
    margin: 14% auto 2%;
}	
 .title{
    width: 95%;
	margin: 3% auto 1%;
}	
 .main_01{
    width: 80%;
	margin: 0% auto 0%;
}
 .main_02{
    width: 95%;
	margin: 11% auto 0%;
}
 .main_03{
    width: 95%;
	margin: -7% auto 0%;
}
 .main_04{
    width: 95%;
	margin: 0% auto 8%;
}
 .main_05{
    width: 95%;
	margin: 10% auto 0%;
}	
 .btn_item{
    width: 72%;
    text-align: center;
    margin: 5% auto 4%;
}	
    .btn_01 a{
        padding: 4%;
    }
    .btn_01 .item-name{
        font-size: 15px;
    }
    .btn_01 .buy-button{
        font-size: 15px;
    }
    
    
    
    
    .pc {
		display:none;
	}
	.sp {
		display:block;
    }
    
    
    .Left{
        float: none;
    }
    .Right{
        float: none;
    }
}


/************************************************************
動き
************************************************************/

#st_head .visual{
    opacity: 0;
	transition: 2s all 0s ease;
}
#st_head.ac .visual{
  	opacity: 1;
}
#st_head .visual_box img{
    max-width: 95%;
}
.fade {
	opacity: 0;
	transition: 1.0s all 0s ease;
}
.fade01 {
	opacity: 0;
	transition: 1.0s all 0.5s ease;
}
.fade02 {
	opacity: 0;
	transition: 1.0s all 0.7s ease;
}
.fade.ac, .fade01.ac, .fade02.ac{
	opacity: 1;
    transform: translate(0);
}

.anim {
	opacity:0 ;
	transform: translate(0,50px);
	transition: 1.5s all 0.2s ease;
}

.anim.ac{
	opacity:1 ;
	transform: translate(0);
}

.move-wrap {
    display: flex;
    align-items: center;
    overflow: hidden;
    margin: 2% 0;
    column-gap: 10px;
}

.slideshow {
    display: flex;
    column-gap: 10px;
    animation: loop-slide 15s linear infinite;
}

.content {
    width: 180px;
}

.content img {
    border-radius: 0px;
    box-sizing: border-box;
}

@keyframes loop-slide {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%); /* 全体の半分まで移動 */
    }
}

