@charset "UTF-8";

*{
	margin : 0 ;
	padding : 0 ; 
	font-size : 100% ;
	box-sizing: border-box;
}
img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
}

html{
	background:none;
}
/*
body{
	font-size : 120% ;
	font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	line-height : 1.4;
	background:url(img/bgg.png) repeat-y #f0f0f0;
	background-position: 50% 50%;
	background-attachment:fixed;
	background-size:cover;
}
*/
body{
    min-height: 100vh;
    position: relative;
    overflow-x: hidden;
    background: #ffffff;
	font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}




div {
    overflow-wrap: break-word;
}

#wrap{

}

#container{
	width :900px ;
	margin : 0 auto;
//	background:#ffffff;
/*	box-shadow: 10px 0 5px 5px rgba(0,0,0,0.1), -10px 0 5px 5px rgba(0,0,0,0.1);*/
	position: relative;
	z-index: 10;
	backdrop-filter: blur(5px);
	box-shadow: 0 0 40px rgba(255, 20, 147, 0.15);
	opacity:0.9;
}
#header{
    height: 0;
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 72.00%;
    background: url('img/header.png') 0 0 no-repeat;
    background-size: contain;
	position: relative;
	z-index: 10;
	backdrop-filter: blur(5px);
}

#header-in{
	width:1000px;
	height:1000px;
	margin:-60.00% auto 0;
    background: url('img/header-in.png') 0 0 no-repeat;
	z-index: 12;
}

#header2{
	background : url(img/a001.png) 0% 0% / auto auto repeat scroll padding-box border-box #000000;
	background-position-x: 0%;
	background-position-y: 0%;
	background-attachment: scroll;
	background-size: auto;
	background-size: cover;
	background-attachment: fixed;
	background-position: 50% 50%;
	padding: 50px 0 40px 0;
}

#contents{
	color : #666666;
	background:#ffffff;
/*	background:url(img/bg_bak.png) repeat-y #ffffff;*/
	line-height : 1.6 ;
	margin : 0 0 0 0 ;
	padding : 0;
/*	box-shadow: -10px 0 10px 10px rgba(0,0,0,0.3);*/
/*	box-shadow: -5px 0 10px -5px rgba(0, 0, 0, 0.1), 5px 0 10px -5px rgba(0, 0, 0, 0.1);*/
}

#contents p{
	margin:8px 100px 8px 100px;
}

#footer{
	text-align:center;
	margin:30px 0 10px 0;
}

a img{
	border: none;
}

a:link{
	color: #0066cc;
	text-decoration: underline;
}
a:visited{
	color: #6E6C64;
	text-decoration: underline;
}
a:hover, a:active, a:focus{
	text-decoration: none;
}

a:hover img {
    opacity: 0.8;
}

.red{
	color:#ff0000;
}

.blue{
	color:#0033cc;
}
.big{
	font-size:20px;
}

.big2{
	font-size:24px;
}

.big3{
	font-size:26px;
}

.underline{
	text-decoration:underline;
}

.bkyellow{
	background:#FF6;
}

.center{
	text-align:center;
}




ul, ol{
	padding: 10px;
	margin: 0 100px 0 100px;
	background:#fafafa;
	border:1px solid #cccccc;
}

ul li{
	list-style:none;
	background : url(img/check.png) 2px 0px / auto auto no-repeat scroll padding-box border-box transparent;
	border-bottom:1px dashed #cccccc;
	padding:5px 5px 5px 50px;
	color:#DA3830;
	line-height:140%;
	margin:10px 20px 10px 20px;
	font-weight:normal;
	font-size:16px;
}

ol li{
	list-style:inside;
	list-style-type: upper-roman;
	font-weight:bold;
	margin:10px 20px 10px 20px;
	color:#DA3830;
}

.headd{
	position:relative;
	top:-150px;
	left:-234px;
	width:1369px;
}

.qahead{
	position:relative;
	top:20px;
	left:0px;
}

.brd{
    position: relative;
    top: -0px;
    left: -46px;
	width:934px;
}

