@charset "utf-8";
/* CSS Document */
/*
-------------------------------------------------- */
body { background: #f9f6f0;}
.container {
	position: relative;
	max-width:600px;
	margin:0 auto;
	text-align: center;
	font-size:10px;
	line-height: 1;

	-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);

	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	background: #f9f6f0;
}

img {
	width:100%; height:auto;
}

.header {
	position: relative;
	margin-bottom: 3%;
}
.header .logo {
	position: absolute;
    left: 5.2%;
    top: 3.5%;
    width: 21.2%;
}

.cv01 {
	position: relative;
	margin:0 2.5% 10%;
}

.footer {
	margin:8% 0 0;
	padding:8% 4% /*22%*/12%;
	color: #fff;
	background: #392755;
}
.footer .logo {
	margin:0 25.667%;
}
.footer p {
	padding:1em 0 1.5em;
	font-size:1.3em;
	line-height: 1.8;
}
.footer p span {
	font-size:0.8em;
}
.footer a { color: #fff;}

.bottom--banner {
	position:fixed;
	left: 50%;
	bottom:0;
	transform: translateX(-50%);
	width:600px;
	z-index: 11;
}
.bottom--banner:hover { cursor:pointer;}

@media (min-width: 769px) {
/* tablet+PC用 */
}
@media (max-width: 768px) {
/* tablet用 */
}
@media (max-width: 480px) {
/* SP用 */
	.bottom--banner { width:100%;}

}

/* dl--btn-buy
-------------------------------------------------- */
/*---- dl--btn-buy ----*/
.dl--btn-buy {
	position: relative;
	z-index: 5;
}
.dl--btn-buy dt {
	transition:.4s all;
	z-index: 2;
}
.dl--btn-buy dt:hover { cursor: pointer;}
.dl--btn-buy.active dt:hover img {}
.dl--btn-buy dd {
	display: none;
	position: absolute;
	top:100%;
	left: 0;
	padding:12px 12px;
	background: #EEE5FF;
	z-index: 5;
}

.dl--btn-buy .txt { text-decoration: underline;}
.dl--btn-buy .txt:hover { text-decoration: none;}


.dl--btn-buy.moon { margin-top:1.5em;}

.ul--ec {
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.ul--ec::before {
	content: '';
	position:absolute;
	top:-26px;
	left: 50%;
	transform: translateX(-50%);
	border-bottom:15px solid #EEE5FF;
	border-left:7.5px solid transparent;
	border-right:7.5px solid transparent;
}
/* txtの場合 */
.dl--btn-buy.txtlink dd {
	top:230%;
}


.ul--ec li {
	width:48.2%;
	margin:13px 0 0 ;
}
.ul--ec li:nth-child(1),
.ul--ec li:nth-child(2) { margin-top: 0;}

@media (min-width: 641px) {
/* tablet+PC用 */
}
@media (max-width: 640px) {
/* SP用 */
}


/* sec02
-------------------------------------------------- */
.sec02 {
	padding: 18% 0 22%;
	background: url("../img/img_06.png") center top no-repeat;
	background-size:100% 100%;
}
.sec02 .fxch {
	width:48%;
	margin-left: 4%;
}
.sec02 .fxch:nth-child(odd) {
	margin-left: 0;
}
@media (min-width: 641px) {
/* tablet+PC用 */
}
@media (max-width: 640px) {
/* SP用 */
}


/* sec03
-------------------------------------------------- */
.sec03 {
	position: relative;
	padding: 0 0 15%;
	z-index: 3;
}
.sec03 iframe {
	width:91%;
}
.sec03 .dl--btn-buy {

}
.sec03 .dl--btn-buy dt {
	transition:.4s all;
}

@media (min-width: 641px) {
/* tablet+PC用 */
}
@media (max-width: 640px) {
/* SP用 */
}


/* sec04
-------------------------------------------------- */
.sec04 {
	position: relative;
	width:100%;
	padding: 12.4% 0 18.3%;
	background: url("../img/img_16.png") center top no-repeat;
	background-size:100% auto;
}
.sec04 iframe {
	width:90%;
	margin:0 5%;
}
.sec04 .dl--btn-buy {
	margin:0 0 1em;
}
.sec04 .dl--btn-buy dt {
	font-size:1.4em;
}
@media (min-width: 641px) {
/* tablet+PC用 */
}
@media (max-width: 640px) {
/* SP用 */
}


/* sec05
-------------------------------------------------- */
.sec05 .more {
	margin:0 4.5% 18%;
}
ul.ossm {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;

	width:91%;
	margin:0 auto 4em;
}
ul.ossm li {
	position: relative;
	width:48.2%;
	z-index: 15;
}
ul.ossm li:nth-child(1),
ul.ossm li:nth-child(2) {
	margin-bottom: 4em;
	z-index: 18;
}

ul.ossm li dl {
	position: absolute;
	left: 0;
	bottom:2.4em;
	width:84%;
	margin:0 8%;
}
ul.ossm .dl--btn-buy dd {
	top:calc(100% + 14px);
}

ul.ossm .ul--ec li {
	width:100%;
	margin:0 0 8px;
}
ul.ossm .ul--ec li:last-child { margin-bottom:0;}
@media (min-width: 641px) {
/* tablet+PC用 */
}
@media (max-width: 640px) {
/* SP用 */
}



/*
-------------------------------------------------- */
dl.green {
	position: relative;
	z-index: 16;
}
dl.blue {
	position: relative;
	z-index: 15;
}
dl.moon {
	position: relative;
	z-index: 14;
}

dl.mb10 { margin-bottom:1em !important;}

@media (min-width: 641px) {
/* tablet+PC用 */
}
@media (max-width: 640px) {
/* SP用 */
}


/*
-------------------------------------------------- */
@media (min-width: 641px) {
/* tablet+PC用 */
}
@media (max-width: 640px) {
/* SP用 */
}



/* animation
-------------------------------------------------- */
.slideup {
	opacity : 0;
	transform: translateY(40px);
	transition: all 750ms ;
}

.fadeIn {
	opacity: 0;
	animation-delay: 0;
	animation-name: fadeIn01;
	animation-duration:1.5s;
	animation-fill-mode: forwards;
}

.dt01 {
	transition-delay:0.1s;
}
.dt02 {
	transition-delay:0.2s;
}
.dt03 {
	transition-delay:0.3s;
}
.ad05 {
	animation-delay:0.5s;
}


@keyframes fadeIn01 {
	0% { opacity : 0;}
	100% {
		opacity : 1;
		transform: translate(0);
	}
}
@media (min-width: 769px) {
/* tablet+PC用 */
}
@media (min-width: 1024px) {
/* PC用 */
}
@media (min-width: 1400px) {
/* PC-wide用 */
}
@media (min-width: 769px) and ( max-width: 1023px) {
/* tablet用 */
}
@media (max-width: 768px) {
/* tablet用 */
}
@media (max-width: 480px) {
/* SP用 */
}

/*  */
/* 2025/02/12　追加 */
/*  */
.dl--btn-buy.blue {
	margin-top: 1em;
}
.header {
	position: relative;
}
.kv_btnarea {
	position: absolute;
	/* top: calc(750 / 710 * 100vw); */
	top: 62%;
	padding: 0 16px;
	/* display: flex;
	justify-content: space-between; */
	width: 100%;

}
dl.kv_btnarea_cmn {
	width: 100%;
	position: relative;
	left: 0;
	top: 0;
	pointer-events: none;
	
	display: none;
}
dl.kv_btnarea_cmn.moon {
	margin-top: 0;
	/* width: 100%; */
	/* position: relative; */
	/* left: 0; */
	top: -120px!important;
}

.kv_btnarea_cmn dt {
	width: 120px;
	pointer-events: all;
}
.kv_btnarea_cmn.moon dt{
	margin-left: auto;
	margin-right: 0;
}

.kv_btnarea_cmn dd {
	pointer-events: all;
	margin-top: 12px;
}

.kv_btnarea_cmn.blue .ul--ec::before {
	left: 9%;
}
.kv_btnarea_cmn.moon .ul--ec::before {
	left: 91%;
}

@media (max-width: 615px) {
	.kv_btnarea_cmn dt {
		width: 18vw;
		/* pointer-events: all; */
	}
	dl.kv_btnarea_cmn.moon {
		top: -18vw !important;
	}

	.kv_btnarea_cmn.blue .ul--ec::before {
		left: 7%;
	}

	.kv_btnarea_cmn.moon .ul--ec::before {
		left: 94%;
	}
}