@charset "utf-8";

@media (max-width: 1700px) {
	/* header */
	#header .contain {padding:0 var(--space-container);}
}

@media (max-width: 1600px) {
	/* content */
	.greeting .col-r .mid p br {display:none;}
}

@media (max-width: 1460px) {
	/* main */
	.main-visual .caption .txt1 {white-space:normal;}
	.main-news .item {gap:32px;}
	.main-news .thumb {flex:none; width:100%; height:280px;}

	/* footer */
	.float-ui {right:12px; gap:6px;}
	.pfm-quick {right:auto; bottom:auto; width:48px; gap:6px;}
	.pfm-quick__btn {width:48px; height:48px; min-height:48px; gap:0;}
	.pfm-quick__btn svg {width:20px; height:20px;}
	.pfm-quick__label,
	.scroll-top__label {display:none;}
	.scroll-top {width:48px; height:48px; min-height:48px; gap:0;}
	.scroll-top svg {width:20px; height:20px;}
}

@media (max-width: 1280px) {
	:root {
		--layout-sub-inset: 40px;
	}
	/* header */
	#gnb>ul {gap:40px;}
	#gnb>ul>li>a {font-size:15px;}
	#gnb {display:none;}
	.btn-m-menu {display:inline-flex; align-items:center; justify-content:center;}
	.top-links {display:none;}
	.mobile-navigation {display:flex;}
	.sitelogo .sitelogo__name {}
	.header-login {padding:8px; font-size:0;}
	.header-login:after {width:36px; height:36px;}

	/* main */
	.main-visual .caption .title {font-size:48px;}
	.main-visual .caption .desc {font-size:18px;}
	.main-visual .caption .txt1 {font-size:clamp(36px, 4.6vw, 56px); line-height:1.36em; white-space:normal;}
	.main-visual .caption .txt2 {font-size:clamp(18px, 2vw, 24px); line-height:1.58em;}
	.main-link .contain {padding:0 clamp(20px, 5vw, 80px);}
	.main-link ul li a {padding:48px 12px; gap:24px;}
	.main-link .tit {font-size:clamp(20px, 2vw, 24px); white-space:normal;}
	.main-slide {padding:80px 0 96px;}
	.main-slide .head .wf-sec__h {font-size:clamp(36px, 4.6vw, 52px); line-height:1.27em;}

	/* sub */
	.lnb {padding:0;}

}

@media (max-width: 1200px) {
	/* content */
	.greeting {gap:clamp(36px,5vw,80px);}
	.greeting .col-r__inner {gap:50px;}
	.cns-title {font-size:clamp(26px,3.2vw,36px);line-height:1.4;}
	.cns-txt {font-size:clamp(16px,2vw,20px);line-height:1.65;}
	.cns-greet3__head .cns-title {margin-bottom:32px;}
	.cns-greet__row {gap:48px;}
	.cns-greet3__row {gap:50px;}
	.cns-org-figma__cols {gap:20px;}
	.cns-org-figma__dark-node, .cns-org-figma__outline-node {width:200px;}
	.cns-org-figma__cmt-title {max-width:200px;font-size:18px;}
}

@media (max-width: 1100px) {
	/* content */
	.cns-promise {gap:20px;}
}

