@charset "UTF-8";
/* CSS Document */
html {
  font-size: 100%;
}
body{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	background-image: url(../img/bg_body.jpg);
	background-repeat: repeat;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	line-height: 1.8;
}
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.t_center {
	text-align: center;
}
.t_bold {
	font-weight: 700;
}
.t_underline {
	text-decoration: underline;
}

.spNone{
	display: block;
}
.pcNone {
	display: none;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
    .spNone{
		display: none;
	}
	.pcNone {
		display: block;
	}
  }

/*ヘッダーロゴ*/
img#logo {
	position: fixed;
	top: 0;
	left: 0;
	width: 30%;
	height: auto;
	z-index: 10;
	filter: drop-shadow(3px 3px 2px rgba(0,0,0,0.4));
}
#logo.mini {
    width: 15% !important;
	-webkit-animation-name: logo_anime;
    -webkit-animation-duration:1s;
    animation-name:logo_anime;
    animation-duration:1s;
}
@-webkit-keyframes logo_anime{
    from{
        width: 30%;
    }
    to {
        width: 15% !important;
    }
}
@keyframes logo_anime{
    from{
        width: 30%;
    }
    to{
        width: 15% !important;
    }
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	img#logo {
		width: 65%;
		height: auto;
		filter: drop-shadow(3px 3px 2px rgba(0,0,0,0.4));
	}
	#logo.mini {
    	width: 45% !important;
		filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.9));
		-webkit-animation-name: logo_anime;
    	-webkit-animation-duration:1s;
    	animation-name:logo_anime;
    	animation-duration:1s;
		}
		@-webkit-keyframes logo_anime{
    	from{
        	width: 65%;
    	}
    	to {
        	width: 45% !important;
    	}
	}
		@keyframes logo_anime{
    	from{
        	width: 65%;
    	}
    	to{
        	width: 45% !important;
    	}	
	}
 }
/*　//ヘッダーロゴ*/

/*ページトップ*/
.page1st{
	width: 100vw;
	height: auto;
  	min-height: 100vh;
	overflow: visible;
}
ul.page1st_cont {
	width: 100%;
	height: auto;
}
ul.page1st_cont li.page1st_cont_left{
	width: 59%;
	height: 100vh;
	display: block;
	float: left;
	background-size: cover;
	background-position: center;
	background-image: url(../img/top_ill.jpg);
}
ul.page1st_cont li.page1st_cont_right{
	width: 40%;
	/*height: 100vh;*/
	height: auto;
	float: left;
}
img.fes_date {
	/*margin-top: 10%;*/
	margin-top: 5%;
	margin-left: 10%;
	width: 80%;
	height: auto;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
    ul.page1st_cont li.page1st_cont_left{
		width: 100%;
		height: 100vh;
		display: block;
		float: none;
		background-size: cover;
		background-position: center;
		background-image: url(../img/top_ill.jpg);
	}
	ul.page1st_cont li.page1st_cont_right{
		width: 100%;
		height: auto;
		float: none;
		position: relative;
	}
	img.fes_logo {
		width: 70%;
		height: auto;
		filter: drop-shadow(3px 3px 2px rgba(0,0,0,0.4));
	}
	img.fes_date_sp {
		width: 60%;
		height: auto;	
		position: absolute;
		right: 0;
		bottom: 0;
		padding: 0 10px 10px 0;
		filter: drop-shadow(2px 2px 1px rgba(0,0,0,0.1));
	}
  }
.fes_copy {
	/*margin: 10% auto 0 auto;*/
	margin: 5% auto 0 auto;
	width: 80%;
	height: auto;
	border-left: 1px solid #514d4d;
	border-right: 1px solid #514d4d;
	line-height: 1.6em;
}
.fes_copy p{
	padding: 0 1em;
}
p.fes_copy_head {
	font-size: 100%;
	color: #514d4d;
	text-align: center;
}
p.fes_copy_body {
	font-size: 100%;
	color: #eab95a;
	margin: 1em 0;
}
p.fes_copy_btm {
	font-size: 90%;
	font-weight: 700;
	color: #514d4d;
	text-align: left;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	p.fes_copy_head {
		text-align: left;
	}
	p.fes_copy_btm {
		text-align: left;
	}
}

