html{
	scroll-behavior: smooth
}
body{margin:0 auto;color:#000000;font-size:20px;font-weight:500;
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
a{
	transition:opacity 0.3s;
	font-size:20px;
	text-decoration: none;
}
a:hover{
	opacity:0.8;
}
.height_100vh{
	height:100vh;position:relative;
}

/*メニュー*/
.ribbon_1{
	background: url(../images/menu_bg01.png) bottom center no-repeat;
	background-size: cover;
	z-index:6;
}
.ribbon_2{
	background: url(../images/menu_bg02.png) bottom center no-repeat;
	background-size: cover;
	z-index:5;
}
.ribbon_3{
	background: url(../images/menu_bg03.png) bottom center no-repeat;
	background-size: cover;
	z-index:4;
}
.ribbon{
	display: inline-block;
	position: absolute;
	height: 111px;
	width:160px;
	text-align: center;
	font-size: 18px;
	color: #FFF;
	box-sizing: border-box;
	top: -6px;
	left:0;
	transition:height 0.5s;
}
.ribbon:hover{
	height: 150px;
}
.menu_div:hover .ribbon:after{
	border-color:transparent  transparent  transparent transparent ;
}
.menu_div:hover .text_ac{
	font-size:0;
}
.text_ac{
	z-index:5;
	position:absolute;left:52.5%;top:80%;transform:translate(-50%, -50%) rotate(90deg);
	color:#fff;
	font-size:17px;font-weight:bold;
	transition:0.3s;	
}
.top_menu{
	position:relative;
	z-index:2;
	width:100%;
	max-width:100%;
	display:flex;
	justify-content:space-between;
	margin:0;
}
.top_menu_2{
	flex:0.47;/*5.4*/
	position:relative;
	z-index:2;
	width:100%;
	max-width:100%;
	display:flex;
	justify-content:space-between;
	margin-right:96px;
	margin-top:6px
}
.menu_logo{
	margin-top:55px;margin-left:48px;width:100%;
}
.menu_div{
	width:170px;height:109.77px;position:relative;
}
.menu_img{
	width:176.88px;z-index:5;position:absolute;right:0;top:0;
}
.menu_text{
	color:#fff;font-size:17px;font-weight:bold;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);z-index:12;width:100%;text-align:center;
}
.menu_text_a{
	color:#fff;font-size:17px;font-weight:bold;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);z-index:12;width:100%;text-align:center;
	display:none;
}
.menu_mokuteki{
	color:#fff;font-size:17px;font-weight:bold;text-align:center;
}

/*フォーム*/
.search {
	display:flex;
	width:60%;
	margin:0 auto;
	justify-content:center;
	border-radius: 6px;
	box-shadow: 0 0 20px #0006;
}
.search input[type=text] {
	width:100%;
	height:64px;
	max-width:708px;
	font-size: 18px;
	font-weight:bold;
	padding: 0 3%;
	box-sizing:border-box;
	color: #000;
	border: none;
	outline: none;
	border-radius: 6px;
}
.search button[type=submit] {
	width:100%;
	max-width:246px;
	padding: 10px 20px;
	margin: 6px;
	font-size: 18px;
	font-weight:bold;
	color: #FFF;
	background: #00A0E9;
	border: none;
	border-radius: 6px;
	cursor: pointer;
}
.mitukeru_open{
	position:relative;
	cursor:pointer;
	display:flex;
	font-size:18px;
	font-weight:bold;
	align-items:center;
	justify-content:space-between;
	margin-right:20px;
	margin-left:10px;
}
.mitukeru_close{
	position:relative;
	display:none;
	cursor:pointer;
	font-size:18px;
	font-weight:bold;
	align-items:center;
	justify-content:space-between;
	margin-right:20px;
	margin-left:10px;
}
.mitukeru_itiran{
	overflow:hidden;
	transition-duration:1s;
	background:#fff;border:black 4px solid;
	border-radius:30px;
	transform: translateY(-45px);
	opacity:0;
	z-index:1;
	padding:0px 20px 10px 20px;
}
.mitukeru_itiran a{
	color:#000;	
}
.search_list {
	display:flex;
	justify-content:space-between;
	margin:0 auto;
	width:60%;
	max-width:953px;
}

.search_list_div{
	position:relative;box-sizing:border-box;padding:5px 0 5px 20px;font-size:21px;background:#000;color:#fff;border-radius:30px;z-index:1;
}
.search_list_div > span {
	justify-content:center;
}
.search_list_div > span img {
	margin-right: 10px;
}

/*フォーム下（修正前：388px）*/
.formsita_space{
	height:100px;
}

/*フッター上*/
.footer_obi{
	height:26px;width:100%;background:#AA569D;
}
/*フッター*/
.footer_1_flex{
	border-right:#AA569D 25.8px solid;
	border-left:#AA569D 25.8px solid;
	background: #E7D3E3;
}
.footer_1_flex > div{
	display:flex;justify-content:space-between;max-width:1452px;margin:0 auto;
	padding: 140px 3%;
	font-size:21px;font-weight:bold;
}
.footer_line1 {
	max-width:1px;width:100%;border-left:1px #707070 solid;margin:0 10px;
}
.footer_1_flex a{
	color:#000;
}
.footer_2_flex_1{
	display:flex;align-items:center;height:72px;max-width:1600px;margin:0 auto;padding:0 20px;box-sizing:border-box;
}
.footer_2_flex_2{
	display:flex;justify-content:space-between;max-width:100%;width:100%;
}
.footer_2_flex_2 a{
	display:flex;justify-content:space-between;max-width:686px;width:100%;color:#fff;font-size:15px;font-weight:bold;
}
/*タイトル*/
.title_main{
	text-align:center;font-size:55px;font-weight:bold;
}
.title_sub{
	text-align:center;font-size:23px;font-weight:bold;color: #94252A;
}

/*その他*/
.q_img{
	vertical-align:middle;width:30px;margin:-5px 0 0 20px;	
}
.top_tab{
	display:none;
}
.top_sm_large{
	display:none;	
}
.top_sm{
	display:none;
}
.top_pc_flex{
	display:flex;
}
.top_tab_flex{
	display:none;
}
.top_sm_flex{
	display:none;
}
.res_font_vw{
	font-size:1.7vw;
}
.res_font_vw_2{
	font-size:0.9vw;
}

@media screen and (min-width:1921px) {
	.res_font_vw{
	font-size:30px;
}
	.res_font_vw_2{
	font-size:20px;
	}
}
@media screen and (max-width:1366px) {
/*メニュー1366*/
.ribbon{
	height:90px;
	width:150px;
	text-align: center;
	font-size: 18px;
	color: #FFF;
	box-sizing: border-box;
	border-radius:0 0 9px 9px;
}
.ribbon:hover{
	height: 130px;
	width:150px;
}

.top_menu_2{
	margin-right:66px;
	margin-top:4px
}
.menu_logo{
	margin-top:25px;margin-left:28px;
}
.menu_div{
	width:120px;height:77.77px;position:relative;
}
.menu_img{
	width:126.88px;z-index:5;position:absolute;right:0;top:0;
}
.menu_text{
	font-size:15px;
}
.menu_text_a{
	font-size:15px;
}
.menu_mokuteki{
	font-size:15px;
}
/*フォーム1366*/
.search {
	width:90%;
}
.search_list {
	width:90%;
}

/*フォーム下1366*/
.top_pic_b_1{
	width:157.68px;
}
.top_pic_b_2{
	width:288.23px;	
}
/*フッター上1366*/
.footer_obi{
	height:14px;width:100%;background:#AA569D;
}
	
}
@media screen and (max-width:1024px) {
	
/*メニュー1024*/
.top_menu_2{
	margin-right:36px;
	margin-top:3px
}
.menu_logo{
	margin-top:25px;margin-left:18px;width:130px;
}
.menu_div{
	width:90px;height:59.77px;position:relative;
}
.menu_img{
	width:96.88px;z-index:5;position:absolute;right:0;top:0;
}
.menu_text{
	font-size:12px;
}
.menu_text_a{
	font-size:12px;
}

/*フォーム 1024*/
.search button[type=submit] {
	max-width:182px;
}
.mitukeru_open{
	font-size:15px;
}
.mitukeru_close{
	font-size:15px;
}
	
/*フォーム下1024（修正前：300px）*/
.top_pic_b_1{
	width:107.68px;
}
.top_pic_b_2{
	width:192.23px;	
}

.formsita_space{
	height:150px;	
}
	
/*フッター上1024*/
.footer_obi{
	height:14px;width:100%;background:#AA569D;
}

/*フッター1024*/
.footer_1_flex{
	border-right:#AA569D 14px solid;
	border-left:#AA569D 14px solid;
}
.footer_1_flex > div{
	display:block;
	max-width:500px;
}
.footer_line1 {
	display: none;
}
	
/*その他1024*/
.q_img{
	vertical-align:middle;width:25px;margin:-5px 0 0 20px;	
}
.height_100vh{
	height:500px;
}
.res_height_20{
	display:block;height:20px;		
}
.res_height_50{
	display:block;height:50px;		
}
.res_margin_auto{
	margin:0 auto;
}
.top_pc{
	display:none;
}
.top_tab{
	display:block;
}
.top_pc_flex{
	display:none;
}
.top_tab_flex{
	display:flex;
}
.res_font_vw{
	font-size:3.4vw;
}
.res_font_vw_2{
	font-size:1.7vw;
}	
}

@media screen and (max-width:784px) {
/*フォーム784*/
.search input[type=text] {
	font-size: 19px;
}
.search button[type=submit] {
	max-width:132px;
}
.search_list {
	display:block;
}
/*フッター784*/
.footer_1_flex{
	font-size:17px;
}
	
/*その他783*/
.top_pc{
	display:none;
}
.top_tab{
	display:none;
}
.top_sm_large{
	display:block;	
}

}

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

}

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

