@charset "UTF-8";

@font-face {
	font-family: "Senobi Gothic";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('./../webfonts/Senobi-Gothic-Medium.woff');
}

@font-face {
	font-family: "Senobi Gothic";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('./../webfonts/Senobi-Gothic-Bold.woff');
}

body{
	font-family: 'Noto Sans JP', sans-serif;
	font-feature-settings: "palt";
}

.ff_sg{
	font-family: "Senobi Gothic";
}

@media print, screen and (min-width: 768px){
body{
	min-width: 1250px;
}

main{
	overflow-x: clip;
}

.pc_none{
	display: none;
}

.header2024{
	box-shadow: 6px 6px 9px 0 rgba(0, 0, 0, 0.28);
}

.header2024 .logo{
	width: 243px;
	margin-right: 20px;
}

.header2024 .qr{
	display: block;
	box-sizing: border-box;
	padding: 25px 15px;
	height: 100%;
	background: linear-gradient(to right, #31bbde 0%, #0087c6 100%);
	color: #fff;
	font-size: 18px;
	order: 3;
	word-break: keep-all;
}

.header2024 .btn{
	padding: 25px 45px 25px 25px;
	margin-left: 0;
	order: 4;
}

.header2024 .g-nav{
	margin-right: 15px;
	font-weight: 900;
}

.header2024 .g-nav ul li + li{
	padding-left: 10px;
	margin-left: 10px;
}

.header2024 .g-nav ul .g-nav_hov_wrap:hover{
	opacity: 1;
}

.header2024 .g-nav ul .g-nav_hov_wrap .g-nav_hov01{
	margin-top: 0;
	font-size: 15px;
	white-space: nowrap;
}

.header2024 .g-nav > ul > li > a{
	font-size: 15px;
}

.header2024 .g-nav > ul > .g-nav_hov_wrap > .g-nav_hov02{
	position: absolute;
	top: 0;
	left: 0;
	width: calc(100% + 10px);
	padding: 10px 0;
	background: rgba(255, 255, 255, 0.75);
	box-shadow: 5px 5px 3px rgba(0, 0, 0, 0.3);
	transition: 0.3s ease-in-out;
	font-weight: 400;
	opacity: 0;
	visibility: hidden;
}

.header2024 .g-nav > ul > .g-nav_hov_wrap:hover > .g-nav_hov02{
	top: 100%;
	opacity: 1;
	visibility: visible;
}

.header2024 .g-nav > ul > .g-nav_hov_wrap > .g-nav_hov02 p:not(:last-child){
	margin-bottom: 5px;
}

.header2024 .g-nav > ul > .g-nav_hov_wrap > .g-nav_hov02 p a{
	display: block;
	font-size: 14px;
	text-align: center;
	transition: 0.3s ease-in-out;
}

.header2024 .g-nav > ul > .g-nav_hov_wrap > .g-nav_hov02 p a:hover{
	opacity: 0.6;
}

@media print, screen and (max-width: 1460px){
	.header .g-nav ul li a,
	.header2024 .g-nav ul .g-nav_hov_wrap .g-nav_hov01{
		font-size: 12px;
	}

	.header2024 .g-nav > ul > .g-nav_hov_wrap > .g-nav_hov02 p a{
		font-size: 11px;
	}

	.header2024 .qr,
	.header2024 .btn{
		font-size: 14px;
	}

}



.kv2025{
	position: relative;
	box-sizing: border-box;
	height: 916px;
	padding-top: 130px;
	background: url("./../../images/top_bg01.jpg") center center/cover no-repeat;
	color: #fff;
	font-weight: 500;
	text-align: center;
	line-height: 1;
}

.tri2025{
	position: absolute;
	top: 0;
	right: calc(50% + 170px);
	content: "";
	width: calc(100% - calc(50% - 170px));
	min-width: 788px;
}

.tri2025 img{
	width: 100%;
}

.kv2025_text01{
	position: relative;
	margin-bottom: 40px;
	font-size: 28px;
	font-weight: 700;
}

.kv2025_flex{
	position: relative;
	display: flex;
	justify-content: space-between;
	width: 1250px;
	margin: 0 auto;
}

.kv2025_flex_l{
	text-align: left;
}

.kv2025_title01{
	margin-bottom: 12px;
	font-size: 50px;
	font-weight: 500;
	letter-spacing: -0.14em;
}

.kv2025_title02{
	margin-bottom: 5px;
	font-size: 117px;
	font-weight: 500;
	letter-spacing: -0.14em;
	line-height: 0.95;
}

.kv2025_title03{
	font-size: 66px;
	font-weight: 900;
	line-height: 1.31;
}

.kv2025_title03 span{
	display: inline-block;
	padding: 0 20px 2px;
	background: #fff;
	color: #3e3a39;
	line-height: 1.2;
}

.kv2025_title03 .sp{
	display: none;
}

.kv2025_title03 span:not(:last-child){
	margin-bottom: 7px;
}

.kv2025_flex_r{
	width: 700px;
}

.kv2025_forum_dl{
	display: grid;
	grid-template-columns: 1fr 145px;
	text-align: left;
}

.kv2025_forum_dl dt{
	display: grid;
	grid-template-rows: 18px 1fr;
	box-sizing: border-box;
	height: 138px;
	padding: 13px;
	background: rgba(0, 43, 71, 0.75);
}

.kv2025_forum_dl dt:not(:last-of-type),
.kv2025_forum_dl dd:not(:last-of-type){
	border-bottom: 1px #fff solid;
}

.kv2025_forum_dt01{
	font-size: 18px;
	font-weight: 400;
}

.kv2025_forum_dt02{
	display: flex;
	align-items: center;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.4;
}

.kv2025_forum_dl dd{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
}

.kv2025_forum_dd01{
	color: #fff100;
	font-size: 33px;
}

.kv2025_forum_dd01b{
	font-size: 18.5px;
	line-height: 1.2;
}

.kv2025_forum_dd01b span{
	font-size: 35px;
}

.kv2025_forum_dd02{
	margin-top: 5px;
	font-size: 19px;
}

.kv2025_forum_dd02 a{
	display: inline-block;
	padding: 5px 15px;
	background: #fff;
	color: #000;
	transition: 0.3s ease-in-out;
}

.kv2025_forum_dd02 a:hover{
	background: #000;
	color: #fff;
}

.kv2025_link{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 16px;
	margin-top: 40px;
}

.kv2025_link p{
	width: 240px;
	height: 70px;
	border-radius: 35px;
	background: #fff;
	box-shadow: 7px 7px 5px 0 rgba(0, 0, 0, 0.12);
}

.kv2025_link a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 240px;
	height: 70px;
	border-radius: 35px;
	color: #fff;
	font-size: 26px;
	font-weight: 900;
	transition: 0.3s ease-in-out;
}

.kv2025_link .bg01{
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
}

.kv2025_link .bg02{
	background: linear-gradient(to right, #f18c26 0%, #e9495e 100%);
}

.kv2025_link a:hover{
	transform: translateY(5px);
    box-shadow: 0 0 0 transparent;
	opacity: 0.8;
}

.top_mail{
	display: none;
}



.top2025_section01{
	padding: 50px 0 100px;
	background: #e9eef0;
}

.top2025s01_box{
	display: flex;
	justify-content: flex-end;
	gap: 15px;
	width: 100%;
	max-width: 1550px;
	margin: 0 auto;
}

.top2025s01_box .con_main{
	width: 100%;
	max-width: 990px;
}

.top2025s01_forum{
	display: grid;
	width: 100%;
	gap: 15px;
}

.top2025s01_forum li{
	position: relative;
	padding: 17px 30px 70px 23px;
	background: #fff;
}

.top2025s01_tri{
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 539px;
	height: 348px;
	background: url("./../../images/tri02.svg") center/contain no-repeat;
}

.top2025s01_forum01{
	position: relative;
	margin-bottom: 15px;
	font-size: 19px;
	font-weight: 900;
}

.top2025s01_forum02{
	position: relative;
	display: flex;
	align-items: center;
	height: 62px;
	margin-bottom: 20px;
	font-size: 24px;
	font-weight: 900;
}

.top2025s01_forum02 span br{
	display: none;
}

.top2025s01_forum03{
	position: relative;
	display: flex;
	gap: 20px;
}

.top2025s01_forum03_01{
	position: relative;
	width: 50%;
}

.top2025s01_forum03_01.kaisetsu:after{
	position: absolute;
	top: -13px;
	right: -7px;
	content: "";
	width: 96px;
	height: 96px;
	background: url("./../../images/kaisetsu.svg") center/contain no-repeat;
}

.top2025s01_forum03_01 img{
	vertical-align: bottom;
}

.top2025s01_forum03_02{
	width: 46.1%;
	padding-bottom: 95px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
}

.top2025s01_forum04{
	position: absolute;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 145px;
	height: 138px;
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
	color: #fff;
	font-weight: 400;
}

.top2025s01_forum04 a{
	line-height: 1;
	box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.15);
}

.top2025s01_box .right{
	width: 265px;
	flex-shrink: 0;
}

.right_box_wrap{
	position: sticky;
	top: 100px;
}

.right_box{
	background: #fff;
	font-size: 20px;
}

.right_box.pdd{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 25px 10px 30px;
}

.right_box:not(:last-child){
	margin-bottom: 15px;
}

.right_title{
	padding: 16px;
	background: linear-gradient(to right, rgba(0, 70, 114, 0.18) 0%, rgba(0, 148, 83, 0.18) 100%);
	font-size: 20px;
	font-weight: 400;
	text-align: center;
}

.right_pdf{
	display: grid;
	gap: 20px;
	padding: 15px 15px 15px 10px;
	font-size: 15px;
}

.right_pdf a{
	position: relative;
	padding-left: 30px;
}

.right_pdf a:before{
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: "";
	width: 25px;
	height: 33px;
	background: url("./../../images/right_pdf.svg") center/contain no-repeat;
}

.right_icon{
	margin-bottom: 25px;
	text-align: center;
}

.right_text{
	padding: 0 12px;
	margin-bottom: 25px;
	line-height: 1.45;
	font-weight: 400;
}

.right_link a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 240px;
	height: 70px;
	border-radius: 35px;
	color: #fff;
	font-size: 26px;
	font-weight: 900;
	transition: 0.3s ease-in-out;
	box-shadow: 7px 7px 5px 0 rgba(0, 0, 0, 0.12);
}