/*SNS*/
ul.sns_btn {
	width: 80%;
	display: flex;
	justify-content: space-around;
	margin: 20px auto 20px auto;
}
/*FBずれ修正*/
.fb_iframe_widget > span {
  vertical-align: baseline !important;
}

@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  ul.sns_btn {
	width: 80%;
	display: block;
	margin: 30px auto 0px auto;
	}
  ul.sns_btn li{
	width: 100%;
	display: block;
	margin: 10px auto 0px auto;
	}
 }

/*ハッシュタグ*/
p.hush_tag {
	/*position: absolute;
	bottom: 0;
	right: 0;*/
	width: 80%;
	margin: 0 auto;
	background: #434444;
	text-align: center;
	color: #FFF;
	font-size: 120%;
	font-weight: 700;
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  p.hush_tag {
	/*position:relative;*/
	width: 100%;
	margin: 0 auto;
	background: #434444;
	text-align: center;
	color: #FFF;
	font-size: 90%;
	font-weight: 700;
	}
}
/*　//ハッシュタグ*/


/*バナー関係*/
.banners {
	clear: both;
	width: 90%;
	margin: 6em auto;
	padding-top: 20px;
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  .banners {
	padding-top: 0em;
	margin: 0em auto 3em auto;
}
 }

/*募金*/
ul.btn_bokin {
	width: 80%;
	display: flex;
	justify-content: space-around;
	margin: 0px auto 40px auto;
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  ul.btn_bokin {
	width: 90%;
	display: block;
	margin: 50px auto 30px auto;
	}
  ul.btn_bokin li{
	width: 100%;
	display: block;
	margin: 20px auto;
	}
 }
.square_btn{
    display: inline-block;
    padding: 0.5em 1em;
    text-decoration: none;
    background: #f7f7f7;
    border-left: solid 6px #eab95a;/*左線*/
    color: #514E4D;/*文字色*/
    font-weight: bold;
	font-size: 150%;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
}
.square_btn:active {
    box-shadow: inset 0 0 2px rgba(128, 128, 128, 0.1);
    transform: translateY(2px);
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  .square_btn{
	font-size: 90%;
}
 }
/*走れ小池!*/
.modaal-container { width: 80%; height: 100%; }
.runkoike {
	width: 80%;
	margin: 0px auto;
	border: 1px dashed ;
}
.runkoike a{
	display:block;
	width: 100%;
	color: black;
	text-decoration: none;
}
.runkoike img{
	width: 100%;
}
h4.runkoike_title {
	font-weight: 700;
	font-size: 80%;
	text-align: center;
	margin: 0 1em 1em 1em; 
	padding: 0
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  h4.runkoike_title {
	text-align: center;
	}
}

/* //バナー関係*/


/* //ページトップ */


/*2ndページ*/
.page2nd {
	width: 100%;
	background-size:contain;
	background-position: center;
	background-image: url(../img/bg_second.jpg);
}
.page2nd_inside {
	width: 95%;
	margin: 20px auto;
	border: 1px solid black;
}

ul.fes_cont {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-content: flex-start;
}
ul.fes_cont li.fes_cont_inside{
	width: 30%;
	margin-bottom: 10px;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	ul.fes_cont {
		width: 90%;
		display:block;
		margin: 0 auto;
	}
	ul.fes_cont li.fes_cont_inside{
		width: 100%;
		margin-bottom: 10px;
	}
}



h3.fes_cont_title {
	font-size: 120%;
	font-weight: 700;
	text-align: center;
    margin:2em 0 1em 0;
    position: relative;
    padding: 0.5em 1.5em;
    border-top: solid 2px black;
    border-bottom: solid 2px black;
}
h3.fes_cont_title:before, h3.fes_cont_title:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
h3.fes_cont_title:before {left: 10px;}
h3.fes_cont_title:after {right: 10px;}


