@charset "UTF-8";

/*
@import url('https://fonts.googleapis.com/css2?family=Nanum+Gothic:wght@400,700,800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
*/

html { font-family: 'Nanum Gothic', 'Roboto', sans-serif; }

::-WEBKIT-SCROLLBAR { width: 2px; }
body::-webkit-scrollbar-track { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px #000; box-shadow: inset 0 0 6px #000; } 
body::-webkit-scrollbar { position: fixed; top: 0; right: 0; z-index: 9999; width: 2px; background-color: #000; } 
body::-webkit-scrollbar-thumb { border-radius: 10px; background-color: #000; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.2); box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.2); } 

.wrap { width: 100%; letter-spacing: -1px; }
.wrap header { display: flex; margin: 0 auto; width: 1280px; justify-content: center; text-align: center; box-sizing: border-box; }
.wrap header .logo { flex: none; font-family: Roboto; font-size: 52px; font-weight: 600; line-height: 80px; text-transform: uppercase; color: #3f3f3f; }
.wrap header .logo span { color: #4e5ec7; }
.wrap header .logo img { width: 100%; }

	@media only screen and (max-width: 1024px) {
	.wrap header { padding: 0 10px; width: 100%; }
	.wrap header .logo { margin: 0 auto; font-size: 52px; font-weight: 600; line-height: 80px; }
	}
	@media only screen and (max-width: 768px) {
	.wrap header .logo { font-size: 42px; font-weight: 600; line-height: 80px; }
	}
	@media only screen and (max-width: 576px) {
	.wrap header .logo { font-size: 32px; font-weight: 600; line-height: 60px; }
	}

/* adv banner - top */
.wrap .top_adv { margin: 0 auto; border-bottom: 1px solid #e8e8e8; background: #f1f1f1; text-align: center; }
.wrap .top_adv .adv { position: relative; margin:0 auto; width: 700px; height: 100px; }
.wrap .top_adv .adv img { width: 700px; height: 100px; }
.wrap .top_adv .adv .close { display: block; position: absolute; top: 0; right: 0; z-index: 1; width: 24px; height: 20px; font-size: 18px; line-height: 17px; font-weight: 400; background: #fff; color: #000; cursor: pointer; }

/* adv banner - contents top */
.wrap .top_adv_01 { margin: 0 auto; text-align: center; }
.wrap .top_adv_01 .adv { position: relative; margin:0 auto; width: 700px; }
.wrap .top_adv_01 .adv img { width: 700px; height: 100px; }

/* adv banner - left */
.wrap main .main_area .top_adv_02,
.wrap main .sub_area .top_adv_02,
.wrap main .detail_area .top_adv_02 { position: fixed; top: 0; top: 50%; transform: translateY(-50%); margin-left: -180px; }
.wrap main .main_area .top_adv_02 .adv,
.wrap main .sub_area .top_adv_02 .adv,
.wrap main .detail_area .top_adv_02 .adv { position: relative; width: 160px; height: 600px; }
.wrap main .main_area .top_adv_02 .adv img,
.wrap main .sub_area .top_adv_02 .adv img,
.wrap main .detail_area .top_adv_02 .adv img { width: 160px; height: 600px; }
.wrap main .main_area .top_adv_02 .adv .close,
.wrap main .sub_area .top_adv_02 .adv .close,
.wrap main .detail_area .top_adv_02 .adv .close { display: block; position: absolute; top: 0; right: 0; z-index: 2; width: 24px; height: 20px; font-size: 18px; line-height: 17px; font-weight: 400; background: #fff; text-align: center; color: var(--main-color);  cursor: pointer; }


/* adv banner - right */
.wrap main .main_area .top_adv_03,
.wrap main .sub_area .top_adv_03,
.wrap main .detail_area .top_adv_03 { position: fixed; top: 0; top: 50%; transform: translateY(-50%); margin-left: 1300px; }
.wrap main .main_area .top_adv_03 .adv,
.wrap main .sub_area .top_adv_03 .adv,
.wrap main .detail_area .top_adv_03 .adv { position: relative; width: 160px; height: 600px; }
.wrap main .main_area .top_adv_03 .adv img,
.wrap main .sub_area .top_adv_03 .adv img,
.wrap main .detail_area .top_adv_03 .adv img { width: 160px; height: 600px; }
.wrap main .main_area .top_adv_03 .adv .close,
.wrap main .sub_area .top_adv_03 .adv .close,
.wrap main .detail_area .top_adv_03 .adv .close { display: block; position: absolute; top: 0; right: 0; z-index: 2; width: 24px; height: 20px; font-size: 18px; line-height: 17px; font-weight: 400; background: #fff; text-align: center; color: var(--main-color);  cursor: pointer; }

/* adv banner - contents bottom */
.wrap .top_adv_04 { margin: 0 auto; text-align: center; }
.wrap .top_adv_04 .adv { position: relative; margin:0 auto; width: 700px; height: 100px; }
.wrap .top_adv_04 .adv img { width: 700px; height: 100px; }

	@media only screen and (max-width: 1440px) {
	.wrap main .main_area .top_adv_02,
	.wrap main .sub_area .top_adv_02,
	.wrap main .detail_area .top_adv_02 { display: none; }
	.wrap main .main_area .top_adv_03,
	.wrap main .sub_area .top_adv_03,
	.wrap main .detail_area .top_adv_03 { display: none; }	
	}
	@media only screen and (max-width: 1024px) {
	.wrap .top_adv { border-bottom: 0; background: transparent; }
	.wrap .top_adv .adv,
	.wrap .top_adv_01 .adv { padding: 0 10px; width: 100%; height: auto; }
	.wrap .top_adv_04 .adv { padding: 0 10px;width: 100%; height: auto; }
	.wrap main .detail_area .detail .top_adv_04 .adv { padding: 0; width: 100%; height: auto; }
	.wrap .top_adv .adv img, 
	.wrap .top_adv_01 .adv img,
	.wrap .top_adv_04 .adv img { width: 100%; height: auto; }
	.wrap .top_adv .adv .close { margin: 0 10px 0 0; }
	.wrap main .sub_area .top_adv_02,
	.wrap main .sub_area .top_adv_03 { display: none; }
	}

.wrap .nav_area { width: 100%; margin-bottom: 20px; padding: 10px 0; border-top: 2px solid #000; border-bottom: 1px solid #000; box-sizing: border-box; }
.wrap .nav_area .nav_inner { display: flex; position: relative; margin: 0 auto; width: 1280px; }
.swiper-container { width: inherit; }
.snbSwiper { max-width: 100%; height: 42px; font-size: 18px; box-sizing: border-box; }
.swiper-slide { width: auto !important; }
.swiper-slide a { display: block; padding: 0 20px 0 0; text-align: center; }
.swiper-slide .text { display: inline-block; position: relative; padding: 0; height: 42px; line-height: 42px; font-weight: 600; white-space: nowrap; color: #000; box-sizing: border-box; }
.on .text { font-weight: 600; color: #1b64bc; }
.on .text:after { content: ''; display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: transparent; }
.mobile { display: none; }
.mob { display: none; }
.tablet { display: none; }
.wrap .nav_area .nav_inner .search { margin-left: auto; width: 42px; height: 42px; border-radius: 4px; }
.wrap .nav_area .nav_inner .search i { line-height: 42px; }
.wrap .nav_area .nav_inner .close { width: 42px; height: 42px; border-radius: 4px; }
.wrap .nav_area .nav_inner .close i { line-height: 42px; }
.wrap .nav_area .nav_inner .search_open { position: absolute; top: 0; right: 0; z-index: 1; width: 30%; height: 100%; border-radius: 4px; line-height: 42px; background: #fff; }
.wrap .nav_area .nav_inner .search_open .open_inner { display: flex; }
.wrap .nav_area .nav_inner .search_open .open_inner .search { margin-left: 0; }
.wrap .nav_area .nav_inner .search_open .open_inner input { padding: 0 10px; width: 100%; border: 0; font-size: 18px; box-sizing: border-box; }
.wrap .nav_area .nav_inner .search_open .open_inner input:focus { border: 0; outline: 0; }
.wrap .nav_area .nav_inner .search_open .open_inner input::placeholder { color: #000; }
.wrap .nav_area .nav_inner .search_open .open_inner .close {}

	@media only screen and (max-width: 1024px) {
	.wrap .nav_area .nav_inner { padding: 0 10px; width: 100%; }
	.wrap .nav_area .nav_inner .search_open { margin: 0 1%; width: 98%; }
	}
	@media only screen and (max-width: 768px) {
	}
	@media only screen and (max-width: 576px) {
	.wrap .nav_area .nav_inner .search_open { margin: 0 1.8%; width: 96.4%; }
	}
	@media only screen and (max-width: 428px) {
	.wrap .nav_area .nav_inner .search_open { margin: 0 2%; width: 96%; }
	.mob { display: block; }
	}
	@media only screen and (max-width: 414px) {
	.wrap .nav_area .nav_inner .search_open { margin: 0 2.3%; width: 95.4%; }
	}
	@media only screen and (max-width: 390px) {
	.wrap .nav_area .nav_inner .search_open { margin: 0 2.5%; width: 95%; }
	}
	@media only screen and (max-width: 375px) {
	.wrap .nav_area .nav_inner .search_open { margin: 0 3.3%; width: 94.4%; }
	}
	@media only screen and (max-width: 360px) {
	.wrap .nav_area .nav_inner .search_open { margin: 0 3%; width: 94%; }
	}

.wrap footer { padding: 20px 0 0 0; text-align: center; }
.wrap footer .footer { border-top: 2px solid #000; border-bottom: 1px solid #000; text-align: center; }
.wrap footer .footer .footer_inner { display: flex; flex-flow: nowrap; margin: 0 auto; width: 1280px; color: #333; }
.wrap footer .footer .footer_inner .footer_menu { flex: none; }
.wrap footer .footer .footer_inner .footer_menu li { float: left; font-size: 14px; line-height: 62px; }
.wrap footer .footer .footer_inner .footer_menu li:first-child::before { content: ""; padding: 0; }
.wrap footer .footer .footer_inner .footer_menu li:before { content: "|"; padding: 0 10px; width:1px; height: 16px; color: #e8e8e8; }
.wrap footer .footer .footer_inner .footer_sns { margin-left: auto; }
.wrap footer .footer .footer_inner .footer_sns li { float: left; font-size: 16px; line-height: 42px; }
.wrap footer .footer .footer_inner .footer_sns li i { margin-top: 10px; margin-left: 2px; line-height: 42px; }
.fa { width: 42px; height: 42px; border-radius: 4px; font-size: 30px; text-align: center; }
.fa:hover { opacity: 0.7; }
.fa-search { background-color: #2c77ba; color: #fff; }
.fa-facebook { background: #3b5998; color: #fff; }
.fa-twitter { background: #55acee; color: #fff; }
.fa-youtube { background: #bb0000; color: #fff; }
.fa-rss { background: #ff6600; color: #fff; }

	@media only screen and (max-width: 1024px) {
	.wrap footer .footer .footer_inner { padding: 0 10px; width: 100%; }
	}
	@media only screen and (max-width: 428px) {
	.wrap footer .footer .footer_inner { flex-flow: wrap; justify-content: center; }
	.wrap footer .footer .footer_inner .footer_sns { margin-left: 0; }
	.wrap footer .footer .footer_inner .footer_sns li i { margin-top: 0; margin-bottom: 20px; }
	}

.wrap footer .footer_info { display: flex; flex-flow: nowrap; align-content: center; margin: 20px auto 20px; width: 1280px; }
.wrap footer .footer_info h2 { font-family: 'Roboto'; font-size: 42px; font-weight: 600; line-height: 60px; text-transform: uppercase; opacity: 70%; color: #3f3f3f; }
.wrap footer .footer_info h2 span { color: #4e5ec7; }
.wrap footer .footer_info h2 img { width: 100%; }
.wrap footer .footer_info address { margin-left: 40px; font-size: 14px; text-align: left; }
.wrap footer .footer_info address span { display: inline-block; padding: 8px 10px 4px 0; }
.wrap footer .copyright { padding: 20px 0; border-top: 1px solid #999; font-size: 14px; text-align: center; color: #777; }
.wrap footer .copyright span { font-weight: 400; font-size: 13px; text-transform: uppercase; color: #333; }
.wrap footer .copyright a { margin-left: 10px; }

	@media only screen and (max-width: 1024px) {
	.wrap footer .footer_info { padding: 0 10px; width: 100%; }
	.wrap footer .footer_info h2 { font-size: 42px; }
	}
	@media only screen and (max-width: 768px) {
	.wrap footer .footer_info h2 { font-size: 30px; line-height: 48px; }
	.wrap footer .footer_info address { margin-left: 40px; }
	.mob { display: block; }
	}
	@media only screen and (max-width: 576px) {
	.wrap footer .footer_info { flex-flow: wrap; justify-content: center; width: 100%; }
	.wrap footer .footer_info h2 { margin: 0; font-size: 24px; line-height: 40px; }
	.wrap footer .footer_info address { margin-left: 0; text-align: center; color: #777; }
	.wrap footer .footer_info address li { float: none; text-align: center; }
	.wrap footer .copyright a { display: block; margin-top: 10px; margin-left: 0; width: 100%; font-family: 'Roboto'; }
	.wrap footer .footer_info { margin: 10px auto 10px; } 
	.wrap footer .footer .footer_inner .footer_menu li { line-height: 42px; }
	}
	@media only screen and (max-width: 428px) {
	.wrap footer .footer_info h2 { font-size: 24px; }
	}

.modal_window { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; background-color: rgba(0, 0, 0, 0.75); opacity: 0; pointer-events: none; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; }
.modal_window:target { opacity: 1; pointer-events: auto; }
.modal_window > div { position: absolute; top: 50%; left: 50%; width: 540px; height: 520px; background: #fff; color: #000; transform: translate(-50%, -50%); }
.modal_window > div h1 { position: relative; padding: 0 10px; height: 42px; font-weight: 400; line-height: 42px; background: #212121; color: #fff; box-sizing: border-box; }
.modal_window > div h1 .modal_close { position: absolute; right: 0; top: 0; width: 42px; font-size: 80%; height: 42px; font-size: 14px; line-height: 42px; text-align: center; box-sizing: border-box; } 
.modal_window > div div { padding: 10px; width: 100%; height: 478px; overflow: auto; }
.modal_window > div div pre { font-size: 12px; line-height: 24px; word-break: keep-all; }

	@media only screen and (max-width: 428px) {
	.modal_window > div { position: fixed; width: 100%; height: 100%; }
	.modal_window > div div { height: 95.5%; }
	.modal_window > div h1 { font-size: 16px; }
	}
	@media only screen and (max-width: 414px) {
	.modal_window > div div { height: 94%; }
	}
	@media only screen and (max-width: 390px) {
	.modal_window > div div { height: 95%; }
	}
	@media only screen and (max-width: 375px) {
	.modal_window > div div { height: 94%; }
	}
	@media only screen and (max-width: 360px) {
	.modal_window > div div { height: 93.5%; }
	}
	@media only screen and (max-width: 320px) {
	.modal_window > div div { height: 94%; }
	}

/* main */
.wrap main { margin-top: 20px; width: 100%; } 
.wrap main .main_area { position: relative; margin: 0 auto; width: 1280px; }
.wrap main .main_area .type01 { display: flex; flex-flow: wrap; justify-content: space-between; margin-bottom: 20px; }
.wrap main .main_area .type01 div:nth-child(1) { width: 310px; border-top: 2px solid #000; }
.wrap main .main_area .type01 div:nth-child(2) { position: relative; width: 630px; border-top: 2px solid #000; }
.wrap main .main_area .type01 div:nth-child(3) { width: 300px; border-top: 2px solid #000; }
.wrap main .main_area .type01 div:nth-child(3) img { width: 300px; }
.wrap main .main_area .type01 div h2 { display: -webkit-box; overflow: hidden; margin-bottom: 0; font-size: 16px; font-weight: 400; line-height: 36px; -webkit-line-clamp: 1; -webkit-box-orient: vertical; text-overflow: ellipsis; }
.wrap main .main_area .type01 div img { width: 100%; height: 100%; }
.wrap main .main_area .type01 div:nth-child(2) p { display: -webkit-box; position: absolute; bottom: 0; overflow: hidden; padding: 10px; width: 100%; font-size: 18px; font-weight: 400; line-height: 36px; background: rgba(0,0,0,.75); color: #fff; -webkit-line-clamp: 1; -webkit-box-orient: vertical; text-overflow: ellipsis; }

	@media only screen and (max-width: 1024px) {
	.wrap main .main_area { margin: 0 auto; padding: 0 10px; width: 100%; }
	.wrap main .main_area .type01 div:nth-child(1) { width: 50%; }
	.wrap main .main_area .type01 div:nth-child(2) { width: 50%; }
	.wrap main .main_area .type01 div:nth-child(3) { width: 100%; }
	}
	@media only screen and (max-width: 768px) {
	.wrap main .main_area .type01 div:nth-child(2) { width: 100%; }
	.wrap main .main_area .type01 div:nth-child(1) { width: 100%; order: 2; }
	.wrap main .main_area .type01 div:nth-child(3) { order: 3; }
	}
	@media only screen and (max-width: 576px) {
	.wrap main .main_area .type01 div:nth-child(3) { width: 100%; }
	.wrap main .main_area .type01 { margin-bottom: 10px; }
	.wrap main .main_area .type01 div:nth-child(2) { width: 100%; }
	}

.wrap main .main_area .middle_type_01 { }
.wrap main .main_area .middle_type_01 .listing_01 { display: grid; grid-template-columns: 300px auto 300px; gap: 20px 20px; margin: 20px auto; width: 1280px; }
.wrap main .main_area .middle_type_01 .listing_01 div { font-size: 16px; border: 0; }
.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) { border-bottom: 1px solid #ccc; }
.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) img { width: 300px; height: 210px; }
.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(3) img { width: 100%; }
.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(4) img { width: 100%; }
.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(6) { border-bottom: 1px solid #ccc; }
.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(6) img { width: 100%; }
.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; padding-top: 8px; font-size: 16px; line-height: 22px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #000; word-break: break-all; }
.wrap main .main_area .middle_type_01 .listing_01 div h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; padding-top: 10px; font-size: 16px; line-height: 16px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
.wrap main .main_area .middle_type_01 .listing_01 div h2:first-child { border-top: 1px solid #ccc; }
.wrap main .main_area .middle_type_01 .listing_01 div p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; padding-bottom: 3px; border-bottom: 1px solid #ccc; font-size: 14px; line-height: 32px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #777; word-break: break-all; }
	
	@media screen and (max-width: 1024px) {
	.wrap main .main_area .middle_type_01 .listing_01 { grid-template-columns: repeat(2, 1fr); width: 100%;  }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) { order: 1;  border: 0; }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(2) { order: 3; grid-column: 1 / span 2; }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(3) { order: 2; }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) h2 { padding-top: 20px; line-height: 32px; }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) img {  max-width: 300px; width: 100%; height: 340px; }
	}	
	
	@media screen and (max-width: 768px) {
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) img { height: 240px; }
	.listing_01 div.right div img { width: 160px; height: 100px; } 

	.wrap main .main_area .middle_type_01 .listing_01 img { width: 100%; max-width: 300px; height: 230px; }
	.listing_01 div.right img { width: 160px; height: 100px; }
	}
	@media screen and (max-width: 576px) {
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) h2 { padding-top: 10px; line-height: 28px; }
	.wrap main .main_area .middle_type_01 .listing_01 { grid-template-columns: repeat(1, 1fr); column-gap: 0; }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(1) { order: 1; }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(2) { order: 2; }
	.wrap main .main_area .middle_type_01 .listing_01 div:nth-child(3) { order: 3; }
	}

.wrap main .fmain_area { margin: 0 auto; padding: 2px; width: 100%; background: #e1e1e1; }
.wrap main .fmain_area .full { margin: 20px auto 20px; width: 1280px; box-sizing: border-box; }
.wrap main .fmain_area .full .type03 { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); grid-gap: 20px; }
.wrap main .fmain_area .full .type03 div { position: relative; }
.wrap main .fmain_area .full .type03 div img { width: 100%; height: 170px; }
.wrap main .fmain_area .full .type03 div h2 { display: -webkit-box; overflow: hidden; position: absolute; bottom: 0; padding: 0 4px; width: 100%; font-weight: 400; line-height: 24px; background: rgba(0,0,0,.75); color: #fff; -webkit-line-clamp: 1; -webkit-box-orient: vertical; text-overflow: ellipsis; word-break: keep-all; }

	@media only screen and (max-width: 1024px) {
	.wrap main .fmain_area { margin: 0 auto 10px; }
	.wrap main .fmain_area .full { margin: 0 auto; margin: 10px 0; padding: 0 10px; width: 100%; }
	.wrap main .fmain_area .full .type03 { display: grid; grid-template-columns: repeat(auto-fit, minmax(14%, 1fr)); }
	}
	@media only screen and (max-width: 768px) {
	.wrap main .fmain_area .full .type03 { display: grid; grid-template-columns: repeat(auto-fit, minmax(30%, 1fr)); }
	}
	@media only screen and (max-width: 576px) {
	.wrap main .fmain_area .full .type03 { grid-gap: 10px; grid-template-columns: repeat(2, 1fr); }
.wrap main .fmain_area .full .type03 div img { height: 140px; }
	}

.wrap main .main_area .type03 { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 20px; }
.wrap main .main_area .type03 div { margin-bottom: 20px; width: 100%; }
.wrap main .main_area .type03 div h2 { padding: 20px 0; border-bottom: 2px solid #000; font-size: 18px; font-weight: 600; }
.wrap main .main_area .type03 div p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; border-top: 1px solid #ccc; height: 54px; font-size: 15px;  line-height: 54px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #666; word-break: break-all; }
.wrap main .main_area .type03 div p:nth-child(2) a { font-weight: bold; color: #000; }
.wrap main .main_area .type03 div p:last-child { border-bottom: 1px solid #000; }

	@media only screen and (max-width: 1024px) {
	.wrap main .main_area .type03 { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 10px; }
	}
	@media only screen and (max-width: 768px) {
	.wrap main .main_area .type03 { display: grid; grid-template-columns: repeat(2, 1fr); }
	}

.wrap main .main_area .type04 { display: grid; margin: 20px 0; grid-gap: 20px; grid-template-columns: repeat(auto-fill, minmax(100px,1fr) minmax(200px,2fr)); }
.wrap main .main_area .type04 .box { line-height: 21px; color: #fff; word-break: keep-all; }
.wrap main .main_area .type04 .box img { width: 120px; height: 76px; }
.wrap main .main_area .type04 .box:nth-child(even) { margin-left: -20px; }  
.wrap main .main_area .type04 .box:nth-child(even) h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden;  font-size: 15px; line-height: 22px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
.wrap main .main_area .type04 .box:nth-child(even) p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; margin-top: 4px; font-size: 14px; line-height: 24px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #777; word-break: break-all; }

	@media only screen and (max-width: 1024px) {
	.wrap main .main_area .type04 { display: grid;  grid-gap: 10px; }
	.wrap main .main_area .type04 .box img { width: 100%; }
	.wrap main .main_area .type04 .box:nth-child(even) p { -webkit-line-clamp: 2; }
	.wrap main .main_area .type04 .box:nth-child(even) { margin-left: 0; } 
	}

/* sub */
.wrap main { width: 100%; } 
.wrap main .sub_area { margin: 0 auto; width: 1280px; }

.middle_type_01 { }
	.listing_01 { display: grid; grid-template-columns: 630px 630px; column-gap: 20px; margin: 20px auto; width: 1280px; box-sizing: border-box; }
	.listing_01 div { font-size: 16px; }
	.listing_01 div.left { display: grid; grid-template-columns: 2fr 3fr; column-gap: 0; position: relative; padding: 10px 10px 10px 120px; background: #e9e9e9; }
	.listing_01 div.left .img { position: absolute; top: 50%; left: 10px; z-index: 2; width: 170px; height: 170px; transform: translateY(-50%); background: #fff; }
	.listing_01 div.left .img img { width: 170px; height: 170px; }
	.listing_01 div.left .txt { width: 500px; padding: 60px 30px 40px 90px; border: 1px solid #e1e1e1; background: #fff; }
	.listing_01 div.left h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 16px; line-height: 48px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
	.listing_01 div.left p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 14px; line-height: 28px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #777; word-break: break-all; }
	.listing_01 div.right { display: grid; grid-template-rows: repeat(3, 1fr); column-gap: 20px; }
	.listing_01 div.right div { display: flex; }
	.listing_01 div.right div img { width: 124px; height: 72px; }
	.listing_01 div.right div div { display: flex; flex-direction: column; justify-content: center; padding-left: 20px; background: #fff; }
	.listing_01 div.right div div h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 16px; line-height: 16px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
	.listing_01 div.right div div p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 14px; line-height: 36px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #777; word-break: break-all; }
	
	@media screen and (max-width: 1024px) {
	.wrap main .sub_area { margin: 0 auto; width: 100%; }
	.listing_01 { grid-template-columns: 490px 490px; width: 100%; padding: 0 10px; }
	.listing_01 div.left { padding: 0 114px; }
	.listing_01 div.left .txt { padding: 63px 16px 63px 70px; width: 376px; }
	.listing_01 div.right div img { width: 120px; height: 76px; }
	.listing_01 div.right div div { padding-left: 20px; width: 70%; }
	}
	@media screen and (max-width: 768px) {
	.listing_01 { grid-template-columns: 49% 48%; width: 100%; padding: 0 10px; }
	.listing_01 div.left .img { position: static; top: 0; left: 0; z-index: auto; width: auto; height: auto; transform: none; }
	.listing_01 div.left { display: block; padding: 0; }
	.listing_01 div.left .img img { width: 100%; height: auto; }
	.listing_01 div.left .txt { padding: 10px; width: auto; }
	.listing_01 div.right div img { width: 120px; height: 100px; }
	.listing_01 div.right div div { padding-left: 10px; }
	}
	@media screen and (max-width: 576px) {
	.listing_01 { grid-template-columns: 100%; width: 100%; padding: 0 10px; }
	.listing_01 div.left { display: block; padding: 0; }
	.listing_01 div.right { display: grid; grid-template-rows: repeat(3, 1fr); column-gap: 20px; margin-top: 20px; }
	.listing_01 div.right div img { width: 70px; height: 50px; margin-bottom: 1px; }
	.listing_01 div.right div div { width: 90%; }
	}

.middle_type_02 { }
	.listing_02 { display: grid; grid-template-columns: 300px auto 300px; gap: 20px 20px; margin: 20px auto; width: 1280px; }
	.listing_02 div { font-size: 16px; border: 0; }
	.listing_02 div:nth-child(1) { border-bottom: 1px solid #ccc; }
	.listing_02 div:nth-child(1) img { width: 100%; height: 190px; }
	.listing_02 div:nth-child(3) img { width: 100%; height: 100%; }
	.listing_02 div:nth-child(4) img { width: 100%; height: 100%; }
	.listing_02 div:nth-child(6) { border-bottom: 1px solid #ccc; }
	.listing_02 div:nth-child(6) img { width: 100%; height: 190px; }
	.listing_02 div:nth-child(1) h2,
	.listing_02 div:nth-child(6) h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; padding-top: 8px; font-size: 16px; line-height: 22px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #000; word-break: break-all; }
	.listing_02 div h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; padding-top: 10px; font-size: 16px; line-height: 16px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
	.listing_02 div h2:first-child { border-top: 1px solid #ccc; }
	.listing_02 div p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; padding-bottom: 3px; border-bottom: 1px solid #ccc; font-size: 14px; line-height: 32px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #777; word-break: break-all; }
	
	@media screen and (max-width: 1024px) {
	.listing_02 { grid-template-columns: repeat(2, 1fr); width: 100%; padding: 0 10px; }
	.listing_02 div:nth-child(1) { order: 1;  border: 0; }
	.listing_02 div:nth-child(2) { order: 3; }
	.listing_02 div:nth-child(3) { order: 5; }
	.listing_02 div:nth-child(4) { order: 6; }
	.listing_02 div:nth-child(5) { order: 4; }
	.listing_02 div:nth-child(6) { order: 2; border: 0; }
	}
	@media screen and (max-width: 576px) {
	.listing_02 { grid-template-columns: repeat(1, 1fr); width: 100%; }
	.listing_02 div:nth-child(1) { order: 1; }
	.listing_02 div:nth-child(2) { order: 2; }
	.listing_02 div:nth-child(3) { order: 5; }
	.listing_02 div:nth-child(4) { order: 6; }
	.listing_02 div:nth-child(5) { order: 4; }
	.listing_02 div:nth-child(6) { order: 3; }
	.listing_02 div:nth-child(3) { width: 100%; }
	.listing_02 div:nth-child(4) { width: 100%; }
	.listing_02 div:nth-child(3) img { height: 100%; }
	.listing_02 div:nth-child(4) img { height: 100%; }
	.listing_01 div.left .img img { height: 274px; }
	.listing_02 div:nth-child(1) img { height: 300px; }

	}
	
.middle_type_03 { }
	.listing_03 { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 10px; gap: 20px; margin: 20px auto 20px; width: 1280px; }
	.listing_03 div { font-size: 16px; border: 0; }
	.listing_03 .box1 { grid-column-start: 1; grid-column-end: 4; grid-row-start: 1; grid-row-end: 3; display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 20px; }
	.listing_03 .box1 .nested { display: flex; padding: 20px; background: #e9e9e9; }
	.listing_03 .box1 .nested img { width: 80px; height: 60px; }
	.listing_03 .box1 .nested div { padding-left: 20px; background: #fff; }
	.listing_03 .box  { padding-left: 20px; border-left: 1px solid #ccc ; }
	.listing_03 .box h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 16px; line-height: 32px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
	.listing_03 .box p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 14px; line-height: 28px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #777; word-break: break-all; }
	.listing_03 .box1 h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 16px; line-height: 32px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
	.listing_03 .box1 p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 14px; line-height: 28px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #777; word-break: break-all; }
	
	@media screen and (max-width: 1024px) {
	.listing_03 { grid-template-columns: repeat(3, 1fr); width: 100%; }
	.listing_03 .box { margin: 0 10px; } 
	.listing_03 .box1 { display: grid; grid-template-columns: repeat(1, 1fr); gap: 10px; padding: 10px; } 
	}
	@media screen and (max-width: 576px) {
	.listing_03 .box1 { grid-column-end: 1; }
	.listing_03 { display: grid; grid-template-columns: 1fr; gap: 10px; }
	.listing_03 .box { display: grid; grid-template-columns: 1fr; gap: 10px; }
	}

.middle_type_04 { margin-bottom: 20px; padding-top: 20px; border-top: 1px solid #000; }
	.listing_04 { display: grid; gap: 20px 10px; margin: 0 auto; width: 1280px; }
	.listing_04 { grid-template-rows: 60px 60px; grid-template-columns: repeat(4, 60px 1fr); }
	.listing_04 .item { border: 0; }
	.listing_04 .item img { width: 100%; height: 100%; }
	.listing_04 .item:nth-child(2n+1) { border: 0; }
	.listing_04 .item h2 { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 16px; line-height: 32px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; word-break: break-all; }
	.listing_04 .item p { display: -ms-flexbox; display: -webkit-box; display: -moz-box; display: box; overflow: hidden; font-size: 14px; line-height: 28px; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #777; word-break: break-all; }

	@media screen and (max-width: 1024px) {
	.listing_04 { display: grid; gap: 10px; margin: 0 auto; padding: 0 10px; width: 100%; }
	.listing_04 { grid-template-rows: 60px 60px 60px 60px; grid-template-columns: repeat(2, 60px 1fr); }
	}
	@media screen and (max-width: 768px) {
	}
	@media screen and (max-width: 576px) {
	}

.wrap main .sub_area .type_05 { margin: 20px 0; border-top: 2px solid #000; border-bottom: 1px solid #000; }
.wrap main .sub_area .type_05 h2 { padding: 20px 0; width: 100%; font-size: 24px; font-weight: 600; color: #000; }
.wrap main .sub_area .type_05 .rank { display: flex; position: relative; width: 100%; border-top: 1px solid #000; }
.wrap main .sub_area .type_05 .rank div { padding: 30px; width: 50%; box-sizing: border-box; }
.wrap main .sub_area .type_05 .rank div:first-child::before { content: ''; position: absolute; top: 10px; bottom: 10px; left: 50%; width: 1px; height: auto; background: #ccc; } 
.wrap main .sub_area .type_05 .rank div > h2 { display: -webkit-box; overflow: hidden; padding: 0; font-size: 18px; font-weight: 600; line-height: 48px; -webkit-line-clamp: 1; -webkit-box-orient: vertical; text-overflow: ellipsis; }
.wrap main .sub_area .type_05 .rank div > p { display: -webkit-box; overflow: hidden; font-size: 14px; font-weight: 400; line-height: 24px; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; color: #777; }
.wrap main .sub_area .sub_main_01 { margin: 20px auto 0; width: 100%; height: 90px; text-align: center; }
.wrap main .sub_area .sub_main_01 img { width: 768px; height: 90px; }

	@media only screen and (max-width: 1024px) {
	.wrap main .sub_area .type_05 h2 { padding: 20px 10px; }
	.wrap main .sub_area .type_05 .rank div { padding: 10px; }
	.tablet { display: block; }

	}
	@media only screen and (max-width: 768px) {
	}
	@media only screen and (max-width: 576px) {
	.wrap main .sub_area .type_05 { margin: 0 0 20px 0; }
	}

/* detail */
.wrap main .detail_area { margin: 0 auto; width: 1280px; }
.wrap main .detail_area .detail { display: grid; grid-gap: 40px; grid-template-columns: repeat(auto-fill, minmax(940px,1fr) minmax(300px,2fr)); }
.wrap main .detail_area .detail .detail_tit { font-size: 32px; line-height: 38px; word-break: keep-all; }
.wrap main .detail_area .detail .detail_info { margin-top: 20px; font-size: 14px; word-break: keep-all; word-wrap: break-word; color: #666; }
.wrap main .detail_area .detail .detail_info span:after { content: "|"; padding: 0 5px; color: #999; }
.wrap main .detail_area .detail .detail_con { overflow: hidden; margin-top: 40px; margin-bottom: 40px; padding-top: 40px; padding-bottom: 40px; border-top: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8; font-size: 18px; font-weight: 400; line-height: 34px; word-break: keep-all; }
.wrap main .detail_area .detail .detail_con figure img { width: 100%; }
.wrap main .detail_area .detail .detail_con figure figcaption { padding: 5px; line-height: 1.5em; font-size: 12pt; color: #999; caption-side: bottom; }
.wrap main .detail_area .detail .comm_area { width: 100%; }
.wrap main .detail_area .detail .comm_area .tit_area { display: flex; align-items: center; width: 100%; }
.wrap main .detail_area .detail .comm_area .tit_area span { display: inline-block; margin-right: 20px; font-size: 18px; font-weight: 600; }
.wrap main .detail_area .detail .comm_area .tit_area .sns { overflow: hidden; }
.wrap main .detail_area .detail .comm_area .tit_area .sns li { float: left; font-size: 16px; line-height: 42px; }
.wrap main .detail_area .detail .comm_area .tit_area .sns li i { margin-left: 2px; line-height: 42px; }
.wrap main .detail_area .detail .comm_area .write_area { display: flex; flex-flow: nowrap; margin-top: 20px; border: 1px solid #ccc; width:100%; }
.wrap main .detail_area .detail .comm_area .write_area textarea { padding: 10px; width: 90%; border: 0; border-right: 1px solid #ccc; outline: 0; font-size: 16px; color: #666; resize: none; }
.wrap main .detail_area .detail .comm_area .write_area button { margin-left: auto; width: 10%; border: 0; outline: 0; font-size: 16px; background: #2c77ba; color:#fff; }
.wrap main .detail_area .detail .recom_area { margin: 20px 0; width: 100%; }
.wrap main .detail_area .detail .recom_area h2 { font-size: 18px; font-weight: 700; color: #000; }
.wrap main .detail_area .detail .recom_area .recommend { display: grid; margin-top: 10px; grid-template-columns: repeat(auto-fit, minmax(18%, 1fr)); grid-gap: 20px; box-sizing: border-box; }
.wrap main .detail_area .detail .recom_area .recommend div figure img { width: 100%; height: 120px; }
.wrap main .detail_area .detail .recom_area .recommend div figure figcaption { display: block; display: -webkit-box; overflow: hidden; font-size: 16px; line-height: 24px; overflow: hidden; white-space: normal; text-overflow: ellipsis; -webkit-line-clamp: 1; -webkit-box-orient: vertical; word-wrap: break-word; }
.wrap main .detail_area .detail .issue,
.wrap main .detail_area .detail .recent { margin: 20px 0; width: 100%; }
.wrap main .detail_area .detail .issue:first-child,
.wrap main .detail_area .detail .recent:first-child { margin-top: 0; }
.wrap main .detail_area .detail .issue .tit,
.wrap main .detail_area .detail .recent .tit { border-top: 1px solid #000; border-bottom: 1px solid #e8e8e8; font-size: 18px; font-weight: 600; height: 48px; line-height: 48px; }
.wrap main .detail_area .detail .issue .list,
.wrap main .detail_area .detail .recent .list { width: 100%; }
.wrap main .detail_area .detail .issue .list ul li,
.wrap main .detail_area .detail .recent .list ul li { overflow: hidden; padding: 10px 0; width: 100%; border-bottom: 1px solid #e8e8e8; font-size: 16px; font-weight: 400; line-height: 32px; }
.wrap main .detail_area .detail .issue .list ul li a,
.wrap main .detail_area .detail .recent .list ul li a { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; word-wrap: break-word; word-break: keep-all; color: #333; }
.wrap main .detail_area .detail_main_01 { margin-top: 40px; width: 100%; height: 90px; text-align: center; }
.wrap main .detail_area .detail_main_01 img { margin: 0 auto; width: 768px; height: 90px; }
.wrap main .detail_area .detail_aside_01,
.wrap main .detail_area .detail_aside_01 img,
.wrap main .detail_area .detail_aside_02,
.wrap main .detail_area .detail_aside_02 img,
.wrap main .detail_area .detail_aside_03,
.wrap main .detail_area .detail_aside_03 img { width: 300px; height: 250px; }
.wrap main .detail_area .detail_aside_01.web, 
.wrap main .detail_area .detail_aside_02.web, 
.wrap main .detail_area .detail_aside_03.web,
.wrap main .detail_area .detail_aside_04.web { display: block; }
.wrap main .detail_area .adv_area { display: none; }

	@media only screen and (max-width: 1024px) {
	.wrap main .detail_area { margin: 0 auto; width: 100%; }
	.wrap main .detail_area .detail { display: grid; grid-gap: 20px; grid-template-columns: repeat(auto-fit, minmax(100%, auto)); padding: 0 10px; }
	.wrap main .detail_area .detail .issue { float: left; margin: 0; width: 49%; }
	.wrap main .detail_area .detail .recent { float: right; margin: 0 0 0 2%; width: 49%; }
	.wrap main .detail_area .detail .issue:first-child,
	.wrap main .detail_area .detail .recent:first-child { margin-top: 20px; margin-left: 0; }
	.wrap main .detail_area .detail .issue .list ul li a,
	.wrap main .detail_area .detail .recent .list ul li a { -webkit-line-clamp: 1; }
	.wrap main .detail_area .detail .adv_area { display: flex; flex-flow: nowrap; justify-content: space-between; align-items: center; align-content: center; width: 100%; }
	.wrap main .detail_area .detail_aside_01,
	.wrap main .detail_area .detail_aside_01 img,
	.wrap main .detail_area .detail_aside_02,
	.wrap main .detail_area .detail_aside_02 img,
	.wrap main .detail_area .detail_aside_03,
	.wrap main .detail_area .detail_aside_03 img { width: 98%; height: auto; text-align: center; }
	.wrap main .detail_area .detail .right { display: flex; flex-flow: wrap; justify-content: space-between; align-content: center; }
	.wrap main .detail_area .detail .issue { order: 1; width: 49%; box-sizing: border-box; }
	.wrap main .detail_area .detail .recent { order: 2; width: 49%; box-sizing: border-box; }
	.wrap main .detail_area .detail .detail_aside_01 { order: 3; margin-top: 10px; width: 33%; box-sizing: border-box; }
	.wrap main .detail_area .detail .detail_aside_02 { order: 4; margin-top: 10px; width: 33%; box-sizing: border-box; }
	.wrap main .detail_area .detail .detail_aside_03 { order: 5; margin-top: 10px; width: 33%; box-sizing: border-box; }
	}
	@media only screen and (max-width: 768px) {
	.wrap main .detail_area .detail .comm_area .write_area textarea { width: 85%; }
	.wrap main .detail_area .detail .comm_area .write_area button { width: 15%; }
	.wrap main .detail_area .detail_main_01 { width: 100%; height: auto; }
	.wrap main .detail_area .detail_main_01 img { width: 100%; height: auto; }
	.wrap main .detail_area .detail .detail_con { margin-top: 20px; padding-top: 20px; }
	.wrap main .detail_area .detail { grid-gap: 10px; }
	.wrap main .detail_area .detail .issue, .wrap main .detail_area .detail .recent {margin: 10px 0; }
	}
	@media only screen and (max-width: 576px) {
	.wrap main .detail_area .detail .recom_area .recommend { grid-template-columns: repeat(auto-fit, minmax(45%, 1fr)); grid-gap: 20px; }
	.wrap main .detail_area .detail .comm_area .write_area { flex-flow: wrap; }
	.wrap main .detail_area .detail .comm_area .write_area textarea { width: 100%; border: 0; }
	.wrap main .detail_area .detail .comm_area .write_area button { width: 100%; height: 60px; border-top: 1px solid #ccc; }
	.wrap main .detail_area .detail_main_01 { width: 100%; height: auto; }
	.wrap main .detail_area .detail_main_01 img { width: 100%; height: auto; }
	}
	@media only screen and (max-width: 428px) {
	.wrap main .detail_area .detail .issue { margin-left: 0; width: 100%; }
	.wrap main .detail_area .detail .recent { margin-left: 0; width: 100%; }
	}