@media (max-width: 1024px) {
	body, input, textarea, select, button, table {font-size:15px;}

	/* header */

	/* main */
	.main-visual {height:auto;}
	.main-visual .caption .title {font-size:40px;}
	.main-visual .caption .desc {font-size:17px;}
	.main-news .text {font-size:16px;}

	/* footer */
	.footer-sns-cta {align-items:flex-start;}
	.footer-sns-cta__list {justify-content:flex-start; margin-left:0;}
	.footer-top {align-items:flex-start;}
	.footer-txt {align-items:flex-start;}
	.footer-info, .footer-info__row {align-items:flex-start; justify-content:flex-start; text-align:left;}

	/* sub */

	/* content */
	.greeting {gap:0 50px;}
	.greeting .col-r .top {margin-bottom:20px;}
	.greeting .col-r .top .tit {font-size:34px; margin:20px 0 30px;}
	.greeting .col-r .mid p {margin-bottom:15px; line-height:1.7em;}
	.hist-timeline {--hist-year-width:clamp(120px,12vw,180px); --hist-year-line:1.3em;}
	.hist-timeline::before {left:calc(var(--hist-year-width) + 11px);}
	.hist-year-col {width:var(--hist-year-width); font-size:36px; line-height:var(--hist-year-line); min-height:var(--hist-year-line);}
	.hist-events-col {padding-left:clamp(24px,4vw,60px); gap:16px;}
	.hist-event__text {font-size:18px; line-height:1.65;}
	.directions .area {flex-direction: column;}
	.directions .txt-wrap {width: 100%;}
	.directions .info {width: 100%;}
	.membership .sec2 .item .cnt .list {grid-template-columns: repeat(1, 1fr);}
	.membership.ceremony .leave-list {grid-template-columns: repeat(3, 1fr);}
	.cns-org-chart--figma {gap:16px;}
	.cns-org-figma__cols {flex-direction:column;gap:40px;align-items:stretch;}
	.cns-org-figma__col {align-items:stretch; gap:12px;}
	.cns-org-figma__primary-node {width:180px; height:72px; font-size:22px;}
	.cns-org-figma__dark-node, .cns-org-figma__outline-node {width:180px; height:64px; font-size:18px; align-self:center;}
	.cns-org-figma__node-sub {font-size:14px;}
	.cns-org-figma__main-tree, .cns-org-figma__vline, .cns-org-figma__tree-btm {display:none;}
	.cns-org-figma__role-sep {display:none;}
	.cns-org-figma__role-row {gap:8px;}
	.cns-org-figma__role-box {min-height:68px; padding:10px 6px; border-radius:4px;}
	.cns-org-figma__delegate-hd {height:52px; font-size:18px;}
	.cns-org-figma__cmt-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
	.cns-org-figma__cmt-title {max-width:180px; height:68px;}
	.cns-org-figma__cmt-btm, .cns-org-figma__cmt-vline, .cns-org-figma__cmt-hline {display:none;}

	/* board */
	.input {padding:5px 14px; height:40px;}
	textarea.input {padding:12px 14px;}
	.ui-datepicker-trigger {width:40px; height:40px; background-size:18px auto;}

	.board-search .search input.input {width:240px;}

	.board-list colgroup col {width:auto !important;}
	.board-list table thead th {font-size:15px;}
	.board-list table tbody td {font-size:15px;}

	.simple-list .link-item {padding:24px 0;}
	.simple-list .link-item .num {max-width:80px; font-size:16px;}
	.simple-list .link-item .num .notice {width:48px; height:48px;}
	.simple-list .link-item .cnt .tit {font-size:18px;}
	.simple-list .link-item .cnt .info {margin-top:12px; font-size:13px;}
	.simple-list .link-item .arrow {max-width:80px; font-size:24px;}

	.gallery-list ul li .tit {font-size:15px;}

	.card-list {gap:32px;}
	.card-list .link-item .info .tit {font-size:18px;}
	.card-list .link-item .info .txt {font-size:15px;}
	.card-list .link-item .info .date {font-size:13px;}

	.event-list ul li .tit {font-size:15px;}

	.faq .tit {font-size:15px;}
	.faq .tit a {padding:9px 60px 9px 12px;}
	.faq .tit a:after {top:14px;}
	.faq .q {flex:0 0 32px; width:32px; height:32px; font-size:16px; line-height:2em;}
	.faq .cnt {padding:18px 25px 18px 60px;}

	.calendar-head h3 {font-size:28px; margin:0 30px;}
	.calendar-head .cal-btn {width:40px; height:40px;}
	.calendar table th {font-size:15px;}
	.calendar table td {height:110px; font-size:14px;}
	.calendar ul li:before {top:7px;}

	.board-white table {font-size:15px;}

	.board-form table {font-size:15px;}

	.files-upload-text .upfiles-alt {font-size:14px;}

	.board-view-tit {padding:14px 6px;}
	.board-view-tit h3 {font-size:18px;}
	.board-view-info {padding:13px 6px; font-size:13px;}
	.board-view-cnt {padding:15px 6px 40px;}

	.board-prev-next {font-size:14px;}

	.btn-pack.medium {height:40px; padding:0 16px; font-size:15px;}
	.btn-pack.large {min-width:140px; height:50px; font-size:18px;}

	.product-list ul li {width:25%;}
	.product-list ul li .tit {font-size:15px;}
	.product-image {width:350px;}
	.product-info .tit {font-size:25px;}

	.store-search {padding:22px 5%;}
	.store-search .map-area {width:280px;}
	.store-search .map-img .local {padding:0 10px; font-size:13px; line-height:1.6923em;}

	.result-group .gall li {width:25%;}

	.agree-wrap .agree-tit {font-size:18px;}
}

