/* BASE =====================================================*/
html{font-size: 62.5%;}
body{font-size: 20px; line-height: 1.5rem;}
a img:hover,a img:active, a:hover, a:active{filter:alpha(opacity=80); -ms-filter: "alpha(opacity=80)"; -moz-opacity:0.8; opacity: 0.8;}
:root {
  --main-color1: #B50081;
  --main-color2: #F86ACF;
  --main-color3: #F9F0F3;
  --sub-color: #D13F93;
  --mono-tone1: #F0F0F0;
  --mono-tone2: #676767;
  --mono-tone3: #707070;
  --sub-color2: #FFF8CA;
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
h1{
	margin: 0;
}
h2{
	margin: 0;
	padding: 0;
	position: relative;
	justify-content: center;
    align-items: center;
	font-size:100%;
}
h2 span{position: relative;}
h2 span::before{
	content: "";
	width: 100%;
	height: 6px;
	background-color: var(--main-color1);
	position: absolute;
	bottom: -20px;
	left: 0;
	z-index: 0;
}
/*figure{
	margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    background: transparent;
    list-style: none;
    display: block;
}*/
.outline-box img {
	display: block;
	margin: auto;
}

/* header =====================================================*/
#header {
	box-sizing: border-box;
	padding-top:121px; 
	width: 100%;
	height: 100vh;
	min-height: calc(61vw + 121px);
	background-image: url(../../../../aeonapp/campaign/202604_newentry100/img/header_bg_pc.png);
	background-size: cover;
	background-origin: content-box;
	background-position-x: center;
	background-position-y: 0;
	background-repeat: no-repeat;
}
#header .header-box {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1224px;
	height: 100%;
	margin: auto;
	padding-bottom: 80px;
}
#header img {
	position: absolute;
	display: block;
}
#header img.header_logo {
	width: 14.7%;
	max-width: 180px;
	top: 0;
	left: 0;
	z-index: 10;
}
#header img.header_cplogo {
	width: 9.96%;
	max-width: 122px;
	top: 510px;
	right: 2.45%;
	z-index: 10;
}
#header img.header_approval {
	width: 23.52%;
	max-width: 288px;
	top: 610px;
	right: 2.45%;
	z-index: 10;
}
#header img.header_txt {
    top: -80px;
    left: 45.59%;
    transform: translateX(-50%);
    opacity: 0;
	width: 70.42%;
	max-width: 862px;
	z-index: 10;
}
#header img.header_ttl {
    top: 50px;
    left: 39.05%;
    transform: translateX(-50%) scale(0.7);
    opacity: 0;
	width: 80.72%;
	max-width: 988px;
	z-index: 1;
}
#header img.header_nakamurakun {
    top: -60px;
	left: 70%;
    transform: translateX(-50%);
    opacity: 0;
	width: 31.29%;
	max-width: 383px;
	z-index: 10;
}
#header img.header_date {
	top: 610px;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
	width: 100%;
	max-width: 1224px;
	z-index: 10;
}
#header img.header_deco01 {
	top: 164px;
	left: 89%;
    transform: translateX(-50%);
    opacity: 0;
	width: 1.14%;
	max-width: 14px;
	z-index: 1;
}
#header img.header_deco02 {
	top: 122px;
	left: 88%;
    transform: translateX(-50%);
    opacity: 0;
	width: 4.49%;
	max-width: 55px;
	z-index: 1;
}
#header img.header_deco03 {
	top: 50px;
	left: 82.5%;
    transform: translateX(-50%);
    opacity: 0;
	width: 10.54%;
	max-width: 129px;
	z-index: 1;
}
@media screen and (max-width: 640px) {
	#header {
		height: 117.467vw;
		min-height: auto;
		background-image: url(../../../../aeonapp/campaign/202604_newentry100/img/header_bg_sp.png);
	}
	#header .header-box {
		max-width: 100%;
		height: 100%;
		padding-bottom: 80px;
	}
	#header img.header_logo {
		width: 20%;
		max-width: none;
	}
	#header img.header_cplogo {
		width:16.27%;
		max-width: none;
		top: 60%;
		right: 15px;
	}
	#header img.header_approval {
		width: 33.33%;
		max-width: none;
		top: 76%;
		right: auto;
		left: 18px;
		/*z-index: 10;*/
	}
	#header img.header_txt {
		top: -80px;
		left: 57%;
		transform: translateX(-50%);
		opacity: 0;
		width: 85%;
		max-width: none;
		/*z-index: 10;*/
	}
	#header img.header_ttl {
		top: 7%;
		left: 35%;
		transform: translateX(-50%) scale(0.7);
		opacity: 0;
		width: 93%;
		max-width: none;
		/*z-index: 1;*/
	}
	#header img.header_nakamurakun {
		top: -60px;
		left: 72%;
		transform: translateX(-50%);
		opacity: 0;
		width: 32.53%;
		max-width: none;
		z-index: 10;
	}
	#header img.header_date {
		top: 81%;
		left: 50%;
		transform: translateX(-50%);
		opacity: 0;
		width: calc(100% - 30px);
		max-width: none;
		z-index: 10;
	}
	#header img.header_hitsujikun {
		top: 66%;
		left: 69%;
		transform: translateX(-50%);
		width: 13.33%;
		z-index: 10;
		transform: translateX(-50%) rotate(0deg);
	}
	#header img.header_hitsujikun.animate-start {
		animation: hitsujiMove 3s ease-in-out infinite;
        transform-origin: center center;
	}
	#header img.header_deco01 {
		top: 28%;
		left: 88%;
		width: 1.33%;
		max-width: none;
	}
	#header img.header_deco02 {
		top: 22%;
		left: 85%;
		width: 5.2%;
		max-width: none;
	}
	#header img.header_deco03 {
		top: 16%;
		left: 77.5%;
		width: 12.4%;
		max-width: none;
	}
	#header img.header_deco04 {
		top: 25.7%;
		left: 87%;
		transform: translateX(-50%);
		opacity: 0;
		width: 2.13%;
		z-index: 1;
	}
}
#header.end {
	padding-top:0;
}
@keyframes hitsujiMove {
    0%   { transform: translateX(-50%) rotate(0deg); }
    10%  { transform: translateX(-50%) rotate(6deg); }
    20%  { transform: translateX(-50%) rotate(-6deg); }
    30%  { transform: translateX(-50%) rotate(4deg); }
    40%  { transform: translateX(-50%) rotate(0deg); }
    100% { transform: translateX(-50%) rotate(0deg); }
}