.right_link .bg01{
	background: linear-gradient(to right, #efaf25 0%, #f39310 100%);
}

.right_link .bg02{
	background: linear-gradient(to right, #cbde79 0%, #42a736 100%);
}

.right_link a:hover{
	opacity: 0.8;
}

.top2025_section01 .kv2025_link{
	display: none;
}



.top2024_section02{
	padding: 45px 0 45px;
	background: #fff;
}

.top2024_section02:last-child{
	padding-bottom: 0;
}

.top2024_sec02_title{
	font-size: 40px;
	font-weight: 900;
	text-align: center;
}

.top2024_comingsoon{
	margin-top: 100px;
	color: #a8a9a9;
	font-size: 40px;
	font-weight: 400;
	text-align: center;
}

.top2024_faq{
	width: 1000px;
	margin: 40px auto;
	color: #6a2366;
}

.top2024_faq dl{
	padding-bottom: 20px;
	border-bottom: 2px #6a2366 solid;
}

.top2024_faq dl:not(:last-child){
	margin-bottom: 20px;
}

.top2024_faq dt,
.top2024_faq dd{
	display: flex;
}

.top2024_faq dt{
	margin-bottom: 20px;
}

.top2024_faq_icon{
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	width: 46px;
	height: 46px;
	padding-bottom: 7px;
	border-radius: 50%;
	background: #6a2366;
	color: #fff;
	font-size: 25px;
	flex-shrink: 0;
}

.top2024_faq_text{
	margin-left: 8px;
	font-size: 26px;
}

.top2024_sec02_slide{
	width: 1004px;
	padding: 0 10px;
	margin: 25px auto 0;
}

.top2024_sec02_slide .slick-slide{
	height: auto;
}

.top2024_sec02_slide .slick-arrow{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	border-top: 43px transparent solid;
	border-bottom: 43px transparent solid;
	font-size: 0;
}

.top2024_sec02_slide .slick-prev{
	left: -35px;
	border-right: 33px #e9eef0 solid;
}

.top2024_sec02_slide .slick-next{
	right: -35px;
	border-left: 33px #e9eef0 solid;
}

.top2024_sec02_slide > li:not(:first-child){
	display: none;
}

.slide_box{
	display: grid;
	grid-template-columns: 531px 303px;
	gap: 30px;
	padding: 70px 50px;
	border-radius: 22px;
	margin: 0 10px;
	background: #e9eef0;
}

.slide_box_l{
	display: grid;
	grid-template-columns: 68px 1fr;
	grid-template-rows: auto 1fr;
	gap: 20px 10px;
}

.slide_number{
	font-size: 71px;
	font-weight: 400;
	line-height: 0.9;
}

.slide_title{
	font-size: 22px;
	font-weight: 900;
	line-height: 1.54;
}

.slide_text{
	font-size: 15px;
	font-weight: 400;
	line-height: 1.66;
	grid-column: 2 / 3;
}


.top2024_section02_flex{
	display: flex;
	justify-content: center;
	margin-top: 55px;
}

.top2024_section02_flexbox{
	position: relative;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	width: 490px;
	padding: 90px 35px 40px;
	border-radius: 10px;
	background: #fff5e2;
}

.top2024_section02_flexbox:not(:last-child){
	margin-right: 20px;
}

.top2024_section02_flexicon{
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}

.top2024_section02_flexicon img{
	width: 180px;
}

.top2024_section02_flextitle{
	margin-bottom: 25px;
	font-size: 26px;
	font-weight: 700;
	text-align: center;
}

.top2024_section02_flextext{
	margin-bottom: 20px;
	font-size: 20px;
	font-weight: 500;
}

.top2024_section02_flextext #for1_2,
.top2024_section02_flextext #for2_2,
.top2024_section02_flextext .tab1_2,
.top2024_section02_flextext .tab2_2{
	display: none;
}

.top2024_section02_flextext #for1_2:checked + .tab1_2,
.top2024_section02_flextext #for2_2:checked + .tab2_2{
	display: inline;
}

.top2024_section02_flexlink01,
.top2024_section02_flexlink02{
	margin-top: auto;
}

.top2024_section02_flexlink01 a,
.top2024_section02_flexlink02 a{
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 335px;
	height: 72px;
	border-radius: 36px;
	margin: 0 auto;
	box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.12);
	font-size: 26px;
	font-weight: 900;
	transition: 0.3s;
}