.fes_cont_detail {
	width: 96%;
	/*min-height: 30em;*/
	margin: 0 auto;
	background: #CD9B5B;
	border-radius: 4px;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	.fes_cont_detail {
		min-height:inherit;
	}
}
ul.fes_cont_detail_list {
	width: 98%;
	margin: 0px auto;
	padding: 10px 6px;
}
ul.fes_cont_detail_list li{
	width: 100%;
}
h4.fes_cont_title_sub {
	color: #514d4d;
	font-weight: 700;
	margin: 0;
	padding: 0;
}
h4.fes_cont_title_sub:before {
	content: "\f111";
	font-family:FontAwesome;
	margin-right: 0.3em;
}

/*p.fes_cont_tex {
	width: 90%;
	color: #fff;
	margin: 0px auto;
	margin: 20px auto;
	padding: 10px;
}*/
p.fes_cont_tex_a {
	width: 90%;
	color: #fff;
	margin: 0px auto 20px auto;
	padding: 0px;
	line-height: 1.6;
	text-align: justify;
}
p.fes_cont_tex_a a{
	color:#FFFFFF;
}
p.fes_cont_tex_b {
	width: 90%;
	color: #fff;
	margin: 20px auto 20px auto;
	padding: 10px;
	line-height: 1.6;
	text-align: justify;
}
p.fes_cont_tex_b a{
	color:#FFFFFF;
}
p.fes_cont_tex_c {
	width: 90%;
	color: #fff;
	margin: 20px auto;
	padding: 10px;
	line-height: 1.6;
	text-align: justify;
}
p.fes_cont_tex_c a{
	color:#FFFFFF;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	/*p.fes_cont_tex {
	width: 90%;
	padding: 10px;
	word-break: break-all;
	}*/
	p.fes_cont_tex_a .fes_cont_tex_b .fes_cont_tex_c {
	width: 90%;
	padding: 10px;
	word-break: break-all;
	}
}

/*ニューアイコン*/
.newcomer {
position: relative;
color: black;
/*background: #d0ecff;*/
background: #E15D3E;
line-height: 1.4;
padding: 0.25em 0.5em;
margin: 3em 0 0.5em;
border-radius: 0 5px 5px 5px;
}
.newcomer:after {/*タブ*/
  position: absolute;
  font-family: FontAwesome;
  content: '\f00c Check-new';
  /*background: #2196F3;*/
  background: #514D4C;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 5px 5px 0 0;
  padding: 3px 7px 1px;
  font-size: 0.7em;
  line-height: 1;
  letter-spacing: 0.05em
  }
/* //ニューアイコン*/


/*YouTube*/
.fes_cont_detail_inside {
	width: 85%;
	margin: 1em auto;
	padding: 1em 0;
}
.yt_tex01 {
	color: #fff;
	line-height: 1.6em;
}
.yt_tex02 {
	font-size: 100%;
	font-weight: 700;
	color: #514d4d;
	line-height: 1.4em;
	margin: 1em 0 0.5em 0;
}
.yt_tex02 span{
	font-size: 90%;
}
.fa-youtube-play {
	color: #FFF
}
.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
/* //YouTube*/


/*プロフィール*/
.profile_flame {
	width: 80%;
	margin: 0 auto;
}
.profile_pix_pc {
	width: 40%;
	float: left;
}
.profile_pix_pc img{
	width: 100%;
}
.profile_pix_pc span{
	font-size: 90%;
}
p.profile_tex {
	width: 50%;
	float: right;
	font-size: 100%;
	text-align:justify;
	margin-bottom: 1em;
}
p.profile_tex a{
	color: #483C04;
}