/*メニュー430*/
.menu_logo{
	display:none;
}
/*フォーム430*/
.search input[type=text] {
	font-size: 16px;
}
.search button[type=submit] {
	font-size: 21px;
	max-width:87px;
	padding: 10px 5px;
}
/*イベント430*/

.event_flex_2{
	display:block;
}


/*その他430*/
.height_100vh{
	height:400px;
}
.top_pc{
	display:none;
}
.top_tab{
	display:none;
}
.top_sm_large{
	display:none;	
}
.top_sm{
	display:block;
}
.top_pc_flex{
	display:none;
}
.top_tab_flex{
	display:none;
}
.top_sm_flex{
	display:flex;
}
.res_font_vw{
	font-size:6vw;
}
.res_font_vw_2{
	font-size:3vw;
}	
/*タイトル430*/

.title_main{
	text-align:center;font-size:33px;font-weight:bold;
}
.title_sub{
	text-align:center;font-size:13px;font-weight:bold;
}
/*フッター上430*/
.footer_obi{
	height:7px;width:100%;background:#AA569D;
}
	
/*フッター430*/
.footer_2_flex_1{
	display:block;height:auto;padding:30px 0;margin:0 auto;
	width:90%;
}
.footer_2_flex_2{
	display:block;
}

/*その他430*/

}