/* #contents =====================================================*/
#contents{
	box-sizing: border-box;
}
#contents a {
	color:#b60081;
	text-decoration:underline;	
}
#contents a:hover {
	text-decoration:none;	
}
.section {
	width:100%;
}
.section-inner {
	width:984px;
	margin:0 auto;
}
.bgWrap {
	padding-bottom: 120px;
	background-image: url(../../../../aeonapp/campaign/202604_newentry100/img/bg.png);
	background-color: #fada5d;
}
.white-box {
	border: 8px solid #ffc461;
	border-radius: 20px;
	padding: 120px 40px;
	background: #ffffff;
	box-shadow: 0px 2px 5px rgba(0, 40, 112, 0.1);
}
.white-box + .white-box {
	margin-top: 120px;
}
.white-box p,
.white-box li {
	font-size: 24px;
	line-height: 1.6em;
	text-align: left;	
	box-sizing: border-box;
}
.white-box .note-txt li {
	padding-left: 1em;
	text-indent: -1em;
	text-align: left;
	font-size: 16px;
	line-height: 26px;
}
.white-box p + .note-txt {
	margin-top: 5px;
}
.white-box .isIndent {
	padding-left: 1em;
	text-indent: -1em;
	text-align: left;
}
.white-box.is01 {
	position: relative;
}
.white-box.is01 .entry-box {
	text-align: center;
}
.white-box.is01 .entry_ttl {
	width: 342px;
}
.white-box.is01 .entry_btn {
	width: 692px;
}
.white-box.is01 .note-txt {
	margin-top: 20px;
}
.white-box.is01 .note-txt li {
	text-align: center;
}
.white-box.is01 .entry_deco01 {
	position: absolute;
	width: 256px;
	top: -34px;
	left: 26px;
}
.white-box.is01 .entry_deco02 {
	position: absolute;
	width: 93px;
	bottom: -20px;
	right: 60px;
}