.situ{
	margin: 0 auto;
	width: 100%;
	background-color: #f0f0f0;
	background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(.5, transparent), color-stop(.5, #FAFAFA), to(#FAFAFA)),
-webkit-gradient(linear, 0 0, 100% 0, color-stop(.5, transparent), color-stop(.5, #FAFAFA), to(#FAFAFA));
	-webkit-background-size: 5px 5px;
}

#contents .situ p{
	margin:8px 50px 8px 50px;
}
/*
.situ2{
	margin:0 45px 30px 45px;
}
*/
#contents .situ2 p{
	/*margin:8px 55px 8px 55px;*/
	margin:0;
}
/*
p.q{
	background:url(img/q.gif) no-repeat 12px 0;
	padding:3px 5px 3px 50px;
	font-size:17px;
	font-weight:bold;
	color:#000000;
}

.a{
	background:url(img/qa.gif) no-repeat 15px 17px #f0f0f0;
	padding:20px 5px 20px 54px;
	font-size:15px;
	border:1px solid #cccccc;
	border-radius:8px;
}
*/

/* Q&Aコンテナ */
.situ2{
    max-width: 800px;
    margin: 0 auto 25px;
    background: white;
    border-radius: 16px;
    padding: 28px 32px;
    box-shadow: 
        -3px 0 8px -3px rgba(189, 147, 186, 0.08),
        3px 0 8px -3px rgba(189, 147, 186, 0.08),
        0 4px 12px rgba(189, 147, 186, 0.1);
    border-top: 3px solid transparent;
    background-image: 
        linear-gradient(white, white),
        linear-gradient(90deg, #f7c6e0, #d9b3f0);
    background-origin: padding-box, border-box;
    background-clip: padding-box, border-box;
}

/* 質問スタイル */
.q{
    position: relative;
    color: #7d5a7b;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.5px;
    padding-left: 45px;
    margin-bottom: 20px;
    min-height: 35px;
    display: flex;
    align-items: center;
}

/* Qアイコン */
.q::before{
    content: 'Q';
    position: absolute;
    left: 0;
    top: 0;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, #ffb3d1 0%, #d9b3f0 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 600;
    font-size: 16px;
}

/* 質問の後の装飾ライン */
.q::after{
    content: '';
    position: absolute;
    bottom: -10px;
    left: 45px;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(220, 197, 220, 0.3), transparent);
}

/* 回答スタイル */
.a{
    position: relative;
    color: #8d7b8c;
    font-size: 15px;
    line-height: 1.8;
    letter-spacing: 0.3px;
    padding-left: 45px;
    padding-top: 10px;
}

/* Aアイコン */
.a::before{
    content: 'A';
    position: absolute;
    left: 0;
    top: 10px;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, #ffd6e8 0%, #edd6ff 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #9d7b9b;
    font-weight: 600;
    font-size: 16px;
}

/* ホバー効果（PCのみ） */
@media (hover: hover) {
    .situ2:hover{
        transform: translateY(-2px);
        box-shadow: 
            -4px 0 12px -4px rgba(189, 147, 186, 0.12),
            4px 0 12px -4px rgba(189, 147, 186, 0.12),
            0 6px 16px rgba(189, 147, 186, 0.15);
        transition: all 0.3s ease;
    }
}

/* 1つ目と奇数番目のQ&Aに異なるアクセントカラー */
.situ2:nth-child(odd){
    background-image: 
        linear-gradient(white, white),
        linear-gradient(90deg, #f7c6e0, #e6c6f7);
}

.situ2:nth-child(odd) .q::before{
    background: linear-gradient(135deg, #f7a3ca 0%, #e0a3f0 100%);
}

/* レスポンシブ対応 */
@media (max-width: 640px) {
    .situ2{
        padding: 22px 20px;
        margin: 0 15px 20px;
    }

    .q, .a{
        padding-left: 40px;
    }

    .q::before, .a::before{
        width: 28px;
        height: 28px;
        font-size: 14px;
    }

    .q{
        font-size: 15px;
        margin-bottom: 18px;
    }

    .a{
        font-size: 14px;
    }

    .q::after{
        left: 40px;
    }
}


/* ヘッダー（必要な場合） */
.page-title{
    text-align: center;
    margin-bottom: 40px;
    color: #7d5a7b;
    font-size: 28px;
    font-weight: 300;
    letter-spacing: 2px;
    position: relative;
}

.page-title::after{
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, transparent, #dcc5dc, transparent);
}







#mdc{
	margin:0 auto;
	padding:15px 18px 15px 18px;
	width:800px;
	background:#000000;
	border-radius:7px;
/*	background-color: #F4BBBB;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #FFEFEF), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #FFEFEF),color-stop(.75, #FFEFEF), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 14px 14px;*/
}

#mdc2{
	margin:0 auto;
	padding:15px 0 15px 0;
	width:800px;
	border-radius:7px;
background-color: #CAE9FF;
background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #E7F8FC), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #E7F8FC),color-stop(.75, #E7F8FC), color-stop(.75, transparent),to(transparent));
-webkit-background-size: 14px 14px;

}

#mdc3{
	margin:0 auto;
	padding:7px 0 7px 0;
	width:750px;
	background:url(img/mdc-bak.png) repeat;
	border-radius:5px;
}

