@media screen and (max-width: 1280px) {
	.dec-cloud .t-large {
		font-size: 28px;
	}
}
@media screen and (max-width: 1024px) {
	.top-bg .bg-paper {
		height: 100%;
		bottom: 0;
		width: auto;
		transform: translateX(0%);
	    width: auto;
	    object-fit: cover;
	}

	.card {
		width: 37%;
		margin: 0 5% 20px;
	}
	.card-img {
		padding: 20px;
	}
}
@media screen and (max-width: 768px) {
	.hide-sm {
		display: none;
	}
	.show-sm {
		display: block;
	}
	.block-sm {
		display: block;
	}
	.show-sm.col {
		display: inline-block;
	}
	.show-sm.flex-middle {
		display: flex;
	}
	.relative-sm {
		position: relative;
	}

	.t-xxlarge { font-size: 46px; /* 30px */ }
	.t-xlarge { font-size: 1.8em; /* 30px */ }
	.t-large { font-size: 1.45em; /* 26px */ }
	.t-midlarge { font-size: 1.325em; /* 22px */ }
	.t-mid, .t-mid-sm { font-size: 1.125em; /* 18px */ }
	.t-xsmall { font-size: 0.825em; /* 14px */ }

	.text-center-sm {
		text-align: center;
	}
	.text-left-sm {
		text-align: left;
	}
	.mr-0-sm {
		margin-right: 0;
	}
	
	.ml-0-sm {
		margin-left: 0;
	}
	.mt-0-sm {
		margin-top: 0;
	}
	.mb-0-sm {
		margin-bottom: 0;
	}
	.mb-1-sm {
		margin-bottom: 1em;
	}
	.mb-2-sm {
		margin-bottom: 2em;
	}
	.ml-2-sm { margin-left: 2em; }

	.pt-0-sm { padding-top: 0; }
	.pb-2-sm {padding-bottom: 1.5em;}
	.pr-3-sm {
		padding-right: 1.5em;
	}
	.text-border::before {
		-webkit-text-stroke: 3px #fff;
		text-stroke: 3px #fff;
	}
	.w100-sm {
		width: 100%;
	}
	.title-wide {
		width: calc(100% + 2em);
		margin-left: -1em;
		white-space: nowrap;
	}
	.subtitle span {
		min-width: auto;
	}
	/* navbar */
	.navbar {
		flex-direction: column;
	}
	.navbar li:nth-of-type(1) {
		width: 100%;
	}
	.header {
		max-height: 50px;
		overflow: hidden;
	}
	.header.active {
		height: 100vh;
		max-height: 100vh;
		background-color: var(--pink-100);
		overflow-x: hidden;
		overflow-y: auto;
	}
	.nav-hbg {
		display: block;
	}
	.navbar {
		padding-top: 0px;
	}
	/* topsec */
	.butterfly {
		display: none;
	}
	.topsec {
		min-height: auto;
		padding-bottom: 250px;
	}
	.top-title {
		width: 100%;
		padding-top: 50px;
	}
	.top-title .main-title {
		min-width: unset;
		width: 96%;
		max-width: 400px;
		margin-bottom: 20px;
	}
	/* .hint-flower {
		padding: 80px 20px 70px 30px;
		top: -2%;
	}
	.hint-flower .t-large {
		font-size: 1em;
	} */
	.bg-flowers {
		width: 150%;
	}
	/* mainbg */
	.bg-tree-left,
	.bg-tree-right {
		width: 25%;
		bottom: 120px;
	}
	.bg-butterfly-01,
	.bg-butterfly-02 {
		width: 50%;
	}
	.bg-grass-repeat {
		padding-bottom: 2em;
	}
	#top-sec .bg-butterfly-01 {
		left: auto;
		right: -15%;
		top: 45%;
		bottom: 0%;
		margin: auto;
	}
	#top-sec .bg-butterfly-02 {
		right: auto;
		left: 0%;
		top: 35%;
		bottom: 0%;
		margin: auto;
	}
	.bg-people {
		width: 100%;
	}
	.bg-petal-01,
	.bg-petal-02 {
		width: 100%;
	}
	#hint-sec .bg-petal-01 {
		left: 0px;
		top: -60px;
	}
	#hint-sec .bg-petal-02 {
		top: auto;
		right: 0px;
		bottom: -80px;
	}
	.about {
		padding: 25px;
		margin: 2rem -20px 0;
		background-image: url('../images/about-bg-m.png');
	}
	#about-sec.bg-grass-repeat {
		background-image: url('../img/bg-grass.png');
		background-repeat: no-repeat;
		background-position: center 50%;
	}
	.green-card {
		background-color: var(--green-300-op-50);
		padding: 50px 20px 40px 20px;
		border-radius: 20px;
		margin-top: -40px;
		width: calc(100% + 60px);
		margin-left: -30px;
	}

	/* speaker */
	.speaker-list {
		grid-template-columns: repeat(1, 1fr);
		gap: 40px 5px;
		width: calc(100% + 40px);
		margin-left: -20px;
	}
	.speaker {
		flex-direction: column;
    	align-items: center;
	}
	/* .speaker.slick-active {
		opacity: 1;
	}
	.speaker-slick .speaker {
	} */
	.speaker-img {
		width: 60%;
	}
	.speaker-info {
		width: calc(100%);
		margin: 0px auto;
		padding: 20px 30px 20px 30px;
		bottom: 0;
		z-index: 2;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.speaker-title {
		padding-left: 0%;
		width: 100%;
		text-align: center;
	}
	.speaker-main > div.speaker-img {
		margin-top: 20px;
	}
	#speaker-sec .dec-img {
		width: 35%;
		max-width: 180px;
	}
	.speaker-info p {
		font-size: 14px;
	}

	/* info */
	#info-sec {
		padding-bottom: 200px;
	}
	#info-sec .dec-img {
		top: -45px;
	}
	#info-sec .dec-img img {
		width: 25%;
		max-width: 90px;
	}
	.icon-dec {
		margin-left: -27px;
	}
	.time-row {
		display: block;
	}
	.time-col {
		display: block;
		padding: 0 1em;
    	width: auto;
    	/* opacity: 0.8; */
	}
	.event-col {
		display: block;
		padding: 0 1em;
	}
	.time-row.row-indent {
		margin-left: 2em;
	}
	.row-indent .time-col {
		padding: 0 0em 0 1em;
	}
	.row-indent .event-col {
		padding: 0 0em 0 1em;
	}
	.event-col p {
		opacity: 0.8;
	}
	#info-sec .container {
		position: relative;
		z-index: 2;
		padding: 4em 0em 4em 0em;
		background: rgba(255, 255, 255, .7);
	}
	.event-col h4.red {
	}
	
	.fixed-right {
		right: 2px;
		transform: translateY(20px) scale(0.6);
		transform-origin: right center;
	}
	.hideontop.show {
		right: 2px;
		transform: translateY(20px) scale(0.6);
		transform-origin: right center;
	}

	/* .card .no-pe {
		width: 30%;
	}
	.card-wide {
		width: calc(100% + 160px);
		margin-left: -80px;
		padding: 40px 80px 40px 80px;
		margin-top: -50px;
	} */

	.row-indent {
		margin-left: 0.6em;
	}
	#gift-sec {
		margin-top: -1px;
	}
	#gift-sec.bg-grass-repeat {
		background-position: center -8%;
	}


	/* form */
	.dec-bg img {
		top: -50px;
	}
	#signup-sec .dec-img {
		right: 0;
	    left: -50%;
	    margin: auto;
	    width: 70%;
	    max-width: 300px;
	    top: 2px;
	}
	.form-item .d-cell {
	    min-width: 90px;
	}
	.logolinks {
		flex-direction: column;
		gap: 0em;
	}
	.logolinks li {
		margin: 2em 0;
	    display: block;
	    text-align: center;
	}
	.logolinks a {
	    display: block;
	    margin-top: 10px;
	}

	.popup-body {
		padding: 20px 15px;
	}
}
@media screen and (max-width: 640px) {
	/* topsec */
	.topsec {
		padding-bottom: 150px;
	}
	.subtitle span {
		min-width: auto !important;
		padding: 0 10px !important;
		line-height: 40px !important;
	}
	.subtitle::before, .subtitle::after {
		width: 80px;
		height: 40px;
		background-size: cover;
	}

	.card {
		width: 85%;
	}
	.card-img {
		padding: 30px;
	}
	.gift-people {
		display: none;
	} 
	.card .no-pe {
		width: 30%;
	}
	.card-wide {
		width: calc(100% + 160px);
		margin-left: -80px;
		padding: 40px 80px 40px 80px;
		margin-top: -50px;
	}
	#coin-sec .container {
		padding: 1em;
    border-radius: 1em;
    width: 90%;
	}
	.event-msg {
		display: block;
	}
	.event-msg-img {
		width: 80%;
    margin: auto;
	}
	.event-msg-con {
		width: 100%;
		margin-top: 1em;
	}
	#traffic-sec picture {
		display: block;
    width: 120%;
    margin-left: -10%;
	}
	#traffic-sec .container:last-child {
		padding-top: 0;
	}
}
@media screen and (max-width: 380px) {
	
	.speaker .flex-right {
		flex-direction: column;
		align-items: center;
		justify-content: flex-end;
	}
	.speaker .absolute {
		display: block;
		position: relative;
	}
	.speaker span.green {
		margin-right: 0;
	}
	/* .slick-arrow {
		top: 100px;
		bottom: auto;
	} */
}

/* height */
@media screen and (max-height: 600px) {
	.main-title {
		padding: 0;
	}
	.top-title .main-title {
		max-width: 400px;
	}
}