.white-box.is02 {
	position: relative;
	padding-top: 100px;
}
.white-box.is02 .chance_ttl {
	width: 888px;
}
.white-box.is02 .chance_deco01 {
	position: absolute;
	width: 256px;
	top: -34px;
	left: 26px;
}
.white-box.is02 .chance_deco02 {
	position: absolute;
	width: 123px;
	top: 290px;
	right: 80px;
}
.white-box.is02 .chance_ttl + ul {
	margin-top: 20px;
}
@media screen and (min-width: 641px) {
	.white-box.is02 .chance_list.pc {
		display: flex!important;
		justify-content: space-between;
		flex-wrap: wrap;
		margin: 0 auto;
		padding: 0 40px;
	}
}
.white-box.is02 .chance_list.pc li {
	width: 382px;
	flex-shrink: 0;
	margin-top: 40px;
}
.white-box.is02 .parent_link {
	margin-top: 120px;
}
.white-box.is02 .chance_img {
	margin-top: 120px;
}
.white-box.is02 .chance_deco03 {
	position: absolute;
	width: 172px;
	bottom: -30px;
	left: 20px;
}

.fuwafuwa-anim {
	animation: fuwafuwa 2.5s ease-in-out 0s infinite normal none running;
    transform-origin: center center;
}
@keyframes fuwafuwa {
	0%, 100% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.1);
	}
}
.fuwafuwa-reverse-anim {
    animation: fuwafuwaReverse 2.5s ease-in-out infinite;
    transform-origin: center center;
}

@keyframes fuwafuwaReverse {
    0%, 100% {
        transform: scale(1.1);
    }
    50% {
        transform: scale(1);
    }
}

.white-box.is03 {
	position: relative;
}
.white-box.is03 .outline_deco01 {
	position: absolute;
	width: 188px;
	top: -54px;
	right: -54px;
}
.yurayura-anim {
	animation: yurayura 3s ease-in-out infinite;
	transform-origin: center center;
}
@keyframes yurayura {
    0%   { transform: translateX(-50%) rotate(0deg); }
    10%  { transform: translateX(-50%) rotate(6deg); }
    20%  { transform: translateX(-50%) rotate(-6deg); }
    30%  { transform: translateX(-50%) rotate(4deg); }
    40%  { transform: translateX(-50%) rotate(0deg); }
    100% { transform: translateX(-50%) rotate(0deg); }
}

.outline-box {
	width: 100%;
	margin:0 auto;
}
.outline-box h3 {
	margin:80px auto 30px;
	padding: 7px 0;
	font-size:24px;
	line-height:1.8em;
	text-align:center;
	border-radius: 4px;	
	background-color:#63c5f1;
}
@media screen and (min-width: 641px) {
	.outline-box h3 img {
		height: 50px;
	}
}
.outline-box.is01 h3 {
	margin-top: 0;
}
.outline-box.is02 p {
	font-weight: bold;
	text-align: center;
}
.outline-box.is02 p span {
	display: inline;
	font-size:36px;
}
.outline-box.is03 p.intro {
	position: relative;
	font-weight: bold;
	text-align: center;
}
.outline-box.is03 p.intro:before,
.outline-box.is03 p.intro:after {
	position: absolute;
	content: '';
	width: 30px;
	height: 3px;
	background: #eb3b9d;
    top: 0;
    bottom: 0;
    margin: auto;
}
.outline-box.is03 p.intro:before {
	transform: rotate(45deg);
    left: calc(50% - 7em);
}
.outline-box.is03 p.intro:after {
	transform: rotate(-45deg);
    right: calc(50% - 7em);
}
@media screen and (min-width: 641px) {
	.outline-box.is03 ol.pc {
		display: flex!important;
		justify-content: space-between;
		margin-top: 25px;
		padding: 0 40px;
	}
}
.outline-box.is03 ol li {
	position: relative;
	width: 248px;
}
.outline-box.is03 ol li:after {
	position: absolute;
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-top: 13px solid transparent;
	border-right: 17px solid transparent;
	border-bottom: 13px solid transparent;
	border-left: 17px solid #ffd9ee;
	top: 50px;
	right: -43px;
}
.outline-box.is03 ol li:last-child::after {
	display: none;
}
.outline-box.is03 ol + p {
	margin-top: 40px;
}
.outline-box.is08 .sns_linkset {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}
.outline-box.is08 .sns_linkset img {
    width: 100px;
    margin-right: 40px;
}
.outline-box.is08 .sns_linkset a:last-child img {
	margin-right: 0;
}
.outline-box.is08 .parent_link {
	margin-top: 120px;
}