#mdcin{
	margin:0 auto;
	background:#ffffff;
	color : #666666;
}

#mdcin p{
	margin:5px 60px 5px 60px;
	padding-top:5px;
}

dl{
	margin: 10px 20px 10px 20px;
	background:#ffffff;
}

dt{
	padding:30px 0 0 0;
	color:#ff0000;
}

dd{
	border-bottom:2px solid #cccccc;
	padding:20px 0 20px 0;
}

#ctr{
	background:#000000;
}


#ctr2{
	background:url(img/timer_bg.png) repeat-x #000000;
	position: fixed;
    top: 0px;
    left: 0px;
	height:70px;
	width:100%;
	margin:0 auto;
/*	padding-top:10px;
	border-radius:7px;*/
	box-shadow: 3px 3px 3px 3px rgba(194, 173, 97, 0.3);
	z-index:999999;
}

.step{
    background: #d6b674 none repeat scroll 0 0;
    margin: 15px auto;
    padding: 7px;
    width: 800px;
}

.step-in{
    background: #ffffff none repeat scroll 0 0;
}

.step h2{
    margin-bottom: 0;
    padding: 10px 10px 10px 20px;
    text-align: left;
    background-color: #333333;
    color: #ffffff;
    font-size: 20px;
    font-weight: bold;
}

.stcon{
    min-height: 95px;
    padding-top: 20px;
}

#contents .step p{
    margin: 0 20px;
}

.prop::after{
    clear: both;
    content: "";
    display: block;
    height: 0;
}

.prop{
	margin:0 auto;
	width:90%;
}

.col2{
	float:left;
	width:45%;
	margin-left:26px;
	margin-bottom:30px;
}

#contents .col2 p{
    margin: 1px 3px;
    font-size:0.94em;
}

.ltr-head{
	margin:0 auto;
	width:762px;
	height:80px;
	background:url(img/ltr-head.jpg) no-repeat center top;
}

.ltr{
	margin:0 auto;
	width:762px;
	background:url(img/ltr-bd.jpg) repeat;
}

#contents .ltr ul{
	margin: 0 60px 0 50px;
}

#contents .ltr p{
	margin:0px 60px 10px 60px;
	padding:5px;
	border-bottom:1px dashed #cccccc;
}

#hikaku table{
	border:1px solid #CCCCCC;
	border-collapse:collapse;
	width:95%;
	margin:0 auto;
}
#hikaku table td,#hikaku table th{
	border:1px solid #CCCCCC;
	border-collapse:collapse;
	background:#ffffff;
	font-size:10pt;
	padding:5px;
}
#hikaku table th{
	background:#f0f0f0;
	font-size:9pt;
}

.cctn{
	background:url(img/cctn.jpg) repeat;
	padding:20px 28px 20px 28px;
	margin:0 35px 0 35px;
}

.cctn-in{
	margin:8px auto;
	background:#ffffff;
	padding:10px;
}

#contents .cctn p{
	margin:0;
	padding:8px 30px 8px 30px;
}

.example{
	width:72%;
	margin:0 auto;
	padding:3em 3em;
	background:#FFEFDF;
	border:10px solid #dddddd;


}

.exx{
	margin-bottom:5em;
}

.exx:last-child{
	margin-bottom:0;
}

#contents .example p{
	margin: 0 8px 0 8px;
	padding:0 30px 0 30px;
	line-height:2.5;
}