.top2024_section02_flexlink01 a:hover,
.top2024_section02_flexlink02 a:hover{
	transform: translateY(5px);
	box-shadow: 0 0 0 transparent;
	opacity: 0.7;
}

.top2024_section02_flexlink01 a{
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
	color: #fff;
}

.top2024_section02_flexlink02 a{
	border: 4px #31badd solid;
	background: #fff;
	color: #3e3a39;
}



.top2024_section02 .history{
	margin-bottom: 85px;
}

.top2024_section02 .history__ttl{
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
}

/* 20240205 追加02 end */



.pc_app2024{
	position: absolute;
	left: 50%;
	bottom: 16px;
	transform: translateX(500px);
	z-index: 4;
}
@media print, screen and (max-width: 1520px){
	.pc_app2024{
		left: auto;
		right: 0;
		transform: none;
	}
}
.pc_app2024 a{
	position: relative;
	bottom: 0;
	transition: 0.3s;
}

.pc_app2024 a:hover{
	bottom: -5px;
}

.sp_app2024{
	display: none;
}




/* フォーラム内容詳細ページ */
.forum_section00{
	position: relative;
	padding: 130px 0 60px;
	background: #e9eef0;
}

.fs00_box{
	position: relative;
	width: 1024px;
	margin: 0 auto;
}