/* #banner =====================================================*/
.list {
	width:100%;
	margin:0 auto;
}
.list li{
	font-size:24px;
	line-height:1.6em;
	text-align:left;
	padding-left:1em;
	text-indent:-1em;
}
.outline-box .list {
	box-sizing: border-box;
}
#contents .outline-box .list a {
	text-decoration: none;
}
#banner .section-inner {
	width:900px;
}
#banner p {
	margin-top: 120px;
}
/* #detail =====================================================*/
#detail {
	margin-top: 80px;
	margin-bottom: 80px;
}
#detail p {
	width:380px;
	margin:0 auto;
}
#detail p a {
	display:block;
}
/* #download =====================================================*/
ul.download {
	width: 85%;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 5%;
	margin: 0 auto 40px;
}
#outline .download {
	margin-top:20px;
}
.outline-box.isDL h2{
	width:590px;
	margin:auto;
	text-align: center;
	font-size: 24px;
	color: #b60081;
	line-height: normal;
}
.outline-box.isDL h2 + a {
	display: inline-block;
	width: fit-content;
}
#contents .outline-box.isDL h2 + a img {
	max-width: 192px;
}
.outline-box.isDL ul + h2 + img {
	display: inline-block;
}
/* #notes =====================================================*/
#notes{
	margin-top: 20px;
	padding-bottom: 100px;
}
#notes .list{
	width:fit-content;
	margin:0 auto;
}
#notes .list li{
	font-size:16px;
	line-height:1.3em;
} 
/* parts =====================================================*/
.footblank{
	margin-left: .5rem;
	width: 1.6rem;
	vertical-align: middle;
}
 #js-button img{
 		width: 56px;
 		height: 56px;
 }
a[href^="tel:"]{pointer-events: none;}

@media screen and (min-width: 641px) {
	ul.download {
		width: fit-content;
		margin-bottom: 80px;
	}
	#banner ul.download {
		margin-bottom: 20px;
	}
}

a.topbtn-box img:hover,
a.topbtn-box img:active,
a.topbtn-box:hover,
a.topbtn-box:active {
	opacity: 1;
}
a.topbtn-box:hover .topbtn,
a.topbtn-box:active .topbtn {
	opacity: 0.8;
}
a.topbtn-box {
	position: fixed;
	width: 134px;
	height: 134px;
	right: 40px;
	bottom: 40px;
	z-index: 100;
	opacity: 0;
    pointer-events: none;
    transition: opacity 1s ease;
}
.topbtn-box .topbtn_deco {
	position: absolute;
	width: 94px;
	left: 0;
	right: 0;
	margin: auto;
	top: 18px;
	z-index: 101;
	transform: translateX(0) rotate(0deg);
    transition: transform 0.2s ease-out;
}
@media screen and (max-width: 640px) {
	a.topbtn-box {
		width: 20vw;
		height: 20vw;
		right: 20px;
		bottom: 20px;
	}
	#contents .topbtn-box .topbtn_deco {
		width: 70%;
		top: 12px;
	}
}