.ex_head{
	border-bottom:2px dotted #444444;
	margin-bottom:0.5em;
//	background:#f0f0f0;
	display:flex;
}

.ex_person{
	padding:5px;
	background:#ffffff;
}

.ex_head img{
	width:20%;
	height:20%;
	border-radius:50%;
	margin-bottom:5px;
}

.exname{
	font-weight:bold;
}

#contents .example p.exttl{
	font-size:1.4em;
	font-weight:bold;
	color:#ff0000;
	line-height:1.2;

}

.ex_person{
	background:url(img/ex_bak.png) repeat;
}

.ex_person p:first-child{
//	border-top:2px dashed #f0f0f0;
//	padding-top:6px;
}

.ex_person p{
//	border-bottom:2px dashed #f0f0f0;
}

.yellow_box{
	border:1px solid #D9D900;
	background:#FFFFE8;
	padding:10px;
	width:80%;
	margin:0 auto;
}

.red_box{
	border:1px solid #B22D00;
	background:#FFEAEA;
	padding:10px;
	width:80%;
	margin:0 auto;
}

.gray_box{
	border:1px solid #B22D00;
	background:#FFEAEA;
	padding:10px;
	width:80%;
	margin:0 auto;
}

#contents .red_box p,#contents .yellow_box p,#contents .gray_box p{
 margin: 8px 30px 8px 30px;
}


/*Q&A*/
.Qa-Box{
  width: 80%;
  margin: 0 auto;
}

.Qa-Box .Qa dt,
.Qa-Box .Qa dd{
  display: flex;
  align-items: baseline;
  margin: 15px 0;
  padding: 15px;
  font-size: 15px;
}

.Qa-Box .Qa dt{
  background: #F5F5F5;
  color:#3a3a3a;
}

#contents .Qa-Box .Qa dt p{
  margin: 0;
  padding-left: 15px;
  font-weight: bold;
  width: 100%;
}

#contents .Qa-Box .Qa dd p{
  margin: 0;
  padding-left: 15px;
  width: 100%;
}

.Qa-Box .Qa dt::before{
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #6699B7;
  width: 2em;
  height: 2em;
}

.Qa-Box .Qa dd::before{
  content: "A";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #D65556;
  width: 2em;
  height: 2em;
}

@media screen and (max-width: 960px) {
  .Qa-Box{
    width: 95%;
  }
}



@media screen and (max-width: 768px) {

.cctn{
	background:url(img/cctn.jpg) repeat;
	padding:10px 18px 10px 18px;
	margin:0 15px 0 15px;
}
#contents .cctn p{
	margin:0;
	padding:8px 10px 8px 10px;
}

.headd{
	top:0px;
	left:0;
	width:100%;
}

#header2{
	padding:20px 0 15px 0;
}

.brd{
    top: 0;
    left:0;
	width:100%;
}

#header-in{
	width:100%;
}

#container{
	width:100%;
}

body,#contents{
	background:none;
}

#contents p{
	margin:6px 15px 6px 15px;
}

ul, ol{
    margin: 0 20px;
    padding: 5px;
}
#mdc{
	width:98%;
}

#mdc2{
	width:98%;
}

#mdc3{
	width:98%;
}

#mdcin{
	margin:0 auto;
	width:96%;
}



iframe{
	width:100%;
	height:30px;
}

#ctr2{
	background:url(img/timer_bg.png) repeat-x #000000;
	height:40px;
}

.situ{
	width:93.8%;
	
}
#contents .situ p{
	margin:8px 20px 8px 20px;
}

.step{
    margin: 15px auto;
    padding: 7px;
    width: 90%;
}

.prop{
	margin:0 auto;
	width:90%;
}

.col2{
	float:none;
	margin:0 auto;
	width:100%;
	margin-left:0px;
	margin-bottom:30px;
}

.ltr-head{
	width:98%;
	margin-left:10px;
	background:url(img/ltr-head.jpg) no-repeat center bottom;
	background-size:98% 40.49%;
}

.ltr{
	width:98%;
}

