/* ---------------------------------------- */
/* GENERAL
/* ---------------------------------------- */

@import url(font.css);
@import url(reset.css);
@import url(layout.css);

*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
::after,::before{display:block;}
h1,a,button{display:inline-block; outline: 0;}
/*h1,h2,h3,h4{font-weight:normal;}*/
a,button{-webkit-tap-highlight-color: rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;text-decoration:none;border:none;background:none;cursor:pointer; }
/* webkit-transition: all 250ms ease-in-out; -moz-transition: all 250ms ease-in-out; -o-transition: all 250ms ease-in-out; transition: all 250ms ease-in-out; */
input, textarea{-webkit-appearance:none;-webkit-border-radius:0;}
html {-webkit-text-size-adjust:none !important; scroll-behavior:smooth;}
html, body { width: 100%; overflow: hidden; height: 100%; max-width: 720px; scroll-behavior: smooth;} /*overflow: hidden; height: 100%; max-width: 720px;*/
body{color: #222; font-family: "Noto Sans CJK", "Noto Sans", sans-serif; } /*overflow: hidden;*/


/* ---------------------------------------- */
/* Common
/* ---------------------------------------- */
a { color: #181828; cursor: pointer; }

a.disabled,
a[disabled=true] { cursor: not-allowed; pointer-events: none; opacity: .5; }


h1, h2, h3, h4, h5 { line-height: 100%; }
h1 { font-size: 2.5em; }
h2 { font-size: 2em; }
h3 { font-size: 1.5em; }

p.blockUi { position: fixed; left: 0; top: 0; bottom: 0; width: 100%; height: 100%; background: #fff; }
p.blockUi.transparent { position: absolute; background-color: transparent; }

img { width: 100%; height: auto; }

.img, .icon { background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important; }
.oversize { width: 100% !important; height: auto; }
.transparent { background-color: transparent; }
.disabled { cursor: default !important; }

.ic_menu { background-image: url('/images/ic_menu.png'); }
.ic_person { background-image: url('/images/ic_person.png'); } 
.ic_close { background-image: url('/images/ic_close.png'); }  
.ic_thin_close { background-image: url('/images/ic_thin_close.png'); }  
.ic_search { background-image: url('/images/ic_search.png'); } 
.ic_b_search { background-image: url('/images/ic_b_search.png'); } 
.ic_phone { background-image: url('/images/ic_phone.png'); }  

.ic_car { background-image: url('/images/ic_car.png'); } 
.ic_bus { background-image: url('/images/ic_bus.png'); } 
.ic_subway { background-image: url('/images/ic_subway.png'); }  

.ic_sns_blog { background-image: url('/images/ic_sns_blog.png'); } 
.ic_sns_tstory { background-image: url('/images/ic_sns_tstory.png'); } 
.ic_sns_facebook { background-image: url('/images/ic_sns_facebook.png'); } 
.ic_sns_instagram { background-image: url('/images/ic_sns_instagram.png'); } 

.ic_fortune1 { background-image: url('/images/ic_fortune1.png'); } 
.ic_fortune2 { background-image: url('/images/ic_fortune2.png'); } 
.ic_fortune3 { background-image: url('/images/ic_fortune3.png'); } 
.ic_fortune4 { background-image: url('/images/ic_fortune4.png'); } 
.ic_fortune5 { background-image: url('/images/ic_fortune5.png'); } 
.ic_fortune6 { background-image: url('/images/ic_fortune6.png'); } 
.ic_fortune7 { background-image: url('/images/ic_fortune7.png'); } 
.ic_fortune8 { background-image: url('/images/ic_fortune8.png'); }  

.ic_recruit1 { background-image: url('/images/ic_recruit1.png'); } 
.ic_recruit2 { background-image: url('/images/ic_recruit2.png'); } 
.ic_recruit3 { background-image: url('/images/ic_recruit3.png'); } 

.ic_service1 { background-image: url('/images/ic_service1.png'); }
.ic_service2 { background-image: url('/images/ic_service2.png'); }
.ic_service3 { background-image: url('/images/ic_service3.png'); }
.ic_service4 { background-image: url('/images/ic_service4.png'); }
.ic_service_black {background-image: url('https://www.lemarry.co.kr/images/sub/sub3/black-gift-icon.png');}


.active .ic_fortune1,
a:hover .ic_fortune1 { background-image: url('/images/ic_fortune1_on.png'); }
.active .ic_fortune2,
a:hover .ic_fortune2 { background-image: url('/images/ic_fortune2_on.png'); } 
.active .ic_fortune3,
a:hover .ic_fortune3 { background-image: url('/images/ic_fortune3_on.png'); } 
.active .ic_fortune4,
a:hover .ic_fortune4 { background-image: url('/images/ic_fortune4_on.png'); } 
.active .ic_fortune5,
a:hover .ic_fortune5 { background-image: url('/images/ic_fortune5_on.png'); } 
.active .ic_fortune6,
a:hover .ic_fortune6 { background-image: url('/images/ic_fortune6_on.png'); } 
.active .ic_fortune7,
a:hover .ic_fortune7 { background-image: url('/images/ic_fortune7_on.png'); } 
.active .ic_fortune8,
a:hover .ic_fortune8 { background-image: url('/images/ic_fortune8_on.png'); }  

.dim { webkit-transition: all 200ms ease-in-out; -moz-transition: all 200ms ease-in-out; -o-transition: all 200ms ease-in-out; transition: all 200ms ease-in-out; }


/* Chrome, Firefox, Opera, Safari 10.1+ */
::placeholder { color: #222; opacity: 1; font-family: "Noto Sans CJK", "Noto Sans", sans-serif; /* Firefox */ }
.pop_box ::placeholder { opacity: 1; color: #222;}
.certified::placeholder { opacity: .5; }

/* Internet Explorer 10-11 */ 
/* Microsoft Edge */
:-ms-input-placeholder,
::-ms-input-placeholder { color: #bbbbbd; }

.displaynone {display:none;}
/* ---------------------------------------- */
/* CONTENT
/* ---------------------------------------- */
.all_wrap { position: fixed; width:100%; height: 100%; font-size: 14px; overflow-x: hidden; overflow-y: auto; color: #222; line-height: 1; letter-spacing: -0.07em;}
/*.all_wrap { /*position: fixed;*/ width:100%; /*height: 100%;*/ font-size: 14px; /*overflow-x: hidden; overflow-y: auto;*/ color: #222; line-height: 1; letter-spacing: -0.07em;}
*/section { position:relative; padding: 0; }

.scrollOff{position:fixed;overflow:hidden;height:100%; }





/* ---------------------------------------- */
/* HEADER
/* ---------------------------------------- */
header { position:relative; }

.header_wrap { position:relative; min-height: 55px; }
.header_gnb { position:relative; margin:0 auto; padding: 0px; width:100%; height: 55px; z-index: 10000; }

.header_gnb .headerLogo { position: absolute; left: 0; top: 0; width: 170px; height: 55px; background-image: url('/images/top_logo.png'); }
.header_gnb .headerLogo a { display: block; width: 100%; height: 100%; text-indent: -9999px; }

.header_gnb .icon_box { position: absolute; top: 18px; right: 20px; }
.header_gnb .icon_box .icon { display: inline-block; margin-left: 10px; width: 20px; height: 20px; text-indent: -9999px; }



/* ---------------------------------------- */
/* NAV
/* ---------------------------------------- */
nav { display: none; position: fixed; left: 0px; top: 0px; margin-top: 0; z-index: 0; width: 100%; height: 100% !important; overflow: hidden; }
nav > div { position: fixed; left: -100%; width: 100%; height: 100%; background-color: #fff; z-index: 10300; box-shadow: 3px 0 5px rgba(0,0,0,0.35); }
nav > div > p { position: relative; }

nav .ic_close { position: absolute; top: 18px; right: 25px; width: 25px; height: 25px; }
nav .guide_box { position: relative; padding: 28px 20px 26px; width: 100%; background-color: #d6c3aa; }
nav .guide_box p { font-size: 1.15em; line-height: 22px; }
nav .guide_box .btn_box { position: relative; margin-top: 10px; }
nav .guide_box .btn_box a { margin-right: 5px; padding-bottom: 2px; width: 80px; text-align: center; font-size: 1.1em; line-height: 23px; border: 1px solid #5a5e5e; border-radius: 30px; }
nav .guide_box .btn_box a.active { color: #fff; background-color: #352d7a; border-color: #352d7a; }

nav .menu_box { position: relative; width: 100%; height: calc(100% - 134px); }
nav .menu_box > div { display: block; overflow-y: auto; }

nav .main_menu_box { position: absolute; left: 0; top: 0; padding: 20px; width: 165px; height: 100%; font-size: 1.2em; font-weight: bold; background-color: #352d7a; }
nav .main_menu_box .mainMenu li { margin-bottom: 18px; }
nav .main_menu_box .mainMenu li a { color: #8982cb; }
nav .main_menu_box .mainMenu li a:active,
nav .main_menu_box .mainMenu li a.active { color: #fff; }

nav .sideMenu { margin-top: 26px; }
nav .sideMenu li { padding: 16px 0; color: #fff; border-bottom: 1px solid #8982cb; }
nav .sideMenu li:first-child { border-top: 1px solid #8982cb; }
nav .sideMenu li a { display: block; position: relative; color: #fff; font-size: 0.95em; }
nav .sideMenu li a:after { content: ''; position: absolute; top: 50%; right: 0; margin-top: -5px; width: 6px; height: 10px; background-image: url('/images/ic_arrow_right.png'); background-size: cover; }
nav .sideMenu li .phone { margin-top: 5px; font-size: 1.25em; color: #d6c3aa; letter-spacing: -0.06em; }
nav .sideMenu li .phone:after { display: none; }
nav .sideMenu li .phone:hover,
nav .sideMenu li .phone:active { color: #d6c3aa !important; }

nav .sub_menu_box { position: relative; margin-left: 165px; padding: 0 20px 300px 20px; width: calc(100% - 165px); height: 100%; }
nav .sub_menu_box li { padding: 6px 0; }
nav .sub_menu_box li:first-child { margin-bottom: 5px; padding: 15px 0 10px; font-size: 1.3em; font-weight: bold; border-bottom: 1px solid #e5e5e5; }
nav .sub_menu_box li a { font-size: 1.15em; font-weight: 200; }
nav .sub_menu_box ul:first-child li:first-child { padding-top: 20px; }



/* ---------------------------------------- */
/* FOOTER
/* ---------------------------------------- */
footer { position: relative; padding-bottom: 90px; width: 100%; color: #989898; font-size: 0.9em; letter-spacing: -0.02em; text-align: center; background-color: #232323; z-index: 2;}
footer a { display: block; color: rgba(255,255,255,0.7); }
footer a:hover, footer a:active { color: #fff !important; }

footer .sns_list { position: relative; width: 100%; }
footer .sns_list ul { display: table; width: 100%; border-bottom: 1px solid #5a5e5e; }
footer .sns_list li { display: table-cell; width: calc(100% / 4); height: 44px; border-left: 1px solid #5a5e5e; vertical-align: middle; }
footer .sns_list li:first-child { border-left: 0; }
footer .sns_list li a { width: 100%; height: 100%; background-size: 22px !important; text-indent: -9999px; }
footer .tel_box {background-color:#353432;width:100%;padding:1px 0;}
footer .tel_box .counseling_box { margin: 10px 30px 10px; position: relative; color: #fff; }
/*footer .tel_tle {width:100%;height:25px;position:relative;margin-bottom:0px;}
footer .tel_txt_tle {font-weight: bold;display: inline-block;width:50%;float:left;height:25px;line-height: 25px;}
footer .tel_txt {text-align: right;width: 100%;padding-right: 46px;}
footer .tel_icon_tle {display: inline-block;position: absolute;transform: translate(-50%, 0);left:50%;}
footer .tel_icon {width: 18px;height: 18px;margin-top:5px;}
footer .tel_number_tle {display: inline-block;width:50%;float:left;height:25px;}
footer .tel_number {display:inline-block;text-align: left;width: 100%;padding-left: 25px;}*/
footer .tel_tle {width:100%;height:25px;position:relative;margin-bottom:0px;display: flex;justify-content: center;}
footer .tel_txt_tle {font-weight: bold;height:25px;line-height: 25px;display: flex;min-width: 65px;}
footer .tel_txt {}
footer .tel_icon_tle {display: flex;padding: 0 10px 0 20px;}
footer .tel_icon {width: 18px;height: 18px;margin-top:5px;}
footer .tel_number_tle {height:25px;display: flex;}
footer .tel_number {display:inline-block;text-align: left;width: 100%;}

footer .tel_number a {font-weight: bold;color: #d6c3aa;font-size: 2em;line-height: 25px;min-width: 116px;}
footer .counseling_box { margin: 20px 0px; position: relative; color: #fff; }
footer .counseling_box .phone_info { margin-bottom: 14px; position: relative; font-weight: bold; }
footer .counseling_box .phone_info .icon { display: inline-block; margin: 5px 15px 0 40px; width: 18px; height: 18px; vertical-align: middle; }
footer .counseling_box .phone_info span { display: inline-block; vertical-align: middle; }
footer .counseling_box .phone_info .phone { display: inline-block; vertical-align: middle; color: #d6c3aa; font-size: 2em;  }
footer .counseling_box .phone_info .phone:hover,
footer .counseling_box .phone_info .phone:active { color: #d6c3aa !important; }
footer .counseling_box > ul { display: flex; width: 90%; border: 1px solid #5a5e5e;margin: 0 auto; }
footer .counseling_box > ul > li { position: relative; display: table-cell; width: calc(100% / 2); height: 33px; border-left: 1px solid #5a5e5e; vertical-align: middle;line-height:33px; }
footer .counseling_box > ul > li:first-child { border-left: 0; }
footer .counseling_box > ul > li > a { height: 100%; line-height: 33px; }
footer .counseling_box > ul ul { display: none; position: absolute; right: -1px; bottom: 33px; padding: 4px 0; width: calc(100% + 2px); background-color: #232323; border: 1px solid #5a5e5e; }
footer .counseling_box > ul ul li a { padding: 10px 0; }
footer .counseling_box > ul > li > a:active + ul,
footer .counseling_box > ul > li > a.active + ul { display: block; }

footer .privacy_box {width:90%;margin:0 auto;padding:10px 0;font-size: 0.92em;}
footer .privacy_box ul {text-align:left;}
footer .privacy_box li { display: inline-block; margin-left: 5px; padding-left: 5px; border-left: 1px solid #5a5e5e; margin-top:3px; margin-bottom:3px;}
footer .privacy_box li:first-child { border-left: 0;margin-left:0px;padding-left:0px; margin-top:0px; margin-bottom:0px;}
footer .privacy_box li a { color: #cccccc; letter-spacing: -1px; line-height: 12px; }

footer .addr_box {width:90%;margin:0 auto;padding:0px 0 15px;font-size: 0.92em;}
footer .addr_box ul {text-align:left;font-weight: 300;}
footer .addr_box li {padding: 2px 0;}
footer .addr_box li:last-child { padding-top: 15px; }

footer .copyright_box { position: relative; margin-top: 15px; width: 100%; font-size: 0.9em; }
footer .copyright_box p { display: inline-block; }
footer .copyright_box a { position: relative; display: inline-block; margin-left: 5px; padding-bottom: 2px; color: #fff; border-bottom: 1px solid #fff; }
footer .copyright_box a:after { content: ''; display: inline-block; margin-left: 3px; width: 6px; height: 4px; margin-bottom: 3px; background-image: url('/images/ic_arrow_bottom.png'); background-position: center; background-size: cover; vertical-align: middle; }
footer .copyright_box .sub { display: none; position: relative; margin-top: 15px; padding: 0; width: 100%; }
footer .copyright_box .sub ul { margin-bottom: 2px; }
footer .copyright_box .sub li { display: inline-block; margin-left: 5px; margin-bottom: 5px; padding-left: 5px; border-left: 1px solid #5a5e5e; }
footer .copyright_box .sub li:first-child { margin-left: 0; padding-left: 0; border-left: 0; }
footer .copyright_box .sub ul:last-child,
footer .copyright_box .sub ul:last-child li { margin-bottom: 0; }


/* ---------------------------------------- */
/* MAIN
/* ---------------------------------------- */
.swiper-container { clear: both; width: 100%; overflow: inherit !important; }
.swiper-button { position: absolute; top: 50%; margin-top: -17px; width: 22px; height: 33px; background-size: cover; opacity: .3; }
.swiper-button:focus,
.swiper-button:active { opacity: 1; border: 0; }
.swiper-button.swiper-button-prev { border: 0;outline: 0;left: -40px; background-image: url('/images/ic_gallery_arrow_prev.png'); }
.swiper-button.swiper-button-next { border: 0;outline: 0;right: -40px; background-image: url('/images/ic_gallery_arrow_next.png'); }

#main_banner {margin-bottom: 290px;}
#main_banner .swiper-slide { position: relative; padding: 75px 50px; width: 100%; height: 540px; color: #fff; }
#main_banner .swiper-slide.slide_01 { background-color: #352d7a; }
#main_banner .swiper-slide.slide_02 { background-color: #a17d4d; }
#main_banner .swiper-slide.slide_03 { background-color: #302c29; }
#main_banner .swiper-slide h2 { font-size: 2.2em; line-height: 1.3; font-family: 'Noto Serif KR', serif; font-weight: 400; }
#main_banner .swiper-slide p { margin: 20px 0 10px; font-size: 1.15em; line-height: 1.6; letter-spacing: -0.05em; }
#main_banner .swiper-slide a { padding-bottom: 3px; font-size: 0.9em; font-weight: 600; color: #fff; border-bottom: 2px solid #fff; letter-spacing: -0.05em}
#main_banner .swiper-slide img { position: absolute; bottom: -28.3%; right: 0; width: calc(100% - 20px); max-width: 380px; z-index: 100; }/*max-width630*/

#main_banner .swiper-container-horizontal > .swiper-pagination-bullets, 
#main_banner .swiper-pagination-custom, .swiper-pagination-fraction { bottom: inherit; top: 280px; left: 40px; text-align: left; }
#main_banner .swiper-pagination-bullet { display: inline-block; width: 10px; height: 10px; background:#fff; border-radius: 100%; opacity: 1; }
#main_banner .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet { margin: 0 10px; vertical-align: middle; }
#main_banner .swiper-pagination-bullet.swiper-pagination-bullet-active { width: 14px; height: 14px; background: transparent; border: 1px solid #fff; }


.detail_view_list { clear: both; display: block; padding: 0 50px; width: 100%; }
.detail_view_list .swiper-slide a { display: block; padding: 25px; height: 100%; color: #fff; }
.detail_view_list .swiper-slide h3 { font-size: 1.4em; font-weight: normal; line-height: 1.5; }
.detail_view_list .swiper-slide p { position: absolute; bottom: 25px; padding-bottom: 3px; font-size: 0.9em; font-weight: 600; letter-spacing: -0.05em; border-bottom: 2px solid #fff; }
#quick_banner { position: absolute; top: 580px; left: 0px; z-index: 200; } 
#quick_banner .swiper-slide { width: 206px; height: 206px; }
#quick_banner .swiper-slide:nth-child(even) { background-color: #a17d4e; }
#quick_banner .swiper-slide:nth-child(odd) { background-color: #302c29; }

.test_box { clear: both; display: block; position: relative; padding: 50px 40px; width: 100%; }
.test_box li { position: relative; margin-bottom: 10px; padding-bottom: 10px; width: 100%; border-bottom: 2px solid #302c29; }
.test_box li a { position: relative; display: block; font-size: 1.2em; font-weight: 600; line-height: 35px; }
.test_box li a:after { 
	content: ''; position: absolute; right: 0; top: 0; width: 35px; height: 35px; border: 1px solid #d6c3aa; 
	background: url('/images/ic_arrow_black_right.png') center no-repeat; background-size: 8px 7px;
}

.title_box { position: relative; margin: 50px 0 25px; width: 100%; text-align: center; }
.title_box h2 { margin-bottom: 25px; font-size: 1.8em; }
.title_box p { font-size: 1.15em; line-height: 20px; letter-spacing: -0.06em; }


.party_box { position: relative; padding: 50px 50px 0; width: 100%; min-height: 410px; background: url('/images/main_party_bg.jpg') top no-repeat; background-size: 100%; }
.party_box > div { position: absolute; bottom: -50px; padding: 45px 20px; width: calc(100% - 100px); color: #fff; text-align: center; background-color: #302c29; }
.party_box h2 { margin-bottom: 30px; font-size: 1.95em; font-weight: 300; line-height: 1.5; letter-spacing: 0; font-family: 'Noto Serif KR', serif; }
.party_box h3 { margin-bottom: 20px; font-size: 1.3em; color: #d6c3aa; font-family: 'Noto Serif KR', serif; }
.party_box p { margin-bottom: 20px; font-size: 1.1em; line-height: 1.6; }
.party_box a { position: relative; display: block; padding: 13px; color: #fff; border: 1px solid #acaba9; }
.party_box a:after { content: ''; position: absolute; right: 25px; top: 50%; margin-top: -3px; width: 8px; height: 7px; background: url('/images/ic_arrow_white_right.png') center no-repeat; background-size: 8px 7px; }

#party_banner { position: relative; margin-top: 100px; padding: 0 50px; width: 100%; }
#party_banner img { width: 100%; height: auto; }

/*miin contest*/

.contest_box a {     text-align: center;position: relative; display: block; padding: 13px; color: #fff; border: 1px solid rgba(255, 255, 255, .5);font-size: 0.7em; font-weight: 300;}
.contest_box a:after { content: ''; position: absolute; right: 25px; top: 50%; margin-top: -3px; width: 8px; height: 7px; background: url('/images/ic_arrow_white_right.png') center no-repeat; background-size: 8px 7px; }



.media_banner .swiper-container { margin-bottom: 20px; }
.media_banner .swiper-slide { width: 315px; height: 320px; }
.media_banner .swiper-slide a { padding: 25px; letter-spacing: -0.01em; background-color: #352d7a; }
.media_banner .swiper-slide h5 { margin-top: 20px; font-weight: normal; font-size: 1.1em; line-height: 1.5; }
.media_banner .swiper-slide p { bottom: 80px; font-weight: bold; font-size: 0.9em; letter-spacing: -0.05em; }
.media_banner .swiper-container .swiper-slide h3 { font-weight: 500; }

.media_banner .swiper-slide:nth-child(even) a { padding: 20px; color: #222; border: 5px solid #ccc; background-color: #fff; }
.media_banner .swiper-slide:nth-child(even) p { border-bottom-color: #222; }

.media_banner .swiper-container.media .swiper-slide a { background-image: url('/images/main_media_bg.jpg'); background-size: cover; }
.media_banner .swiper-container.media .swiper-slide:nth-child(even) a { background: #fff; }


.recruit_box { position: relative; display:none; margin: 60px 0 80px; padding: 50px; width: 100%; text-align: center; background: url('/images/main_recruit_bg.jpg') no-repeat; background-size: cover; }
.recruit_box h3 { color: #fff; font-size: 1.4em; line-height: 1.5; font-family: 'Noto Serif KR', serif; }
.recruit_box a { position: absolute; bottom: -22px; display: block; padding: 15px; width: calc(100% - 100px); color: #fff; background-color: #302c29; }
.recruit_box a:after { content: ''; position: absolute; right: 25px; top: 50%; margin-top: -3px; width: 8px; height: 7px; background: url('/images/ic_arrow_white_right.png') center no-repeat; background-size: 8px 7px; }




/* ---------------------------------------- */
/* SUB
/* ---------------------------------------- */
.sub_header_box { display: table; position: relative; width: 100%; height: 100px; background-size: cover; background-position: center; }
.sub_header_box.bg_0 { background-image: url('/images/sub_header_bg0.jpg'); }
.sub_header_box.bg_1 { background-image: url('/images/sub_header_bg1.jpg'); }
.sub_header_box.bg_2 { background-image: url('/images/sub_header_bg2.jpg'); }
.sub_header_box.bg_3 { background-image: url('/images/sub_header_bg3.jpg'); }
.sub_header_box.bg_4 { background-image: url('/images/sub_header_bg4.jpg'); }
.sub_header_box.bg_5 { background-image: url('/images/sub_header_bg5.jpg'); }
.sub_header_box.bg_6 { background-image: url('/images/sub_header_bg6.jpg'); }
.sub_header_box.bg_7 { background-image: url('/images/sub_header_bg7.jpg'); }
.sub_header_box > div { display: table-cell; position: relative; width: 100%; color: #fff; text-align: center; vertical-align: middle; }
.sub_header_box h2 { margin-top: 5px; font-size: 1.8em; }
.sub_header_box p { font-size: 0.95em; font-weight: 100; letter-spacing: 0; }
.sub_header_box a { position: absolute; right: 10px; top: 50%; margin-top: -20px; width: 40px; height: 40px; background: #967b50 url('/images/ic_arrow_right.png') center no-repeat; background-size: 10px 16px; }


article { position: relative; padding: 0px 30px 45px; width: 100%; }
article.type2 { padding: 0 30px; }
.sub_header_title_box { position: relative; margin: 60px 0 30px; width: 100%; text-align: center; }
.sub_header_title_box h2 { position: relative; font-size: 1.9em; line-height: 1.2; }
.sub_header_title_box h2:after { 
	content: ''; position: absolute; top: -18px; left: 50%; margin-left: -19px; width: 38px; height: 10px; 
	background: url('/images/sub_title_bg.png'); background-size: cover;
}
.sub_header_title_box p { margin-top: 20px; font-size: 1.25em; line-height: 1.5; font-weight: 300; letter-spacing: -0.08em; text-align: left; }
.sub_header_title_box p span { font-size: 0.85em; }

.sub_header_title_box.sub h2:after { display: none; }
.sub_header_title_box.line_bottom { padding-bottom: 20px; margin-bottom: 20px; border-bottom: 2px solid #000; }


.media_link { position: relative; }
.media_link:after { content: ''; position: absolute; left: 50%; top: 50%; margin-left: -28px; margin-top: -28px; width: 55px; height: 55px; background: url('/images/ic_play.png'); background-size: cover; }
.media_link.noplay:after { display: none; }
.media_link.top { z-index: 1000; }


h3.sub_title { display: block; margin: 40px 0 15px; padding-bottom: 15px; font-size: 1.5em; line-height: 1.2em; border-bottom: 2px solid #000; }
h3.sub_title.top { margin-top: 0px; padding: 15px 0 0; border-top: 2px solid #000; border-bottom: 0; }
h3.sub_title.noLine { padding-bottom: 0; border: 0; }


.introduce_box { position: relative; /*padding-top: 50px;*/ width: 100%; }
.introduce_box li { position: relative; margin-bottom: 50px; width: 100%; }
.introduce_box li:last-child { margin-bottom: 0; }
.introduce_box li h3 { color: #352D7A; font-size: 1.25em; font-weight: 500; }
.introduce_box li h2 { margin-bottom: 15px; font-size: 1.5em; line-height: 1.3; }
.introduce_box li img { margin-top: 10px; }
.introduce_box li p { margin-bottom: 15px; font-size: 1.12em; line-height: 1.3; font-weight: 300; letter-spacing: -0.04em; word-break: keep-all;}
.introduce_box li p strong { color: #352D7A; font-weight: 600 !important; }


.ceo_box { position: relative; /*padding-bottom: 350px;*/ width: 100%; /*background: url('/images/ceo_bg.jpg') bottom no-repeat; background-size: 100%;*/ }
.ceo_box p { margin-bottom: 15px; font-size: 1.12em; line-height: 1.3; font-weight: 300; letter-spacing: -0.02em; }


.history_list { position: relative; margin-top: 20px; padding-left: 5px; width: 100%; }
.history_list > ul { position: relative; padding-left: 5px; width: 100%; }
.history_list > ul:before { content: ''; position: absolute; left: 0; top: 30px; width: 1px; height: calc(100% - 70px); background-color: #d2d2d2; }
.history_list > ul > li { padding-top: 3px; }
.history_list li { position: relative; padding-left: 15px; }
.history_list li:after { content: ''; position: absolute; left: -9px; top: 28px; width: 10px; height: 10px; background-color: #352d7a; border-radius: 50%; }
.history_list li h1 { display: block; margin: 15px 0 10px; font-size: 1.8em; }
.history_list img { margin-top: 25px; }
.history_list img.full { margin-left: -55px; width: calc(100% + 85px); }
.history_list li li { padding-left: 8px; font-weight: 300; font-size: 1.1em; line-height: 1.5; }
.history_list li li:after { left: 0; top: 12px; width: 2px; height: 2px; background-color: #000; }
.history_list li li strong { color: #967b50; font-weight: 400 !important; }


.history_list.award { margin-top: 50px; }
.history_list.award,
.history_list.award li,
.history_list.award > ul { padding: 0; text-align: center; }
.history_list.award > ul:before,
.history_list.award li:after { display: none; }
.history_list.award li h3 { position: absolute; top: -10px; left: 50%; margin-left: -26.4px; padding: 0 10px; background-color: #fff; color: #cdae84; font-size: 1.15em; font-weight: 500; }
.history_list.award li h1 { font-size: 1.38em; line-height: 1.4; }
.history_list.award > ul > li { margin-top: 50px; border-top: 1px solid #000; }
.history_list.award img { width: inherit; max-width: 100px; }
.history_list.award img.media { margin-top: 45px; width: 100%; max-width: 100%; }
.history_list.award li li h1 + p { margin-bottom: 7px; }
.history_list.award .btn_submit { margin-top: 15px; }
.gallery-tle {padding:40px 0 20px 0;}
.gallery li > img {width:100%;height:auto;max-width:100% !important;margin-top:0 !important;}
.swiper img {width:100%;height:auto;max-width:100% !important;margin-top:0 !important;}
.gallery-tle .swiper-button-prev {background-image: url(/images/party/prev-btn.jpg);width:30px !important;height:100px !important;background-size: 100% 100% !important;left:0;}
.gallery-tle .swiper-button-next {background-image: url(/images/party/next-btn.jpg);width:30px !important;height:100px !important;background-size: 100% 100% !important;right:0;}

.location_box { position: relative; width: 100%; }
.location_box dl { position: relative; margin-top: 30px; display: table; width: 100%; }
.location_box dt, .location_box dd { display: table-cell; vertical-align: middle; }
.location_box dt { width: 90px; text-align: center; }
.location_box i { display: inline-block; width: 50px; height: 59px; }
.location_box dd { padding-left: 10px; width: calc(100% - 90px); font-weight: 300; font-size: 1.05em; line-height: 1.3; }
.location_box dd h3 { font-size: 1.05em; line-height: 1.3; }
.location_box dd p { line-height: 1.4; }
.location_box dd li { margin-top: 2px; letter-spacing: 0; }
.location_box dd li i { margin-right: 2px; width: 12px; height: 12px; border-radius: 50%; }
.location_box dd li i.bg_blue { background-color: #4670ba !important; }
.location_box dd li i.bg_green { background-color: #20b211 !important; }
.location_box dd li i.bg_red { background-color: #d62626 !important; }


.service_list { position: relative; width: 100%; text-align: center; }
.service_list li { margin-bottom: 30px; font-size: 1.12em; font-weight: 300; line-height: 1.5; }
.service_list li i { display: inline-block; margin-bottom: 8px }
.service_list li i.ic_service1 { width: 48px; height: 45px; }
.service_list li i.ic_service2 { width: 50px; height: 41px; }
.service_list li i.ic_service3 { width: 45px; height: 45px; }
.service_list li i.ic_service4 { width: 59px; height: 45px; }
.service_list li i.ic_service_black {width: 43px; height: 47px;}
.service_list li h3 { position: relative; padding-bottom: 15px; margin-bottom: 15px; border-bottom: 2px solid #000; }
.service_list li h4 { margin-bottom: 5px; font-size: 1.2em; }
.service_list li p {font-size: 1.05em; word-break: keep-all; margin-bottom: 17px;}
.service_list li .img-wrap {max-width: 80%; margin: 0 auto;}


.counseling_opt_box { position: relative; margin-bottom: 15px; padding-bottom: 10px; width: 100%; text-align: center; border-bottom: 2px solid #000; }
.counseling_opt_box > .select_box { margin-bottom: 10px; padding-bottom: 15px; height: 45px; border: 0; border-bottom: 2px solid #000; }
.counseling_opt_box > .select_box:before { top: 13px; right: 0; width: 16px; height: 10px; background-image: url(/images/ic_arrow_big_black_bottom.png); }
.counseling_opt_box > .select_box.active:before { background-image: url(/images/ic_arrow_big_black_up.png); }
.counseling_opt_box > .select_box label { font-size: 1.5em; font-weight: 700; }
.counseling_opt_box > .select_box ul { display: none; position: absolute; width: 100%; text-align: center; border-top: 1px solid #000; z-index: 100; }
.counseling_opt_box > .select_box.active ul { display: block; }
.counseling_opt_box > .select_box li a { display: block; padding: 10px 0; font-size: 1.4em; font-weight: 700; border-bottom: 1px solid #000; cursor: pointer; background-color: #fff; }
.counseling_opt_box > .select_box li a:hover,
.counseling_opt_box > .select_box li a:active,
.counseling_opt_box > .select_box li a.active {  background-color: #d6c3aa; }

.counseling_opt_box { position: relative; margin-bottom: 15px; padding-bottom: 10px; width: 100%; text-align: center; border-bottom: 2px solid #000; }
.counseling_opt_box > .select_box_contest { margin-bottom: 10px; padding-bottom: 15px; height: 45px; border: 0; border-bottom: 2px solid #000; }
.counseling_opt_box > .select_box_contest:before { top: 13px; right: 0; width: 16px; height: 10px; background-image: url(/images/ic_arrow_big_black_bottom.png); }
.counseling_opt_box > .select_box_contest.active:before { background-image: url(/images/ic_arrow_big_black_up.png); }
.counseling_opt_box > .select_box_contest label { font-size: 1.5em; font-weight: 700; }
.counseling_opt_box > .select_box_contest ul { display: none; position: absolute; width: 100%; text-align: center; border-top: 1px solid #000; z-index: 100; }
.counseling_opt_box > .select_box_contest.active ul { display: block; }
.counseling_opt_box > .select_box_contest li a { display: block; padding: 10px 0; font-size: 1.4em; font-weight: 700; border-bottom: 1px solid #000; cursor: pointer; background-color: #fff; }
.counseling_opt_box > .select_box_contest li a:hover,
.counseling_opt_box > .select_box_contest li a:active,
.counseling_opt_box > .select_box_contest li a.active {  background-color: #d6c3aa; }
.counseling_opt_box .cont_box { display: none; position: relative; width: 100%; font-size: 1.08em; font-weight: 300; line-height: 1.5; }
.counseling_opt_box .cont_box.active { display: block; }
.counseling_opt_box .cont_box p { margin-bottom: 10px; }
.counseling_opt_box .cont_box p.txt1 {font-weight: 500;margin-bottom: 7px; }
.counseling_opt_box .cont_box p.txt2 {font-weight: 100;margin-bottom: 2px; }
.counseling_opt_box .cont_box p.txt3 { font-weight: 100;margin-bottom: 20px; }
.counseling_opt_box .cont_box p.txt4 { font-weight: 500;margin-bottom: 2px; }
.counseling_opt_box .cont_box p:last-child { margin-bottom: 0; }
.counseling_opt_box .cont_box p.info { margin-top: 10px; font-size: 0.9em; }

.counseling_opt_box.noLine { padding-bottom: 0; margin-bottom: 0; border: 0; }
.counseling_opt_box .cont_box h3.sub_title { margin-top: 20px; font-size: 1.22em; line-height: 1.4; }
.counseling_opt_box .cont_box img { margin: 20px 0 5px; }
.counseling_opt_box .cont_box .info { margin-top: 20px; font-size: 0.88em; }
.counseling_opt_box .cont_box .info p { margin: 0; }
.counseling_opt_box .cont_box .info li { position: relative; padding-left: 10px; }
.counseling_opt_box .cont_box .info li:after { content: ''; position: absolute; left: 4px; top: 11px; width: 2px; height: 2px; background-color: #222; }
.counseling_opt_box .cont_box p strong { display: block; }
.counseling_opt_box .cont_box .info.normal { font-size: 1em; }
.counseling_opt_box .cont_box .info.normal li { padding-left: 13px; }

.counseling_opt_box .recruitment_list li { padding-bottom: 5px; }
.counseling_opt_box .recruitment_list li h3 { font-size: 0.9em; }
.counseling_opt_box .recruitment_list li .sub { font-size: 0.92em; }
.counseling_opt_box .recruitment_list li .sub h3 { font-size: 0.97em; }
.counseling_opt_box .recruitment_list li .sub p { font-size: 0.9em; }
.counseling_opt_box .recruitment_list li .sub .info.normal { margin-top: 0; font-size: 0.8em; }
.counseling_opt_box .recruitment_list li .sub .info.normal li { margin-bottom: 0; padding-bottom: 0; border: 0; line-height: 1.5; }


.story_list { position: relative; width: 100%; font-size: 1.07em; line-height: 1.5; letter-spacing: -0.03em; font-weight: 300; }
.story_list dl { position: relative; margin: 70px auto 30px; width: 200px; text-align: center; padding: 22px; border: 2px solid #d6c3aa; }
.story_list dl:before { position: absolute; left: 50%; bottom: -15px; margin-left: -15px; font-size: 0.8em; line-height: 30px; width: 30px; height: 30px; color: #fff; background-color: #967b50; border-radius: 50%; }
.story_list dl.male:before { content: 'M'; }
.story_list dl.female:before { content: 'F'; }
.story_list dl:after { content: ''; position: absolute; left: 50%; top: -40%; margin-left: -25px; width: 50px; background-size: cover; background-repeat: no-repeat; }
.story_list dl.male:after { height: 51px; background-image: url('/images/ic_male.png'); }
.story_list dl.female:after { height: 53px; background-image: url('/images/ic_female.png'); }
.story_list dt { margin-bottom: 3px; font-size: 1.25em; font-weight: 500; }



.party_list { position: relative; width: 100%; }
.party_list .list li { position: relative; margin-bottom: 15px; padding-bottom: 15px; width: 100%; border-bottom: 2px solid #000; }
.party_list .list li:last-child { border-bottom-width: 1px; }
.party_list.member .list li:nth-child(10n) { border-bottom-width: 1px; }
.party_list.story .list li:nth-child(3n) { border-bottom-width: 1px; }
.party_list.party .list li:nth-child(3n) { border-bottom-width: 1px; }
.party_list.wedding .list li:nth-child(3n) { border-bottom-width: 1px; }
.party_list .list li a { position: relative; display: block; }
.party_list .list li a:after { position: absolute; left: 0; top: 0; padding: 3px 0 4px; width: 46px; font-size: 11px; color: #fff; text-align: center; }
.party_list .list li a.open:after { content: '진행중'; background-color: #352d7a; }
.party_list .list li a.close:after { content: '마감'; background-color: #cdae84; }
.party_list .list li dl { position: relative; width: 100%; }
.party_list .list li dt { display: block; margin: 15px 0 5px; font-size: 1.2em; line-height: 1.5; font-weight: 600; }
.party_list .list li dd { display: inline-block; padding-left: 8px; margin-left: 8px; font-size: 1.15em; border-left: 1px solid #000; }
.party_list .list li dt + dd { margin-left: 0; padding-left: 0; border-left: 0; }


.party_list.open li:last-child { padding: 0; margin: 0; border-bottom: 0; }
.party_list.open li a:after { top: 58px; }
.party_list.open li dl { margin-bottom: 15px; }
.party_list.open li dt { margin-top: 0; }


.party_list.notice { border-top: 2px solid #000; }
.party_list.notice.noLine { border: 0; }
.party_list.notice li dt { 
	letter-spacing: -0.05em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    white-space: normal; word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.party_list.notice li dd { font-weight: 300; letter-spacing: -0.05em; }


.party_list.gallery { margin-top: 40px; border-top: 0; }
.party_list.gallery .list li { margin-bottom: 30px; font-size: 1.1em; font-weight: 300; letter-spacing: -0.05em; line-height: 1.4em; text-align: center; border-bottom-width: 1px; }
.party_list.gallery .list li:first-child { padding-bottom: 30px; }
.party_list.gallery .list li:last-child { margin-bottom: 0; padding-bottom: 0; border: 0; }
.party_list.gallery h1 { margin-bottom: 20px; font-weight: 400; font-family: 'Noto Serif KR', serif; }
.party_list.gallery h3 { margin: 15px 0 5px; font-size: 1.1em; }
.party_list.gallery img + img { margin-top: 5px; }
.party_list.gallery .focus_box { position: relative; width: 100%; padding: 15px 50px; background-color: #ffd731; }
.party_list.gallery .focus_box + img { margin-top: 30px; }


.party_list.story { font-size: 1.08em; font-weight: 300; line-height: 1.5em; letter-spacing: -0.03em; }
.party_list.story li p { margin-top: 5px; }
.party_list.story li p:first-child { margin-top: 0; }


.party_list.recommend h3 a { float: right; margin-top: -3px; width: 75px; font-size: 0.75em; font-weight: 500; text-align: center; color: #ff3d31; border: 2px solid #ff3d31; }
.party_list.recommend h3 a.male { color: #352d7a; border-color: #352d7a; }
.party_list.recommend h3 a.male.active { cursor: default; color: #fff; background-color: #352d7a; border-color: #352d7a; }
.party_list.recommend h3 a.female.active { cursor: default; color: #fff; background-color: #ff3d31; border-color: #ff3d31; }
.party_list.recommend .list li dl { display: table; font-size: 0.95em; }
.party_list.recommend .list li dt { display: table-cell; width: calc(100% - 100px); }
.party_list.recommend .list li dd { display: table-cell; margin: 0; padding: 0; width: 100px; border: 0; font-weight: 300; }
.party_list.recommend .list li a { position: absolute; right: 0; top: 50%; margin-top: -30px; width: 40px; height: 40px; background: #352d7a url('/images/ic_plus.png') center no-repeat; background-size: 15px; border-radius: 50%; }
.party_list.recommend .female .list li a { background-color: #ff3d31; }


.party_list.member .list { margin: 15px 0; }
.party_list.member .list li { margin-bottom: 10px; padding-bottom: 10px; }
.party_list.member .list li:first-child { margin-top: 10px; padding-top: 10px; border-top: 2px solid #000; }
.party_list.member .list li dl { margin-bottom: 5px; }
.party_list.member .list li dt { width: calc(100% - 150px); }
.party_list.member .list li dd { width: 150px; }
.party_list.member .list li dt.secreat { font-size: 0.7em; }


.member_average { position: relative; width: 100%; }
.member_average > div { position: relative; margin-bottom: 30px; padding: 20px 25px; width: 100%; border: 4px solid #d2d2d2; }
.member_average > div h3 { 
	position: absolute; display: inline-block; top: -11px; left: 50%; margin-left: -70px;
	padding: 0 20px; font-size: 1.3em; background-color: #fff; 
}
.member_average ul,
.member_average dl { display: table; width: 100%; }
.member_average li,
.member_average dt,
.member_average dd { display: table-cell; line-height: 1.4; vertical-align: middle; }
.member_average li:first-child,
.member_average dt { width: 50px; text-align: right; font-size: 1.2em; font-weight: 600; color: #352d7a; }
.member_average > div:nth-child(2) dt { color: #ff3e31; }
.member_average .icon { display: inline-block; width: 55px; height: 110px; background-position: -55px !important; }
.member_average .ic_male { background-image: url('/images/ic_gender_m.png'); }
.member_average .ic_female { background-image: url('/images/ic_gender_f.png'); }
.member_average li,
.member_average dd { width: calc(100% - 50px); font-size: 1.05em; font-weight: 300; text-align: center; }
.member_average dt span { font-size: 0.8em; font-weight: 300; }


.member_average_info { position: relative; width: 100%; text-align: center; }
.member_average_info li h3 { margin: 45px 0 25px; font-size: 1.35em; }
.member_average_info li hr { margin: 25px 0 0; padding-top: 25px; border: 0; border-top: 1px solid #b4b4b4; }


.success_rate { position: relative; width: 100%; text-align: center; line-height: 1.5em; }
.success_rate h3 { font-size: 1.35em; line-height: 1.3em; }
.success_rate h3 strong { font-size: 1.45em; font-weight: 500 !important; }
.success_rate h3 span { font-size: 0.85em; }
.success_rate ul { margin-top: 30px; }
.success_rate li { margin-bottom: 30px; }
.success_rate li .rate { 
	position: relative; margin: 0 auto 25px; width: 120px; height: 120px; line-height: 115px; font-weight: 600; 
	color: #352d7a; font-size: 1em; letter-spacing: 0; border: 1px solid #967b50; border-radius: 50%; 
}
.success_rate li .rate:after { content: ''; position: absolute; left: 50%; bottom: -26px; width: 1px; height: 26px; background-color: #967b50; }
.success_rate li .rate strong { font-size: 2.1em; margin-right: 1px; }
.success_rate li .rate span { font-size: 0.8em; }
.success_rate li h4 { display: block; padding-top: 15px; font-size: 1.1em; font-weight: 600; border-top: 1px solid #000; }


.notice_box { position: relative; padding: 15px 0; width: 100%; letter-spacing: -0.05em; line-height: 1.3; border-top: 2px solid #000; border-bottom: 1px solid #000; }
.notice_box dl.title { position: relative; margin-bottom: 15px; width: 100%; }
.notice_box dl.title dt { display: block; margin-bottom: 10px; font-size: 1.35em; font-weight: bold; }
.notice_box dl.title dd { display: block; font-size: 1.15em; font-weight: 300; }
.notice_box .desc_box { position: relative; margin-top: 15px; width: 100%; font-weight: 300; font-size: 1.15em; line-height: 1.4; }
.notice_box .desc_box p { margin-top: 20px; }
.notice_box .desc_box p:first-child { margin-top: 0; }


.recruitment_info { position: relative; margin-top: 30px; width: 100%; text-align: center; }
.recruitment_info h1 { margin-bottom: 25px; line-height: 1.3; font-weight: 400; font-family: 'Noto Serif KR', serif; }
.recruitment_info p { display: inline-block; margin: -30px 5px; padding: 25px 0; width: calc(100% - 40px); font-size: 1.1em; font-weight: 300; letter-spacing: -0.05em; line-height: 1.3; background-color: #fff; }


.recruitment_list { position: relative; width: 100%; }
.recruitment_list > h3.sub_title { font-size: 1.8em; }
.recruitment_list li { position: relative; margin-bottom: 15px; padding-bottom: 15px; font-size: 1.15em; font-weight: 300; line-height: 1.3; letter-spacing: -0.03em; border-bottom: 1px solid #909090; }
.recruitment_list li:last-child { margin-bottom: 0; padding-bottom: 0; border: 0; }
.recruitment_list li h2 { margin-bottom: 10px; font-size: 1.2em; }
.recruitment_list li h3 { margin-bottom: 10px; font-size: 1em; font-weight: 600; vertical-align: middle; }
.recruitment_list li h3 i { cursor: pointer; display: inline-block; margin-bottom: 3px; margin-left: 7px; width: 14px; height: 14px; vertical-align: middle; }
.recruitment_list li .sub { display: none; position: absolute; left: 0; top: 0; padding: 14px; width: 100%; line-height: 1.4; background-color: #fff; border: 1px solid #222222; z-index: 100; }
.recruitment_list li .sub i { position: absolute; right: 10px; top: 10px; width: 15px; height: 15px; }
.recruitment_list li dl { display: table; width: 100%; }
.recruitment_list li dt, .recruitment_list li dd { margin-top: 3px; display: inline-block; vertical-align: top; }
.recruitment_list li dt { width: 70px; font-weight: 600; }
.recruitment_list li dd { width: calc(100% - 70px); font-weight: 300; }

.recruitment_list.qualify { margin-left: -30px; width: calc(100% + 60px); text-align: center; }
.recruitment_list.qualify > h3.sub_title { margin: 40px 30px 15px; }
.recruitment_list.qualify li { font-size: 1.08em; line-height: 1.5; border: 0; }
.recruitment_list.qualify i { margin-bottom: 10px; display: inline-block; }
.recruitment_list.qualify i.ic_recruit1 { width: 50px; height: 55px; }
.recruitment_list.qualify i.ic_recruit2 { width: 70px; height: 68px; }
.recruitment_list.qualify i.ic_recruit3 { width: 60px; height: 46px; }


.member_info { 
	position: relative; margin-top: -85px; margin-left: -30px; padding: 125px 30px 30px; width: calc(100% + 60px); 
	color: #fff; text-align: center; background-color: #302c29; 
}
.member_info h3 { position: relative; margin-bottom: 40px; font-size: 1.4em; font-weight: 500; color: #d6c3aa; }
.member_info h3:after { content: ''; position: absolute; bottom: -20px; left: 50%; margin-left: -25px; width: 50px; height: 1px; background-color: #d6c3aa; }
.member_info p { margin-bottom: 10px; font-size: 1.1em; line-height: 1.5; font-weight: 300; letter-spacing: -0.03em; }


.membership_list { position: relative; margin-top: 40px; padding-top: 30px; width: 100%; border-top: 2px solid #000; }
.membership_list li { margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid #000; }
.membership_list li:last-child { margin-bottom: 40px; padding-bottom: 0; border: 0; }
.membership_list li h3 { margin-bottom: 10px; font-size: 1.4em; }
.membership_list li p { font-size: 1.1em; line-height: 1.3; font-weight: 300; }
.membership_list li img { margin-top: 30px; }

.membership_list.cost { padding-top: 0px; border: 0; }
.membership_list.cost li { padding: 0; text-align: center; border: 0; }
.membership_list.cost li:last-child { margin-bottom: 0; }
.membership_list.cost li img { margin: 0; width: calc(100% - 40px); }
.membership_list.cost li .info { position: relative; margin-top: 20px; text-align: left; }
.membership_list.cost li .info h3 { font-size: 1.35em; }
.membership_list.cost li .info h3 span { position: relative; margin-left: 20px; font-size: 0.65em; font-weight: 400; vertical-align: middle; }
.membership_list.cost li .info h3 span:after { content: ''; position: absolute; left: -10px; top: 3px; width: 1px; height: calc(100% - 6px); background-color: #000; }
.membership_list.cost li .info table { width: 100%; border-spacing: 0px; border-top: 2px solid #000; }
.membership_list.cost li .info table th,
.membership_list.cost li .info table td { padding: 10px 0 12px; text-align: center; border-bottom: 1px solid #000; vertical-align: middle; }
.membership_list.cost li .info table th { font-size: 1.15em; font-weight: 600; }
.membership_list.cost li .info table td { font-size: 1.1em; font-weight: 300; line-height: 1.3; }
.membership_list.cost li .info table td:first-child strong { position: absolute; left: 10px; }


.membership_list .black-link {
    display: flex;
    align-items: center;
    gap: 0 8px;
    margin-top: 25px;
}

.membership_list .black-link span {
    font-size: 1.1em;
    font-weight: 500;
    letter-spacing: 0;
}

.membership_list .black-link i {
    font-size: 1.5em;
}

.half_box { position: relative; width: 100%; font-size: 14px;font-weight: 400;line-height: 1;}
.half_box > div { display: inline-block; margin: 0; padding-left: 5px; width: calc(50% - 2px); vertical-align: middle; }
.half_box > div:first-child { padding-left: 0; padding-right: 5px; }

.half_box.triple > div { padding-left: 10px; width: calc((100% - 105px) / 2);  }
.half_box.triple > div:first-child { padding-left: 0; padding-right: 0; width: 100px; }
.half_box.triple.type2 > div:last-child { width: calc(100% - 103px); }

.half_box.radio > div { width: calc(55% - 3px); }
.half_box.radio > div:first-child { width: 45%; }

.half_box.between > div { position: relative; padding-right: 0; }
.half_box.between > div:first-child { padding-left: 0; padding-right: 20px; }
.half_box.between > div:first-child:after { content: '~'; position: absolute; right: 3px; top: 13px; }


.privacy_info_box { text-align: center; }
.privacy_info_box a { display: block; margin-bottom: 12px; padding: 8px 0; color: #fff; font-size: 0.9em; letter-spacing: 0; background-color: #967b50; }
.privacy_info_box a i { display: inline-block; margin-left: 7px; width: 11px; height: 11px; }


.different_list { position: relative; width: 100%; }
.different_list li { position: relative; margin-bottom: 30px; padding: 25px 5px; width: 100%; min-height: 102px; text-align: center; border: 2px solid #d6c3aa; }
.different_list li i { 
	position: absolute; top: -15px; left: 50%; margin-left: -15px; width: 30px; height: 30px; 
	font-size: 12px; font-style: normal; font-weight: bold; line-height: 28px; letter-spacing: 0;
	text-align: center; color: #fff; background-color: #967b50; border-radius: 50%; 
}
.different_list li h3 { margin-bottom: 5px; }
.different_list li p { line-height: 22px; font-size: 1.1em; }
.different_list li.line1 h3 { margin-bottom: 0; line-height: 45px; }



.img_box { position: relative; margin: 30px 0 30px -30px; display: block; width: calc(100% + 60px); overflow: hidden; }
.img_box ul { display: table; width: 100%; }
.img_box li { display: table-cell; width: calc(100% / 3); }

.img_box.type2 li { width: 50%; }
.img_box.type2 li:nth-child(1) { padding-left: 30px; width: calc(50% - 30px); }

.img_box.type3 { width: calc(100% + 30px); }
.img_box.type3 li { padding-left: 10px; width: calc(47.02% + 20px); vertical-align: top; }
.img_box.type3 li:nth-child(1) { padding-left: 0; width: 52.98%; }
.img_box.type3 li:nth-child(1) img:first-child { width: calc(100% - 30px); }

.img_box.type4 { }
.img_box.type4 li { display: block; position: relative; padding: 20px 20px 20px 30px; width: 100%; background: linear-gradient(to right, #fff 50%, #302c29 50%); }
.img_box.type4 li:before { content: ''; position: absolute; right: -30px; top: -15px; width: calc(50% + 30px); height: calc(100% + 30px); z-index: 100; }
.img_box.type4 li img { z-index: 1000; }


.info_list { position: relative; width: 100%; }
.info_list li { display: block; margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid #000; }
.info_list li:last-child { margin-bottom: 0; padding-bottom: 0; border: 0; }
.info_list li h3 { display: block; margin-bottom: 5px; line-height: 24px; }
.info_list li p { line-height: 22px; font-size: 1.12em; }


.over_width { position: relative; margin: 30px 0 30px -30px; /*display: block;*/ width: calc(100% + 60px); }
.over_width.bg_1 { background-image: url('/images/form_bg_2.jpg'); background-position: 0 20px !important; }

.test_list_box { position: relative; margin: 0 30px; padding: 30px 15px 10px; width: calc(100% - 60px); background-color: #d6c3aa; }
.test_list_box:after { content: ''; position: absolute; left: 0; bottom: -20px; width: 100%; height: 20px; background-color: #d6c3aa; }
.test_list_box .title_box { position: relative; margin: 10px 0 20px; width: 100%; text-align: center; }
.test_list_box .title_box h3 { margin-bottom: 10px; display: block; font-size: 1.5em; line-height: 24px; }
.test_list_box .check_box { width: 100%; }
.test_list_box .check_box input[type="radio"] + label { margin: 0 10px 15px 0; padding: 0; width: calc(50% - 7px); text-align: center; border: 1px solid #222; } 
.test_list_box .check_box input[type="radio"] + label:nth-child(4n + 4) { margin-right: 0; margin-left: 0; }
.test_list_box .check_box input[type="radio"] + label:before,
.test_list_box .check_box input[type="radio"]:checked + label:before,
.test_list_box .check_box input[type="radio"]:checked + label:after { display: none; }
.test_list_box .check_box input[type="radio"]:checked + label { color: #fff; border-color: #967b50; background-color: #967b50; }
.test_list_box .check_box label img { opacity: 0; }
.test_list_box .check_box label p { position: absolute; top: 50%; margin-top: -8px; width: 100%; font-size: 1.1em; text-align: center; letter-spacing: 0; }


.test_list_box .check_box.gender { text-align: center; }
.test_list_box .check_box.gender input[type="radio"] + label { display: block; margin: 0 auto 30px; width: 100%; max-width: 150px; border: 0; border-bottom: 1px solid #222; background-position: center; background-size: cover; background-repeat: no-repeat; }
.test_list_box .check_box.gender label[for="gender_m"] { background-image: url('/images/ic_gender_m.png'); }
.test_list_box .check_box.gender label[for="gender_f"] { background-image: url('/images/ic_gender_f.png'); }
.test_list_box .check_box.gender input[type="radio"]:checked + label { background-color: transparent; }
.test_list_box .check_box.gender input[type="radio"]:checked + label[for="gender_m"] { background-image: url('/images/ic_gender_m_on.png'); }
.test_list_box .check_box.gender input[type="radio"]:checked + label[for="gender_f"] { background-image: url('/images/ic_gender_f_on.png'); }


.test_list_box.fortune { padding-top: 45px; }
.test_list_box .fortune_list { position: relative; width: 100%; }
.test_list_box .fortune_list li { display: inline-block; margin: 0 8px 18px 0; width: calc(50% - 10px); text-align: center; }
.test_list_box .fortune_list li:nth-child(even) { margin-right: 0; margin-left: 8px; }
.test_list_box .fortune_list li img { opacity: 0; }
.test_list_box .fortune_list li a { position: relative; display: block; border: 1px solid #222; }
.test_list_box .fortune_list li a.active,
.test_list_box .fortune_list li a:active,
.test_list_box .fortune_list li a:hover { color: #fff; border-color: #967b50; background-color: #967b50; }
.test_list_box .fortune_list li a > div { display: table; position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; width: 100%; height: 100%; }
.test_list_box .fortune_list li a > div > div { display: table-cell; width: 100%; height: 100%; vertical-align: middle; }
.test_list_box .fortune_list li a i { display: inline-block; margin-bottom: 10px; }
.test_list_box .fortune_list li a i.ic_fortune1,
.test_list_box .fortune_list li a i.ic_fortune2 { width: 100px; height: 36px; }
.test_list_box .fortune_list li a i.ic_fortune3,
.test_list_box .fortune_list li a i.ic_fortune4 { width: 100px; height: 49px; }
.test_list_box .fortune_list li a i.ic_fortune5,
.test_list_box .fortune_list li a i.ic_fortune6 { width: 100px; height: 39px; }
.test_list_box .fortune_list li a i.ic_fortune7,
.test_list_box .fortune_list li a i.ic_fortune8 { width: 100px; height: 50px; }


.test_list_box .fortune_list.gender li { display: block; margin: 0 auto 30px; width: 100%; max-width: 150px; }
.test_list_box .fortune_list.gender li:nth-child(even) { margin-bottom: 15px; }
.test_list_box .fortune_list.gender li a { border: 0; border-bottom: 1px solid #222; }
.test_list_box .fortune_list.gender li img { opacity: 1; }


.test_contbtnbox {position: relative;display: inline-block;clear: both;z-index: 10;width: 100%;}
.btn_left {width:40px;height:40px;cursor:pointer;float:left;}
.btn_right {width:40px;height:40px;cursor:pointer;float:right;}
.btn_left_on {width:40px;height:40px;cursor:pointer;float:left;}
.btn_right_on {width:40px;height:40px;cursor:pointer;float:right;}
.test_contbtnbox_last {position: relative;display: inline-block;clear: both;z-index: 10;}
.btn_left_last {width:46px;height:46px;cursor:pointer;float:left;margin-top: 5px;}
.btn_left_on_last {width:46px;height:46px;cursor:pointer;float:left;margin-top: 5px;}
/*.btn_left {width:40px;height:40px;position: absolute;top: 58%;left: -3%;transform: translate(-50%,0);cursor:pointer;}
.btn_right {width:40px;height:40px;position: absolute;top: 58%;right: -16%;transform: translate(-50%,0);cursor:pointer;}
.btn_left_on {width:40px;height:40px;position: absolute;top: 58%;left: -3%;transform: translate(-50%,0);cursor:pointer;}
.btn_right_on {width:40px;height:40px;position: absolute;top: 58%;right: -16%;transform: translate(-50%,0);cursor:pointer;}*/


.desc_box { position: relative; width: 100%; }

.gallery_box { margin-bottom: 15px; position: relative; width: 100%; padding: 0 40px; }

.desc_box .next_box { position: relative; width: 100%; border-top: 1px solid #000; }
.desc_box .next_box li { border-bottom: 1px solid #000; }
.desc_box .next_box li a { display: block; padding: 15px 0; font-size: 1.1em; font-weight: 300; }
.desc_box .next_box li a strong { position: relative; margin: 0 10px 0 20px; }
.desc_box .next_box li a strong:after { 
	content: ''; position: absolute; left: -20px; top: 50%; margin-top: -3px; width: 8px; height: 7px;
	background: url('/images/ic_arrow_black_left.png') center no-repeat; background-size: cover; 
}
.desc_box .next_box li a.next { text-align: right; }
.desc_box .next_box li a.next strong { margin: 0 20px 0 10px; }
.desc_box .next_box li a.next strong:after { left: inherit; right: -20px; background-image: url('/images/ic_arrow_black_right.png'); }


#subYear {position: relative;width:122px;margin:0 auto;padding:6.5% 0;z-index:10;/* width: 1200px; position: absolute; color:#fff; display:block; margin-left:50%; left: -600px; z-index:10;*/}
#subYear ul li.ysub {height:40px;line-height: 40px;float: left; display: inline-block; text-align: left; width:120px; /*background-color: #967b50;*/ border-right:1px solid #faf9f7; box-sizing: border-box; color:#d6c3aa; font-size: 20px; font-weight: 300; cursor: pointer;}
#subYear ul li:last-child {width:120px;border:1px solid #967b50; color:#000; }
#subYear i.Sarrow {border: solid #fff; border-width: 0 2px 2px 0;display: inline-block;padding: 3px; margin-top:18px; margin-right:16px; position:relative; z-index:10; float: right;}
#subYear span {display: block;}
#subYear p { transition: all 1s linear;background-color: #fff; width:100%; color:#000;; border:1px solid #fff; border-top:none; line-height: 45px; text-align:center; display: none;}
#subYear p span:hover {background-color: #f4f2ed;transition: all .1s ease-out;font-weight: 400;}
#Ylist{margin-top:0px;}
#Ylist a{display:block;}
#Ylist span{text-align:left;padding-left:20px;}
#Ymenu div.bg{width:40px;height:40px;background-color:#967b50;position:absolute; right:0;top:0;z-index:0;}
#Ymenu .up{transform: rotate(-135deg);-webkit-transform: rotate(-135deg);}
#Ymenu .down{transform: rotate(45deg);-webkit-transform: rotate(45deg);}



/* ---------------------------------------- */
/* form
/* ---------------------------------------- */
form { position: relative; width: 100%; }
form > div { position: relative; margin-bottom: 15px; }
form textarea { height: 100px; }

form .input_btn_box { display: table; width: 100%; font-size: 14px;font-weight: 400;}
form .input_btn_box > div { display: table-cell; width: calc(100% - 70px); vertical-align: middle; }
form .input_btn_box > div:last-child { padding-left: 10px; width: 70px !important;  }
form .input_btn_box input[type=button] { width: 100%; height: 40px; font-size: 0.9em; line-height: 40px; border: 0; color: #fff; text-align: center; background-color: #cdae84; }
form .input_btn_box.phone > div > div { position: relative; display: inline-block; padding-left: 10px; width: calc((100% - 5px) / 3); }
form .input_btn_box.phone > div > div:first-child { padding-left: 0; min-width: 80px; }
form .input_btn_box.phone > div > div:after { content: '-'; position: absolute; left: 1px; top: 50%; margin-top: -9px; }
form .input_btn_box.phone > div > div:first-child:after { display: none; }

form .check_box.half input[type="radio"] + label { margin-right: 0px;  width: calc((100% - 3px) / 2); }
form .check_box.quarter input[type="radio"] + label { margin-right: 0px;  width: calc((100% - 4px) / 4); }
form .check_box.quarter input[type="radio"] + label:nth-child(6) { letter-spacing: -0.15em;  margin-left: 3px; width: calc((100% - 24px) / 4); }
form .check_box.quarter input[type="radio"] + label:nth-child(8) { margin-left: 1px; width: calc((100% - 10px) / 4); }

form .phone_box { display: table; width: 100%; }
form .phone_box > div { display: table-cell; position: relative; padding-left: 20px; width: calc((70% / 2) - 20px); vertical-align: top; }
form .phone_box > div:first-child { padding-left: 0; width: 30%; }
form .phone_box > div:after { content: '-'; position: absolute; left: 7px; top: 50%; margin-top: -9px; color: #000;  }
form .phone_box > div:first-child:after { display: none; }

form .phone_box.email > div { padding-left: 0; width: calc(50% - 2px); }
form .phone_box.email > div:first-child { padding-right: 30px; width: calc(50% - 30px); }
form .phone_box.email > div:after { content: '@'; left: -21px; }

.btn_submit { position: relative; display: block; margin-top: 20px; padding: 15px 0 16px; width: 100%; color: #fff; font-size: 1.1em; font-weight: 300; letter-spacing: 0; text-align: center; border: 0; background-color: #352d7a; }
.btn_submit:after { content: ''; position: absolute; right: 20px; top: 50%; margin-top: -3px; width: 8px; height: 7px; background: url('/images/ic_arrow_white_right.png') center no-repeat; background-size: 8px 7px; }
.btn_submit_test { position: relative; display: block; margin-top: 5px; padding: 15px 0 16px 15px; width: 80%; color: #fff; font-size: 1.1em; font-weight: 300; letter-spacing: 0; text-align: left; border: 0; background-color: #352d7a;float:right; }
.btn_submit_test:after { content: ''; position: absolute; right: 20px; top: 50%; margin-top: -3px; width: 8px; height: 7px; background: url('/images/ic_arrow_white_right.png') center no-repeat; background-size: 8px 7px; }

.btn_submit.type2 { background-color: #967b50; }
.btn_submit.type2:after { display: none; }

.pagination + .btn_submit { margin-top: 15px; }

form.bg_box { margin-left: -30px; padding: 30px 30px 45px; width: calc(100% + 60px); color: #fff; background: url('/images/form_bg_1.jpg') center no-repeat; background-size: cover; }
form.bg_box h3.sub_title { margin-top: 15px; border-bottom-color: #fff; }
form.bg_box > div { margin-bottom: 8px; }
form.bg_box input[type=text],
form.bg_box input[type=number] { height: 44px; background-color: #fff; border-color: #fff; }
form.bg_box .select_box { height: 44px; color: #222; background-color: #fff; border-color: #fff; }
form.bg_box .btn_submit { margin-top: 15px; padding: 16px 0; }


form.customer .half_box.list > div { padding-left: 22px; width: calc(55% - 3px); }
form.customer .half_box.list > div:first-child { padding: 0; width: 45%; }
form.customer .phone_box.email > div { padding-left: 25px; width: calc(55% - 25px); }
form.customer .phone_box.email > div:first-child { padding-left: 0; padding-right: 0; width: 45%; }
form.customer .phone_box.email > div:after { left: 6px; }

form h4.sub_title { margin-bottom: 15px; padding-top: 15px; font-size: 1.15em; line-height: 1.3; font-weight: 500; border-top: 2px solid #000; }


.login_list { position: relative; margin-top: 20px; padding-top: 15px; width: 100%; border-top: 1px solid #000; }
.login_list ul { text-align: center; }
.login_list ul li { position: relative; display: inline-block; padding: 0 8px; vertical-align: middle; }
.login_list ul li:first-child { padding-left: 0; }
.login_list ul li:after { content: ''; position: absolute; left: -1px; top: 1px; width: 1px; height: 100%; background-color: #000; }
.login_list ul li:first-child:after { display: none; }
.login_list ul li a { font-size: 1.1em; font-weight: 300; }

.join_box { position: relative; width: 100%; font-size: 1.12em; font-weight: 300; line-height: 1.5; text-align: center; }


/* ---------------------------------------- */
/* popup
/* ---------------------------------------- */
.pop_box .pop_con .top .form_box > div { position: relative; margin-bottom: 15px; }
.pop_box .pop_con .top .form_box .title_box { margin: 0 0 15px; padding-bottom: 10px; border-top: 2px solid #000; border-bottom: 1px solid #000;}
.pop_box .pop_con .top .form_box .title_box h3 { margin: 13px 0 5px; padding: 0; border: 0; }

.pop_box .pop_con .top .form_box .privacy_info { margin: 0; padding: 15px; height: calc(100% - 72px); border: 1px solid #d2d2d2; }
.pop_box .pop_con .top .form_box .privacy_info p { margin-bottom: 15px; }
.pop_box .pop_con .top .form_box .privacy_info_box a i { margin: 0; width: 11px; margin-left:7px; height: 11px; }
.pop_box .pop_con .top .form_box .privacy_info_box a { padding: 8px 0; }

.pop_box .pop_con .top .form_box .damage { font-size: 0.9em; }
.pop_box .pop_con .top .form_box .damage h3 { margin-bottCom: 5px; font-size: 1.25em; }
.pop_box .pop_con .top .form_box .damage p { font-size: 1em; line-height: 1.3em; font-weight: 300; letter-spacing: -0.03em; }
.pop_box .pop_con .top .form_box .damage img + h3 { margin-top: 15px; }

.pop_box .pop_con .top .form_box .check_box input[type="radio"] + label:before { top: -5px; }
.pop_box .pop_con .top .form_box .check_box input[type="radio"]:checked + label:after { top: -1px; }
.pop_box .pop_con .top .form_box input[type=checkbox] + label:before { top: -3px; }
.pop_box .pop_con .top .form_box input[type=checkbox]:checked + label:after { top: 1px; }
.pop_box .pop_con .form_box .btn_submit { position: relative; padding: 15px 0 16px; width: 100%;     line-height: 1; color: #fff; font-size: 1em; background-color: #352d7a; }
.pop_box .pop_con .form_box .btn_submit:after { content: ''; display: block; position: absolute; right: 20px; top: 50%; margin-top: -3px; width: 8px; height: 7px; background: url('/images/ic_arrow_white_right.png') center no-repeat; background-size: 8px 7px; }


/* checkbox radio */
.pop_box .pop_con .top .form_box .input_btn_box.phone > div > div { width: calc((100% - 6px) / 3); }
.pop_box .pop_con .top .form_box .input_btn_box.phone > div > div:after { margin-top: -14px; }


.pop_box .pop_con .top .form_box .party_list.recommend { padding: 15px 0; border-top: 2px solid #000; border-bottom: 2px solid #000; }
.pop_box .pop_con .top .form_box .party_list.recommend .list { font-size: 0.9em; }
.pop_box .pop_con .top .form_box .party_list.recommend .list dl { margin-bottom: 0; }


/* award */
.award_wrap {
    margin-top: 60px;
}

.award_title {
    padding-bottom: 25px;
    border-bottom: 1px solid #ccc;
}
.award_title > h2 {
    font-size: 1.72em;
    text-align: center;
    color: #222;
}

.award_slide_inner {
    margin-top: 25px;
}

.award_slide {
    text-align: center;
    max-height: 211px;
}

.award_slide li {
    position: relative;
}

.award_slide li:before {
    content: " ";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    background: #352d7a;
    border-radius: 50%;
    top: -30.8px;
    left: 50%;
    transform: translateX(-50%);
}
.award_txt_wrap p {
    color: #222;
    font-size: 1.3em;
    font-weight: 600;
    margin-bottom: 5px;
}

.award_img {
    margin-top: 25px;
}

.award_img img {
    max-width: 122px;
}
/* ---------------------------------------- */
/* Responsive Web
/* ---------------------------------------- */
@media screen and (max-width:375px) { /* iPhone 6/7/8 */

	/* footer */
	footer { font-size: 0.85em; letter-spacing: -0.02em; }
	footer .counseling_box { margin: 10px 0px; }
	footer .privacy_box li { margin-bottom: 7px; }


	/* main */
	#main_banner .swiper-slide { padding: 65px 50px; }
	#main_banner .swiper-slide img { bottom: -26.3%; }


	.media_banner .swiper-slide a { padding: 20px 25px; }
	.media_banner .swiper-slide { width: 275px; height: 280px; }
	.media_banner .swiper-container .swiper-slide h3 { font-size: 1.25em; }
	.media_banner .swiper-slide h5 { font-size: 1.07em; }


	/* sub */
	.ceo_box { /*padding-bottom: 320px;*/ }

	.sub_header_title_box p { font-size: 1.1em; }


	/* popup */
	.pop_box .pop_con .top .form_box .title_box h3.sub_title { font-size: 1.35em; letter-spacing: -0.1em; }
	.pop_box .pop_con .top .form_box .title_box p { font-size: 1em; }

}

@media screen and (max-width:360px) {

	/* footer */
	footer .counseling_box > ul ul li a { font-size: 0.95em; }
	footer .copyright_box { margin-top: 10px; }
	footer .copyright_box .sub li { margin-bottom: 5px; }
	footer .copyright_box p { letter-spacing: -0.08em; }


	/* nav */
	nav .main_menu_box { padding: 15px; width: 145px; }
	nav .sub_menu_box { margin-left: 145px; padding: 0 15px 320px 15px; width: calc(100% - 145px); }
	nav .sub_menu_box li { padding: 6px 0; }
	nav .sub_menu_box li:first-child { padding: 15px 0 10px; }
	
	nav .sub_menu_box ul:first-child li:first-child { padding-top: 15px; }


	/* main */
	#main_banner .swiper-slide { padding: 55px 40px; height: 520px; }
	#main_banner .swiper-container-horizontal > .swiper-pagination-bullets, 
	#main_banner .swiper-pagination-custom, .swiper-pagination-fraction { top: 270px; left: 30px; }

	#quick_banner { top: 550px; }

	.media_banner .swiper-slide { width: 260px; height: 265px; }
	.media_banner .swiper-container .swiper-slide h3 { font-size: 1.2em; }
	.media_banner .swiper-container .swiper-slide h5 { font-size: 1.03em; }

	.recruit_box { padding: 40px 30px; }
	.recruit_box a { width: calc(100% - 60px); }


	/* sub */
	.sub_header_title_box p { font-size: 1.06em; }
	.ceo_box { /*padding-bottom: 290px;*/ }

	.party_box p { font-size: 1.09em; }
	.member_info p { font-size: 1.08em; }

	.history_list.award li li { font-size: 1.05em; }
	.history_list.award li h1 { font-size: 1.35em; line-height: 1.35; }

	.membership_list.cost li .info table td:first-child strong { left: 5px; }

	.counseling_opt_box .cont_box { font-size: 1.05em; }

	.party_list .list li dd { padding-left: 6px; margin-left: 6px; line-height: 14px; }

	form .input_btn_box.phone > div > div:first-child { min-width: 70px; }

	.img_box.type3 li { padding-left: 10px; width: calc(46.6% + 20px); vertical-align: top; }
	.img_box.type3 li:nth-child(1) { padding-left: 0; width: 53.4%; }

	.recruitment_list.qualify li { letter-spacing: -0.05em; }

}

@media screen and (max-width:320px) { /* iPhone 5/SE */

	/* footer */
	footer { letter-spacing: -0.05em; }
	footer .privacy_box li {margin-left:3px;padding-left:3px;}
	footer .counseling_box .phone_info .icon { margin: 5px 8px 0 25px; }
	footer .privacy_box,
	footer .copyright_box .sub { font-size: 0.9em; }
	footer .copyright_box p { font-size: 0.75em; }

	/* nav */
	nav .sub_menu_box li a { font-size: 1.05em; }
	nav .sideMenu { font-size: 0.95em; }


	/* main */
	#main_banner .swiper-slide { height: 490px; }
	#main_banner .swiper-slide p { font-size: 1.05em; letter-spacing: -0.05em; }	

	#quick_banner { top: 520px; }

	.party_box > div { bottom: 0px; }
	.party_box h2 { font-size: 1.8em; line-height: 1.3; }
	.party_box p { font-size: 0.9em; line-height: 1.6; }

	#party_banner { margin-top: 40px; }

	.title_box h2 { font-size: 1.8em; }
	.title_box p { font-size: 1em; letter-spacing: -0.07em; }


	.media_banner .swiper-slide { width: 220px; height: 225px; }
	.media_banner .swiper-slide a { padding: 15px; }
	.media_banner .swiper-slide:nth-child(even) a { padding: 10px; }
	.media_banner .swiper-slide p { bottom: 70px; }
	.media_banner .swiper-container .swiper-slide h3 { font-size: 1.08em; }
	.media_banner .swiper-container .swiper-slide h5 { font-size: 0.95em; letter-spacing: -0.03em; }


	.recruit_box h3 { font-size: 1.35em; }


	/* sub */
	article { padding: 0px 20px 45px; }

	.sub_header_title_box p { font-size: 1em; }

	.ceo_box { /*padding-bottom: 250px;*/ }

	.member_info p { font-size: 1em; }

	.different_list li p { font-size: 1.1em; }

	.history_list.award li h1 { font-size: 1.3em; }
	.history_list.award li li { font-size: 1em; }

	.recruitment_list > h3.sub_title { font-size: 1.75em; }
	.recruitment_list li { font-size: 1.1em; }

	.counseling_opt_box .cont_box { font-size: 1.01em; }

	.img_box.type4 li { padding-right: 30px; }
	
	.party_list .list li dd { font-size: 13px; line-height: 12px; }

	form .input_btn_box.phone > div > div { width: calc((100% - 7px) / 3); }
	.test_list_box .check_box label p { font-size: 1.05em; }

	.over_width { margin-bottom: 15px; }

	.recruitment_list.qualify li { font-size: 1em; letter-spacing: -0.07em; }

	form h4.sub_title { font-size: 1.1em; }

	.party_list.recommend h3 a { margin-top: -2px; width: 65px; font-size: 0.7em; }


	/* popup */
	.pop_box .pop_wrap { padding: 30px 20px; }
	.pop_box .pop_con .top .form_box .input_btn_box.phone > div > div { width: calc((100% - 19px) / 3); }

	.pop_box .pop_con .top .form_box .privacy_info_box a { font-size: 0.8em; }
	.pop_box .pop_con .top .form_box .privacy_info_box a i { margin: 0; }


	.pop_box .pop_con .top .form_box input[type=text], 
	.pop_box .pop_con .top .form_box input[type=number], 
	.pop_box .pop_con .top .form_box input[type=password], textarea { font-size: 0.9em; }
	.pop_box .pop_con .top .form_box .check_box input[type="radio"] + label { font-size: 0.9em; }
	.pop_box .pop_con .top .form_box .select_box label { font-size: 0.9em; }

}



footer .company-box {
  display: none;
  position: fixed;
  left: 0;
  bottom: -100%;
  right: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-height: 99vh;
  overflow-y: auto;
  z-index: 999;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  margin-bottom: -85px;
  overflow-x: hidden;
}

footer .company-box.on {
  bottom: 81px;
}

footer .company-box .close-btn {
  position: absolute;
  top: 0;
  right: 12px;
  color: #ccc;
  display: inline-block;
  font-size: 3.5rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  font-weight: 100;
}

footer .company-box .compnay-list-wrap {
  background: rgba(0, 0, 0, 0.7);
  padding: 20px 10px;
  text-align:left;
}

footer .company-box .company-box-tit {
  background: #342C75;
  color: #ccc;
  font-size: 1.0rem;
  padding: 20px 12px;
  letter-spacing: 0;
  text-align:left;
}

footer .company-box .company-list-tit {
  font-size: 0.9rem;
  color: #fff;
  background: #000;
  padding: 10px 0 10px 16px;
  letter-spacing: 0;
}

footer .company-box .company-list {
  margin-bottom: 15px;
}

footer .company-box .company-list:last-child {
  margin-bottom: 0;
}

footer .company-box .company-list ul {
  display: -ms-grid;
  display: grid;
      grid-template-areas: ". .";
  grid-auto-columns: 52.5% 50%;
  grid-gap: 15px 0;
  padding: 17px 0 25px 16px;
  background: #2c2c2c;
}

footer .company-box .company-list ul .grid2-2 {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
  grid-area: 2 / 2;
}

footer .company-box .company-list ul a {
  font-size: 0.75rem;
  font-weight: 300;
  letter-spacing: -1;
  color: #ccc;
  white-space: nowrap;
}

footer .company-box .company-list ul a strong {
  color: #fff;
  letter-spacing: -1;
}