.profile_flame_2 {
	width: 80%;
	margin: 0 auto;
}
.profile_pix_both {
	width: 100%;
}
.profile_pix_both img{
	width: 100%;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	.profile_pix_sp {
		width: 100%;
	}
	.profile_pix_sp img{
		width: 100%;
	}
	.profile_pix_sp span{
		font-size: 90%;
	}
	p.profile_tex {
		width: 100%;
		float: none;
	}

	.profile_flame_2 {
		width: 100%;
		margin: 0 auto;
	}
}
/* //プロフィール*/

/*ブースマップ*/
.boothmap {
	width: 100%;
	height: auto;
}
.boothmap img{
	width: 100%;
	height: auto;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	.boothmap {
	width: 85%;
	margin: 0 auto;
	}
}
/* //ブースマップ*/


/*募集中*/
.fa-stack {
  color: #E0564C;
  font-size: 1.2em;  /* ← アイコン全体の大きさをここで変更できる */
}
.fa-stack-1x {
  /* 中のテキストのバランスは ↓ を好みで調整 */
  font-size: 0.6em;
  margin-top: 0px;
	color: white;
	transform: rotate(15deg);
}
/* //募集中*/


/*ドネーション&マップ*/
ul.fes_askmap {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-content: flex-start;
	margin: 100px 0;
}
ul.fes_askmap li{
	width: 48%;
	margin-bottom: 10px;
	background: rgba(255,255,255,0.8);
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	ul.fes_askmap {
		width: 90%;
		display:block;
		margin: 0 auto;
	}
	ul.fes_askmap li{
		width: 100%;
		margin-bottom: 10px;
	}
}

h3.fes_askmap_title {
	width: 100%;
	font-size: 130%;
	font-weight: 700;
	line-height: 1.6em;
	letter-spacing: -0.01em;
	box-sizing: border-box;
	padding: 0.5em 1em;
	border-top: 2px solid #CD9B5B;
	border-bottom: 2px solid #CD9B5B;
	margin-bottom: 10px;
}

ul.fes_donate_way {
	width: 80%;
	list-style:decimal;
	margin-left: 10%;
	list-style-position: outside;
	list-style-type: disc;
}
ul.fes_donate_way li{
	width: 100%;
	word-break:break-all;
	margin-bottom: 1em;
	background: none;
}
ul.fes_donate_way li a{
	color:#814D0B;
}
.fes_askmap_tex {
	width: 90%;
	/*margin: 0 auto 10px auto;*/
	margin: 0 auto 1.5em auto;
	/*word-break:break-all;*/
}
.fes_askmap_tex span{
	font-weight: 700;
}
.fes_askmap_tex a{
	color:#814D0B;
}

p.fes_askmap_flag {
	width: 65%;
	float: left;
	margin-left: 5%;
}
img.qr_flag {
	width: 20%;
	float: left;
	margin-left: 5%;
	padding-bottom: 5%;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/

	p.fes_askmap_flag {
		width: 90%;
		float: none;
		margin-top: 3em;
	}
	img.qr_flag {
		width: 50%;
		display: block;
		float: none;
		padding-bottom:1em;
		margin: 0 auto;
	}
}

/*マップ*/
p.map_tex {
	margin-left: 2em;
}
.gmap_out {
	padding: 1em;
	box-sizing: border-box;
}
.googlemap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.googlemap iframe,
.googlemap object,
.googlemap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/*　//マップ*/


/*ダウンロード*/
.download {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 2em 0;
}
.flyerdowinload {
	/*width: 50%;*/
	width: 45%;
	/*margin: 2em auto;*/
	border: 1px dotted black;
	padding: 2em;
	box-sizing: border-box;
}
.flyerdowinload:nth-child(2n+1) {
	margin-left: 2%;
}
.flyerdowinload:last-child {
	margin-top: 5%;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/

	.flyerdowinload {
		/*width: 90%;*/
		/*margin: 2em auto;*/
		border: 1px dotted black;
		padding: 1em;
		box-sizing: border-box;
	}
}
/*　//ダウンロード*/

/* //ドネーション&マップ*/

