@charset "utf-8";

/* reset */
html {-webkit-text-size-adjust: none; text-size-adjust: none;}
body {margin: 0;}
h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, p {margin: 0; padding: 0;}
h1, h2, h3, h4, h5, h6 {font-weight: 700;}
a {color: inherit; text-decoration: inherit;}
li {list-style: none;}
img {vertical-align: middle; max-width: 100%;}
address, em, i, cite {font-style: normal;}
table {border-collapse: collapse;}
table caption {overflow: hidden; width: 0; height: 0;}
i[class^="fa"] {position: relative; display: inline-block; vertical-align: middle; overflow: hidden;}
i[class^="fa"] span {position: absolute; left: -9999px;}
.ir-hidden {position: absolute; left: -9999px;}
.mobile {display: none !important;}
br.only-m {content: '';}
br.only-m::after {content: '\00a0';}


/* common */
body {font-family: 'NotoSansKR', sans-serif; font-size: 14px; font-weight: 400; color: #1f1e24; background: #ffffff;}
#wrapper {position: relative; min-width: 1024px; overflow: hidden;}
#skip-nav {position: fixed; left: 0; top: -40px; width: 100%; line-height: 40px; text-align: center; background-color: rgba(0, 0, 0, 0.7); color: #ffffff; font-size: 16px; transition: top 0.3s; z-index: 100000;}
#skip-nav:focus {top: 0;}

#header {position: fixed; top: 0; left: 0; width: 100%; min-width: 1024px; height: 80px; box-sizing: border-box; background-color: rgba(255, 255, 255, 0.9); border-bottom: 1px solid #e0e0e0; color: #333333; z-index: 1000; transition: background-color 0.3s;}
#header h1 {position: absolute; left: 50px; top: 50%; transform: translate(0, -50%); line-height: 1px; width: 130px;}
#header h1 a {display: block;}
#header p.search {position: absolute; right: 50px; top: 50%; transform: translate(0, -50%);}
#header p.search input {border: none; border-bottom: 2px solid #e0e0e0; font-size: 16px; color: #704d23; width: 120px; height: 30px; outline: none; transition: all 0.3s; padding-right: 40px; background-color: transparent;}
#header p.search input:focus {border-bottom-color: #704d23;}
#header p.search a {position: absolute; right: 0; top: 50%; transform: translate(0, -50%); width: 20px;}
#header::after {content: ''; position: absolute; left: 0; top: calc(100% + 1px); width: 100%; height: 0; background: url(/en/img/bg-left.png) left bottom no-repeat, url(/en/img/bg-right.png) right bottom no-repeat, url(/en/img/bg-center.png) left bottom repeat-x; background-size: 200px auto, 300px auto, auto 40px; background-color: #ffffff; transition: height 0.2s; box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2);}
#header.open::after {height: 300px;}

#gnb {position: absolute; left: 50%; top: 0; transform: translate(-50%, 0); min-width: 820px; height: 100%; font-size: 13px; z-index: 100; transition: height 0.3s;}
#gnb a {display: block; position: relative; transition: all 0.3s;}
#gnb li.on > a,
#gnb a:hover {color: #ab8352;}
#gnb > ul > li {float: left;}
#gnb > ul > li + li {margin-left: 100px;}
#gnb > ul > li > a {display: inline-block; line-height: 80px; vertical-align: top; font-size: 15px; font-weight: 500; text-align: center;}
#gnb > ul > li > a::after {content: ''; position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 0); width: 0; height: 3px; background-color: #ab8352; transition: width 0.3s;}
#gnb > ul > li.on > a::after {width: 100%;}
#gnb > ul > li > ul {position: absolute; top: 120px; left: 50%; transform: translate(-50%, 0); width: 1200px; text-align: center; display: none;}
#gnb > ul > li > ul.show {display: block;}
#gnb > ul > li > ul > li {display: inline-block; width: 200px; vertical-align: top; text-align: left;}
#gnb > ul > li > ul > li + li {margin-left: 30px;}
#gnb > ul > li > ul > li > a {font-weight: 500; line-height: 40px; border-bottom: 1px solid #e0e0e0; position: relative; padding-right: 30px; font-size: 14px; margin-bottom: 15px;}
#gnb > ul > li > ul > li > a::after {font-family: 'Font Awesome 5 Free'; font-size: 10px; font-weight: 700; content: '\f054'; position: absolute; right: 2px; top: 50%; transform: translate(0, -50%); line-height: 1px; color: #888888;}
#gnb > ul > li > ul > li.on > a::after {color: #ab8352;}
#gnb > ul > li > ul > li.sub > a::after {transform: rotate(90deg);}
#gnb > ul > li > ul > li.on > a {border-bottom-color: #ab8352;}
#gnb > ul > li > ul > li > ul > li {margin-top: 8px;}

#header ul.language {position: absolute; right: 50px; top: 24px; font-size: 13px; background-color: rgba(255, 255, 255, 0.9); z-index: 1000;}
#header ul.language > li {border: 1px solid #888888; line-height: 30px; display: none; width: 150px;}
#header ul.language > li.on {display: block;}
#header ul.language > li + li {border-top: none;}
#header ul.language > li a {display: block; position: relative; padding-left: 50px; padding-right: 40px;}
#header ul.language > li a img {width: 25px; position: absolute; left: 10px; top: 50%; transform: translate(0, -50%);}
#header ul.language > li a i {position: absolute; right: 10px; top: 50%; transform: translate(0, -50%);}

#sns-link {position: fixed; right: 30px; top: 200px; z-index: 1000; text-align: center; background-color: rgba(255, 255, 255, 0.9); border-radius: 100px; padding: 10px 8px; box-shadow: 3px 3px 8px 0 rgba(0, 0, 0, 0.2);}
#sns-link em.title {font-size: 14px; font-weight: 700; display: block;}
#sns-link ul li {margin-top: 8px;}
#sns-link ul li a {display: block; position: relative; width: 50px; height: 50px; border-radius: 100px; background-color: #888888; font-size: 24px; line-height: 1px; color: #ffffff;}
#sns-link ul li.facebook a {background-color: #1977f3;}
#sns-link ul li.twitter a {background-color: #2c96d4;}
#sns-link ul li.instagram a {background-image: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);}
#sns-link ul li a i {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}


@media only screen and (max-width: 1300px) {
  #header h1 {left: 20px;}
  #header h1 a {width: 100px;}
  #gnb {min-width: 670px;}
  #gnb > ul > li + li {margin-left: 60px;}
  #gnb > ul > li > ul > li {width: 180px;}
  #gnb > ul > li > ul > li + li {margin-left: 20px;}
  #gnb > ul > li > ul > li > a {letter-spacing: -1px;}
  #header ul.language {right: 20px;}
  #header p.search {right: 20px;}
  #header p.search input {width: 80px;}
}

#footer {background-color: #222222; color: #888888; font-size: 12px;}
#footer > div.box {position: relative; max-width: 1200px; margin: 0 auto; height: 200px; box-sizing: border-box; padding: 70px 0 0 200px;}
#footer h2 {position: absolute; left: 0; top: 50%; transform: translate(0, -50%); width: 150px;}
#footer address {overflow: hidden; line-height: 24px;}
#footer address > span {float: left;}
#footer address > span + span {margin-left: 20px;}
#footer address em {font-weight: 500; color: #cccccc;}
#footer p.copyright {color: #cccccc;}
#scroll-top {position: fixed; right: 30px; bottom: 30px; width: 60px; height: 60px; border-radius: 100px; background-color: #ffffff; box-shadow: 3px 3px 8px 0 rgba(0, 0, 0, 0.2); z-index: 1000;}
#scroll-top img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}

@media only screen and (max-width: 1200px) {
  #footer h2 {left: 20px; width: 120px;}
  #footer > div.box {padding-top: 60px;}
  #footer address span.fax {clear: left; margin-left: 0;}
  #footer p.copyright {margin-top: 10px;}
  #footer ul.language {right: 20px;}
}




/* main */
#main-visual {position: relative; overflow: hidden;}
#main-visual div.image-slide p.dummy > img {height: 100vh;}
#main-visual div.image-slide ul.slide > li img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); max-width: none; width: auto; min-height: 100%; min-width: 100%;}
#main-visual a.book {position: absolute; left: 50%; bottom: 70px; transform: translate(-50%, 0); padding: 15px 40px; border-radius: 100px; background-color: rgba(171, 131, 82, 0.9); color: #ffffff; font-size: 14px; font-weight: 500; z-index: 100;}

#main-promotion {max-width: 1000px; margin: 80px auto;}
#main-promotion h2 {font-size: 34px; font-weight: 700; text-align: center; margin-bottom: 30px;}
#main-promotion ul.board {overflow: hidden;}
#main-promotion ul.board > li {position: relative; float: left; width: calc(50% - 15px);}
#main-promotion ul.board > li + li {margin-left: 30px;}
#main-promotion ul.board > li * {display: block;}
#main-promotion ul.board > li > a {position: relative; height: 300px; background: #ffffff url(/en/img/logo.png) center center no-repeat; background-size: cover;}
#main-promotion ul.board > li > a em.title {position: absolute; left: 0; bottom: 0; line-height: 50px; font-size: 20px; font-weight: 700; background-color: #ffffff; padding: 0 20px 0 10px; box-sizing: border-box; width: 90%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#main-promotion ul.board > li span.content {font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: calc(100% - 120px); line-height: 40px;}
#main-promotion ul.board > li span.date {position: absolute; right: 0; bottom: 0; font-size: 14px; color: #777777; line-height: 40px;}
#main-promotion p.download {text-align: center; margin-top: 20px;}

#main-link {position: relative; margin: 80px 0;}
#main-link > div {height: 400px; position: relative;}
#main-link > div.part1 {background-color: #f0e3d4;}
#main-link > div.part2 {background-color: #d4e4da;}
#main-link > div > div {position: absolute; top: 0; width: 50%; height: 100%; overflow: hidden; font-size: 16px;}
#main-link > div.part1 > div.image {left: 0;}
#main-link > div.part1 > div.content {right: 0;}
#main-link > div.part2 > div.image {right: 0;}
#main-link > div.part2 > div.content {left: 0;}
#main-link > div > div.image img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); max-width: none; min-height: 100%; min-width: 100%;}
#main-link > div > div.content > div {position: absolute; top: 50%; transform: translate(0, -50%);}
#main-link > div.part1 > div.content > div {left: 60px;}
#main-link > div.part2 > div.content > div {right: 60px; text-align: right;}
#main-link div.content h3 {font-size: 36px; margin-bottom: 50px;}
#main-link > div.part1 > div.content h3 {color: #704d23;}
#main-link > div.part2 > div.content h3 {color: #4c8a66;}
#main-link div.content > div * {display: block;}
#main-link div.content > div em {font-size: 22px; font-weight: 700; margin: 5px 0 30px 0;}
#main-link div.content > div a {display: inline-block; width: 150px; line-height: 46px; border: 1px solid #000000; text-align: center; transition: all 0.3s;}
#main-link > div.part1 > div.content a:hover {background-color: #704d23; color: #ffffff; border-color: #704d23;}
#main-link > div.part2 > div.content a:hover {background-color: #4c8a66; color: #ffffff; border-color: #4c8a66;}

#main-book {max-width: 1000px; margin: 80px auto;}
#main-book h2 {font-size: 34px; font-weight: 700; text-align: center; margin-bottom: 30px;}
#main-book ul.book {overflow: hidden;}
#main-book ul.book > li {position: relative; float: left; width: 120px; height: 420px; overflow: hidden; transition: all 0.5s;}
#main-book ul.book > li img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); min-height: 100%; min-width: 100%; max-width: none;}
#main-book ul.book > li img.color {display: none;}
#main-book ul.book > li p.title {position: absolute; left: 50px; top: 50px; color: #ffffff; font-size: 24px; opacity: 0; transition: all 0.5s;}
#main-book ul.book > li p.title em {display: block; font-size: 34px; font-weight: 700; margin-top: -5px;}
#main-book ul.book > li p.gray {position: absolute; width: 200px; text-align: right; left: 50%; top: 230px; color: #ffffff; font-size: 24px; transform-origin: left; transform: rotate(-90deg);}
#main-book ul.book > li a {position: absolute; left: 50px; bottom: 50px; width: 140px; line-height: 44px; border: 1px solid #ffffff; text-align: center; color: #ffffff; opacity: 0; transition: all 0.5s; text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);}
#main-book ul.book > li.on {width: 640px;}
#main-book ul.book > li.on img.color {display: block;}
#main-book ul.book > li.on img.gray {display: none;}
#main-book ul.book > li.on p.title {opacity: 1;}
#main-book ul.book > li.on p.gray {opacity: 0;}
#main-book ul.book > li.on a {opacity: 1;}
#main-book ul.book > li.on a:hover {background-color: #ffffff; color: #333333; text-shadow: none;}



/* sub (common) */
#sub-visual {position: relative; overflow: hidden; height: 300px;}
#sub-visual p.visual img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); min-width: 100%; min-height: 100%; max-width: none;}
#sub-visual h2 {position: absolute; left: 50%; top: 160px; transform: translate(-50%, 0); font-size: 36px; color: #ffffff; text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5); font-weight: 400;}

#lnb {position: relative; border-bottom: 1px solid #e0e0e0; text-align: center; font-size: 15px; font-weight: 500;}
#lnb > ul > li {display: inline-block; vertical-align: top;}
#lnb > ul > li + li {margin-left: 60px;}
#lnb > ul > li > a {display: block; line-height: 60px; position: relative; transition: color 0.3s;}
#lnb > ul > li > a::after {content: ''; position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 0); height: 2px; width: 0; background-color: #ab8352; transition: width 0.3s;}
#lnb > ul > li.on > a::after {width: 100%;}
#lnb > ul > li.on > a,
#lnb > ul > li > a:hover {color: #ab8352;}
#lnb > ul > li > ul {position: absolute; left: 0; width: 100%; text-align: center; font-size: 14px; color: #666666; display: none;}
#lnb > ul > li > ul.show {display: block;}
#lnb > ul > li > ul > li {display: inline-block; line-height: 50px; vertical-align: top;}
#lnb > ul > li > ul > li + li {margin-left: 60px;}
#lnb > ul > li > ul > li > a {transition: color 0.3s;}
#lnb > ul > li > ul > li.on > a,
#lnb > ul > li > ul > li > a:hover {color: #ab8352;}


body.sub #main {position: relative; padding-bottom: 200px; background: url(/en/img/bg-left.png) left bottom no-repeat, url(/en/img/bg-right.png) right bottom no-repeat, url(/en/img/bg-center.png) left bottom repeat-x; background-size: 200px auto, 300px auto, auto 40px; background-color: #ffffff;}
body.sub #main > section {position: relative; margin: 60px auto 60px auto;}
body.sub #main section.normal {max-width: 1000px;}
body.sub #main div.column-2 {overflow: hidden;}
body.sub #main div.column-2 > div {float: left; width: calc(50% - 25px);}
body.sub #main div.column-2 > div + div {margin-left: 50px;}
body.sub #main div.column-2 > div + div div.button-box {margin-top: 30px;}
body.sub #main h2.title {position: relative; font-size: 34px; text-align: center; margin-top: 80px; margin-bottom: 60px;}
body.sub #main h2 span {display: block; font-size: 16px; color: #ab8352;}
body.sub #main h3.title {font-size: 24px; color: #ab8352; margin: 60px 0 20px 0;}
body.sub #main h3.title:first-child {margin-top: 0;}
body.sub #main h3.title span {display: block; font-weight: 400; font-size: 14px;}
body.sub #main h3.title-line {font-size: 24px; color: #ab8352; margin-bottom: 20px; border-bottom: 1px solid #ab8352; padding-bottom: 10px; background: url(/en/img/icon-circle-down.png) right center no-repeat; background-size: 20px auto;}
body.sub #main h4.title {font-size: 17px; margin: 25px 0 5px 0;}
body.sub #main h4.title:first-child {margin-top: 0;}
body.sub #main h4.title + p.paragraph {margin-top: 5px;}
body.sub #main p.highlight {color: #ab8352; font-size: 20px; margin: 20px 0; font-weight: 500;}
body.sub #main p.highlight:first-child {margin-top: 0;}
body.sub #main p.paragraph {margin: 20px 0; line-height: 1.5em;}
body.sub #main p.paragraph:first-child {margin-top: 0;}
body.sub #main ul.contact {overflow: hidden;}
body.sub #main ul.contact > li {float: left; line-height: 2em;}
body.sub #main ul.contact > li.full {width: 100%;}
body.sub #main ul.contact > li + li {margin-left: 20px;}
body.sub #main ul.contact > li.full + li {margin-left: 0;}
body.sub #main ul.contact > li em {font-weight: 700;}
body.sub #main p.float-right {float: right; margin-left: 50px; margin-bottom: 50px;}
body.sub #main p.image img {width: 100%;}
body.sub #main ul.list-circle {font-size: 14px;}
body.sub #main ul.list-circle > li {position: relative; padding-left: 20px;}
body.sub #main ul.list-circle > li + li {margin-top: 10px;}
body.sub #main ul.list-circle > li::before {content: ''; position: absolute; top: 8px; left: 0; width: 6px; height: 6px; border-radius: 10px; background-color: #ab8352;}
body.sub #main ul.list-circle p.desc {font-size: 13px; margin-top: 4px; color: #888888;}
body.sub #main p.download {text-align: right; margin-bottom: 20px;}



/* introduction */
ul.vision-photo {overflow: hidden; margin-top: 60px;}
ul.vision-photo > li {float: left;}
ul.vision-photo > li + li {margin-left: 30px;}
#google-map {height: 500px; background-color: #f9f9f9;}


/* resort map */
div.resort-map {position: relative;}
div.resort-map p.photo img {width: 100%;}
div.resort-map ul.map-marker > li {position: absolute; left: 0; bottom: 0; width: 40px; height: 50px; transform: translate(-50%, 50%);}
div.resort-map ul.map-marker > li > a {display: block; height: 100%; position: relative; background: url(/en/img/icon-marker.png) center bottom no-repeat; background-size: 100% auto; z-index: 10;}
div.resort-map ul.map-marker > li > span.text {position: absolute; left: 15px; top: 50%; transform: translate(0, -50%); width: 200px; line-height: 30px; background-color: #ffffff; border-radius: 100px; padding-left: 30px; box-sizing: border-box; font-size: 12px; font-weight: 500; box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, 0.3); font-weight: 500; opacity: 0; transition: opacity 0.3s;}
div.resort-map ul.map-marker > li > a:hover + span.text {opacity: 1;}
div.resort-map ul.map-marker > li > span.text::after {font-family: 'Font Awesome 5 Free'; font-size: 12px; font-weight: 700; content: '\f054'; position: absolute; right: 15px; top: 50%; transform: translate(0, -50%); line-height: 1px; color: #888888;}
div.resort-map span.name {position: absolute; left: 0; bottom: 0; font-size: 12px; padding: 8px 15px; border-radius: 30px; border: 1px solid rgba(255, 255, 255, 0.8); color: #ffffff; background-color: rgba(0, 0, 0, 0.6); transform: translate(-50%, 50%); width: 80px; text-align: center;}
div.resort-map ul.map-marker > li.suites {left: 13%; bottom: 65%;}
div.resort-map ul.map-marker > li.residence-a {left: 10%; bottom: 50%;}
div.resort-map ul.map-marker > li.residence-b {left: 20%; bottom: 90%;}
div.resort-map ul.map-marker > li.town-house {left: 36%; bottom: 62%;}
div.resort-map ul.map-marker > li.golf-club {left: 58%; bottom: 50%;}
div.resort-map ul.map-marker > li.luxury-villa {left: 86%; bottom: 50%;}
div.resort-map span.name.gia {left: 50%; bottom: 16%;}
div.resort-map span.name.moc {left: 90%; bottom: 70%;}


/* contact */
nav.sitemap {position: relative;}
nav.sitemap a {transition: all 0.3s;}
nav.sitemap a:hover {color: #ab8352; background-color: #f9f9f9;}
nav.sitemap > ul > li + li {margin-top: 30px;}
nav.sitemap > ul > li > a {display: block; font-size: 24px; font-weight: 700; border-bottom: 1px solid #ab8352; color: #ab8352; line-height: 50px;}
nav.sitemap > ul > li > ul {overflow: hidden;}
nav.sitemap > ul > li > ul > li {float: left; width: calc(33.3% - 20px); box-sizing: border-box; margin-right: 30px; border-bottom: 1px solid #e0e0e0;}
nav.sitemap > ul > li > ul > li:nth-child(3n) {margin-right: 0;}
nav.sitemap > ul > li > ul > li > a {font-size: 14px; font-weight: 700; display: block; line-height: 40px; position: relative;}
nav.sitemap > ul > li > ul > li > a::after {font-family: 'Font Awesome 5 Free'; font-size: 10px; font-weight: 700; content: '\f054'; position: absolute; right: 5px; top: 50%; transform: translate(0, -50%); line-height: 1px; color: #888888;}
nav.sitemap > ul > li > ul > li > ul {padding: 5px 0;}
nav.sitemap > ul > li > ul > li > ul > li + li {margin-top: 3px;}
nav.sitemap > ul > li > ul > li > ul > li > a {display: block; line-height: 24px; font-size: 13px;}


/* facilities */
ul.content-tab {display: table; table-layout: fixed; border-collapse: collapse; width: 100%; box-sizing: border-box; margin-bottom: 50px;}
ul.content-tab > li {display: table-cell; border: 1px solid #ab8352; text-align: center;}
ul.content-tab > li > a {display: block; line-height: 40px; font-size: 14px; color: #ab8352;}
ul.content-tab > li.on > a {background-color: #ab8352; color: #ffffff;}
ul.content-tab > li > ul {padding: 10px 0; border-top: 1px solid #ab8352;}
ul.content-tab > li > ul > li {font-size: 13px;}
ul.content-tab > li > ul > li + li {margin-top: 2px;}
ul.content-tab > li > ul > li > a {display: block; transition: all 0.3s; line-height: 24px;}
ul.content-tab > li > ul > li.on > a {font-weight: 700; color: #ab8352; text-decoration: underline;}
ul.content-tab > li > ul > li > a:hover {background-color: rgba(171, 131, 82, 0.2);}

ul.room-list {overflow: hidden;}
ul.room-list > li {display: none;}
ul.room-list > li.on {display: block;}
ul.room-list > li > em {display: block; font-size: 24px; font-weight: 700; color: #ab8352; margin-bottom: 20px;}
ul.room-list > li p.structure {text-align: center; margin: 30px 0;}
ul.room-list > li.on p.structure {animation: room-show-up 2s ease 0s 1 forwards normal;}
ul.room-list > li ul.spec {font-size: 13px;}
ul.room-list > li ul.spec > li {position: relative; padding-left: 10px;}
ul.room-list > li ul.spec > li::before {content: ''; position: absolute; top: 10px; left: 0; width: 2px; height: 2px; border-radius: 10px; background-color: #ab8352;}
ul.room-list > li ul.spec > li + li {margin-top: 5px;}
@keyframes room-show-up {
  0% {transform: translate(0, 30px); opacity: 0;}
  100% {transform: translate(0, 0); opacity: 1;}
}

div.golf-course {display: none;}
div.golf-course.on {display: block;}
div.course-map {position: relative; margin-top: 50px; overflow: hidden;}
div.course-map ul.indicator {overflow: hidden; margin-bottom: 10px;}
div.course-map ul.indicator > li {float: left;}
div.course-map ul.indicator > li + li {margin-left: 8px;}
div.course-map ul.indicator > li > a {display: block; width: 10px; height: 10px; border-radius: 10px; background-color: rgba(171, 131, 82, 0.4); overflow: hidden; text-indent: -999px;}
div.course-map ul.indicator > li.on > a {background-color: #ab8352;}
div.course-map ul.slide {position: relative; height: 300px;}
div.course-map ul.slide > li {position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: none;}
div.course-map ul.slide > li.on {display: block;}
div.course-map ul.slide > li > * {display: block;}
div.course-map ul.slide > li > em {font-size: 20px; font-weight: 700; color: #4c8a66;}
div.course-map ul.slide > li span.map {text-align: center; margin: 20px 0;}div.course-map ul.slide > li p.strategy {margin-top: 20px;}
div.course-map ul.slide > li p.strategy > em {font-size: 16px; font-weight: 700; display: block; color: #4c8a66; margin-bottom: 5px;}

ul.features {overflow: hidden;}
ul.features > li {position: relative; overflow: hidden;}
ul.features > li + li {margin-top: 40px;}
ul.features > li p.photo {float: left; margin-right: 20px;}
ul.features > li p.desc {position: absolute; left: 220px; top: calc(50% + 30px); transform: translate(0, -50%); width: calc(100% - 220px);}

iframe.youtube {width: 100%; height: 40vw;}






/* module */
div.button-box {text-align: center;}
div.button-box.right {text-align: right;}
a.btn {display: inline-block; vertical-align: middle; min-width: 120px; height: 40px; line-height: 38px; border: 1px solid transparent; background-color: #ab8352; color: #ffffff; text-align: center;}

input.text,
select,
textarea {display: inline-block; height: 36px; box-sizing: border-box; border: 1px solid #e0e0e0; outline: none; padding: 0 15px; color: #666666; font-family: inherit; font-size: 16px; appearance: none; transition: border-color 0.3s;}
input.text:focus,
select:focus,
textarea:focus {border-color: #ab8352;}
input.text {width: 200px;}
select {padding-right: 26px; background: url(/en/img/icon-down.svg) right 10px center no-repeat; background-size: 10px;}
textarea {padding: 15px; width: 100%; height: 200px;}
input[type=radio],
input[type=checkbox] {vertical-align: middle;}
input.full {width: 100%;}
input.date {padding-right: 40px; background: url(/en/img/icon-calendar.png) right 5px center no-repeat; background-size: 20px auto;}


p.form-desc {text-align: right; font-size: 12px; color: #ab8352; margin-bottom: 5px;}
ul.form-box {border-top: 2px solid #ab8352; overflow: hidden; padding-top: 15px;}
ul.form-box > li {float: left; width: calc(50% - 10px); box-sizing: border-box; padding: 8px 0;}
ul.form-box > li:nth-child(2n) {margin-left: 20px;}
ul.form-box > li.full {width: 100%; margin: 0;}
ul.form-box > li > label {display: block; font-size: 14px; font-weight: 700; margin-bottom: 5px;}
ul.form-box > li > label em {color: #ab8352; margin-left: 5px;}
ul.form-box + div.button-box {margin-top: 30px; padding-bottom: 30px; border-bottom: 1px solid #ab8352;}

ul.input-list {overflow: hidden;}
ul.input-list > li {float: left; margin-right: 20px; line-height: 36px;}
ul.input-list > li label {display: inline-block; vertical-align: middle; padding-left: 5px;}

div.image-slide {position: relative;}
div.image-slide img {width: 100%;}
div.image-slide div.slide-box {position: relative; overflow: hidden;}
div.image-slide div.slide-box p.dummy img {width: 100%; opacity: 0;}
div.image-slide div.slide-box ul.slide {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
div.image-slide div.slide-box ul.slide > li {position: absolute; left: 0; top: 0; width: 100%; height: 100%; overflow: hidden; display: none;}
div.image-slide div.slide-box ul.slide > li.on {display: block;}
div.image-slide div.slide-box ul.slide > li.show {display: block; z-index: 10; animation: image-slide-show 3s ease 0s 1 normal forwards;}
div.image-slide div.slide-box ul.slide > li.hide {display: block; z-index: 20; animation: image-slide-hide 3s ease 0s 1 normal forwards;}
div.image-slide div.slide-box ul.slide > li > img {width: 100%;}
div.image-slide div.slide-box ul.slide > li p.info {position: absolute; left: 0; top: -80px; width: 100%; height: 80px; padding: 15px 30px 5px 30px; box-sizing: border-box; background: rgba(0, 0, 0, 0.5) url(/en/img/logo-white.png) right 30px center no-repeat; color: #ffffff; font-size: 13px; background-size: 80px auto; transition: top 0.3s; text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.5);}
div.image-slide div.slide-box ul.slide > li.now p.info {top: 0;}
div.image-slide div.slide-box ul.slide > li p.info em.title {font-size: 20px; display: block;}
div.image-slide div.slide-box ul.slide > li p.info em.title span {font-size: 13px; margin-left: 10px;}
div.image-slide div.slide-box ul.indicator {position: absolute; left: 0; bottom: 15px; width: 100%; text-align: center; line-height: 1px; z-index: 100;}
div.image-slide div.slide-box ul.indicator > li {display: inline-block; vertical-align: top;}
div.image-slide div.slide-box ul.indicator > li + li {margin-left: 8px;}
div.image-slide div.slide-box ul.indicator > li > a {display: inline-block; width: 12px; height: 12px; border-radius: 20px; overflow: hidden; text-indent: -999px; background-color: rgba(255, 255, 255, 0.8);}
div.image-slide div.slide-box ul.indicator > li.on > a {background-color: #ab8352; border-color: #ab8352;}
div.image-slide div.slide-box p.control a {position: absolute; z-index: 100; color: #ffffff;}
div.image-slide div.slide-box p.control a.prev {left: 20px; top: 50%; transform: translate(0, -50%);}
div.image-slide div.slide-box p.control a.next {right: 20px; top: 50%; transform: translate(0, -50%);}
div.image-slide div.slide-box p.control a img {position: relative; left: 0; transition: left 0.1s;}
div.image-slide div.slide-box p.control a.prev.on img {left: -10px;}
div.image-slide div.slide-box p.control a.next.on img {left: 10px;}
div.image-slide div.slide-box p.control a.timer {position: absolute; right: 20px; bottom: 20px; font-size: 20px;}
div.image-slide div.slide-box p.control a.timer .pause {display: none;}
div.image-slide div.slide-box p.control a.timer .play {display: block;}
div.image-slide div.slide-box p.control a.timer.on .pause {display: block;}
div.image-slide div.slide-box p.control a.timer.on .play {display: none;}
div.image-slide div.slide-box span.timerBar {position: absolute; left: 0; bottom: 0; width: 0; height: 2px; background-color: #6065b2; opacity: 0.5;}
div.image-slide div.thumb-box {position: absolute; top: 0; right: 0; width: 25%; height: 100%; overflow: auto;}
div.image-slide div.thumb-box ul.thumb li {float: left; width: calc(50% - 3px); margin-bottom: 6px;}
div.image-slide div.thumb-box ul.thumb li:nth-child(2n) {margin-left: 6px;}
div.image-slide div.thumb-box ul.thumb li a {display: block; position: relative;}
div.image-slide div.thumb-box ul.thumb li a::after {content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.3); border: 4px solid transparent; box-sizing: border-box; transition: all 0.3s;}
div.image-slide div.thumb-box ul.thumb li.on a::after {border-color: #6065b2; background-color: transparent;}
div.image-slide div.thumb-box ul.thumb > li > a em {position: absolute; left: 0; bottom: 0; width: 100%; line-height: 24px; font-size: 12px; background-color: rgba(0, 0, 0, 0.4); color: #ffffff; text-align: center;}
@keyframes image-slide-show {
  0% {opacity: 0; /*transform: rotate(-3deg) scale(0.9);*/}
  100% {opacity: 1; /*transform: rotate(0) scale(1);*/}
}
@keyframes image-slide-hide {
  0% {opacity: 1; /*transform: rotate(0) scale(1);*/}
  100% {opacity: 0; /*transform: rotate(3deg) scale(1.1);*/}
}

ul.board-list {overflow: hidden;}
ul.board-list > li {float: left; width: calc(50% - 30px); margin: 0 60px 60px 0; position: relative;}
ul.board-list > li:nth-child(2n) {margin-right: 0;}
ul.board-list > li > * {display: block;}
ul.board-list > li a {height: 280px; position: relative; overflow: hidden; border: 1px solid #e0e0e0; box-sizing: border-box; margin-bottom: 10px; background: #ffffff url(/en/img/board-thumb-01.jpg) center center no-repeat; background-size: cover;}
ul.board-list > li.no-data a {background: none;}
ul.board-list > li.no-data a i {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); font-size: 60px; color: #704d23;}
ul.board-list > li em.title {white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 18px; color: #ab8352; font-weight: 700; margin-bottom: 3px;}
ul.board-list > li span.date {font-size: 14px; color: #666666;}
ul.board-list > li span.hit {position: absolute; right: 0; bottom: 0; color: #666666; font-size: 13px;}
ul.board-list > li span.hit i {margin-right: 5px;}

div.board-view {position: relative; font-size: 14px;}
div.board-view div.header {border-top: 2px solid #704d23; padding: 15px 30px; background-color: #f6f7f9;}
div.board-view div.header p.board-title {font-size: 20px; margin-bottom: 8px;}
div.board-view div.header p.info {font-size: 13px; color: #777777; overflow: hidden;}
div.board-view div.header p.info > span {float: left;}
div.board-view div.header p.info > span em {color: #704d23;}
div.board-view div.header p.info > span + span {margin-left: 40px;}
div.board-view div.file {border-bottom: 1px solid #e0e0e0; padding: 10px 0;}
div.board-view div.body {padding: 50px 30px 80px 30px; overflow: auto; border-bottom: 1px solid #704d23;}
div.board-view div.body img {max-width: 100%;}
div.board-view + div.button-box {margin-top: 50px;}

div.pagination {text-align: center; font-size: 13px; color: #777777;}
div.pagination a {position: relative; display: block; width: 34px; height: 34px; line-height: 32px; border: 1px solid #e8e8e8; border-left: none; box-sizing: border-box; background-color: #ffffff; transition: all 0.3s; overflow: hidden;}
div.pagination a:hover {background-color: #e8e8f0;}
div.pagination > div.box {display: inline-block; vertical-align: top;}
div.pagination > div.box > * {float: left;}
div.pagination > div.box > a:first-child {border-top-left-radius: 3px; border-bottom-left-radius: 3px; border-left: 1px solid #e8e8e8;}
div.pagination > div.box > a:last-child {border-top-right-radius: 3px; border-bottom-right-radius: 3px;}
div.pagination > div.box > a i,
div.pagination > div.box > a img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); line-height: 1em;}
div.pagination > div.box > ol > li {float: left;}
div.pagination > div.box > ol > li.on > a {background-color: #704d23; color: #ffffff;}

/* file-list */
div.dino-file-list {font-size: 12px;}
div.dino-file-list > ul > li {position: relative; border: 1px solid #dfe8f1; border-radius: 3px; height: 28px; box-sizing: border-box; line-height: 26px; font-size: 12px; color: #8da0aa; transition: all 0.2s; overflow: hidden;}
div.dino-file-list > ul > li:hover {box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.05);}
div.dino-file-list > ul > li + li {margin-top: 3px;}
div.dino-file-list > ul > li > i {color: #ffcc00; margin: 0 12px;}
div.dino-file-list > ul > li > .filename {display: block; width: calc(100% - 160px); padding: 0 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; box-sizing: border-box;}
div.dino-file-list > ul > li > .filename > img {margin-right: 8px;}
div.dino-file-list > ul > li > a.filename {width: calc(100% - 120px); transition: color 0.3s;}
div.dino-file-list > ul > li > a.filename > i {position: absolute; right: 100px; top: -10px; font-size: 16px; color: #65a6ff; opacity: 0;}
div.dino-file-list > ul > li > a.filename:hover {color: #00bca4;}
div.dino-file-list > ul > li > a.filename:hover > i {animation: download-file 0.5s ease-out 0s infinite normal forwards;}
div.dino-file-list > ul > li span.size {position: absolute; right: 10px; top: 50%; transform: translate(0, -50%); font-size: 10px; padding: 4px 5px; background: #ffcc00; color: #ffffff; line-height: 1em; border-radius: 3px; margin-left: 20px;}
div.dino-file-list > ul > li p.function {position: absolute; right: 80px; top: 50%; transform: translate(0, -50%);}
div.dino-file-list > ul > li p.function a {position: relative; float: left; width: 22px; height: 22px; border-radius: 100px; box-sizing: border-box; color: #ffffff; background: #65a6ff; opacity: 0.9; transition: all 0.3s; transform: scale(0);}
div.dino-file-list > ul > li:hover p.function a {transform: scale(1);}
div.dino-file-list > ul > li p.function a:hover {opacity: 1;}
div.dino-file-list > ul > li p.function a + a {margin-left: 3px;}
div.dino-file-list > ul > li p.function a.del {background: #e74c3c;}
div.dino-file-list > ul > li p.function a i {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
div.dino-file-list p.down-all {margin-top: 5px;}
div.dino-file-list p.down-all a {display: inline-block; border: 1px solid #dfe8f1; border-radius: 3px; padding: 0 15px; line-height: 26px; transition: all 0.3s;}
div.dino-file-list p.down-all a:hover {border-color: #65a6ff; color: #65a6ff;}
div.dino-file-list p.down-all a i {color: #65a6ff; font-size: 16px; margin-right: 10px;}
div.dino-file-list input[type=file] {margin-top: 5px;}
@keyframes download-file {
    0% {opacity: 0; top: -10px;}
    100% {opacity: 1; top: 30px;}
}

div.main-popup {position: fixed; left: 50px; top: 100px; max-width: 800px; max-height: 80vh; z-index: 100000; box-shadow: 5px 5px 15px 0 rgba(0, 0, 0, 0.3); border: 8px solid #ab8352; background-color: #ab8352; color: #ffffff; font-size: 13px;}
div.main-popup div.header {position: relative; height: 30px;}
div.main-popup div.header a.close {position: absolute; right: 0; top: 0; font-size: 22px;}
div.main-popup div.footer {position: relative; height: 30px; line-height: 30px;}
div.main-popup div.footer p input {vertical-align: middle; margin-right: 5px;}
div.main-popup div.footer a.close {position: absolute; right: 0; bottom: 0; border: 1px solid #ffffff; padding: 0 20px; line-height: 20px; transition: all 0.3s;}
div.main-popup div.footer a.close:hover {background-color: #ffffff; color: #ab8352;}








/* color memo
#ab8352 (171, 131, 82), #704d23 (112, 77, 35), #1f1e24 (main color)
#ab8352, #704d23, #4c8a66, #1f1e24, #444444, #666666, #888888  (text color)
#ab8352, #ebebeb, #cecece  (line color)




#3f4860  rgb(63, 72, 96)
#6065b2  rgb(96, 101, 178)
#ceceff  rgb(206, 206, 255)
#e8e8e8



*/

/* animation keyframes */
/*
@keyframes show-up {
  0% {transform: translate(0, 50px); opacity: 0;}
  100% {transform: translate(0, 0); opacity: 1;}
}
@keyframes btn-effect-right {
  0% {transform: translate(0, 0);}
  100% {transform: translate(5px, 0);}
}
*/