@media (max-width: 980px) {
	/* content */
	.cns-steps {grid-template-columns:1fr;}
	.cns-steps .item, .cns-steps .item:first-child, .cns-steps .item:last-child {border-right:1px solid #ddd; border-radius:var(--radius-16);}
	.cns-steps .item::after {content:none;}
	.membership .sec-howto .howto-list {grid-template-columns:1fr;}
	.membership .sec-howto .howto-list > li {padding:var(--space-24);}
	.membership .sec4 .dues-box {padding:var(--space-28) var(--space-24);}
	.membership .sec1 ol {grid-template-columns:1fr;max-width:100%;margin:0;}
	.membership .sec2 .item {flex-direction:column;align-items:stretch;}
	.membership .sec2 .item .tit {width:100%;}
	.membership .sec2 .item .cnt {width:100%;padding-left:0;padding-top:var(--space-24);}
	.membership .sec2 .item .cnt::before {display:none;}
	.membership .sec2 .item .cnt .list {grid-template-columns:1fr;}
	.membership .sec4 .cont {padding:var(--space-28) var(--space-24);}
}

@media (max-width: 900px) {
	.only-desktop {display:none;}
	.only-tablet {display:block;}
	.only-tablet-mobile {display:block;}

	/* header */

	/* main */
	.main-visual {height:auto;}
	.main-visual .caption .title {font-size:36px;}
	.main-slide .head {flex-direction:column; align-items:flex-start; gap:20px;}
	.main-news__cate {width:100%; justify-content:flex-start;}
	.dbi-filtab__in {justify-content:flex-start;}
	.main-slide__controls {flex-wrap:wrap; gap:20px; margin-top:24px;}
	.main-slide__slide {flex:1 1 100%; order:2;}

	/* footer */
	.footer-sns-cta {flex-direction:column; align-items:flex-start; padding-top:24px; padding-bottom:24px; gap:16px;}
	.footer-sns-cta__txt {flex-basis:auto; width:100%;}
	.footer-sns-cta__list {flex-basis:auto; width:100%; justify-content:flex-start; margin-left:0;}
	.footer-sns-cta__btn {padding:10px 18px; line-height:24px;}
	.footer-top {flex-direction:column; padding-top:40px; padding-bottom:40px;}
	.footer-logo__name {font-size:24px; line-height:36px;}
	.footer-bottom {flex-direction:column; align-items:flex-start; padding-top:24px; padding-bottom:24px;}
	#footer .copyright {text-align:left;}

	/* sub */
	.sub-visual {height:320px;}
	.lnb ul li a {height:64px; padding:0 16px; font-size:15px;}
	.sub-title h2 {font-size:36px;}

	/* content */
	.greeting {display:block;}
	.greeting .col-l {width:100%; max-width:560px; margin:0 auto 30px;}
	.greeting .col-r__inner {gap:50px;}
	.directions {flex-direction: column-reverse; align-items: start; gap: 30px;}
	.directions .map {width: 100%;}
	.directions.directions--loc {gap:30px;}
	.directions--loc .directions__map {aspect-ratio:760/580;}
	.directions--loc .directions__bottom {gap:30px;}
	.directions--loc .directions__info {grid-template-columns:1fr;gap:16px;}
	.directions--loc .directions-section {height:auto; padding:24px;}
	.directions--loc .directions-section__head {display:flex; flex-direction:column; align-items:flex-start; flex-wrap:nowrap; gap:6px; margin:0 0 20px;}
	.directions--loc .directions-route {gap:16px;}
	.directions--loc .directions-route__badge {width:56px; height:56px; font-size:13px;}
	.directions--loc .directions-route__group + .directions-route__group,
	.directions--loc .directions-route__lines > p + .directions-route__group {margin-top:16px;}
	.directions--loc .directions-section--transit::after,
	.directions--loc .directions-section--car::after {right:16px; bottom:16px; width:40px; height:40px;}
	.cns-promise {grid-template-columns:1fr;gap:18px;}
	.cns-greet__row {grid-template-columns:1fr;gap:30px;}
	.cns-greet3__row {grid-template-columns:1fr;gap:30px;}
	.cns-greet3__row .cns-greet3__head .cns-title {margin-bottom:32px;}
	.cns-greet__wide {height:clamp(180px,48vw,280px);margin-bottom:36px;border-radius:12px;}
	.cns-greet3, .cns-greet3--2 {grid-template-columns:1fr;gap:48px;}
	.cns-greet3__c {padding:0 20px;}
	.cns-greet3--2 .cns-greet3__c {padding:0;}
	.cns-greet3__c+.cns-greet3__c::before {display:none;}
	.cns-cards {grid-template-columns:1fr;}
	.cns-decl__panel {padding:36px 22px;}
	.cns-decl__body p {font-size:16px;line-height:30px;}

	/* board */
	.gallery-list ul {gap:36px 24px;}
	.gallery-list ul li .thumb {margin-bottom:12px;}

	.card-list {gap:32px 20px;}

	.event-list ul li {width:50%;}

	.store-search {padding:30px; margin-bottom:30px;}
	.store-search .map-area {display:none;}
	.store-search .search-area h3 {text-align:center; margin-bottom:30px;}
}

@media (max-width: 768px) {
	/* content */
	.login-content .group .input {height:48px;font-size:14px;}
	.login-content input.btn-pack.xlarge, .login-content a.btn-pack.xlarge {height:50px;padding:0 22px;line-height:48px;font-size:16px;}
}

@media (max-width: 767px) {
	:root {
		--font-size-16 : 14px;
		--font-size-17 : 14px;
		--font-size-18 : 15px;
		--font-size-19 : 15px;
		--font-size-20 : 16px;
		--font-size-22 : 17px;
		--font-size-23 : 17px;
		--font-size-24 : 18px;
		--font-size-25 : 18px;
		--font-size-26 : 19px;
		--font-size-28 : 20px;
		--font-size-30 : 21px;
		--font-size-32 : 22px;
		--font-size-34 : 22px;
		--font-size-35 : 22px;
		--font-size-36 : 22px;
		--font-size-40 : 24px;
		--font-size-42 : 24px;
		--font-size-44 : 24px;
		--font-size-45 : 24px;
		--font-size-48 : 26px;
		--font-size-50 : 26px;
	}

	body, input, textarea, select, button, table {font-size:14px;}
	.only-desktop-tablet {display:none;}
	.only-tablet {display:none;}
	.only-mobile {display:block;}

	/* header */
	#header .contain {padding:0 16px;}
	.sitelogo a {gap:10px;}
	.sitelogo img {}
	.pull-right {gap:12px;}
	.mobile-navigation {width:100%;}
	.mobile-navigation .home {min-height:72px;}
	.mobile-navigation .home .sitelogo__name {font-size:16px;}

	/* main */
	.main-visual {height:auto; padding:0 40px 40px;}
	.main-visual__frame,
	.main-visual .items,
	.main-visual .item,
	.main-visual .slick-list,
	.main-visual .slick-track,
	.main-visual .slick-slide {min-height:clamp(360px, 62vw, 520px);}
	.main-visual .item .image,
	.main-visual .item .image:after,
	.main-visual .item .image img {border-radius:12px;}
	.main-visual .caption {left:24px; right:24px; bottom:124px; gap:20px;}
	.main-visual .caption .title {margin-bottom:16px; font-size:28px;}
	.main-visual .caption .desc {font-size:14px;}
	.main-visual .caption .txt1 {font-size:24px; line-height:1.35em;}
	.main-visual .caption .txt2 {font-size:14px; line-height:1.5em;}
	.main-visual .slick-dots {left:24px; bottom:64px;}
	.main-visual .slick-dots li button {width:56px;}
	.main-link ul {flex-wrap:wrap;}
	.main-link ul li {flex:1 1 50%;}
	.main-link ul li a {padding:40px 16px; gap:20px;}
	.main-link .ico {width:56px; height:56px;}
	.main-link .contain {padding:0 var(--layout-gutter);}
	.main-slide {padding:64px 0 80px;}
	.main-slide .head {margin-bottom:40px;}

	.dbi-filtab__in {border-radius:16px; padding:8px; gap:4px;}
	.dbi-filtab__in a {padding:6px 15px; font-size:14px; line-height:1.5em;}
	.main-link .tit {font-size:16px;}
	.main-slide .item .tit {font-size:18px;}
	.main-news .head {position:relative; flex-direction:column; align-items:flex-start; gap:20px; margin-bottom:32px;}
	.main-news .head .btn-circle {position:absolute; top:5px; right:0;}
	.main-news .list {gap:40px;}
	.main-news .item {gap:20px;}
	.main-news .thumb {height:200px;}
	.main-news .item .label {margin-bottom:8px;}
	.main-news .item .title {font-size:18px;}
	.main-news .title-row {margin-bottom:16px;}
	.main-news .text {margin-bottom:16px; font-size:14px;}

	.btn-circle {width:48px; height:48px;}

	/* footer */
	.footer-sns {justify-content:flex-start;}
	.footer-sns-cta {padding:20px 16px;}
	.footer-sns-cta__txt {font-size:16px;}
	.footer-top {padding:32px 16px;}
	.footer-txt {gap:16px;}
	.footer-logo__name {font-size:20px; line-height:1.4;}
	.footer-policy a,
	.footer-info__item {font-size:13px; line-height:1.6;}
	.footer-bottom {padding:16px;}
	#footer .copyright {text-align:left;}

	.float-ui {bottom:12px !important;}

	/* sub */
	.sub-visual {height:200px; margin:0; border-radius:0;}
	.sub-visual .title {padding:0 20px;}
	.sub-visual .title .name {font-size:clamp(26px, 7.2vw, 34px); font-weight:600; line-height:1.25; letter-spacing:-0.04em;}
	.sub-visual .title .desc {margin-top:12px; font-size:14px; line-height:1.6;}

	.sub-title {margin-bottom:30px;}
	.sub-title h2 {font-size:26px;}
	.sub-title .cns-board-desc {margin-top:12px; font-size:14px; line-height:1.55;}

	#contArea {padding:30px 20px 60px;}

	/* content */
	.members .head h3 {padding-left: 32px;}
	.members .head h3::before {width: 24px; height: 24px;}
	.membership .head h3 {padding-left:0;}
	.membership .sec1 ol {grid-template-columns: repeat(2, 1fr);}
	.membership .sec2 .item {flex-direction: column;}
	.membership .sec2 .item .tit {width: 100%;}
	.membership .sec2 .item .cnt {padding-left: 0; width: 100%; padding-top: var(--space-40); text-align: center;}
	.membership .sec2 .item .cnt::before {left: 0; top: 0; width: 100%; height: 1px; transform: none;}
	.membership .sec2 .item .cnt .list {margin-top: var(--space-20); grid-template-columns: repeat(1, 1fr); gap: var(--space-10); width: 100%;}
	.membership .sec2 .item .cnt .list li {align-items: flex-start; gap: 8px; border-radius: 18px; text-align: left; line-height: 1.5; padding: 8px 12px;}
	.membership .sec2 .item .cnt .list .num {flex: 0 0 auto; margin-top: 2px;}
	.cns-steps .item {border-bottom:0;}
	.cns-steps .item:first-child {border-radius:var(--radius-24) var(--radius-24) 0 0;}
	.cns-steps .item:last-child {border-bottom:1px solid #ddd; border-radius:0 0 var(--radius-24) var(--radius-24);}
	.cns-steps .item::after {content:""; top:auto; bottom:0; right:auto; left:50%; transform:translate(-50%,50%) rotate(90deg); background-size:6px;}
	.cns-steps .item:last-child::after {content:none;}
	.membership .sec5 .box {flex-direction: column;}
	.membership .sec5 .box .txt-wrap {text-align: center;}
	.membership .sec5 .box .btn-copy {width: 100%;}
	.membership.ceremony .sec5 .box--contact {flex-direction:row; align-items:center; justify-content:flex-start; gap:12px; padding:16px 20px;}
	.membership.ceremony .sec5 .box--contact .contact-icon {width:48px; height:48px; border-radius:12px;}
	.membership.ceremony .sec5 .box--contact .contact-icon img {width:22px; height:22px;}
	.membership.ceremony .sec5 .box--contact .txt-wrap {min-width:0; text-align:left;}
	.membership.ceremony .sec5 .box--contact .account {font-size:18px; line-height:1.3; margin-bottom:2px; white-space:nowrap;}
	.membership.ceremony .sec5 .box--contact .name {font-size:13px; line-height:1.45; word-break:keep-all;}
	.cns-title {font-size:22px; line-height:1.4;}
	.cns-label {font-size:15px; line-height:1.5;}
	.cns-txt {font-size:15px; line-height:1.65;}
	.cns-greet__h .q {font-size:18px;}
	.cns-greet__sign {font-size:15px; line-height:1.65;}
	.cns-greet3__card-t {font-size:18px; line-height:1.4; margin-bottom:20px;}
	.cns-greet3__card-lead {font-size:17px; line-height:1.45;}
	.cns-greet3__card-d {font-size:14px; line-height:1.6;}
	.cns-decl__body p {font-size:15px; line-height:1.65;}
	.membership .sec1 ol li .num,
	.membership .sec1 ol li p {font-size:16px;}
	.membership .sec2 .item .tit h4 {font-size:18px; line-height:1.4;}
	.membership .sec2 .item .cnt .list li p,
	.membership .sec-howto .howto-list .note,
	.membership .sec-howto .howto-list .contact {font-size:14px; line-height:1.55;}
	.cns-steps .item h4 {font-size:18px; line-height:1.4;}
	.cns-steps .item .desc {font-size:15px; line-height:1.65;}
	.membership .sec5 .box .account {font-size:22px;}
	.membership.ceremony .sec1 .cont .lead {font-size:18px;}
	.membership.ceremony .leave-list .days {font-size:22px; line-height:1.4;}
	.directions--loc .directions-meta__label,
	.directions--loc .directions-meta__value {font-size:15px; line-height:1.5;}
	.directions--loc .directions-section {padding:20px;}
	.directions--loc .directions-section__title {font-size:18px;}
	.directions--loc .directions-section__lead {font-size:14px; line-height:1.5;}
	.directions--loc .directions-route__lines p {font-size:14px; margin-bottom:6px;}
	.hist-event__month,
	.hist-event__text {font-size:15px; line-height:1.5;}
	.cns-org-figma__primary-node {font-size:20px;}
	.cns-org-figma__dark-node {font-size:18px;}
	.cns-org-figma__outline-node {font-size:16px;}
	.cns-org-figma__role-title,
	.cns-org-figma__cmt-title {font-size:16px;}
	.cns-org-figma__role-name,
	.cns-org-figma__role-names,
	.cns-org-figma__unit,
	.cns-org-figma__dept-unit,
	.cns-org-figma__cmt-hd,
	.cns-org-figma__cmt-member {font-size:14px;}

	/* board */
	.input {font-size:14px; padding:0 10px; height:40px;}
	select.input {padding-right:26px; background-position:right 8px center; background-size:12px auto;}
	textarea.input {padding:7px 10px;}

	.board-search {display:flex; flex-direction:column; margin-bottom:10px;}
	.board-search .total-page {order:3; float:none; font-size:13px; width:100%; margin-top:16px;}
	.board-search .cate {float:none; order:1; margin-left:0; width:100%;}
	.board-search .cate .input {display:block; width:100%;}
	.board-search .search {float:none; order:2; display:flex; gap:4px; width:100%;}
	.board-search .search .input {flex:1 1 auto; min-width:0; width:1%;}

	.board-list {display:none;}
	.board-list-m {display:block;}

	.simple-list .link-item {padding:16px 0;}
	.simple-list .link-item .num {max-width:50px; font-size:14px;}
	.simple-list .link-item .num .notice {width:40px; height:40px; font-size:12px;}
	.simple-list .link-item .cnt .tit {font-size:15px;}
	.simple-list .link-item .cnt .info {gap:5px 16px; margin-top:8px; font-size:12px;}
	.simple-list .link-item .arrow {display:none;}

	.gallery-list {padding-top:15px;}
	.gallery-list ul {gap:24px 16px; grid-template-columns:repeat(2, 1fr);}
	.gallery-list ul li .thumb {margin-bottom:12px; border-radius:10px;}
	.gallery-list ul li .tit {font-size:16px;}
	.gallery-list ul li .date {font-size:14px; margin-top:4px;}

	.board-card__badge {top:10px; left:10px; font-size:11px;}

	.card-list {grid-template-columns:repeat(2, 1fr); gap:24px 16px; margin-bottom:32px; padding:0; border-top:0;}
	.card-list .link-item {border-radius:10px;}
	.card-list .link-item .info {padding:12px;}
	.card-list .link-item .info .tit {font-size:15px;}
	.card-list .link-item .info .txt {margin-top:10px; font-size:13px;}
	.card-list .link-item .info .date {margin-top:10px; font-size:12px;}

	.news-list ul li {padding:18px 0; gap:16px;}
	.news-list ul li:first-child {padding-top:0;}
	.news-list .thumb {width:38%;}
	.news-list .tit {font-size:15px; max-height:2.8em; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
	.news-list .txt {margin-top:8px; font-size:12px; max-height:calc(1.66em * 2); -webkit-line-clamp:2;}
	.news-list .date {display:none;}

	.event-list {padding-top:20px;}
	.event-list ul li {width:100%; margin-bottom:32px;}
	.event-list ul li .thumb {margin-bottom:10px;}
	.event-list ul li .tit {font-size:15px;}
	.event-list ul li .date {font-size:12px; margin-top:4px;}

	.faq .tit a {padding:9px 0 9px 5px;}
	.faq .tit a:after {display:none;}
	.faq .q {flex:0 0 26px; width:26px; height:26px; font-size:15px; line-height:1.7333em; margin-right:10px;}
	.faq .cnt {padding:12px 12px 12px 15px;}

	.calendar-head {margin-bottom:15px;}
	.calendar-head h3 {font-size:20px; margin:0 17px;}
	.calendar-head .cal-btn {width:34px; height:34px; background-size:9px auto;}
	.calendar-head .cal-prev {background-image:url("/images/bbs/cal_prev_x2.png");}
	.calendar-head .cal-next {background-image:url("/images/bbs/cal_next_x2.png");}
	.calendar table th {padding:6px 4px; font-size:14px;}
	.calendar table td {height:60px; padding:5px 4px; font-size:12px;}
	.calendar ul li {padding-left:0; margin-bottom:6px;}
	.calendar ul li:before {display:none;}
	.calendar .cal-date {font-size:10px; margin-bottom:8px;}

	.board-white table {display:block; border-top:0; border-bottom:0; font-size:14px;}

	.board-white table tbody {display:block;}
	.board-white table tr {display:block; padding:12px 0;}
	.board-white table th {display:block; border:0; text-align:left; padding:0; margin-bottom:7px; font-size:16px; background:none;}
	.board-white table td {display:block; border:0; padding:0;}
	.board-white .editor {padding:0; margin-top:-12px;}
	.board-white .item {margin:3px 12px 3px 0;}
	.board-white #user_name {max-width:100% !important;}
	.board-white + .buttons {margin-top:30px;}

	.board-form table tbody {display:block;}
	.board-form table tr {display:block; padding:12px 0;}
	.board-form table th {display:block; border:0; text-align:left; padding:0; margin-bottom:7px; font-size:16px; background:none;}
	.board-form table td {display:block; border:0; padding:0;}
	.board-form + .buttons {margin-top:30px;}

	.inquiry-form .board-form table th {text-align:left;}

	.form-agree {margin:30px 0 30px;}
	.form-agree h3 {font-size:16px;}
	.form-agree .scroll-box {font-size:12px; max-height:110px; overflow:auto;}
	.form-agree .check {margin-top:12px; font-size:14px;}

	.board-view-tit h3 {font-size:17px;}
	.board-view-info {font-size:12px;}

	.board-prev-next dl {padding:10px 6px;}
	.board-prev-next dt {width:70px}

	.buttons {margin:15px 0;}

	.btn-pack.small {height:26px; padding:0 8px; font-size:11px;}
	.btn-pack.medium {height:40px; padding:0 14px; font-size:14px;}
	.btn-pack.large {min-width:120px; height:42px; padding:0 18px; font-size:15px;}
	.btn-pack.submit {height:48px; padding:0 36px; font-size:15px;}
	.btn-pack.xlarge {min-width:120px; height:50px; padding:0 22px; font-size:16px;}
	.btn-pack.comment {width:80px; height:32px; font-size:14px;}

	.paginate {margin-top:20px;}
	.paginate a,
	.paginate strong{margin:0 1px;width:30px;height:30px;font-size:14px;line-height:2.1429em;}
	.paginate a.direction {margin:0;}
	.paginate a.direction.prev {margin-right:14px;}
	.paginate a.direction.next {margin-left:14px;}

	.comment-area {margin-top:37px;}
	.comment-total {font-size:14px; margin-bottom:12px;}
	.comment-write {position:relative; padding:10px;}
	.comment-write .byte {position:absolute; bottom:15px; left:12px; font-size:12px;}
	.comment-write .write {display:block;}
	.comment-write .write textarea {display:block; width:100%; height:65px; margin-right:0;}
	.comment-write .write .btn {text-align:right; margin-top:6px;}
	.comment-item {padding:17px 4px;}
	.comment-item.comment-reply {padding-left:25px; background-image:url("/images/bbs/icon_reply_x2.png"); background-position:3px 18px; background-size:auto 13px;}
	.comment-info {font-size:14px;}
	.comment-info .name {margin-right:5px;}
	.comment-info .date {font-size:11px;}
	.comment-ctr {font-size:12px;}
	.comment-ctr .bar {vertical-align:middle; margin:-.2em 4px 0;}
	.comment-txt {font-size:14px;}
	.comment-link {font-size:13px;}
	.comment-input {padding:10px;}
	.comment-input textarea {height:48px;}

	.board-password {padding:30px 20px;}

	.product-list ul {margin:0 -7px;}
	.product-list ul li {width:50%; padding:0 7px; margin-bottom:27px;}
	.product-list ul li .thumb {margin-bottom:10px;}
	.product-list ul li .tit {font-size:14px;}
	.product-summary {display:block;}
	.product-image {width:100%; margin-bottom:20px;}
	.product-info {width:100%;}
	.product-info .tit {font-size:22px; padding-bottom:14px; margin-bottom:14px;}
	.product-detail {padding-bottom:25px; margin-bottom:25px;}
	.product-detail .tit {font-size:17px; padding-bottom:10px; margin-bottom:14px;}

	.store-search {padding:0;}
	.store-search .search-area h3 {font-size:16px; padding:15px 25px; margin-bottom:20px; background:#f4f4f4;}
	.store-search .search-area dl {display:block; padding:0 15px; margin:20px 0;}
	.store-search .search-area dl dt {width:auto; margin-bottom:6px; font-size:15px;}
	.store-search .search-area dl dd {width:auto;}
	.store-search .search-area input.input {width:calc(100% - 74px); margin-right:4px;}
	.store-search .search-area select.input {width:calc(50% - 39px); margin-right:4px;}
	.store-search .search-area .btn-pack.medium {width:70px;}

	.result-top {font-size:18px;}
	.result-group .gall {margin:0 -7px;}
	.result-group .gall li {width:50%; padding:0 7px;}
	.result-group dl dt {font-size:15px;}
	.result-group dl dd {font-size:13px;}
	.result-group dl dd.date {font-size:12px;}

	.login-tab {border-bottom-width:2px; margin-bottom:35px;}
	.login-tab ul {padding:0 1px;}
	.login-tab ul li {border-width:2px; margin:0 -1px;}
	.login-tab ul li a {font-size:16px; line-height:2.875em;}
	.login-content .group .input {height:48px; font-size:14px;}

	.sns-login .tit {margin-bottom:20px;}
	.sns-login .tit span {padding:0 20px;}
	.sns-login a {margin:0 8px}
	.sns-login img {width:44px;}

	.agree-wrap {margin-bottom:35px;}
	.agree-wrap .group {margin-top:30px;}
	.agree-wrap .agree-tit {font-size:16px;}
	.agree-wrap .agree-tit .checkbox label:before {background-image:url("../images/member/checkbox_x2.png"); background-size:11px auto;}
	.agree-wrap .agree-tit .checkbox input:checked + label:before {background-image:url("../images/member/checkbox_on_x2.png");}
	.agree-wrap .agree-box {margin-top:7px; max-height:130px; padding:10px 13px;}
	.agree-wrap .agree-box .terms-wrap {line-height:1.4em; word-break:break-all;}

	.terms-wrap .policy-contact {display:block; padding:0 15px;}
	.terms-wrap .policy-contact dl {border-left:0; padding:20px 5px; border-top:1px solid #e5e5e5;}
	.terms-wrap .policy-contact dl:first-child {border-top:0;}

	.join-form table tbody {display:block;}
	.join-form table tr {display:block; padding:12px 0;}
	.join-form table th {display:block; border:0; text-align:left; padding:0; margin-bottom:7px; font-size:16px; background:none;}
	.join-form table td {display:block; border:0; padding:0;}
	.join-form + .buttons {margin-top:30px;}
	.join-form .help-text {display:block; clear:both; padding-top:6px; margin-left:0; font-size:14px; line-height:1.5em;}
	.join-form #user_id {float:left; width:calc(100% - 90px) !important;}
	.join-form #user_id + .btn-pack {width:90px; text-align:center;}
	.join-form #user_pw,
	.join-form #user_pw2,
	.join-form #user_name {width:100% !important;}

	.join-complete .tit {font-size:22px; margin-bottom:20px;}
	.join-complete .txt {font-size:16px;}
	.join-complete .icon {width:110px; height:110px; background-size:48px;}

	.find-tab {border-bottom-width:2px; margin-bottom:35px;}
	.find-tab ul {padding:0 1px;}
	.find-tab ul li {border-width:2px; margin:0 -1px;}
	.find-tab ul li a {font-size:16px; line-height:2.875em;}
	.find-content .group .input {height:48px; font-size:14px;}
	.find-result {padding:30px 15px; font-size:16px;}
	.find-result h4 {font-size:19px;}
	.find-result .name {font-size:24px;}

	.member-leave .txt {margin-bottom:27px;}
	.member-leave .txt .tit {font-size:18px;}
	.member-leave .form {margin-bottom:35px; padding:35px 25px; font-size:15px;}
	.member-leave .form .group .label-tt {width:80px;}
}

@media (max-width: 640px) {
	/* main */
    .main-visual {padding:0;}
    .main-visual__frame {border-radius:0;}
    .main-visual .item:before {content:""; position:absolute; bottom:0; left:0; z-index:2; width:100%; height:70%; background:linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.50) 100%); pointer-events:none;}
    .main-visual .caption {bottom:40px; gap:10px;}
    .main-visual .caption .txt1 {font-size:20px;}
    .main-visual .caption .txt2 {font-size:12px;}
    .main-visual .slick-dots {bottom:16px;}
    .main-link {padding:20px 10px;}
    .main-link ul {display:grid; grid-template-columns:repeat(2, 1fr); gap:0;}
	.main-link ul li {}
	.main-link ul li a {gap:16px; padding:10px;}
	.main-link .tit {text-align:left; white-space:normal;}
	.main-slide .head .wf-sec__h {font-size:24px; line-height:1.35em;}

	/* content */
	.greeting .col-l .img {margin-bottom:20px;}
	.greeting .col-r .top .tit {font-size:22px; margin:20px 0;}
	.greeting .col-r .bot {margin-top:30px;}
	.greeting .bot .sign-row {flex-direction:column; align-items:flex-end; gap:10px;}
	.greeting .col-l .bot .sign-row {align-items:center;}
	.greeting .bot .sign-title {font-size:15px; white-space:normal; text-align:right;}
	.greeting .col-l .bot .sign-title {text-align:center;}
	.history-wrap {padding-top:50px;}
	.history-wrap:before {display:none;}
	.hist-timeline {--hist-year-line:calc(24px*1.3);gap:48px;}
	.hist-timeline::before {left:calc(70px + 9px);}
	.hist-year-col {width:70px;font-size:24px;line-height:var(--hist-year-line);min-height:var(--hist-year-line);}
	.hist-marker-col {width:20px;}
	.hist-marker {width:18px;height:18px;min-width:18px;min-height:18px;}
	.hist-events-col {padding-left:12px;gap:12px; padding-top:6px;}
	.hist-event__month {width:30px;font-size:clamp(15px,2.8vw,18px);line-height:1.65;}
	.hist-event__text {font-size:clamp(15px,2.8vw,18px);line-height:1.65;}
	.hist-event__bullet {margin-top:9px;}
	.directions .info-wrap .t2 {line-height:normal;}
	.membership.ceremony .leave-list {grid-template-columns: repeat(2, 1fr);}
	.cns-org-figma__grid4 {grid-template-columns:repeat(2,minmax(0,1fr));}
	.cns-org-figma__cmt-grid {grid-template-columns:1fr;}
}

@media (max-width: 320px) {
	/* sub */
	.lnb ul li a {font-size: .89em;}
}
