@charset "utf-8";
/* CSS Document */
/* ============================================================ */
/* グローバルナビ等 共通
/* ============================================================ */
section {
    margin: 0;
}
.wrap02 {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}
.wrap03 {
    max-width: 660px;
    width: 100%;
    margin: 0 auto;
}
#event main {
	background: url(/kids/event/img/oth_bg.webp) repeat center;
	position: relative;
	background-size: 100% auto;
}

#event nav {
    background-color: #000000;
    border-bottom: 5px solid #000000;
}
#event nav ul.menu > li a {
	color: #fff;
}
#event nav ul.menu li > ul li a {
	color: #333;
}
nav ul.menu li li a {
    border-right: 3px solid #d0d1db;
    border-left: 3px solid #d0d1db;
}
nav ul.menu li li:nth-of-type(1) a {
    border-top: 3px solid #d0d1db;
}
nav ul.menu li li:last-child a {
    border-bottom: 3px solid #d0d1db;
}
nav ul.menu li li a:hover {
  background: #d0d1db;
}

/* event_btnL */
.event_btnL {
	width: 100%;
    max-width: 530px;
    margin: 40px auto 90px;
    text-align: center;
}
.event_btnL p.btn_txt {
    position: relative;
    margin-bottom: 0.5rem;
    display: inline-block;
    font-size: clamp(1.6rem, 2.2vw, 2rem);
    font-weight: bold;
}
.event_btnL p.btn_txt::before {
    left: -20px;
    border-left: 1px solid #333;
    transform: rotate(-30deg);
}
.event_btnL p.btn_txt::after {
    right: -20px;
    border-right: 1px solid #333;
    transform: rotate(30deg);
}
.event_btnL p.btn_txt::before,
.event_btnL p.btn_txt::after {
    content: "";
    width: 20px;
    height: 20px;
    margin-top: -1.4rem;
    display: block;
    position: absolute;
    top: 50%;
}
.event_btnL a {
    width: 100%;
    display: inline-block;
    padding: 15px;
    background: linear-gradient(to right, #9B4AA1 0%, #B14EB8 70%, #EE8BF5 100%);
    font-weight: bold;
    font-size: clamp(2rem, 2.2vw, 2.6rem);
    color: #fff;
    position: relative;
    border-radius: 50px;
    text-align: center;
	box-shadow: 0px 3px 15px rgb(0 0 0 / 16%);
}
.event_btnL a::after {
    content: "";
    display: inline-block;
    width: 27px;
    height: 22px;
    background: url(/kids/assets/img/icon_link.svg) no-repeat right;
    position: absolute;
    right: 8%;
    top: 35%;
}
/* event_btn */
.event_btn {
	width: 100%;
    max-width: 330px;
    margin: 40px auto 20px;
    text-align: center;
}
.event_btn p.btn_txt {
    position: relative;
    margin-bottom: 0.5rem;
    display: inline-block;
	font-weight: bold;
}
.event_btn p.btn_txt::before {
    left: -20px;
    border-left: 1px solid #333;
    transform: rotate(-30deg);
}
.event_btn p.btn_txt::after {
    right: -20px;
    border-right: 1px solid #333;
    transform: rotate(30deg);
}
.event_btn p.btn_txt::before,
.event_btn p.btn_txt::after {
    content: "";
    width: 20px;
    height: 20px;
    margin-top: -1.4rem;
    display: block;
    position: absolute;
    top: 50%;
}
.event_btn a {
    width: 100%;
    display: inline-block;
    padding: 10px;
    background: linear-gradient(to right, #9B4AA1 0%, #B14EB8 70%, #EE8BF5 100%);
    font-weight: bold;
    font-size: clamp(1.4rem, 2.2vw, 1.8rem);
    color: #fff;
    position: relative;
    border-radius: 50px;
    text-align: center;
    box-shadow: 0px 3px 15px rgb(0 0 0 / 16%);
}
.event_btn a::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 18px;
    background: url(/kids/assets/img/icon_link.svg) no-repeat right;
    position: absolute;
    right: 8%;
    top: 30%;
}

@media screen and (max-width: 769px) {
#event nav {
    background-color: inherit;
    border-bottom: inherit;
}
.wrap02 {
	padding: 0 1.5rem;
}
.wrap03 {
	padding: 0 1.5rem;
}
.event_btnL {
    margin: 20px auto 50px;
}
.event_btn {
    margin: 20px auto 0px;
}
p {
    font-size: 1.5rem;
}
.text_m {
    font-size: 1.2rem;
    line-height: 1.6;
    display: block;
}
}