.fs00_title01{
	padding: 10px;
	margin-bottom: 15px;
	background: #fff;
	font-size: 31px;
	font-weight: 900;
	text-align: center;
}

.fs00_title01_01 .fs{
	font-size: 23px;
}
.fs00_title01_01 span{
	font-size: 20px;
}
.fs00_title01 .pc_none{
	display: none;
}

.fs00_movie img{
	vertical-align: bottom;
}

.fs00_movie_main{
	margin-bottom: 18px;
}
.youtube_movie01 iframe{
	width:1024px;
	height:576px;
}

.fs00_movie_list{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px 27px;
}

.fs00_movie_listimg{
	margin-bottom: 5px;
}

.fs00_movie_listname{
	font-size: 20px;
	font-weight: 400;
}



.forum_detail_box{
	position: relative;
	padding: 15px 27px 40px;
	background: #fff;
}

.forum_detail_box:before{
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 538px;
	height: 503px;
	background: url("./../../images/tri03.svg") top left/contain no-repeat;
}

.forum_detail_title01{
	position: relative;
	margin-bottom: 15px;
	font-size: 26px;
	font-weight: 900;
	text-align: center;
}

.forum_detail_title01_01{
	margin-bottom: 5px;
}

.forum_detail_title01_01 span{
	position: relative;
}

.forum_detail_title01_01 span:before,
.forum_detail_title01_01 span:after{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	content: "";
	width: 170px;
	height: 1px;
	background: #3e3a39;
}

.forum_detail_title01_01 span:before{
	left: calc(100% + 30px);
}

.forum_detail_title01_01 span:after{
	right: calc(100% + 30px);
}

.forum_detail_title01_03{
	font-size: 31px;
}

.forum_detail_flex01{
	position: relative;
	display: flex;
	gap: 18px;
	margin-bottom: 25px;
}

.forum_detail_flex01.one{
	justify-content: center;
}

.forum_detail_flex01l{

}

.forum_detail_flex01r{
	width: 345px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.66;
	flex-shrink: 0;
}

.one .forum_detail_flex01r{
	width: 820px;
}

.forum_detail_member{
	padding: 0 50px;
}

.forum_detail_member li:not(:last-child){
	padding-bottom: 20px;
	border-bottom: 2px #0387c6 solid;
	margin-bottom: 20px;
}

.forum_detail_member01{
	display: flex;
	align-items: flex-end;
	gap: 13px;
}

.forum_detail_member01_01{
	width: 325px;
}

.forum_detail_member01_02{
	color: #0387c6;
	font-weight: 900;
}

.forum_detail_member02{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	gap: 13px;
}

.forum_detail_member02.one{
	justify-content: center;
}

.forum_detail_member02_01{
	width: 100%;
	text-align: center;
}

.forum_detail_member_cp{
	font-size: 24px;
	line-height: 1.25;
}

.forum_detail_member_cp .pc_none{
	display: none;
}

.forum_detail_member_name{
	font-size: 20px;
	line-height: 1.3;
}

