@charset "utf-8";
.dot-list li{text-indent: -.5em; padding-left: 0.5em;}
.dot-list li:before {content: '·'; margin-right: 5px;}
.dot-list.type2 li {text-indent: -1em; padding-left: 1em;}
.dot-list.type2 li:before {content: '•'; font-weight: 900; margin-right: var(--space-10); color: var(--primary-color);}
.under-tit {border-bottom: 2px solid var(--primary-color); padding-bottom: var(--space-15);}

.about-club-txt h3:after {content: ''; display: block; flex: 1; margin: 0 var(--space-50); height: 2px; background: var(--primary-color);}
.strength-items {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-40);}
.strength-item {gap: var(--space-30);}
.strength-item .num {display: flex; justify-content: center; align-items: center; width:clamp(30px, calc(36 / var(--inner) * 100vw), 36px); height:clamp(30px, calc(36 / var(--inner) * 100vw), 36px); border-radius: 100%; border: 1px solid var(--primary-color); color: var(--primary-color); font-size: var(--font-size-16);}

.page-facility section:not(:last-child) {padding-bottom: var(--space-150);}
.page-facility h3 {border-bottom: 2px solid var(--primary-color); padding-bottom: var(--space-15); margin-bottom: 15px;}
.facility-slider {position: relative; padding: 0 calc(clamp(40px, calc(48 / var(--inner) * 100vw), 48px) + var(--space-40)); margin: 0 calc((clamp(40px, calc(48 / var(--inner) * 100vw), 48px) + var(--space-40)) * -1)}
.facility-slider .slick-arrow {position: absolute; z-index: 1; top: 50%; transform: translateY(-50%); width: clamp(40px, calc(48 / var(--inner) * 100vw), 48px); height: clamp(40px, calc(48 / var(--inner) * 100vw), 48px); border-radius: 100%; border: 1px solid #ddd; background: #fff; display: flex; justify-content: center; align-items: center; cursor: pointer; overflow: hidden; text-indent: -9999em;}
.facility-slider .slick-arrow.slick-prev {left: 0;}
.facility-slider .slick-arrow.slick-next {right: 0;}
.facility-slider .slick-arrow:before {content: ''; display: block; width: 9px; height: 16px; background: url('/images/sub/slick-arrow.svg') no-repeat center center / contain;}
.facility-slider .slick-arrow.slick-next:before {transform: rotate(180deg);}
.facility-slider .slick-arrow:hover {background: var(--primary-color); border-color: var(--primary-color); color: #fff;}
.facility-slider .slick-arrow:hover:before {filter: brightness(0) invert(1);}
.facility-slider .img {border-radius: var(--radius-32); overflow: hidden;}

.sec-direction .direction-map {display: block; width: 100%; height: clamp(270px, calc(500 / var(--inner) * 100vw), 500px); border-radius: var(--radius-16); overflow: hidden;}
.direction-info {gap: var(--space-40); flex-wrap: wrap;}
.direction-info-item.flex1 {min-width: max-content;}
.direction-cnt, .direction-info-item  {gap: var(--space-20);}
.icon-direction {display: flex; justify-content: center; align-items: center; width: clamp(34px, calc(60 / var(--inner) * 100vw), 60px); height: clamp(34px, calc(60 / var(--inner) * 100vw), 60px); border-radius: 100%; border: 2px solid var(--primary-color);}
.direction-box {padding: var(--space-30); border-radius: var(--radius-16); border: 1px solid #ddd; background: #fafafa;;}
.direction-cnt .icon img {background: rgba(59, 133, 40, 0.24); border-radius: 100%;}

.page-golf-facility section:not(:last-child) {padding-bottom: 30px; margin-bottom: 30px; border-bottom: 1px solid #ddd;}
.golf-facility-head {display: flex; flex-wrap: wrap; gap: 8px var(--space-20); color: #888;}
.golf-facility-imgs {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-30);}
.page-golf-facility .tags {display: flex; flex-wrap: wrap; gap: 5px var(--space-20);}
.page-golf-facility .tags span {display: block; padding: clamp(4px, calc(8 / var(--inner) * 100vw), 8px) var(--space-20); border-radius: 100px; background: #E7F0E5; color: var(--primary-color); font-size: var(--font-size-16); font-weight: 600; line-height: 1.4375em;}

.sec-lesson .group {display: flex; gap: 20px 35px; padding: var(--space-60) var(--space-30); border-bottom: 1px solid #ddd;}
.sec-lesson .group:nth-child(even) {background: #FAFAFA;}
.sec-lesson h3 {display: flex; align-items: center; height: fit-content;}
.sec-lesson h3:before {content: ''; display: block; width:4px; height:23px; background: var(--primary-color); margin-right: var(--space-20);}
.sec-lesson .img {border-radius: var(--radius-16); overflow: hidden;}

.sec-program .sec-cnt {display: flex; flex-direction: column; gap: var(--space-60);}
.sec-program .curri .tit {background: #E7F0E5; color: var(--primary-color); font-size: var(--font-size-24); font-weight: 600; padding: var(--space-15) var(--space-20);}
.sec-program .curri .list {display: flex; flex-direction: column;}
.sec-program .curri .list li {display: flex; align-items: center; gap: 7px clamp(15px, calc(100 / var(--inner) * 100vw), 100px); padding: var(--space-15) var(--space-20); border-bottom: 1px solid #ddd; font-size: var(--font-size-18);}
.sec-program .curri .list .num {flex-shrink: 0; width: 65px; font-weight: 600; color: var(--dark-color);}
.sec-program .curri .list .txt {color: #454545;}

.page-fee {display: flex; flex-direction: column; gap: var(--space-80);}
.page-fee .fee-tit {display: flex; align-items: center; gap: var(--space-20);}
.page-fee .fee-body {display: flex; flex-direction: column; gap: var(--space-120);}
.page-fee .fee-sec {display: flex; flex-direction: column; gap: 25px;}
.page-fee .fee-sec .tit { font-size: var(--font-size-32); color: var(--dark-color);}
.page-fee .tbl {width: 100%; border-collapse: collapse; font-size: var(--font-size-18); color: #454545; table-layout: fixed; border-top: 2px solid var(--primary-color);}
.page-fee .tbl th, .page-fee .tbl td {padding: var(--space-20); border: 1px solid #ddd; text-align: center; vertical-align: middle;}
.page-fee .tbl thead th {background: #fafafa; font-weight: 600;}
.page-fee .tbl small {font-size: var(--font-size-16); color: #888; font-weight: 400;}
.page-fee .fee-note {padding: var(--space-30); border: 1px solid #ddd; border-radius: 8px; background: #fafafa;}
.page-fee .fee-note p {position: relative; padding-left: 16px; font-size: var(--font-size-18); line-height: 1.5;}
.page-fee .fee-note p:before {content: ''; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; border-radius: 100%; background: #454545;}
.page-fee .fee-note p + p {margin-top: var(--space-15);}
.page-fee .fee-note-txt {margin-top: var(--space-10); font-size: var(--font-size-16); color: #888;}
.page-fee .fee-time-wrap {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-50);}
.page-fee .fee-time-box {flex: 1; min-width: 280px; padding: var(--space-40); border: 1px solid #ddd; border-radius: var(--radius-16); background: #fff;}
.page-fee .fee-time-tit {font-weight: 600; font-size: var(--font-size-18); color: #454545; margin-bottom: var(--space-20);}
.page-fee .fee-time-list {display: flex; flex-direction: column; gap: var(--space-10);}
.page-fee .fee-time-list div {display: flex; justify-content: space-between; align-items: center;}
.page-fee .fee-time-list dt {font-size: var(--font-size-18); color: #888;}
.page-fee .fee-time-list dd {font-weight: 600; font-size: var(--font-size-18); color: #454545;}

.page-lesson .sec-tit {gap: var(--space-20); border-bottom: 2px solid var(--primary-color); padding-bottom: var(--space-15); margin-bottom: var(--space-30); color: #888;}
.lesson-info-boxes {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-30);}
.lesson-info-box {padding: var(--space-40); border-radius: var(--radius-16); border: 1px solid #ddd; background: #fafafa;}

.facility-bakery {display: flex; flex-direction: column; gap: var(--space-80);}
.facility-bakery .sec-intro {display: flex; flex-direction: column; gap: var(--space-40);}
.facility-bakery .sec-intro .cont-tit .tit {border-bottom: 2px solid var(--primary-color); padding-bottom: var(--space-15); margin-bottom: var(--space-25);}
.facility-bakery .sec-intro .img-box {display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-30);}
.facility-bakery .sec-intro .img-box .img {border-radius: var(--radius-16); overflow: hidden;}
.facility-bakery .info-box {padding: var(--space-30); border: 1px solid #ddd; border-radius: 8px; background: #fafafa;}
.facility-bakery .info-box .tit {font-size: 22px;}
.facility-bakery .info-box .list {display: flex; flex-direction: column; gap: var(--space-10);}
.facility-bakery .info-box .list li {display: flex; align-items: flex-start; gap: var(--space-15); font-size: var(--font-size-18); color: #454545;}
.facility-bakery .info-box .list .label {flex-shrink: 0; font-weight: 600;}
.facility-bakery .info-box .list li:before {content: ''; flex-shrink: 0; width: 5px; height: 5px; margin-top: 8px; border-radius: 100%; background: #454545;}
.facility-bakery .sec-cont {display: flex; flex-direction: column; gap: var(--space-60);}
.facility-bakery .sec-info .cont-tit .tit {border-bottom: 2px solid var(--primary-color); padding-bottom: var(--space-15); margin-bottom: var(--space-40);}
.facility-bakery .sec-cont .item {display: flex; align-items: center; gap: 25px clamp(25px, calc(60 / var(--inner) * 100vw), 100px); flex-wrap: wrap;}
.facility-bakery .sec-cont .item .txt {flex: 1; min-width: 280px; display: flex; flex-direction: column; gap: var(--space-20);}
.facility-bakery .sec-cont .item .sub-tit {font-size: var(--font-size-24); color: var(--dark-color);}
.facility-bakery .sec-cont .item .txt p {font-size: var(--font-size-18); color: #454545; line-height: 1.44;}
.facility-bakery .sec-cont .item .img {flex: 0 0 50%; max-width: 100%; border-radius: var(--radius-16); overflow: hidden;}
.facility-bakery .sec-cont .item .img img {width: 100%; aspect-ratio: 600 / 250; object-fit: cover;}

.partner-floor {display: flex; flex-direction: column; gap: var(--space-30);}
.partner-floor .item {display: flex; align-items: stretch;}
.partner-floor .item .label {display: flex; align-items: center; justify-content: center; padding: var(--space-30); background: var(--primary-color); color: #fff; font-size: var(--font-size-24); font-weight: 600; border-radius: 8px 0 0 8px; min-width: 80px;}
.partner-floor .item .cont {flex: 1; padding: var(--space-30); border: 1px solid #ddd; border-left: none; border-radius: 0 8px 8px 0; background: #fafafa;}
.partner-floor .item ul {display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-30);}