@media screen and (max-width: 1280px) {
	
	.wrap { width: 96%; }
	
	/* popup */
	.hd_pops { left: 2% !important; top: 80px !important; }	
	.hd_pops { left: 2% !important; max-width: 96%; height: auto; }
	.hd_pops_con { max-width: 100% !important; width: auto !important; height: auto !important; }
	.hd_pops_con a { display: inline-block; }

	/* main */
	.main_text { text-align: center; }
	.main_text br { display: none; }

}

@media screen and (max-width: 1100px) {
	
	.wrap { width: 96%; }
	
	/* head */
	.menu li a { font-size: 16px; }

}

@media screen and (max-width: 1024px) {
	
	/* head */
	.head { border-bottom: 1px solid #ddd; }
	.m_head_inr { display: block; height: 40px; background: #2f3b66; }
	.m_snslist { display: flex; flex-wrap: wrap; height: 100%; }
	.m_snslist li { flex: 1; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; border-left: 1px solid rgba(255, 255, 255, 0.1); }
	.m_snslist li:first-child { border-left: none; }
	.m_snslist li a { display: inline-flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 100%; height: 100%; color: #fff; font-size: 0.9em; }
	.m_snslist li a img, .m_snslist li a i { font-size: 18px; }
	.m_snslist li:nth-child(4) a img, .m_snslist li:nth-child(4) a i, .m_snslist li:nth-child(5) a img, .m_snslist li:nth-child(5) a i { margin-right: 3px; }
	
	.head_inr01 { height: 80px; }
	.head .logo img { height: 40px; }
	.head_inr02 { display: none; }
	.snsbox { display: none; }

	nav.mobile_menu { position: fixed; top: -100vh; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; width: 100%; height: 100vh; z-index: 9001; background: rgba(0, 0, 0, 0.9); border-bottom-right-radius: 100%; border-bottom-left-radius: 100%; transition: all 650ms cubic-bezier(1,0,0,1); }
	nav.mobile_menu.open { top: 0; padding: 80px 0px; border-radius: initial; }

	.nav-inner { display: flex; width: 100%; flex-wrap: wrap; justify-content: space-between; align-items: center; }
	.nav-list { display: flex; justify-content: center; align-items: flex-start; flex-direction: column; width: 100%; height: 100%; }
	.nav-list li { margin-bottom: 20px; width: 100%; text-align: center; }
	.nav-list li:last-child { margin-bottom: 0px; }
	.nav-list li a { position: relative; color: #fff; font-size: 1.3em; font-weight: 400; }

	.nav-link { padding: 1rem; font-size: 2rem; }
	.nav-link:hover, .nav-link:focus { color: #fff; }

	.menu-toggler { position: absolute; top: 70px; right: 2%; width: 30px; height: 19px; display: flex; flex-direction: column; justify-content: space-between; z-index: 99; /* transition: all 650ms ease-out; */ cursor: pointer; }
	.head.scrolled .menu-toggler { position: fixed; top: 25px; } 
	.menu-toggler.open { position: fixed; top: 30px; right: 20px; z-index: 9999; transform: rotate(-45deg); }

	.bar { background-color: #222; width: 100%; height: 2px; border-radius: 0.8rem; }
	.open .bar { background-color: #fff; }

	.bar.half { width: 50%; }
	.bar.top { transform-origin: right; transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57); }
	.open .bar.top { transform: rotate(-450deg) translateX(0.45rem); }
	.bar.bottom { align-self: flex-end; transform-origin: left; transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57); }
	.open .bar.bottom { transform: rotate(-450deg) translateX(-0.45rem); }

	.nav-inner ul ul { display: none; margin-top: 10px; }
	.nav-inner ul ul li { margin-bottom:0px; }
	.nav-inner ul ul li a { display: inline-block; padding: 0px; color: rgba(255, 255, 255, 0.7); font-size: 1.1em; font-weight: 300; line-height: 1.8; text-decoration: none; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s; -ms-transition: all 0.5s; transition: all 0.5s; }
	.nav-inner ul ul li a:hover { color: rgba(255, 255, 255, 1); }
	.nav-inner ul ul li a:before { display: none; height: 1px; }

	/* footer */
	.quick_btn { font-size: 17px; }
	.quick_btn span.stitle { margin-right: 10px; padding-right: 10px; }

	/* main */
	.main_vis { height: 500px; }
	.main_text { font-size: 36px; }

	.con02_list li a h3 { padding: 0 20px; font-size: 24px; }

	/* sub */
	.introduzione p { font-size: 1.1em; }

	.post-item { width:32%; margin-left: 2%; }
	.post-item:nth-child(4n+1) { margin-left: 2%; }
	.post-item:nth-child(3n+1) { margin-left: 0; }

}

@media screen and (max-width: 768px) {
	
	body { font-size: 13px; }

	/* head */
	.head .logo img { height: 30px; }

	/* footer */
	.footer_logo { margin-bottom: 15px; }
	.footer_logo a { display: block; width: 100%; }
	.footer_logo a:first-child { margin-bottom: 15px; }
	.footer_logo a:first-child img { height: 30px; }
	.footer_logo a:nth-child(2) img { height: 35px; }
	
	.footer br { display: none; }
	.footer span { display: block; width: 100%; }
	.footer span.line:after { display: none; }

	.quick_btn { font-size: 15px; }
	.quick_btn span.stitle { padding-right: 0px; }
	.quick_btn span.stitle:after { display: none; }
	.quick_btn span.text { display: none; }
	.quick_btn span.more { margin-left: 0px; font-size: 14px; }
	.quick_btn span.more i { margin-left: 5px; }

	/* main */
	.main_vis { height: 400px; }
	.main_text { font-size: 28px; }
	
	.main_con { padding: 60px 0; }
	.main_con h2 { font-size: 28px; }

	.con02_list { justify-content: center; }
	.con02_list li { width: 32%; margin-left: 2%; }
	.con02_list li:nth-child(4n+1) { margin-left: 2%; }
	.con02_list li:nth-child(3n+1) { margin-left: 0%; }
	.con02_list li a h3 { padding: 0 10px; font-size: 20px; }

	/* sub */
	.sub_contents { margin: 60px auto; }
	.sub_title h2 { font-size: 2.5em; }
	.sub_title p { font-size: 1em; }
	.sub_title p br { display: none; }

	.introduzione_imgbox { height: 300px; margin-bottom: 30px; }

	.post-item { width:49%; margin-left: 2%; }
	.post-item:nth-child(3n+1) { margin-left: 2%; }
	.post-item:nth-child(2n+1) { margin-left: 0; }
	
	.vote_textbox { padding: 30px; }

	.vote_result_textbox { margin-bottom: 30px; padding: 30px; }
	.vote_result_btnbox { gap: 0 10px; margin-top: 30px; }
	.vote_result_btnbox a { flex: 1; height: 55px; padding: 0 20px; }

}

@media screen and (max-width: 480px) {
	
	/* footer */
	.quick_btn { height: 50px; }

	/* main */
	.main_text { font-size: 24px; }

	.con02_list li { width: 49%; margin-left: 2%; margin-bottom: 10px; }
	.con02_list li:nth-child(3n+1) { margin-left: 2%; }
	.con02_list li:nth-child(2n+1) { margin-left: 0%; }
	.con02_list li:nth-child(7), .con02_list li:nth-child(8) { margin-bottom: 0; }

	/* sub */
	.sub_contents { margin: 50px auto; }

	.sub_title { margin-bottom: 30px; }
	.sub_title h2 { font-size: 2em; }

	.introduzione_imgbox { height: 230px; }

}

@media screen and (max-width: 430px) {
	
	/* head */
	.m_head_inr { height: 30px; }
	.head_inr01 { height: 70px; }
	.head .logo img { height: 25px; }
	.menu-toggler { top: 55px; }

	/* footer */
	.footer_logo a:first-child img { height: 25px; }

	/* main */
	.main_vis { height: 300px; }
	.main_text { font-size: 20px; }
	
	.main_con h2 { margin-bottom: 30px; font-size: 24px; }	

}

@media screen and (max-width: 375px) {
	
	/* head */
	.head .logo img { height: 20px; }
	
    .m_snslist li a { font-size: 10px; }
	.m_snslist li a img, .m_snslist li a i { font-size: 13px; width: 13px; }

	/* footer */
	.footer_logo a:first-child img { height: 20px; }

	/* main */
	.swiper-button-prev, .swiper-button-next { width: 35px; height: 35px; }

	.main_vis { height: 250px; }

	/* sub */
	.introduzione_imgbox { height: 180px; }
	.introduzione p { font-size: 1em; }

}