/* CSS Document 
Theme Name: KGA Web
Theme URI: 
Description: KGA 대한골프협회 회원사 theme
Author: ibiz communication
Author URI: 
*/

/*--------------------------------------------------------------------------------*/
/*--------------------------------- FONT STYLES ----------------------------------*/
/*--------------------------------------------------------------------------------*/

@font-face {
	font-family: 'SUIT Variable';
	font-weight: 100 900;
	src: url('../fonts/SUIT-Variable.woff2') format('woff2-variations');
}

/*--------------------------------------------------------------------------------*/
/*------------------------------------ Basic -------------------------------------*/
/*--------------------------------------------------------------------------------*/

html { -webkit-font-smoothing: antialiased; font-size:14px; scroll-behavior: smooth; }
body { background-color: #FFF; letter-spacing: -0.5px; }

body,td,form,input, select, textarea {
	font-size:16px;
	font-family: 'SUIT Variable', 'Open Sans', sans-serif;
	color:#000;
	line-height:1.5rem;
	margin:0 0 0 0 ;	
}

table, img {border:none;border-spacing:0px;border-collapse:collapse;}
tr, td, th {padding:0px;color: hsl(0, 0%, 20%);}

form,input, select, textarea {
   scrollbar-face-color: #ffffff;
   scrollbar-shadow-color: #feebf2;
   scrollbar-highlight-color: #feebf2;
   scrollbar-3dlight-color: #ffffff;
   scrollbar-darkshadow-color: #ffffff;
   scrollbar-track-color: #FFFFFF;
   scrollbar-arrow-color: #feebf2;
}

a {selector-dummy:expression(this.hideFocus=true);}

a:link   	{ color:#000; text-decoration:none;}
a:visited	{ color:#000; text-decoration:none;}
a:hover   	{ color:#000; text-decoration:none;}
a:active 	{ color:#000; text-decoration:none;}

ul, li {list-style:none; margin:0; padding:0}
li { padding-left:16px; padding-bottom:5px;}

h1, h2, h3, h4, h5, h6 { padding-bottom: 5px; line-height: 1.2; margin:0; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: #000; }
small, label { font-size: 0.875rem; }
.caption { font-size: 0.875rem; }
.fs-3 { font-size: 1.75rem !important; }
.fs-4 { font-size: 1.5rem !important; }
.fs-5 { font-size: 1.313rem !important; }
.fs-6 { font-size: 1rem !important; }
.fs-7 { font-size: 0.938rem; }
.fs-8 { font-size: 0.875rem; }
.fs-9 { font-size: 0.75rem; }
.line-1 { line-height: 1em !important; }
.line-2 { line-height: 1.2em !important; }
.line-3 { line-height: 1.5em !important; }
.line-4 { line-height: 2em !important; }
.line-5 { line-height: 3em !important; }
.rounded-4 { border-radius: 0.4rem !important; }
.rounded-5 { border-radius: 0.5rem !important; }
.rounded-10 { border-radius: 1rem !important; }
.rounded-15 { border-radius: 1.5rem !important; }
.rounded-20 { border-radius: 2rem !important; }

p, pre { line-height: 1.4; font-size: 1rem; }

textarea { border: none; outline: 0; color: #000; padding: 6px; }
input { border: none; outline: 0; color: #000; }
select { border: none; outline: 0; color: #000; }
table { width: 100%; border-collapse: collapse; border-spacing: 0; }
tr td, th { border: 1px solid #ddd; padding: 1rem 1.4rem; text-align: inherit;	text-align: -webkit-match-parent; }
span, dt, dd { display: inline-block; font-weight: normal; }	
dl { position: relative; display: flex; margin-bottom: 0; }
details { position: relative; }
summary { position: relative; list-style: none; }

.container { text-align: left; margin: 0 auto; position: relative; }
.container-out { padding-right: var(--bs-gutter-x, 1rem) !important; padding-left: var(--bs-gutter-x, 1rem) !important; }
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.container-overflow-x { position: relative; margin: 0 auto; width: 100%; max-width: 1280px; overflow: hidden; padding-left: var(--bs-gutter-x, 0.75rem); }
@media (min-width: 576px) { .container-overflow-x { padding-left: calc((100% - 540px)*0.5); } }
@media (min-width: 768px) { .container-overflow-x { padding-left: calc((100% - 720px)*0.5); } }
@media (min-width: 992px) { .container-overflow-x { padding-left: calc((100% - 960px)*0.5); } }
@media (min-width: 1400px) { .container-overflow-x { max-width: 1280px; padding-left: 0; } }

img { max-width: 100%; }

.mc-only { display: none !important; }
.pc-only { display: block !important; }
span.mc-only { display: none !important; }
span.pc-only { display: inline-block !important; }
th.pc-only, td.pc-only { display: table-cell !important; }

.match-height>[class*=col] { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-flow: column; flex-flow: column; }
.match-height>[class*=col]>.card { -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; }

.keycolor, .keycolor a { color: #a7d9dd !important; }
.keybg { background: #a7d9dd !important; }
.fw-thin { font-weight: 100 !important; }
.fw-normal { font-weight: 300 !important; }
.fw-sb { font-weight: 600 !important; }
.fw-bold { font-weight: 800 !important; }
.fw-bolder { font-weight: 900 !important; }

.text-primary { color: #457a9d !important; }
.text-orange, .text-orange a { color: #FF5A11 !important; }
.text-blue, .text-blue a { color: #0158FF !important; }
.text-lightblue, .text-lightblue a { color: #CDF9FC !important; }
.text-darkblue, .text-darkblue a { color: #122646 !important; }
.text-navy, .text-navy a { color: #002D9C !important; }
.text-violet, .text-violet a { color: #D62EFF !important; }
.text-red, .text-red a { color: #FF0000 !important; }
.text-green, .text-green a { color: #069531 !important; }
.text-yellow, .text-yellow a { color: #F99600 !important; }
.text-gray, .text-gray a { color: #797979 !important; }
.text-lightgray, .text-lightgray a { color: #C3C3C3 !important; }
.text-lemon, .text-lemon a { color: #E1FF65 !important; }
.text-emerald, .text-emerald a { color: #27DB4F !important; }
.bg-0 { background-color: transparent !important; }
.bg-cover { background-size: cover; background-position: center; }
.bg-contain { background-size: contain; background-position: center; }
.bg-white { background: #FFF !important; }
.bg-light { background: #e6eaec !important; }
.bg-gray { background: #797979 !important; }
.border-blue { border-color: #002D9C !important; }
.border-navy { border-color: #002D9C !important; }

.badge-md { padding: 0.5rem; font-size: 1rem; }
.badge-lg { padding: 1rem 2rem; font-size: 1.25rem; }
.textshadow { text-shadow: 2px 2px 12px rgb(0, 0, 0, 0.8); }
.boxshadow { box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.125); }
.boxshadow-lg { box-shadow: 4px 7px 5px 0px rgba(0, 0, 0, 0.125); }
.boxshadow-xl { box-shadow: 15px 15px 30px 0px rgba(0, 0, 0, 0.125); }
.innershadow { box-shadow: inset 0px 3px 5px 0px rgba(0, 0, 0, 0.125); }
.fillter-white { filter: brightness(0) invert(1); }

/*--------------------------------------------------------------------------------*/
/*------------------------------------ Header ------------------------------------*/
/*--------------------------------------------------------------------------------*/

.site-header { width: 100%; margin: 0 auto; background: #00305B;  position: fixed; top: 0; z-index: 99; box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.125); }
.site-header.menu-opened .main-menu { background: #00305B; position: fixed; width: 100%; height: 100vh; overflow: auto; }
.site-header.menu-opened .main-logo img { filter: brightness(0) invert(1); }
.site-header { transition-duration: 300ms; transition-property: transform; transform: translateY(0px); }
.site-header.cambio_header { transition-duration: 300ms; transition-property: transform; transform: translateY(-170px); will-change: position, transform; }
.site-header.menu-opened.cambio_header { top: 0px; }
.site-header { position: fixed; top: 0; }
.main-logo { position: absolute; left: 50%; transform: translateX(-50%); }
.main-logo img { filter: brightness(0) invert(1); }
#navi-icon { position: relative; width: 45px; height: 56px; font-size: 0; color: transparent; cursor: pointer; background-color: transparent; -webkit-transition: -webkit-transform .3s ease-out; transition: -webkit-transform .3s ease-out; transition: transform .3s ease-out; transition: transform .3s ease-out,-webkit-transform .3s ease-out; }
.navi-icon-line { left: 0; display: block; position: absolute; width: 30px; height: 3px; background-color: #fff; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; -webkit-transition: all .3s ease-out; transition: all .3s ease-out; z-index: 991; }
.navi-icon-line:first-child { top:18px; }
.navi-icon-line:nth-child(2) { top:28px; }
.navi-icon-line:nth-child(3) { top:38px; }
#navi-icon.opened .navi-icon-line { -webkit-transform: rotate(-90deg); transform: rotate(-90deg);}
#navi-icon.opened .navi-icon-line:first-child { width: 30px; background-color: #3b82f6; -webkit-transform: translateY(9px) rotate(-45deg); transform: translateY(9px) rotate(-45deg); top: 19px; left: 0px;}
#navi-icon.opened .navi-icon-line:nth-child(2) { background-color: #3b82f6; -webkit-transform: scaleX(0); transform: scaleX(0); }
#navi-icon.opened .navi-icon-line:nth-child(3) { width: 30px; background-color: #3b82f6; -webkit-transform: translateY(-11px) rotate(45deg); transform: translateY(-11px) rotate(45deg); top: 39px; left: 0px; }

/*-- fullwidth navi --*/
.nav-fullwidth { width: 100%; position: absolute; z-index: 999; background: #00305B; padding-top: 5rem; height: -webkit-fill-available; }
.nav-fullwidth .header-title { background-color: #AEF9FD; font-size: 20px; font-size: 1.25rem; font-weight: 800; height: 50px; line-height: 50px; margin-bottom: 2rem; }
.nav-fullwidth a.cat-title { display: block; font-size: 21px; font-size: 1.313rem; font-weight: 600; padding: 1rem 0 1.5rem; color: #fff; }
.nav-fullwidth ul { margin-bottom: 2rem; }
.nav-fullwidth ul li { position: relative; padding-left: 0; padding-bottom: 0.875rem; }
.nav-fullwidth ul li a { font-size: 20px; font-size: 1.125rem; color: #fff; font-weight: 300; }
.nav-fullwidth ul li a:hover { color: #AEF9FD; }

.navbar-right li { float: left; padding-bottom: 0; }
.navbar-right li a { color: #fff; padding: 0.25rem 0.25rem; }
.navbar-right li a:hover { color: #a7d9dd; }

/*--------------------------------------------------------------------------------*/
/*------------------------------------ main area ---------------------------------*/
/*--------------------------------------------------------------------------------*/

/* section */
.section-area { width:100%; height: auto; margin:0 auto; position: relative; padding: 3rem 0; }

.card-program { border-radius: 2rem; overflow: hidden; padding: 0; border: 0; min-height: 324px; margin-bottom: 3rem; box-shadow: 0px 8px 8px rgba(0, 0, 0, 0.125); }
.card-program:hover { box-shadow: 0px 8px 8px rgba(0, 0, 0, 0.25); }
.card-program .card-header { display: flex; justify-content: space-between; align-items: start; padding: 2rem; font-size: 1.25rem; color: #457a9d; background-color: transparent; border: 0; background-repeat: no-repeat; background-size: contain; background-position: top 5px right 10px; }
.card-program .card-body { padding: 0.5rem 2rem; border: 0; }
.card-program .card-footer { display: flex; justify-content: space-between; padding: 2rem; border: 0; background-color: #eff5ee; }
.card-program .title { font-size: 1.625rem; line-height: 1.2; margin-bottom: 1rem; font-weight: bold; }
.card-program .card-footer .icon { cursor: pointer; }

/*--------------------------------------------------------------------------------*/
/*--------------------------------- Form & Button --------------------------------*/
/*--------------------------------------------------------------------------------*/

input:focus, button:focus, select:focus, textarea:focus { box-shadow: none !important; }
.btn-xxl, .btn-group-xxl > .btn { padding: 1.25rem 3rem; font-size: 2rem; }
.btn-xl, .btn-group-xl > .btn { padding: 1rem 2rem; font-size: 1.5rem; }
.btn-lg, .btn-group-lg > .btn { border-radius: 0.5rem; padding: 0.5rem 1.5rem; }
.btn-sm, .btn-group-sm > .btn { padding: 0.25rem 0.5rem; font-size: 0.875rem; min-width: 54px; }
.btn-xm, .btn-group-xm > .btn { padding: 0.125rem 0.25rem; font-size: 0.75rem; }
.form-select-xl { padding-top: 0.75rem; padding-bottom: 0.75rem; padding-left: 1rem; padding-right: 3rem; font-size: 2.25rem; background-size: 20px 16px; }
.form-select-xl option { font-size: 1.25rem; }
.form-select.text-white option { color: #000 !important; }
.filter-white { filter: brightness(0) invert(1); }
.filter-gray { filter: grayscale(1); }

.btn-primary { background-color: #a7d9dd; border-color: #a7d9dd; color: #000; }
.btn-primary:hover { background-color: #457a9d; border-color: #457a9d; color: #FFF; }
.btn-outline-primary { color: #457a9d; border-color: #457a9d; min-width: 90px; }
.btn-outline-primary:hover { background-color: #e6eaec; border-color: #316080; color: #000; }
.btn-blue { background-color: #3E98F7; border-color: transparent; color: #FFF; }
.btn-blue:hover { background-color: #FFF; border-color: #3E98F7; color: #3E98F7; }
.btn-navy { background-color: #002D9C; border-color: #002D9C; color: #FFF; }
.btn-navy:hover { background-color: #00305B; border-color: #00305B; color: #FFF; }
.btn-gradientblue { background: linear-gradient(120deg, #1135AD, #0C101D) !important; color: #FFF !important; }
.btn-gradientblue:hover { background: #00305B !important; }
.btn-green { background-color: #669E4F; border-color: transparent; color: #FFF; }
.btn-green:hover { background-color: #FFF; border-color: #498133; color: #498133; }
.btn-white { background-color: #FFF; border-color: transparent; color: #000; }
.btn-white:hover { background-color: #3E98F7; color: #FFF; }
.btn-yellow { background-color: #E1FF65; border-color: transparent; color: #002D9C; }
.btn-yellow:hover { background-color: #002D9C; color: #FFF; }
.btn-outline-violet { color: #D62EFF; border-color: #D62EFF; border-radius: 0.5rem; min-width: 90px; }
.btn-outline-navy { color: #002D9C; border-color: #002D9C; }
.btn-apply { background-color: #457a9d; border-color: #457a9d; color: #FFF; }
.btn-apply:hover { background-color: #376786; border-color: #376786; color: #FFF; }

.form-control-xl { min-height: calc(1.75em + 1rem + 2px); padding: 0.75rem 2rem; font-size: 1.75rem; border-radius: 0.3rem; }
.form-control-xxl { min-height: calc(2em + 1rem + 2px); padding: 2rem 2rem; font-size: 2rem !important; border-radius: 0.5rem; }
input.form-control-xl::placeholder, input.form-control-xxl::placeholder  { font-size: 1.25rem; }
input.placeholder-text-center::placeholder { text-align: center; }
input.placeholder-text-end::placeholder { text-align: end; }
.form-control-datepicker { background: url(../images/btn-datepicker.png) no-repeat center right 6px; background-size: 30px; cursor: pointer; }

.form-check-input[type=radio] { font-size: 1.25rem; color: #3251F5; border-color: #3251F5; width: 20px; height: 20px; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='rgba(255, 255, 255, 1)'/></svg>"); }
.form-check-input[type=checkbox] { background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 10l3 3l6-6'/></svg>"); }
.form-check-input:checked[type=radio] { background-color: #3251F5; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='rgba(255, 255, 255, 1)'/></svg>"); }
.form-check-input:checked[type=checkbox] { background-color: #3251F5; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 10l3 3l6-6'/></svg>"); }
.form-check .form-check-input, .form-check .form-check-label { margin-top: 0.25em; }
.form-check-lg .form-check-input { width: 25px; height: 25px; }
.form-check-lg .form-check-label { font-size: 1.375rem; }
.form-check-circle .form-check-input[type=checkbox] { border-radius: 50%; }
.form-check-violet .form-check-input[type=checkbox] { background-color: #DBDBDB; border-color: #DBDBDB; }
.form-check-violet .form-check-input[type=checkbox]:checked { background-color: #D62EFF; border-color: #D62EFF; }
.form-input-group .form-label { font-size: 1.25rem; }
.form-input-group .form-control, .form-input-group .input-group-text{ font-size: 1.25rem; background-color: #F4F4F4; border-radius: 0; border: 0; border-bottom: 1px solid #505050; }
.form-input-group .form-control:focus { border-bottom: 1px solid #D62EFF; }
.form-input-group:hover .input-group-text { border-bottom: 1px solid #D62EFF; }
.form-check-custom .form-check-input[type=radio] { font-size: 1.25rem; color: #3251F5; border-color: #CCCCCC; width: 20px; height: 20px; background: #FFF; margin-right: 1rem; }
.form-check-custom .form-check-input[type=radio]:checked { border-color: #3251F5; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='rgba(75, 114, 254, 1)'/></svg>"); }
.form-check-custom .form-check-label { font-size: 1.25rem; }
.form-check.form-switch .form-check-input[type=checkbox] { background-color: #4B4B4B; border: 0; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='rgba(255, 255, 255, 1)'/></svg>"); }
.form-check.form-switch .form-check-input:checked[type=checkbox] { background-color: #C4C4C4; border: 0; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='rgba(255, 255, 255, 1)'/></svg>"); }


/*--------------------------------------------------------------------------------*/
/*----------------------------------- page nav -----------------------------------*/
/*--------------------------------------------------------------------------------*/

/* scroll nav */
.scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; white-space: nowrap; }
.scroll li { display: inline-block; }

/* nav-headermenu */
.section-headermenu { position: fixed; top: 79px; width: 100%; display: flex; align-items: center; background: #e6eaec; color: #FFF; height: 69px; overflow-x: auto; z-index: 2; }
.section-headermenu { transition-duration: 300ms; transition-property: transform; transform: translateY(0px); will-change: position, transform; }
.section-headermenu.cambio_header { transform: translateY(-170px); }
.nav-headermenu { position: relative; min-width: max-content; }
.nav-headermenu .nav-item { padding: 0; }
.nav-headermenu .nav-item.active { background-color: #a7d9dd; }
.nav-headermenu .nav-item:active .nav-link, .nav-headermenu .nav-item:hover .nav-link { color: #000; }
.nav-headermenu .nav-link { color: #354e6b; font-size: 1.25rem; font-weight: 500; padding: 0 1.875rem; line-height: 69px; }

/* section pagemenu */
.section-pagemenu { position: relative; background: #FFF; padding: 2rem 0; overflow-x: auto; box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.125); }

/* round nav */
.nav-roundmenu { position: relative; min-width: max-content; border-bottom: 0; }
.nav-roundmenu .nav-item { padding: 0 0.25rem; }
.nav-roundmenu .nav-link { color: #999; background-color: #FFF; font-size: 1.125rem; padding: 0.5rem 1rem; font-weight: 600; border: 1px solid #999; border-radius: 2rem; text-align: center; }
.nav-roundmenu .nav-link.active { color: #000; border-color: #000; }
.nav-roundmenu li:first-child { padding-left: 0; }

/*--------------------------------------------------------------------------------*/
/*---------------------------------- page header ---------------------------------*/
/*--------------------------------------------------------------------------------*/

/* header */
.header-margin { margin-top: 150px; }
.title-group { position: relative; margin-bottom: 2rem; }
.title-group label { font-size: 1rem; color: #0158FF; margin-bottom: 0.5rem; }
.title-group .title { display: flex; align-items: center; font-weight: bold; margin-bottom: 0; padding-bottom: 0; line-height: 1.4; }
.title-group .title span { display: inline-flex; font-weight: bold; }
.title-group .title span img { max-height: inherit; }

/*--------------------------------------------------------------------------------*/
/*------------------------------------ content -----------------------------------*/
/*--------------------------------------------------------------------------------*/

.form-apply .form-label { font-size: 1rem; }
.form-apply .form-control { border-radius: 0.5rem; }
.form-apply .input-group { border: 1px solid #ced4da; border-radius: 0.5rem; overflow: hidden; }
.form-apply .input-group .form-control, .form-apply .input-group .form-select { border: 0; }
.form-apply .input-group-text { background-color: transparent; border: 0; font-size: 1rem; }
.form-apply .input-group-lg .input-group-text { font-size: 1.25rem; }
.form-apply .form-control, .form-apply .input-group-text, .form-apply .form-control::placeholder, .form-apply .form-select { color: #6c757d !important; }
.form-apply .form-control.text-navy { color: #002D9C !important; }

.card-info { border-radius: 2rem; overflow: hidden; padding: 1rem; border: 1px solid #ced4da;  border-radius: 0.75rem; min-height: 300px; }
.card-info .card-header { display: flex; align-items: center; padding: 1rem 0 1.5rem; font-size: 1.25rem; font-weight: bold; background-color: transparent; border-color: #ced4da; background-repeat: no-repeat; background-size: contain; background-position: top 5px right 10px; }
.card-info .card-body { padding: 1.5rem 1rem 0 0; border: 0; }
.card-info .card-footer { display: flex; padding: 1rem 1.5rem 1rem 0; border: 0; background-color: transparent; }

.entry { padding: 3rem 4rem; }
.entry-board { background-color: #FFF; border-radius: 1rem; padding: 1rem; margin: 0 auto 1rem; }
.entry-board a { display: block; }
.entry-board label { background-color: #e6eaec; color: #354e6b; border-radius: 1rem; padding: 0 1rem; margin-bottom: 1rem; }
.entry-board .board-title { color: #00305B; font-weight: 700; height: 52px; }
.entry-board .date { color: #354e6b; }
.blockquote { position: relative; background: linear-gradient( #c7f0f2, #e3fcfd, #c7f0f2); border-radius: 1.5rem; }
.blockquote p { padding: 3rem 4rem; font-size: 1.5rem; line-height: 1.5; background: url(../images/backgroundlogo.svg) no-repeat center center; background-size: 100px; }
.btn-kgamember { background: linear-gradient(90deg, #6E75E6, #000DC4) !important; color: #FFF !important; }
.btn-kgamember:hover { background: #00305B !important; }
.bg-kgamember { background: linear-gradient(90deg, #6E75E6, #000DC4); }
.text-through { text-decoration: solid line-through rgba(205, 255, 0, 0.25) 13px; }

/*--------------------------------------------------------------------------------*/
/*------------------------------------ Table -------------------------------------*/
/*--------------------------------------------------------------------------------*/

/* table */
.table > :not(:last-child) > :last-child > * { border-bottom-color: inherit; }
.table>:not(caption)>*>* { font-size: 1.125rem; padding: 0.875rem 1rem; background-color: var(--mdb-table-bg); border-bottom-width: 1px; box-shadow: inset 0 0 0 9999px var(--mdb-table-accent-bg); }
.table-sm tr th, .table-sm tr td { font-size: 1rem; padding: 0.5rem 1rem; }
.table-md tr th, .table-md tr td { font-size: 1rem; padding: 1.25rem 1.5rem; }
.table-lg tr th, .table-lg tr td { font-size: 1.25rem; padding: 1.25rem 2rem; }
.table tr td, .table th { vertical-align: middle; }
.table.fw-sb th, .table.fw-sb td { font-weight: 600; }
.table-border tr th { border-color: #ddd !important; }
.table-border tr td { border-color: #ddd !important; }
.table.border-0 tr th, .table.border-0 tr td { border: none; }
.text-white th, .text-white td { color: #FFF; }


/*--------------------------------------------------------------------------------*/
/*---------------------------------- modal popup ---------------------------------*/
/*--------------------------------------------------------------------------------*/

.modal-lg { max-width: 896px; }
.modal-xl { max-width: 1140px; }
.modal-content, .modal-content .modal-body { border: 0; background: transparent; }
.modal-content .modal-body { padding: 3rem; }
.modal-content .btn-close { position: absolute; top: -3rem; right: -3rem; opacity: 1; width: 38px; height: 38px; padding: 0; background-image: url(../images/btn-modal-close.svg); background-size: contain; }
.modal-content .btn-close.btn-inside { top: 2rem; right: 2rem; width: 30px; height: 30px; background-image: url(../images/btn-modal-innerclose.svg); background-size: contain; }
.modal-content .swiper-button-prev { width: 38px; height: 38px; background-image: url("../images/btn-swiper-arrow-prev.svg"); left: -3rem; background-size: contain; }
.modal-content .swiper-button-next { width: 38px; height: 38px; background-image: url("../images/btn-swiper-arrow-next.svg"); right: -3rem; background-size: contain; }
.modal-content .swiper-button-next:after, .modal-content .swiper-button-prev:after { display: none; }
.modal-bgblue { background: linear-gradient(120deg, #061AB4, #061AB4, #549BE9); }
.modal-bggreen { background: linear-gradient(120deg, #72eff0, #52c810, #08588a); }
.modal-content .btn-close.btn-dark { top: 2rem; right: 2rem; width: 47px; height: 47px; background-image: url(../images/btn-modal-darkclose.svg); background-size: contain; }
.modal-content .btn-close.btn-dark:hover { background-color: transparent; opacity: 0.75; }
.modal-body.modal-servicedetail { padding: 3rem; background: url(../images/modal-program-bg.svg) no-repeat center; background-size: cover; min-height: 140px; }
.modal-servicedetail::before { position: absolute; top: 0; left: 0; content: ""; width: 100%; height: 14px; background: url(../images/modal-program-bgborder.svg) no-repeat center; background-size: cover; }
.modal-servicedetail .card-footer { border: 0; background: none; }
.ul-programstep { display: flex; justify-content: center; }
.ul-programstep li { position: relative; width: 224px; height: 290px; padding-left: 0; background-color: #FFF; border-radius: 2rem; box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.125); text-align: center; padding: 3rem 1.25rem 1rem; margin-left: 0.5rem; margin-bottom: 0.5rem; }
.ul-programstep li::after { position: absolute; top: calc(50% - 24px); right: -32px; content: ""; width: 48px; height: 48px; background: url(../images/modal-program-steparrow.svg) no-repeat center; z-index: 1; }
.ul-programstep li:last-child::after { display: none; }
.ul-programstep li label { position: absolute; top: -34px; left: 0; width: 100%; }
.ul-programstep .step-thumb { margin: 2rem 0; }
.ul-programstep .step-title { font-size: 1.25rem; line-height: 1.4; }
.hr-gradientgreen:not([size]) { opacity: 1; background: linear-gradient(90deg, #33CFC2, #CDFF00, #33CFC2); height: 7px; }
.border-lg-end { border-right: 1px solid #0B308E !important; }


/*--------------------------------------------------------------------------------*/
/*----------------------------------- footer area --------------------------------*/
/*--------------------------------------------------------------------------------*/

.section-footer { }
.section-copyright { background: #354052; color: #FFF; font-size: 21px; font-size: 1.313rem; }
.section-copyright a { color: #FFF; }
.section-copyright p { font-size: 21px; font-size: 1.313rem; }



/*--------------------------------------------------------------------------------*/
/*----------------------------------- responsive ---------------------------------*/
/*--------------------------------------------------------------------------------*/

@media (min-width: 1400px) {
	.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container { max-width: 1280px; }
}

@media (max-width: 992px) {
	body { font-size: 14px; }
	.fs-1 { font-size: 1.75rem !important; }
	.fs-2 { font-size: 1.5rem !important; }
	.fs-3 { font-size: 1.313rem !important; }
	.fs-4 { font-size: 1.125rem !important; }
	.fs-5 { font-size: 1rem !important; }
	.fs-6 { font-size: 0.938rem !important; }
	.fs-7 { font-size: 0.875rem !important; }
	.fs-8 { font-size: 0.75rem !important; }
	.fs-9 { font-size: 0.625rem !important; }

	tr td, th { }
	.pc-only { display: none !important; }
	.mc-only { display: block !important; }
	span.pc-only { display: none !important; }
	span.mc-only { display: inline-block !important; }
	th.pc-only, td.pc-only { display: none !important; }
	th.mc-only, td.mc-only { display: table-cell !important; }

	.news-swiper { margin-top: 0; }
	.notice-swiper, .press-swiper, .club-swiper { padding-right: 0 !important; }

	/* navi */
	.navbar-toggler { padding: 0.25rem 0rem; width: 38px; height: 65px; }
	#navi-icon { width: 32px; }
	.icon-search { left: 40px; }
	#navi-icon.opened { width: 30px; height: 30px; margin: 6px 6px 6px 0; }
	#navi-icon.opened .navi-icon-line:first-child { transform: translateY(9px) rotate(-45deg); top: 4px; left: 5px;}
	#navi-icon.opened .navi-icon-line:nth-child(3) { transform: translateY(-11px) rotate(45deg); top: 24px; left: 5px; }
	.site-header.menu-opened .main-menu { background: #00305B; }

	/* headermenu */
	.main-menu .navbar { padding: 0 !important; }
	.main-logo img { max-height: 30px; }
	.header-margin { margin-top: 115px; }

	/* fullwidth navi */
	.nav-fullwidth { padding-top: 2rem; }
	.nav-fullwidth .header-title { height: 40px; line-height: 40px; margin-bottom: 0.5rem; padding-left: 1rem; font-size: 1rem; font-weight: 900; }
	.nav-fullwidth-mc summary { list-style: none; padding-left: 1.5rem; font-size: 1.125rem; background-repeat: no-repeat; background-position: right 1.5rem center; background-size: 18px 18px; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><polyline fill='none' stroke='rgba(255, 255, 255, 1)' stroke-width='2' points='6 9 12 15 18 9'/></svg>"); }
	.nav-fullwidth-mc details[open] summary { background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><polyline fill='none' stroke='rgba(255, 255, 255, 1)' stroke-width='2' points='6 15 12 9 18 15'/></svg>"); }
	.nav-fullwidth-mc .nav-link { width: 100%; padding: 0.5rem 0; text-align: left; color: #fff; font-weight: 600; }
	.nav-fullwidth-mc .dropdown ul { width: 100%; background-color: #002648; padding: 0.5rem 0; margin: 0.75rem 0; }
	.nav-fullwidth-mc ul li { padding: 0.5rem 1.5rem; }
	.nav-fullwidth-mc ul li a { font-size: 1.125rem; }

	/* button */
	.btn-xxl, .btn-group-xxl > .btn { padding: 1rem 2rem; font-size: 1.5rem; }
	.btn-xl, .btn-group-xl > .btn { padding: 0.5rem 1rem; font-size: 1.25rem; }
	.btn-lg, .btn-group-lg > .btn { }
	.btn-sm, .btn-group-sm > .btn { padding: 0.125rem 0.25rem; font-size: 0.75rem; }
	.btn-xm, .btn-group-xm > .btn { }
	.form-select-xl { padding-top: 0.5rem; padding-bottom: 0.5rem; padding-left: 0.5rem; font-size: 1.25rem; background-size: 16px 12px; }
	.form-select-xl option { font-size: 1rem; }
	.form-check-custom .form-check-input[type=radio] { font-size: 1rem; margin-right: 0.5rem; }
	.form-check-custom .form-check-label { font-size: 1rem; }

	/* .section-area */
	.section-area { padding: 1rem 0; }

	/* section copyright */
	.section-copyright { font-size: 0.875rem; }
	.footer-copyright p { font-size: 0.688rem; margin-bottom: 0.25rem; }

	/* page nav */
	.nav-headermenu .nav-link { font-size: 1rem; padding: 0 0.75rem; line-height: 50px; }
	.section-headermenu { top: 65px; height: 50px; }
	.section-pagemenu { padding: 1rem 0; }
	.nav-roundmenu .nav-item { padding: 0 0.125rem; }
	.nav-roundmenu .nav-link { font-size: 0.75rem; padding: 0.25rem 0.5rem; }


	/*------------------------------------ page header -----------------------------------*/

	.title-group .title span { max-height: 30px; }
	


	/*------------------------------------ content -----------------------------------*/

	.card-program { border-radius: 1rem; min-height: 200px; margin-bottom: 1.5rem; box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.125); }
	.card-program .card-header { padding: 1rem; font-size: 0.875rem; background-position: top 5px right 5px; }
	.card-program .card-body { padding: 0.25rem 1rem; font-size: 1rem; }
	.card-program .title { font-size: 1.125rem; margin-bottom: 0.5rem; }
	.card-program .card-footer { padding: 1rem; }
	.card-program .card-footer .btn { padding: 0.25rem 0.5rem; font-size: 0.875rem; }
	.card-program .card-footer .icon, .card-program .card-footer .icon img { max-height: 30px; }
	.card-info { min-height: 190px; }
	.card-info .card-header { padding: 0.5rem 0 1rem; background-position: top 5px right 5px; }
	.card-info .card-body { padding: 1rem 0; font-size: 1rem; }
	.card-info .card-footer { padding: 0.5rem 0; }
	.card-info .card-footer .btn { padding: 0.25rem 0.5rem; font-size: 0.875rem; }
	.card-info .card-footer .icon, .card-info .card-footer .icon img { max-height: 30px; }

	.entry { padding: 1.5rem 2rem; }
	.entry-board .board-title { height: auto; }
	.blockquote p { padding: 1.5rem 2rem; font-size: 1.125rem; background-size: 60px; }

	/* table */
	.table-underline tr th, .table-underline tr td { font-size: 1rem; padding: 0.75rem 0.25rem; }

	/* Modal */
	.modal-content .modal-body { padding: 1rem; }
	.modal-content .swiper-button-prev { width: 24px; height: 24px; top: 100%; left: 43%; margin: 0; }
	.modal-content .swiper-button-next { width: 24px; height: 24px; top: 100%; right: 43%; margin: 0; }
	.ul-programstep { display: block; }
	.ul-programstep li { display: flex; width: 95%; height: 100px; margin-left: 5%; padding: 2rem 1rem; align-items: center; }
	.ul-programstep li::after { top: calc(100% - 12px); right: calc(50% - 12px); width: 24px; height: 24px; background-size: contain; transform: rotate(90deg); }
	.ul-programstep li label { top: 28px; left: -8%; width: 50px; }
	.ul-programstep .step-thumb { display: flex; align-items: center; margin: 0 1.5rem; width: 30px; height: 50px; }
	.ul-programstep .step-title { text-align: left; }

	/* Footer */

}