@media screen and (max-width: 640px) {
	/* header =====================================================*/
	#header {
		padding-top:17.467vw;
	}
	#header-inner {
		width:100%;
	}

	/* #contents =====================================================*/
	.bgWrap {
		padding-bottom: 60px;
		background-size: 8.5%;
	}
	.white-box {
		border: 5px solid #ffc461;
		padding: 60px 15px;
	}
	.white-box + .white-box {
		margin-top: 60px;
	}
	.section-inner {
		width:calc(100% - 30px);
		margin:0 auto;
	}

	.white-box.is01 {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.white-box.is01 .entry-box {
		text-align: center;
	}
	#contents .white-box.is01 .entry_ttl {
		width: 54.1%;
		margin: auto;
	}
	#contents .white-box.is01 .entry_btn {
		width: 100%;
	}
	.white-box.is01 .note-txt {
		margin-top: 0;
		padding: 0 15px;
	}
	.white-box.is01 .note-txt li {
		text-align: left;
	}
	#contents .white-box.is01 .entry_deco01 {
		width: 27.87%;
		top: -16px;
		left: -10px;
	}
	#contents .white-box.is01 .entry_deco02 {
		width: 11.8%;
		bottom: -10px;
		right: 20px;
	}

	.white-box.is02 {
		padding-top: 40px;
		padding-bottom: 60px;
	}
	#contents .white-box.is02 .chance_ttl {
		width: 100%;
	}
	#contents .white-box.is02 .chance_deco01 {
		width: 27.87%;
		top: -16px;
		left: -10px;
	}
	#contents .white-box.is02 .chance_deco02 {
		width: 15.57%;
		top: 27vw;
		right: 2.5vw;
	}
	.white-box.is02 .chance_ttl + ul {
		margin-top: 10px;
	}
	.white-box.is02 .chance_list.sp {
		padding: 0 10px;
	}
	.white-box.is02 .chance_list.sp li {
		margin-top: 20px;
	}
	.white-box.is02 .parent_link {
		margin-top: 60px;
	}		
	.white-box.is02 .chance_img {
		margin-top: 60px;
	}
	#contents .white-box.is02 .chance_deco03 {
		width: 21.64%;
		bottom: -16px;
		right: 20px;
	}

	#contents .white-box.is03 .outline_deco01 {
		width: 19.34%;
		top: -34px;
		right: -20px;
	}
	.outline-box h3 {
		margin:40px auto 15px;
		padding: 5px 5px;
	}
	.outline-box p,
	.outline-box li {
		font-size:16px;
		line-height: 24px;
	}
	.outline-box .note-txt li {
		font-size: 14px;
		line-height: 20px;
	}
	.outline-box .isIndent {
		padding-left: 1em;
		text-indent: -1em;
		text-align: left;
	}
	.outline-box.is02 p {
		line-height: 32px;
	}
	.outline-box.is02 p span {
		display: inline;
		font-size:30px;
	}
	.outline-box.is03 p.intro {
		margin-top: 30px;
		font-size: 22px;
	}
	.outline-box.is03 ol {
		display: block;
		margin-top: 30px;
		padding: 0 10px;
	}
	.outline-box.is03 ol li {
		width: 100%;
	}
	.outline-box.is03 ol li:after {
		border-top: 8px solid #ffd9ee;
		border-right: 7px solid transparent;
		border-bottom: 8px solid transparent;
		border-left: 7px solid transparent;
		right: 0;
		left: 0;
		margin: auto;
		top: auto;
		bottom: -26px;
	}
	.outline-box.is03 ol li + li {
		margin-top: 30px;
	}
	.outline-box.is03 ol li:last-child::after {
		display: none;
	}
	.outline-box.is03 ol + p {
		margin-top: 30px;
	}
	#contents .outline-box.is08 .sns_linkset img {
		width: 60px;
		margin-right: 30px;
	}
	#contents .outline-box.is08 .sns_linkset a:last-child img {
		margin-right: 0;
	}
	.outline-box.is08 .parent_link {
		margin-top: 60px;
	}

	/* #download =====================================================*/
	.list li {
		font-size:16px;
	}
	#outline .download{
		margin-top:10px;
		margin-bottom: 0;
	}
	.outline-box.isDL h2{
		width:100%;
		margin:25px auto 0;
		font-size: 18px;
	}
	.outline-box.isDL h2 + a {
		display: inline-block;
		width: fit-content;
	}
	#contents .outline-box.isDL h2 + a img {
		max-width: 100px;
	}
	.outline-box.isDL ul + h2 {
		margin-top: 30px;
	}
	/* #banner =====================================================*/
	#banner .section-inner{
		width:calc(100% - 30px);
	}
	#banner p{
		margin-top: 60px;
	}
	#banner ul.download {
		margin-bottom: 0;
	}
	/* #detail =====================================================*/
	#detail{
		margin-top: 40px;
		margin-bottom: 40px;
	}
	#detail p{
		width: 100%;
		max-width:380px;
		margin:0 auto;
	}
	#detail p a{
		display:block;
	}
	/* #notes =====================================================*/
	#notes{
		margin-top: 15px;
		padding-bottom: 60px;
	}
	#notes .list{
		width:fit-content;
		margin:0 auto;
	}
	#notes .list li{
		font-size:14px;
	}
}