/* ============================================================ */
/* #event #main
/* ============================================================ */
#event #main {
	/*background: url(/kids/event/img/bg.webp) no-repeat center;*/
	position: relative;
	padding: 1rem 0;
	background-image: linear-gradient(#462649 46%, #000000);
}
#event #main::before {
	content: "";
	background: url(/kids/event/img/bg_top.webp) no-repeat center;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	aspect-ratio: 1920 / 230;
	z-index: 0
}
#event #main figure {
	position: relative;
}

@media screen and (max-width: 769px) {
#event #main {
	padding: 8rem 0 0 0;
}
#event #main::before {
    background: url(/kids/event/img/bg_top_sp.webp) no-repeat center;
    padding: 7rem 0 0 0;
    margin: 7rem 0 0 0;
    aspect-ratio: 390 / 50;
    background-size: 100% auto;
}
}

/* ============================================================ */
/* #event #teacher
/* ============================================================ */
#event #teacher {
	position: relative;
	padding: 5rem 0 0 0;
}
#event #teacher::before {
	content: "";
	background: url(/kids/event/img/bg_btm.webp) no-repeat center;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	aspect-ratio: 1920 / 230;
	z-index: 0
}

#event #teacher .teacher_txt {
	color: #EF1E1E;
	font-weight: bold;
    font-size: clamp(1.6rem, 2.2vw, 2.2rem);
    line-height: 1.6;
	text-align: center;
    margin: 2rem 0 0 0;
}
#event #teacher figure {
    position: relative;
}
@media screen and (max-width: 769px) {
#event #teacher::before {
    content: "";
    background: url(/kids/event/img/bg_btm_sp.webp) no-repeat center;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    aspect-ratio: 390 / 120;
    z-index: 0;
}
#event #teacher .teacher_txt {
    margin: 1rem 0 0 0;
}
}

/* ============================================================ */
/* #event #about
/* ============================================================ */
#event #about h2 {
	background: #4A4A4A;
	color: #fff;
	padding: 1.5rem;
	margin: 6rem auto 4rem;
	position: relative;
}
#event #about h2::after {
    border-bottom: none;
}
#event #about h2.about_tit01 > p::before{
    position: relative;
}

#event #about h2.about_tit01 > p,
#event #about h2.about_tit02 > p,
#event #about h2.about_tit03 > p {
	font-size: clamp(1.8rem, 2.2vw, 2.4rem);
    display: inline-block;
	font-weight: bold;
}

#event #about h2.about_tit01 > p::before,
#event #about h2.about_tit02 > p::before,
#event #about h2.about_tit03 > p::before {
    position: absolute;
    content: "";
    vertical-align: top;
}
#event #about h2.about_tit01 > p::before {
    background: url(/kids/event/img/icon01.webp) no-repeat center;
    background-size: 80%;
    width: 60px;
    height: 60px;
    bottom: -1rem;
    right: -7rem;
}
#event #about h2.about_tit02 > p::before {
    background: url(/kids/event/img/icon02.webp) no-repeat center;
    background-size: 80%;
    width: 40px;
    height: 80px;
    bottom: -2rem;
    left: -7rem;
}
#event #about h2.about_tit03 > p::before {
    background: url(/kids/event/img/icon03.webp) no-repeat center;
    background-size: 60%;
    width: 60px;
    height: 60px;
    bottom: -1rem;
    right: -7rem;
}

#event #about dl.about_detail {
    display: flex;
    flex-wrap: wrap;
	margin-bottom: 2rem;
}
#event #about .about_detail dt {
	background: #6B6698;
	color: #fff;
	text-align: center;
	font-weight: bold;
	width: 130px;
	border-radius: 5rem;
	margin:0 0 1rem;
    font-size: clamp(1.4rem, 2.2vw, 1.6rem);
	line-height: 2;
}
#event #about .about_detail dd {
	font-weight: bold;
    width: calc(100% - 150px);
    margin: 0 0 1rem 2rem;
    font-size: clamp(1.6rem, 2.2vw, 2rem);
}