.forum_detail_member_name span{
	font-size: 30px;
	margin-right: 0.5em;
}

.forum_detail_member02{
	margin-top: 15px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.66;
}

.forum_detail_grid01{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-top: 25px;
}

.forum_detail_grid01 h3{
	font-size: 31px;
	font-weight: 900;
	text-align: center;
	grid-column: 1 / 3;
}
/* フォーラム内容詳細ページ end */
.koen_doc01{
	margin:0 0 45px 0;
}
.koen_doc02{
	width:488px;
	margin:25px auto 0 auto;
}
.koen_doc02 img{
	width:488px;
	margin:0 auto;
	border: 1px #707070 solid;
}






}/* pc end */





@media screen and (max-width: 768px){
.header2024 .logo{
	margin-left: 15px;
}

.header2024 .qr{
	display: block;
	box-sizing: border-box;
    padding: 15px 10px;
	border-radius: 6px;
    margin-left: auto;
	background: linear-gradient(to right, #31bbde 0%, #0087c6 100%);
	color: #fff;
	font-size: 7px;
	word-break: keep-all;
}

.header2024 .btn{
	font-size: 7px;
	margin-left: 10px;
	/*ここから下は削除*/
	display: block;
	box-sizing: border-box;
    padding: 15px 10px;
	border-radius: 6px;
    margin-left: 5px;
	/*ここから上は削除*/
}

.g-nav_hov01{
	display: none;
}

.header .g-nav ul li a{
	padding: 15px;
}



.kv2025{
	box-sizing: border-box;
	padding: 2vw 0 4vw;
	margin-top: 52px;
	background: url("./../../images/top_bg01sp.jpg") center top/contain no-repeat;
	background-color: #e9eef0;
	color: #fff;
	font-weight: 500;
	text-align: center;
	line-height: 1;
}

.tri2025{
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 79vw;
}

.tri2025 img{
	width: 100%;
}

.kv2025_text01{
	position: relative;
	padding: 0 14vw;
	margin-bottom: 2vw;
	font-size: 3.73vw;
	font-weight: 400;
	line-height: 1.3;
	text-align: left;
}

.kv2025_flex{
	position: relative;
	padding: 0 3.33vw;
}

.kv2025_flex_l{
	margin-bottom: 2vw;
}

.kv2025_title01{
	margin-bottom: 2vw;
	font-size: 6.8vw;
	font-weight: 500;
	letter-spacing: -0.14em;
}

.kv2025_title02{
	margin-bottom: 2vw;
	font-size: 16vw;
	font-weight: 500;
	letter-spacing: -0.14em;
	line-height: 0.95;
}

.kv2025_title03{
	position: relative;
	left: -3.33vw;
	font-size: 5.8vw;
	font-weight: 900;
	line-height: 1.31;
	text-align: left;
}

.kv2025_title03 .pc{
	display: none;
}

.kv2025_title03 span{
	display: inline-block;
	padding: 0 2vw 1vw;
	background: #fff;
	color: #3e3a39;
	line-height: 1.2;
}

.kv2025_title03 span:not(:last-child){
	margin-bottom: 0.7vw;
}

.kv2025_forum_dl{
	display: grid;
	grid-template-columns: 1fr 19.6vw;
	text-align: left;
}

.kv2025_forum_dl dt{
	display: grid;
	grid-template-rows: 3.33vw 1fr;
	box-sizing: border-box;
	height: 18.26vw;
	padding: 0.7vw;
	background: rgba(0, 43, 71, 0.75);
}

.kv2025_forum_dl dt:not(:last-of-type),
.kv2025_forum_dl dd:not(:last-of-type){
	border-bottom: 1px #fff solid;
}

.kv2025_forum_dt01{
	font-size: 3.33vw;
	font-weight: 400;
}

.kv2025_forum_dt02{
	display: flex;
	align-items: center;
	font-size: 2.8vw;
	font-weight: 900;
	line-height: 1.4;
}

.kv2025_forum_dt02 span{
	font-size: 3vw;
	letter-spacing: -0.02em;
}

.kv2025_forum_dl dd{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
}

.kv2025_forum_dd01{
	margin-bottom: 2vw;
	color: #fff100;
	font-size: 4.4vw;
}

.kv2025_forum_dd01b{
	font-size: 2.66vw;
	line-height: 1.2;
}

.kv2025_forum_dd01b span{
	font-size: 4.53vw;
	line-height: 1;
}

.kv2025_forum_dd02{
	margin-top: 1vw;
	font-size: 3.06vw;
}

.kv2025_forum_dd02 a{
	display: inline-block;
	padding: 0.5vw 3vw;
	background: #fff;
	color: #000;
	transition: 0.3s ease-in-out;
}

.kv2025_forum_dd02 a:hover{
	background: #000;
	color: #fff;
}

.kv2025_link{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10vw;
	margin-top: 3.73vw;
}

.kv2025_link p{
	width: 32vw;
	height: 9.33vw;
	border-radius: 4.66vw;
	background: #fff;
	box-shadow: 7px 7px 5px 0 rgba(0, 0, 0, 0.12);
}

.kv2025_link a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 32vw;
	height: 9.33vw;
	border-radius: 4.66vw;
	color: #fff;
	font-size: 3.73vw;
	font-weight: 900;
	transition: 0.3s ease-in-out;
}

.kv2025_link .bg01{
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
}

.kv2025_link .bg02{
	background: linear-gradient(to right, #f18c26 0%, #e9495e 100%);
}

.kv2025_link a:hover{
	transform: translateY(5px);
    box-shadow: 0 0 0 transparent;
	opacity: 0.8;
}

.top_mail{
	position: relative;
	padding: 3vw;
	border-radius: 3vw;
	margin: 4vw 4.666vw 0;
	background: #fff;
}

.top_mail_l{
	display: flex;
	align-items: center;
	margin-bottom: 1.6vw;
}

.top_mail_l01{
	margin-right: 2vw;
}

.top_mail_l01 img{
	width: 15.066vw;
	vertical-align: bottom;
}

.top_mail_l02{
	font-size: 3.2vw;
	font-weight: 700;
	line-height: 1.3;
	color: #231815;
	text-align: left;
}

.top_mail_r a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 38vw;
	height: 9vw;
	border-radius: 5vw;
	margin: 0 auto;
	background: linear-gradient(to right, #f0b025 0%, #f49410 100%);
	color: #fff;
	font-size: 4vw;
	font-weight: 900;
	box-shadow: 1.333vw 1.333vw 0.933vw rgba(0, 0, 0, 0.12);
	transition: 0.3s;
}
.top_mail_r a:hover{
	box-shadow: 0 0 0 transparent;
	opacity: 0.8;
	transform: translateY(1.333vw);
}


.top2025_section01{
	background: #fff;
}

.con_main{

}

.top2025s01_forum li{
	position: relative;
	padding: 2.66vw 6.66vw 10.4vw;
	background: #fff;
}

.top2025s01_tri{
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 54.26vw;
	height: 89.33vw;
	background: url("./../../images/tri02sp.svg") top left/contain no-repeat;
}

.top2025s01_forum01{
	position: relative;
	margin-bottom: 1.33vw;
	font-size: 3.73vw;
	font-weight: 900;
	text-align: center;
}

.top2025s01_forum02{
	position: relative;
	margin-bottom: 3.73vw;
	font-size: 5.33vw;
	font-weight: 900;
	text-align: center;
}

.top2025s01_forum02 span{
	display: block;
	font-size: 4vw;
	line-height: 1.3;
}

.top2025s01_forum03{
	position: relative;
}

.top2025s01_forum03_01{
	position: relative;
	padding: 0 6vw;
	margin-bottom: 2vw;
}

.top2025s01_forum03_01.kaisetsu:after{
	position: absolute;
	top: -1vw;
	right: -1vw;
	content: "";
	width: 13.6vw;
	height: 13.6vw;
	background: url("./../../images/kaisetsu.svg") center/contain no-repeat;
}

.top2025s01_forum03_01 img{
	vertical-align: bottom;
}

.top2025s01_forum03_02{
	font-size: 3.46vw;
	font-weight: 400;
	line-height: 1.6;
}

.top2025s01_forum04{
	position: absolute;
	left: 0;
	bottom: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 3vw;
	width: 100%;
	height: 8.53vw;
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
	color: #fff;
	font-weight: 400;
}

.top2025s01_forum04 a{
	line-height: 1;
	box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.15);
}

.top2025s01_forum04 .kv2025_forum_dd01{
	margin-bottom: 0vw;
}

.top2025s01_forum04 .kv2025_forum_dd01b br{
	display: none;
}

.top2025s01_box .right{
	display: none;
}




.top2024_section02{
	padding: 19.6vw 3.2vw 7.066vw;
	background: #fff;
}

.top2024_section02:last-child{
	padding-bottom: 0;
}

.top2024_sec02_title{
	font-size: 4.133vw;
	font-weight: 900;
	text-align: center;
}

.top2024_comingsoon{
	margin-top: 12vw;
	color: #a8a9a9;
	font-size: 5.333vw;
	font-weight: 400;
	text-align: center;
}

.top2024_faq{
	margin: 6.666vw auto 0;
	color: #6a2366;
}

.top2024_faq dl{
	padding-bottom: 4vw;
	border-bottom: 2px #6a2366 solid;
}

.top2024_faq dl:not(:last-child){
	margin-bottom: 4vw;
}

.top2024_faq dt,
.top2024_faq dd{
	display: flex;
}

.top2024_faq dt{
	margin-bottom: 4vw;
}

.top2024_faq_icon{
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	width: 6vw;
	height: 6vw;
	padding-bottom: 1vw;
	border-radius: 50%;
	background: #6a2366;
	color: #fff;
	font-size: 4vw;
	flex-shrink: 0;
}

.top2024_faq_text{
	margin: -0.2em 0 0 3vw;
	font-size: 4.133vw;
}

.top2024_sec02_slide{
	padding: 0 3vw;
	margin: 2.66vw auto 0;
}

.top2024_sec02_slide .slick-slide{
	height: auto;
}

.top2024_sec02_slide .slick-arrow{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	border-top: 4vw transparent solid;
	border-bottom: 4vw transparent solid;
	font-size: 0;
}

.top2024_sec02_slide .slick-prev{
	left: -1vw;
	border-right: 3.2vw #b1b1b2 solid;
}

.top2024_sec02_slide .slick-next{
	right: -1vw;
	border-left: 3.2vw #b1b1b2 solid;
}

.top2024_sec02_slide > li:not(:first-child){
	display: none;
}

.slide_box{
	display: grid;
	gap: 3vw;
	padding: 4vw;
	border-radius: 4vw;
	margin: 0 2vw;
	background: #e9eef0;
}

.slide_box_l{
	display: grid;
	grid-template-columns: 9vw 1fr;
	grid-template-rows: auto 1fr;
	gap: 3vw 2vw;
}

.slide_number{
	font-size: 9vw;
	font-weight: 400;
	line-height: 0.9;
}

.slide_title{
	font-size: 3.73vw;
	font-weight: 900;
	line-height: 1.54;
}

.slide_text{
	font-size: 3.46vw;
	font-weight: 400;
	line-height: 1.66;
	grid-column: 2 / 3;
}

.slide_box_r img{
	width: 50%;
	margin-left: auto;
}


.top2024_section02_flex{
	padding: 0 8vw;
	margin-top: 8.933vw;
}

.top2024_section02_flexbox{
	position: relative;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	padding: 14.666vw 5.333vw 5.866vw;
	border-radius: 5vw;
	background: #fff5e2;
}

.top2024_section02_flexbox:not(:last-child){
	margin-bottom: 8vw;
}

.top2024_section02_flexicon{
	position: absolute;
	top: -6vw;
	left: 50%;
	transform: translateX(-50%);
}

.top2024_section02_flexicon img{
	width: 24vw;
}

.top2024_section02_flextitle{
	margin-bottom: 4.666vw;
	font-size: 4.266vw;
	font-weight: 700;
	text-align: center;
}

.top2024_section02_flextext{
	margin-bottom: 3.333vw;
	font-size: 3.466vw;
	font-weight: 500;
}

.top2024_section02_flextext #for1_2,
.top2024_section02_flextext #for2_2,
.top2024_section02_flextext .tab1_2,
.top2024_section02_flextext .tab2_2{
	display: none;
}

.top2024_section02_flextext #for1_2:checked + .tab1_2,
.top2024_section02_flextext #for2_2:checked + .tab2_2{
	display: inline;
}