#contents .ltr ul{
	margin: 0 20px 0 20px;
}
#contents .ltr ul li{
	margin: 5px 5px;
    padding: 5px 5px 5px 40px;
}
#contents .ltr p{
	margin:0px 20px 10px 20px;
	padding:5px;
	border-bottom:1px dashed #cccccc;
}

#contents .situ2 p{
	margin:6px 5px 6px 5px;
}


.example{
	padding:1em;
}

.example p{
	margin: 2px;
	padding:0px 5px 3px 5px;
}

.ex_head{
	display:block;
}

.ex_head img{
	width:30%;
}





}


/*　噴出し　*/
.balloon5{
    width: 94%;
    margin: 1.5em auto;
    overflow: hidden;
}

.balloon5 .faceicon{
    float: left;
    margin-right: -90px;
    width: 80px;
}

.balloon5 .faceicon img{
    width: 94%;
    height: auto;
    border: solid 3px #d7ebfe;
    border-radius: 50%;
}

.balloon5 .chatting{
    width: 100%;
}

.says{
    display: inline-block;
    position: relative; 
    margin: 5px 0 0 105px;
    padding: 17px 13px;
    border-radius: 12px;
    background: #d7ebfe;
}

.says::after{
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px; 
    left: -24px;
    border: 12px solid transparent;
    border-right: 12px solid #d7ebfe;
}

#contents .balloon5 .says p{
    margin: 0;
    padding: 0;
}


.balloon6{
    width: 94%;
    margin: 1.5em auto;
    overflow: hidden;
}

.balloon6 .faceicon{
    float: left;
    margin-right: -90px;
    width: 80px;
}

.balloon6 .faceicon img{
    width: 94%;
    height: auto;
    border: solid 3px #FFDFBF;
    border-radius: 50%;
}

.balloon6 .chatting{
    width: 100%;
}

.balloon6 .says{
    display: inline-block;
    position: relative; 
    margin: 5px 0 0 105px;
    padding: 17px 13px;
    border-radius: 12px;
    background: #FFDFBF;
}

.balloon6 .says::after{
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px; 
    left: -24px;
    border: 12px solid transparent;
    border-right: 12px solid #FFDFBF;
}