.page2nd_inside_btm {
	width: 100%;
	background: rgba(255,255,255,0.8);
}
.page2nd_inside_btm p{
	font-size: 90%;
	text-align: center;
	padding: 1em 0;
}
.page2nd_inside_btm p a{
	color: #CD9B5B;
}
.page2nd_inside_btm p span{
	color: #CD9B5B;
	font-weight: 700;
}




/*当日注意事項*/
.attention {
	width: 80%;
	margin: 0 auto;
	padding-top: 30px;
	padding-bottom: 30px;
}


h3.attention_title {
	font-size: 90%;
	font-weight: 700;
	margin-left: 2em;
	margin-bottom: .6em;
	text-align: center;
}
@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/

	h3.attention_title {
	text-align: left;
		margin-left: 5em;
	}
}
ul.attention_list {
	width: 80%;
	list-style:decimal;
	margin-left: 10%;
	list-style-position: outside;
	list-style-type: disc;
}
ul.attention_list li{
	width: 100%;
	font-size: 80%;
	/*word-break:break-all;*/
	margin-bottom: 0.5em;
	background: none;
	line-height: 1.4em;
}

/* //当日注意事項*/

/* //2ndページ */


/*フッター*/
footer {
	width: 100%;
	height: 50px;
	background: #E61E58;
}
.foot_inside {
	padding-top: 20px;
	margin: 0 auto;
	width: 100px;
	height: auto;
}

img.foot_logo {
	width: 100%;
}
/* //フッター*/


/***　おしゃれテーブル2　Chromeカラー ***/
 
.timetable {
	width: 95%;
	height: 70vh;
	margin: 0 auto;
    overflow: scroll;
	table-layout: fixed;
	webkit-overflow-scrolling: touch;
}
.dragscroll {
	 cursor : -webkit-grab;
    cursor : -moz-grab;
    cursor : -o-grab;
    cursor : grab;
}
.dragscroll:active {
    cursor : -webkit-grabbing;
    cursor : -moz-grabbing;
    cursor : -o-grabbing;
    cursor : grabbing;
}


@media screen and (max-width: 498px) { 
    /*　画面サイズ 499pxから適用　*/
	.timetable {
	width: 85%;
	margin: 0 auto;
	}
}

.fa-square {
	color: white;
}
.fa-stack_in {
	color: black;
	font-size: 70%;
	font-weight: 700;
	transform:none
}

.osare2-table {
 /*width:100%;*/
/*min-width:100%;*/
/* table-layout: fixed;*/
 border: none !important;
 border-collapse: separate;
 border-spacing: 7px 0px;
}

	
.osare2-table tfoot td {
 border-radius: 0 0 10px 10px;
}


.osare2-table th {
 border: none !important;
 border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	min-width: 5em;
	text-align: center;
	line-height: 0em;
	position: static;
	position: -webkit-sticky;
	left:0;
	z-index: 1;
}
.osare2-table thead {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 2;
}
.osare2-table th.blank {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 3;
	border-radius: 0;
	background: #FFFEFE;
	width: 5em;
	display: block;
	border: 1px solid red;
}


.osare2-table tbody td {
 border: none !important;
 background-color:#FFFCE9 !important;
 border-bottom: solid 2px #E4B756 !important;
	min-width: 15em;
	line-height: 1.4em;
}
 
/* ヘッダー */
.osare2-table thead th {
 font-weight: bold;
}
 
 
/* ボディ項目・フッター項目 */
.osare2-table tbody th,
.osare2-table tfoot th {
 background:#FFF;
 font-weight: bold;
 border-bottom: solid 2px #E4B756 !important;
 line-height:4.5em;
}
 
 
 
/* ボディデータ・フッターデータ */
.osare2-table tbody td,
.osare2-table tfoot td {
 text-align:center;
	padding: 1em;
}
 
/* ヘッダー行　１列ごとの色変え */
	.osare2-table thead th {
		color: white;
		padding: 1em;
	}
