@charset "utf-8";
/* CSS Document */
/*fabric_sp.css*/

    
/*----------- rop242_sp -----------*/
body{
    position: relative;
    margin: 0 auto ;
    text-align: center;
    width: 100%;
}

.fs-l-main {
 padding: 0 !important;
 max-width: unset;
 }

.rop242{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    display: block;
}

.rop242 img{
    width: 100%;
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 0;
	
}
.rop242 p{
    display: block;
    font-size: 1.2vw;
    color: #ed7cac;
}
.rop242 ul, .rop242 li{
    list-style: none;
    margin: 0;
    padding: 0;
    justify-items: center;
}
.rop242 .pc{
    display: none;
}
.rop242 .sp{
    display: block;
}






@keyframes fadein{
    from{
    opacity: 0;
    transform: translatey(100px);
    }
    to{
    opacity: 1;
    transform: translatey(0);
    }
}
#style01,
#style02,
#style03,
#style04{
    display: inline-block;
    width: 100vw;
    margin: 0 auto;
    padding: 0;
    }

#style01{
    padding: 3% 0;
    position: relative;
    background-color: #ee515a;
}
#st01 {
    width: 94vw;
    margin: 0 auto;
}
#st01 .sub_tit {
    width: 20vw;
    margin: 0 auto!important;
    position: absolute;
    z-index: 20;
    right: 0;
    left: 0;
    top:3%
}
#st01 .st01_tex{
    line-height: 2.3;    
    font-size: 1.85vw;
    font-weight: 600;
    letter-spacing: 0.06em;
    margin: 0;
    right: 12%;
    bottom: 5%;
    position: absolute;
    text-align: right;
    z-index: 10;
    animation-name: fadein;
    animation-duration: 2s;
}
#st01 .st01_tex .check{
    background-color: #ee515a;
}

#st01 .st01_01{
    width: 30%;
    margin: 0 auto;
    position: absolute;
    top: 25%;
    left: 27%;
    z-index: 20;
    }
#st01 .st01_02{
    width: 26%;
    margin: 26% auto;
    right: 3%;
    position: absolute;
    z-index: 20;
    }
#st01 .st01_03{
    width: 41%;
    margin: 0 auto;
    position: absolute;
    z-index: 20;
    top: 9%;
    right: 19vw;
    left: 19vw;
    }
#st01 .st01_bg{
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    }


#allitems,
#follow{
    display: block;
    width: 100%;
}    



/*----------------------------
ボタン
----------------------------*/   
#allitems .btn{
    position: relative;
    display: block;
    width: 80%!important;
    height: 20%;
    margin: 10% auto 5%;
    font-size: 1.25em;
    font-weight: bold;
    background-color: #cab890;
    color: #fff;
    text-decoration: none;
    letter-spacing: 0.35vw;
    line-height: 1.5;
    padding: 2%;
}
#allitems a{
    text-decoration: none!important;
}
#allitems .btn:hover {
    opacity: .7;
}

/*----------------------------
スライド
----------------------------*/ 

.slick-dotted.slick-slider{
    margin: 0 auto;
    max-width: 1080px;
    position: relative;  
    }    
.slick-list {
    max-width: 1080px;
    }
.slick-dots{
    display: none!important;
    }  
.slick-next {
    right: 5px;
    z-index: 20;
    }
.slick-prev {
    left: 5px;
    z-index: 20;
    }
.slick-dotted button {
    display: none!important;
}
    




/*----------------------------
フォント指定
----------------------------*/     
.noto100,.noto300,.noto400{
    font-family: 'Noto Sans JP', sans-serif;        
}
.noto100{
    font-weight: 100;
}
.noto300{
    font-weight: 300;
}
.noto400{
    font-weight: 400;
}

/*----------------------------
文字色
----------------------------*/    
.gold{
    color: #d4ae66;
}    
.gray{
    color: #7a7770;
}
    
/*----------------------------
font-size
----------------------------*/       
.fs01{
    font-size: 2.15vw;
    letter-spacing: 0.08em;
    line-height: 2.2;
    border-bottom: solid 3px #d4ae66;
    width: fit-content;
    margin: 0 auto;
} 
.fs02{
    font-size: 1.255555vw;
    letter-spacing: 0.08em;
    line-height: 2.2;
}   
.fs03{
    font-size: 1.15555vw;
    letter-spacing: 0.08em;
    line-height: 2.2;
}
    