#contents .balloon6 .says p{
    margin: 0;
    padding: 0;
}



       /* 波のアニメーション背景 */
        body::before{
            content: '';
            position: fixed;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: linear-gradient(45deg, 
                transparent 30%, 
                rgba(255, 182, 193, 0.15) 30%, 
                rgba(255, 182, 193, 0.15) 33%, 
                transparent 33%, 
                transparent 67%, 
                rgba(221, 160, 221, 0.15) 67%, 
                rgba(221, 160, 221, 0.15) 70%, 
                transparent 70%
            );
            background-size: 100px 100px;
            animation: wave 8s linear infinite;
            z-index: 0;
        }

        @keyframes wave {
            0% {
                transform: translate(0, 0);
            }
            100% {
                transform: translate(50px, 50px);
            }
        }

        /* 浮遊する円形要素 */
        .bubble{
            position: fixed;
            border-radius: 50%;
            animation: float linear infinite;
            pointer-events: none;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        }

        .bubble1{
            width: 120px;
            height: 120px;
            background: linear-gradient(135deg, rgba(255, 105, 180, 0.4), rgba(255, 182, 193, 0.3));
            left: 10%;
            animation-duration: 20s;
            animation-delay: 0s;
        }

        .bubble2{
            width: 80px;
            height: 80px;
            background: linear-gradient(135deg, rgba(186, 85, 211, 0.4), rgba(221, 160, 221, 0.3));
            left: 70%;
            animation-duration: 25s;
            animation-delay: 5s;
        }

        .bubble3{
            width: 150px;
            height: 150px;
            background: linear-gradient(135deg, rgba(255, 20, 147, 0.3), rgba(255, 192, 203, 0.2));
            left: 85%;
            animation-duration: 30s;
            animation-delay: 10s;
        }

        .bubble4{
            width: 100px;
            height: 100px;
            background: linear-gradient(135deg, rgba(219, 112, 147, 0.4), rgba(255, 192, 203, 0.3));
            left: 25%;
            animation-duration: 22s;
            animation-delay: 15s;
        }

        .bubble5{
            width: 60px;
            height: 60px;
            background: linear-gradient(135deg, rgba(255, 105, 180, 0.5), rgba(255, 228, 225, 0.4));
            left: 50%;
            animation-duration: 18s;
            animation-delay: 2s;
        }

        /* 浮遊アニメーション */
        @keyframes float {
            0% {
                transform: translateY(100vh) rotate(0deg) scale(0.5);
                opacity: 0;
            }
            10% {
                opacity: 0.8;
                transform: translateY(80vh) rotate(36deg) scale(1);
            }
            90% {
                opacity: 0.8;
                transform: translateY(10vh) rotate(324deg) scale(1);
            }
            100% {
                transform: translateY(-150px) rotate(360deg) scale(0.5);
                opacity: 0;
            }
        }

        /* キラキラエフェクト */
        .sparkle{
            position: fixed;
            width: 6px;
            height: 6px;
            background: #ff69b4;
            border-radius: 50%;
            animation: sparkle 2s ease-in-out infinite;
            pointer-events: none;
            z-index: 1;
        }

        .sparkle::before,
        .sparkle::after{
            content: '';
            position: absolute;
            width: 100%;
            height: 100%;
            background: inherit;
            border-radius: inherit;
        }

        .sparkle::before{
            transform: rotate(45deg);
            width: 20px;
            height: 2px;
            top: 2px;
            left: -7px;
            background: linear-gradient(to right, transparent, #ff69b4, transparent);
        }

        .sparkle::after{
            transform: rotate(-45deg);
            width: 20px;
            height: 2px;
            top: 2px;
            left: -7px;
            background: linear-gradient(to right, transparent, #ff69b4, transparent);
        }

        @keyframes sparkle {
            0%, 100% {
                opacity: 0;
                transform: scale(0) rotate(0deg);
            }
            50% {
                opacity: 1;
                transform: scale(1) rotate(180deg);
            }
        }

        @keyframes sparkleGrow {
            0%, 100% {
                box-shadow: 0 0 0 0 rgba(255, 105, 180, 0.8);
            }
            50% {
                box-shadow: 0 0 30px 10px rgba(255, 105, 180, 0.2);
            }
        }

        .sparkle1{
	top: 20%; left: 15%; animation-delay: 0s; animation-duration: 2s;
}
        .sparkle2{
	top: 60%; left: 80%; animation-delay: 0.4s; animation-duration: 2.2s;
}
        .sparkle3{
	top: 40%; left: 60%; animation-delay: 0.8s; animation-duration: 1.8s;
}
        .sparkle4{
	top: 80%; left: 30%; animation-delay: 1.2s; animation-duration: 2.1s;
}
        .sparkle5{
	top: 10%; left: 90%; animation-delay: 1.6s; animation-duration: 1.9s;
}
        .sparkle6{
	top: 30%; left: 40%; animation-delay: 0.2s; animation-duration: 2.3s;
}
        .sparkle7{
	top: 70%; left: 50%; animation-delay: 0.6s; animation-duration: 2s;
}
        .sparkle8{
	top: 50%; left: 20%; animation-delay: 1s; animation-duration: 1.7s;
}

        /* 花びらアニメーション */
        .petal{
            position: fixed;
            width: 35px;
            height: 35px;
            background: linear-gradient(135deg, rgba(255, 20, 147, 0.6), rgba(255, 105, 180, 0.3));
            border-radius: 0 100% 0 100%;
            animation: petalFall 10s linear infinite;
            pointer-events: none;
            z-index: 1;
        }

        @keyframes petalFall {
            0% {
                transform: translateY(-100px) rotate(0deg);
                opacity: 0;
            }
            10% {
                opacity: 0.8;
            }
            90% {
                opacity: 0.8;
            }
            100% {
                transform: translateY(calc(100vh + 100px)) rotate(720deg);
                opacity: 0;
            }
        }

        .petal1{
	left: 10%; animation-delay: 0s; animation-duration: 8s;
}
        .petal2{
	left: 30%; animation-delay: 2s; animation-duration: 10s;
}
        .petal3{
	left: 50%; animation-delay: 4s; animation-duration: 9s;
}
        .petal4{
	left: 70%; animation-delay: 1s; animation-duration: 11s;
}
        .petal5{
	left: 90%; animation-delay: 3s; animation-duration: 8.5s;
}