.osare2-table thead th:nth-child(1)  {
 background:#FFF;
}
 
.osare2-table thead th:nth-child(2)  {
 background: #1DA462;
}
.osare2-table thead th:nth-child(3)  {
 background: #E4306D;
}
.osare2-table thead th:nth-child(4)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(5)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(6)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(7)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(8)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(9)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(10)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(11)  {
 background: #ED5503;
}
.osare2-table thead th:nth-child(12)  {
 background: #ED5503;
}

/* 最終行のボーダーをなくす */
.osare2-table tbody tr:last-child th,
.osare2-table tbody tr:last-child td,
.osare2-table tfoot tr:last-child th{
 border-bottom:none !important;
}

/* スマホ調整 */
@media (max-width: 767px) {
    .osare2-table thead th,
    .osare2-table tbody th {
            padding: 0.5em;
    }
    .osare2-table tfoot td {
    padding:0;
    font-size:0.9em;
    }
/*.osare2-table tfoot td:nth-child(2) {
     font-size:1em;
    }*/
    
}

/*（共通）　項目の多いテーブルの幅を調整*/
@media (max-width: 767px) {
 .col5t th,
 .col5t td{
 font-size:0.5em;
 padding: 10px 0px;
 }
}
	.tt_time {
		font-family: Verdana, Geneva, "sans-serif"
	}
	.tt_title {
		font-weight: 700;
	}
.tt_tex {
		margin-bottom: 2em;
	}


/*カーテン*/
.curtain_out {
	width: 100%;
	margin: 0px auto;
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
}

.curtain {
  margin: 0 auto;
  width: 100%;
  height: 75vh;
  overflow: hidden;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}
.curtain__wrapper {
  width: 100%;
  height: 100%;
}
.curtain__wrapper input[type=checkbox] {
  position: absolute;
  cursor: pointer;
  width: 100%;
  height: 60%;
  z-index: 100;
  opacity: 0;
  /*top: 130vh;*/
  top: 0;
  left: 0;
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  .curtain__wrapper input[type=checkbox] {
  	top: 250vh;
  	left: 0;
	}
}
.curtain__wrapper input[type=checkbox]:checked ~ div.curtain__panel--left {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.curtain__wrapper input[type=checkbox]:checked ~ div.curtain__panel--right {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.curtain__panel {
  display: flex;
  align-items: center;
  background: #C3DC8B;
	background-image: url(../img/flag.svg);
	background-position: top;
	background-repeat: repeat-x;
  color: #fff;
  float: left;
  position: relative;
  width: 50%;
  height: 100vh;
  transition: all 1s ease-out;
  z-index: 2;
}
.curtain__panel--left {
  justify-content: flex-end;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}
.curtain__panel--right {
  justify-content: flex-start;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}


.curtain__content {
  color: #fff;
  padding: 1rem 0;
  position: absolute;
  text-align: center;
  z-index: 1;
  width: 90%;
	height: 70%;
	margin: 0 auto;
	overflow: hidden;
	background-image: url(../img/bg_second.jpg);
	background-position: center;
	background-size: cover;
	
}

p.curtain_tex {
	color: #57734A;
	font-size:120%;
	font-weight: 700;
	margin-left: 2em;
}

@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  p.curtain_tex {
		font-size:110%;
		font-weight: 700;
		margin-left: 1em;
	}
}
/* //カーテン*/

/*イラストアニメ*/
#jisan {
	width: 10%; float: right; margin: 4% 6% 0 0;
}
#girl_1 {
	width: 10%; float: right; margin-right: 40%;;
}
#w_child {
	width: 25%;
	margin-left: 10px;
}
#girl_2 {
	width: 10%; float: left; margin-left: 10%; margin-top: 0px;
}
#boy {
	width: 10%; float: right; margin-top: 10px;
}
p#curtain_inside_tex {
	font-size: 100%;
	padding: 1em;
	color: black;
}
@media screen and (max-width: 498px) { 
  /*　画面サイズ 499pxから適用　*/
  p#curtain_inside_tex {
	font-size: 80%;
	padding: 1em;
	  margin-top: -1em;
	  line-height: 1.4em;
	}
}
.run-box{
	margin:0;
	position:relative;
	height:auto;
	/*overflow:hidden;*/
	width:100%;
	overflow:visible;
	}
	@keyframes run-move{
  	0%{
    	right: 0;
  	}
	33%{
		right:0;
	}
  	100%{
    	left:calc(600% + 25%);
  	}
}
.run_around{
  top: 0;
  left: 0;
  position: absolute;
  animation: run-move 3s ease-in-out 0s infinite normal;
}
			