.top2024_section02_flexlink01,
.top2024_section02_flexlink02{
	margin-top: auto;
}

.top2024_section02_flexlink01 a,
.top2024_section02_flexlink02 a{
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 51.066vw;
	height: 11.066vw;
	border-radius: 5.5033vw;
	margin: 0 auto;
	box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.12);
	font-size: 4vw;
	font-weight: 900;
	transition: 0.3s;
}

.top2024_section02_flexlink01 a:hover,
.top2024_section02_flexlink02 a:hover{
	transform: translateY(5px);
	box-shadow: 0 0 0 transparent;
	opacity: 0.7;
}

.top2024_section02_flexlink01 a{
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
	color: #fff;
}

.top2024_section02_flexlink02 a{
	border: 2px #31badd solid;
	background: #fff;
	color: #3e3a39;
}


.top2024_section02 .history{
	margin-bottom: 18.666vw;
}

.top2024_section02 .history__ttl{
	position: relative;
	top: -4vw;
	width: 80vw;
	padding: 3vw;
	border-radius: 2vw;
	margin: 0 auto;
	background: linear-gradient(to right, #31badd 0%, #0086c5 100%);
	font-size: 4.166vw;
}

.top2024_section02 .history__ttl span{
	display: inline;
}

.top2024_section02 .history__ttl + p {
	padding: 0 3vw 3vw;
	font-size: 3.466vw;
	text-align: justify;
}

.top2024_section02 .history__wrap{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3vw;
	padding: 0 3vw 3vw;
}

.top2024_section02 .other-link__img{
	text-align: center;
}

.top2024_section02 .other-link__img img{
	width: 35vw;
	vertical-align: bottom;
}




.top2024_pt{
	bottom: 60px;
}

.pc_app2024{
	display: none;
}

.sp_app2024{
	position: sticky;
	left: 0;
	bottom: 0;
	width: 100%;
}

.sp_app2024 img{
	width: 100%;
	vertical-align: bottom;
}




/* フォーラム内容詳細ページ */
.forum_section00{
	position: relative;
	padding: 2vw 0 4vw;
    margin-top: 52px;
	background: #e9eef0;
}

.fs00_box{
	position: relative;
}

.fs00_title01{
	padding: 2.66vw 2vw;
	margin: 0 4.8vw 2vw;
	background: #fff;
	font-size: 3.73vw;
	font-weight: 900;
	text-align: center;
}

.fs00_title01 .sp_none{
	display: none;
}

.fs00_title01_01 span{
	display: block;
	font-weight: 400;
}

.fs00_movie img{
	vertical-align: bottom;
}

.fs00_movie_main{
	margin: 0 4.8vw 2vw;
}

.youtube_movie01 iframe{
	width:100%;
	height:15em;
}

.fs00_movie_list{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	margin: 0 1.86vw;
	gap: 2.4vw;
}

.fs00_movie_listimg{
	margin-bottom: 1vw;
}

.fs00_movie_listname{
	font-size: 2.66vw;
	font-weight: 400;
}



.forum_detail_box{
	position: relative;
	padding: 1.6vw 0 5.06vw;
	background: #fff;
}

.forum_detail_box:before{
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 54.26vw;
	height: 89.33vw;
	background: url("./../../images/tri03sp.svg") top left/contain no-repeat;
}

.forum_detail_title01{
	position: relative;
	margin-bottom: 1.6vw;
	font-weight: 900;
	text-align: center;
}

.forum_detail_title01_01{
	margin-bottom: 1.6vw;
	font-size: 3.2vw;
}

.forum_detail_title01_01 span{
	position: relative;
}

.forum_detail_title01_01 span:before,
.forum_detail_title01_01 span:after{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	content: "";
	width: 22.66vw;
	height: 1px;
	background: #3e3a39;
}

.forum_detail_title01_01 span:before{
	left: calc(100% + 4.26vw);
}

.forum_detail_title01_01 span:after{
	right: calc(100% + 4.26vw);
}

.forum_detail_title01_02{
	font-size: 3.73vw;
}

.forum_detail_title01_03{
	font-size: 5.4vw;
}

.forum_detail_flex01{
	position: relative;
	display: grid;
}

.forum_detail_flex01.one{
	justify-content: center;
}

.forum_detail_flex01l img{
	width: 100%;
}

.forum_detail_flex01r{
	padding: 3vw;
	font-size: 3.46vw;
	font-weight: 400;
	line-height: 1.5;
	flex-shrink: 0;
}

.forum_detail_member{
	padding: 0 1.86vw;
}

.forum_detail_member li{
	padding: 0 2.66vw;
}

.forum_detail_member li:not(:last-child){
	padding-bottom: 2.66vw;
	border-bottom: 2px #0387c6 solid;
	margin-bottom: 2.66vw;
}

.forum_detail_member01{
	display: flex;
	align-items: flex-end;
	gap: 1.73vw;
}

.forum_detail_member01_01{
	width: 43.2vw;
	flex-shrink: 0;
}

.forum_detail_member01_02{
	color: #0387c6;
	font-weight: 900;
}

.forum_detail_member02{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	gap: 1.73vw;
	padding: 0 10vw;
}

.forum_detail_member02.one{
	justify-content: center;
}

.forum_detail_member02.one img{
	width: 60vw;
}

.forum_detail_member02_01{
	width: 100%;
	text-align: center;
}

.forum_detail_member_cp{
	font-size: 3.2vw;
	line-height: 1.25;
}

.forum_detail_member_name{
	font-size: 2.66vw;
	line-height: 1.3;
}

.forum_detail_member_name span{
	font-size: 4vw;
	margin-right: 0.5em;
}

.forum_detail_member02{
	margin-top: 2vw;
	font-size: 3.46vw;
	font-weight: 400;
	line-height: 1.5;
}

.forum_detail_grid01{
	margin-top: 5.33vw;
	text-align: center;
}

.forum_detail_grid01 h3{
	font-size: 3.73vw;
	font-weight: 900;
}

.forum_detail_grid01 img{
	display: inline-block;
	width: 57.33vw;
	margin-top: 2.8vw;
}
/* フォーラム内容詳細ページ end */

.koen_doc01{
	margin:45px 0 0 0;
}
.koen_doc02{
	width:96%;
	margin:1.5em auto 0 auto;
}
.koen_doc02 img{
	width:100%;
	margin:0 auto;
	border: 1px #707070 solid;
}



}/* sp end */