/*----------------------------
背景色
----------------------------*/    
#bg_a{
    width: 100%;
    background-color: none;
    padding-top: 10%;
    margin: 0 auto;
}

#bg_b{
    width: 100%;
    background-color: none;
    padding-top: 10%;
}

#bg_y{
     background-color: #f8f4e1;
}


/*----------------------------
            表裏反転
----------------------------*/ 

/* カード内の画像 */
.card img {
  width: 100%;
}

.demo_div{
	width: 100%;
	height:100%;	
	text-align:center;
	position: relative;
	margin: 20% auto 90%;
	float: left;
	cursor: pointer;
}

.demo_div img{
    width: 60%;
    margin: 0 auto;
    position: absolute;
    left: 20%;
    right: 20%;
    top: 0px;
    opacity: 1.0;
    border-radius: 10%;
}

/* カード裏 */
@keyframes a1_1 {
    0% {
        transform: rotateY(0deg)
    }
    50% {
        transform: rotateY(90deg);
        opacity:1.0;
    }
    51% {
        opacity:0.0;
    }
    100% {
        opacity:0.0;
    }
}
@keyframes a1_2 {
    0% {
        transform: rotateY(0deg);
        opacity:0.0;
    }
    50% {
        transform: rotateY(90deg);
        opacity:0.0;
    }
    51% {
        opacity:1.0;
    }
    100% {
        transform: rotateY(0deg);
        opacity:1.0;
    }
}

.ani1_1{
	animation: a1_1 0.5s forwards;
}
.ani1_2{
	animation: a1_2 0.5s forwards;
}

/* カード表 */
@keyframes a2_1 {
    0% {
        opacity:0.0;
        transform: rotateY(0deg);
    }
    50% {
        transform: rotateY(90deg);
        opacity:0.0;
    }
    51% {
        opacity:1.0;
    }
    100% {
        transform: rotateY(0deg);
        opacity:1.0;
    }
}
@keyframes a2_2 {
    0% {
        transform: rotateY(0deg);
        opacity:1.0;
    }
    50% {
        transform: rotateY(90deg);
        opacity:1.0;
    }
    51% {
        opacity:0.0;
    }
    100% {
        opacity:0.0;
    }
}

.ani2_1{
	animation: a2_1 0.5s forwards;
}
.ani2_2{
	animation: a2_2 0.5s forwards;
}

    
/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
  transition: 0.5s ease-in-out;
  transform: translateY(5px);
  opacity: 0;
}    
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}

/*----------------------------
scroll_down ｜上から下へ出現
----------------------------*/
.scroll_down {
  transition: 0.8s ease-in-out;
  transform: translateY(-5px);
  opacity: 0;
}    
.scroll_down.on {
  transform: translateY(0);
  opacity: 1.0;
}

/*----------------------------
scroll_left ｜左から出現
----------------------------*/
.scroll_left {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(-200px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_left.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}
    
/*----------------------------
scroll_right ｜右から出現
----------------------------*/
.scroll_right {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_right.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
} 



/*-- SNS --*/
#follow {
    display: block;
    width: 100%;
    position: relative;
    margin: 0;
    padding-bottom: 5%;
    }    
#follow div {
    margin: 2% auto 0;
    font-family: 'Josefin Sans', sans-serif;
    position: revert;
    display: inline-block;
    padding: 0 16.5vw;
    font-size: 1.5vw;
    font-weight: 300;
    line-height: 1.3;
    z-index: -1;
    text-align: center;
    letter-spacing: 0.15em;
    color: #000;
}
#follow div:before, 
#follow div:after {
    content: '';
    top: 15%;
    display: inline-block;
    width: 8%;
    height: 0.2vh;
    background-color: #000;
}
#follow div:before {
    position: absolute;
    left: 30%;
}
#follow div:after {
    position: absolute;
    right: 30%;
} 
#follow li{    
    display: inline-block;
    width: 45px;
    height: 45px;
    margin: 2% 0.5%;
    padding: 0;
    background-color: #000;
    border-radius: 60%;
    }
#follow img {
    padding: 0;
    width: 50%;
    margin: 25%;
}        
#follow img:hover {
    opacity: .7;
}

/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

/*-- Copyright --*/
.rop242 .footer{
    font-style: normal;
    font-size: 0.9vw;
    padding-bottom: 5%;
    color: #fff;
}

#ftr ul{
    text-align: left;
}