#event #about .about_flow li {
	background: #FFECDC;
	border-radius: 1rem;
	margin-bottom: 3rem;
}
#event #about .about_flow li h3 {
	font-size: clamp(1.6rem, 2.2vw, 2rem);
	background: #6B6698;
	color: #fff;
	font-weight: bold;
	border-radius: 1rem 1rem 0 0 ;
	padding: 1rem;
	text-align: center;
}
#event #about .about_flow li .about_flow_inbox {
	padding: 2rem;
}

#event #about .about_flow li .about_flow_inbox > figure {
	max-width: 600px;
	width:100%;
	margin: 0 auto;
}

#event #about .relief{
	background: #fff;
	border-radius: 1rem;
	padding: 2rem;
	font-weight: bold;
	margin-bottom: 5rem;
	text-align: center;
	position: relative;
}
#event #about .relief::before{
    position: absolute;
    content: "";
    background: url(/kids/event/img/relief_icon03.webp) no-repeat center;
    background-size: 80%;
    width: 110px;
    height: 155px;
    bottom: -3rem;
    left: -5rem;
}
#event #about .relief::after{
    position: absolute;
    content: "";
    background: url(/kids/event/img/relief_icon04.webp) no-repeat center;
    background-size: 80%;
    width: 55px;
    height: 65px;
    top: -3rem;
    right: 3rem;
}

#event #about .relief .relief_tit{
	font-weight: bold;
	margin-bottom: 1.5rem;
    font-size: clamp(1.6rem, 2.2vw, 2rem);
    display: inline-block;
	position: relative;
}
#event #about .relief .relief_tit::before{
    position: absolute;
    content: "";
    background: url(/kids/event/img/relief_icon01.webp) no-repeat center;
    background-size: 80%;
    width: 40px;
    height: 40px;
    bottom: -0.3rem;
    left: -5rem;
}
#event #about .relief .relief_tit::after{
    position: absolute;
    content: "";
    background: url(/kids/event/img/relief_icon02.webp) no-repeat center;
    background-size: 60%;
    width: 40px;
    height: 40px;
    bottom: -0.3rem;
    right: -5rem;
}
#event #about .relief .relief_tit::after{
}

#event #about .relief .relief_txt span{
	color: #FB720A;
	font-weight: bold;
}

@media screen and (max-width: 769px) {
#event #about h2 {
	margin:4rem auto 2rem;
}
/*#event #about dl.about_detail {
    display: block;
}*/
#event #about .about_detail dt,
#event #about .about_detail dd {
    width: 100%;
    margin: 1rem;
}
#event #about .relief{
    padding: 2rem 1rem;
}
#event #about .relief .relief_txt{
    padding: 0 0 0 5rem;
    text-align: left;
}
#event #about .relief::after {
    background-size: 70%;
    right: 0rem;
}
#event #about .relief::before {
    background-size: 50%;
    bottom: -4rem;
    left: -3rem;
}
#event #about h2.about_tit01 > p::before{
    background-size: 60%;
    bottom: -1.5rem;
    right: -6rem;
}
#event #about h2.about_tit02 > p::before {
    background-size: 60%;
    bottom: -3rem;
    left: -4rem;
}
#event #about h2.about_tit03 > p::before {
    background-size: 50%;
    bottom: -1.5rem;
    right: -6rem;
}
}

/* ============================================================ */
/* #event footer
/* ============================================================ */
#event footer{
	text-align: center;
}
#event footer .logo_area{
	background: #000000;
	padding: 2rem;
}
#event footer .logo_area img{
	max-width: 290px;
}
	
#event footer .logo_area p{
    font-weight: bold;
    font-size: clamp(1.6rem, 2.2vw, 2rem);
}
#event footer .copy{
	background: #fff;
	font-size: 1.3rem;
	padding: 2rem;
	color: #333;
}
@media screen and (max-width: 769px) {
#event footer .logo_area img {
    width: 70%;
}
#event footer{
    margin-bottom: 4rem;
}	
#event footer .copy p{
	font-size: 1.2rem;
}
}