/*front-page（トップページ）*/
.top_bg{
	background-image: url("../images/bg_1.png");
	background-repeat:no-repeat;
	background-size:cover;
	border-right:#AA569D 25.8px solid;
	box-sizing:border-box;
	width:100%;
	overflow:hidden;
}
.top_bg_2{
	background-image: url("../images/bg_2_2_b.png");
	background-repeat:no-repeat;
	background-size:cover;
	box-sizing:border-box;
	width:100%;
	overflow:hidden;
}
.top_bg_3{
	background-image: url("../images/bg_3_3.png");
	background-repeat:no-repeat;
	background-size:cover;
	border-right:#AA569D 25.8px solid;
	box-sizing:border-box;
	width:100%;
	/* overflow:hidden; */
	position: relative;
}
.top_bg_3::before{
	content: "";
	max-width: 387px;
	width: 20%;
	height: 466px;
	background: url(../images/purpose_img.webp) center top no-repeat;
	background-size: contain;
	position: absolute;
	top: -200px;
	left: 15%;
}
.post_event {
	margin: 0;
	padding: 100px 0;
	background: url(../images/yellow_back.png) center center repeat;
}
.post_event > div {
	max-width: 1200px;
	width: 96%;
	margin: 0 auto;
	padding: 0 150px 0 230px;
	background-image: url(../images/post_event-img01.png),url(../images/post_event-img02.png);
	background-position: left top, right top;
	background-repeat: no-repeat;
	background-size: contain;
	text-align: center;
	box-sizing: border-box;
}
.post_event > div > div {
	font-size: 55px;
	font-weight: bold;
	color: #EA609E;
	text-shadow:
	4px 4px 2px #fff, -4px -4px 2px #fff,
	-4px 4px 2px #fff, 4px -4px 2px #fff,
	4px 0px 2px #fff, -4px -0px 2px #fff,
	0px 4px 2px #fff, 0px -4px 2px #fff;
}
.post_event > div > p {
	margin: 0;
	font-size: 24px;
	font-weight: bold;
}
.post_event > div > a {
	display: inline-block;
	margin-top: 30px;
	padding: 15px 40px;
	font-size: 24px;
	font-weight: bold;
	color: #FFF;
	background: #EA609E;
	border-radius: 34px;
}
@media screen and (max-width:1024px) {
.top_bg{
	background-image: url("../images/bg_1_tab_2.png");
	border-right:#AA569D 11px solid;
}
.top_bg_2{
	background-image: url("../images/bg_2_tab_2_b.png");
}
.top_bg_3{
	background-image: url("../images/bg_3_tab_2.png");
	border-right:#AA569D 11px solid;
}
.top_bg_3::before{
	height: 250px;
	top: -100px;
	left: 10%;
}
.post_event {
	padding: 60px 0;
}
.post_event > div {
	padding: 0 10px;
	background: none;
}
.post_event > div > div {
	font-size: 42px;
}
.post_event > div > p {
	font-size: 20px;
}
.post_event > div > a {
	margin-top: 20px;
	padding: 10px 30px;
	font-size: 20px;
	border-radius: 28px;
}
}
@media screen and (max-width:430px) {
.top_bg{
	background-image: url("../images/bg_1_sm_2.png");
	border-right:#AA569D 5px solid;
}
.top_bg_2{
	background-image: url("../images/bg_2_sm_2.png");
}
.top_bg_3{
	background-image: url("../images/bg_3_sm_3.png");
	border-right:#AA569D 5px solid;
}
.post_event > div > div {
	font-size: 33px;
}
}