.vibrate-2{-webkit-animation:vibrate-2 .3s linear infinite both;animation:vibrate-2 .3s linear infinite both}
/* ----------------------------------------------
 * Generated by Animista on 2018-10-26 21:0:35
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

@-webkit-keyframes vibrate-2{0%{-webkit-transform:translate(0);transform:translate(0)}20%{-webkit-transform:translate(2px,-2px);transform:translate(2px,-2px)}40%{-webkit-transform:translate(2px,2px);transform:translate(2px,2px)}60%{-webkit-transform:translate(-2px,2px);transform:translate(-2px,2px)}80%{-webkit-transform:translate(-2px,-2px);transform:translate(-2px,-2px)}100%{-webkit-transform:translate(0);transform:translate(0)}}@keyframes vibrate-2{0%{-webkit-transform:translate(0);transform:translate(0)}20%{-webkit-transform:translate(2px,-2px);transform:translate(2px,-2px)}40%{-webkit-transform:translate(2px,2px);transform:translate(2px,2px)}60%{-webkit-transform:translate(-2px,2px);transform:translate(-2px,2px)}80%{-webkit-transform:translate(-2px,-2px);transform:translate(-2px,-2px)}100%{-webkit-transform:translate(0);transform:translate(0)}}
			
			
.slide-in-blurred-right{-webkit-animation:slide-in-blurred-right 1s cubic-bezier(.23,1.000,.32,1.000) 10s both;animation:slide-in-blurred-right 1s cubic-bezier(.23,1.000,.32,1.000) 10s both}
/* ----------------------------------------------
 * Generated by Animista on 2018-10-26 21:16:56
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

@-webkit-keyframes slide-in-blurred-right{0%{-webkit-transform:translateX(1000px) scaleX(2.5) scaleY(.2);transform:translateX(1000px) scaleX(2.5) scaleY(.2);-webkit-transform-origin:0 50%;transform-origin:0 50%;-webkit-filter:blur(40px);filter:blur(40px);opacity:0}100%{-webkit-transform:translateX(0) scaleY(1) scaleX(1);transform:translateX(0) scaleY(1) scaleX(1);-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-filter:blur(0);filter:blur(0);opacity:1}}@keyframes slide-in-blurred-right{0%{-webkit-transform:translateX(1000px) scaleX(2.5) scaleY(.2);transform:translateX(1000px) scaleX(2.5) scaleY(.2);-webkit-transform-origin:0 50%;transform-origin:0 50%;-webkit-filter:blur(40px);filter:blur(40px);opacity:0}100%{-webkit-transform:translateX(0) scaleY(1) scaleX(1);transform:translateX(0) scaleY(1) scaleX(1);-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-filter:blur(0);filter:blur(0);opacity:1}}
			
			
.scale-up-center{-webkit-animation:scale-up-center .4s steps(2,start) 2s infinite both;animation:scale-up-center .4s steps(2,start) 2s infinite both}
/* ----------------------------------------------
 * Generated by Animista on 2018-10-26 21:25:6
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

@-webkit-keyframes scale-up-center{0%{-webkit-transform:scale(.5);transform:scale(.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes scale-up-center{0%{-webkit-transform:scale(.5);transform:scale(.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}

/* //イラストアニメ*/