/*イベント窓*/
#top_event{
	position:absolute;top:45%;left:80px;margin:70px auto;width:90%;max-width:235px;z-index:5;
}
.top_today_back {
	max-width:235px;
	width:100%;
	margin-right: 10px;
	margin-bottom:40px;
	position:relative;
	background:#EA609E;
	border: #EA609E 1px solid;
	outline: #B09C53 1px solid;
	outline-offset: -4px;
	box-shadow: 5px 5px 5px #0005;
}
#top_event_doniti,
.top_event_doniti{
	max-width:314.99px;
	width:100%;
	position:relative;
	margin-bottom:40px;
	position:relative;
	background:#0068B7;
	border: #0068B7 1px solid;
	outline: #B09C53 1px solid;
	outline-offset: -4px;
	box-shadow: 5px 5px 5px #0005;
}
.event_headline {
	font-size:17px;
	font-weight:bold;
	text-align:center;
	margin:20px 0 10px;
	color:#fff;
}
.event_none {
	font-size:15px;
	font-weight:bold;
	color:#fff;
}
.event_count_link {
	display:inline-block;
	font-size:28px;
	font-weight:bold;
	color:#fff;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
	line-height: 1;
	max-width:159px;
	width:95%;
	padding:0 20px;
	box-sizing:border-box;
}
.event_count_link span {
	font-size: 20px;
}
.event_count_link_holiday {
	display:inline-block;
	font-size:18px;
	font-weight:bold;
	color:#fff;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
	line-height: 1;
	/* max-width:159px; */
	width:95%;
	padding:0 20px;
	box-sizing:border-box;
}
.event_count_link_holiday2 {
	display:inline-block;
	font-size:18px;
	font-weight:bold;
	color:#fff;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
	line-height: 1.4;
	/* max-width:159px; */
	width:100%;
	padding:0;
	box-sizing:border-box;
}
.event_img {
	position: relative;
}
.event_img img {
	max-width: 201px;
	width: 18%;
	position: absolute;
	bottom: 5px;
	right: 10px;
	z-index: 0;
}
@media screen and (max-height:950px) {
#top_event{
	top:25%;
}	
}
@media screen and (max-height:660px) {
#top_event{
	top:15%;
}
}
@media screen and (max-width:430px) {
	.top_today_back {
		max-width:none;
		width:90%;
		margin:0 auto 40px;
		padding:5px;
		display:flex;
		align-items:center;
		justify-content:center;
		box-sizing:border-box;
	}
	.top_event_doniti {
		display:flex;
		align-items:center;
		justify-content:center;
		margin:0 auto;
		max-width:none;
		width:90%;
		padding:5px;
		box-sizing:border-box;
	}
	.event_headline {
		font-size:14px;
		font-weight:bold;
		text-align:center;
		margin:0;
		color:#fff;
	}
}
