@charset "UTF-8";
/**
* Gumby Framework
* ---------------
*
* Follow @gumbycss on twitter and spread the love.
* We worked super hard on making this awesome and released it to the web.
* All we ask is you leave this intact. #gumbyisawesome
*
* Gumby Framework
* http://gumbyframework.com
*
* Built with love by your friends @digitalsurgeons
* http://www.digitalsurgeons.com
*
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*/
@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/* Base Styles */
html { font-size: 100%; line-height: 1.625em; }

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

body { -webkit-text-size-adjust: none; -ms-text-size-adjust: none; font-family: ""; font-weight: 400; color: #555555; position: relative; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
@media only screen and (max-width: 600px) { body { -webkit-text-size-adjust: none; -ms-text-size-adjust: none; width: 100%; min-width: 0; } }

html, body { height: 100%; }

.fixed { position: fixed; }
.fixed.pinned { position: absolute; }
@media only screen and (max-width: 768px) { .fixed { position: relative !important; top: auto !important; left: auto !important; } }

.unfixed { position: relative !important; top: auto !important; left: auto !important; }

.text-center { text-align: center; }

.text-left { text-align: left; }

.text-right { text-align: right; }

.font-bold { font-weight: bold; }

.font-c { text-align: center !important; }

.font-l { text-align: left; }

.font-r { text-align: right; }

.font-gray0 { color: #000000 !important; }

.font-gray3 { color: #333333 !important; }

.font-gray6 { color: #666666 !important; }

.font-gray9 { color: #999999 !important; }

.font-red { color: #f46262 !important; }

.font-red-dark { color: #a73950 !important; }

.font-brown { color: #7a583b !important; }

.font-green { color: #00AF84 !important; }

.font-green-l { color: #ADD8C1 !important; }

.font-white { color: #ffffff !important; }

.font-blue { color: #83cdd6 !important; }

.font-blue-dark { color: #0064b5 !important; }

.font-underline { text-decoration: underline !important; }

.font-yellow { color: #ffcc73 !important; }

.font-orange { color: #CC6633 !important; }

.font-brown-l { color: #C9A171 !important; }

.font-family-Arial { font-family: arial !important; }

.margin-b-0 { margin-bottom: 0 !important; }

.margin-b-10 { margin-bottom: calc((10rem / 18)) !important; }

.margin-b-20 { margin-bottom: calc((20rem / 18)) !important; }

.margin-b-40 { margin-bottom: calc((40rem / 18)) !important; }

.margin-t-_20 { margin-top: calc((-15rem / 18)) !important; }

.margin-t-_80 { margin-top: calc((-80rem / 18)) !important; }

.margin-t-10 { margin-top: calc((10rem / 18)) !important; }

.margin-t-20 { margin-top: calc((20rem / 18)) !important; }

.margin-t-30 { margin-top: calc((30rem / 18)) !important; }

.margin-t-40 { margin-top: calc((40rem / 18)) !important; }

.margin-t-60 { margin-top: calc((60rem / 18)) !important; }

.margin-t-80 { margin-top: calc((80rem / 18)) !important; }

.margin-l-10 { margin-left: calc((10rem / 18)) !important; }

.width_80 { width: 90% !important; }

.width_75 { width: 75% !important; }

.width_65 { width: 75% !important; }

.width_60 { width: 65% !important; }

.width_40 { width: 50% !important; }

/* Loader--*/
#loading-page { display: block; position: fixed; width: 100%; height: 100%; background: #83cdd6; background-size: cover; z-index: 999999; top: 0; }
@media only screen and (max-width: 1024px) { #loading-page { width: 100vw; height: 100vh; background: #83cdd6; background-size: cover; } }
@media only screen and (max-width: 600px) { #loading-page { width: 100%; height: 100vh; background: #83cdd6; background-size: 100%; } }

.loading-img { display: block; width: calc((450rem / 18)); height: calc((450rem / 18)); position: absolute; background: url(../images/loading-img-pc.png) no-repeat center center; background-size: 100%; left: 0px; right: 0px; top: 0px; bottom: 0px; margin: auto; }
@media only screen and (max-width: 768px) { .loading-img { width: calc((640rem / 18)); height: calc((640rem / 18)); background: url(../images/loading-img.png) no-repeat center center; background-size: 100%; } }

@keyframes loading-img { 0% { top: -15vh; }
  100% { top: -12vh; } }
.icon_loader { border-radius: 30px; height: 30px; left: 50%; opacity: 0; position: absolute; top: 50%; width: 30px; animation: pulsate 1s ease-out; animation-iteration-count: infinite; }

@keyframes pulsate { 0% { transform: scale(0.1); opacity: 0.0; }
  50% { opacity: 1; }
  100% { transform: scale(1.2); opacity: 0; } }
.loading-img iframe { visibility: hidden; }

.loading-img iframe.loaded { visibility: visible; }

.btn-bottom { display: flex; }

.btn a { display: flex !important; width: fit-content; min-width: calc((270rem / 18)); height: calc((100rem / 18)); font-size: calc((32rem / 18)) !important; line-height: calc((100rem / 18)) !important; letter-spacing: calc((1rem / 18)) !important; font-weight: bold !important; color: #ffffff !important; text-decoration: none !important; text-align: center; justify-content: center; align-items: center; background: #f46262; border: calc((4rem / 18)) solid #000000 !important; border-radius: calc((50rem / 18)); overflow: hidden; position: relative; padding: 0 1.2rem; }

.btn-m a { display: flex !important; width: fit-content; min-width: calc((240rem / 18)); height: calc((72rem / 18)); font-size: calc((32rem / 18)) !important; line-height: calc((72rem / 18)) !important; letter-spacing: calc((1rem / 18)) !important; font-weight: bold !important; color: #000000 !important; text-decoration: none !important; text-align: center; justify-content: center; align-items: center; background: #9bdbe0; border: calc((4rem / 18)) solid #000000 !important; border-radius: calc((50rem / 18)); overflow: hidden; position: relative; }

.btn-goto-review a { display: flex !important; width: fit-content; min-width: calc((270rem / 18)); height: calc((100rem / 18)); font-size: calc((32rem / 18)) !important; line-height: calc((100rem / 18)) !important; letter-spacing: calc((1rem / 18)) !important; font-weight: bold !important; color: #ffffff !important; text-decoration: none !important; text-align: center; justify-content: center; align-items: center; background: #f46262; border: calc((4rem / 18)) solid #000000 !important; border-radius: calc((50rem / 18)); overflow: hidden; position: relative; }

.btn-b a { height: calc((100rem / 18)); border-radius: calc((50rem / 18)); }

.btn-s a { display: flex !important; width: fit-content; padding: 0 calc((42rem / 18)); height: calc((90rem / 18)); font-size: calc((32rem / 18)) !important; line-height: calc((48rem / 18)) !important; letter-spacing: calc((1rem / 18)) !important; font-weight: bold !important; color: #ffffff !important; text-decoration: none !important; text-align: center; justify-content: center; align-items: center; background: #f46262; border: calc((4rem / 18)) solid #000000 !important; border-radius: calc((50rem / 18)); overflow: hidden; position: relative; }

.btn-goto-review { margin-top: 2rem !important; position: relative; z-index: 10; }

.btn-s a { display: flex; min-width: calc((200rem / 18)); height: calc((120rem / 18) * 0.6); font-size: calc((28rem / 18)) !important; line-height: calc((28rem / 18)) !important; letter-spacing: calc((1rem / 18)) !important; margin: auto; }

.btn-b a { height: calc((120rem / 18)); border-radius: calc((70rem / 18)); width: calc((400rem / 18)); }
.btn-b a b { line-height: calc((36rem / 18)) !important; font-weight: bold !important; }

.btn-base a { display: flex !important; width: fit-content; padding: 0 calc((30rem / 18)); height: calc((60rem / 18)); font-size: calc((32rem / 18)) !important; line-height: calc((48rem / 18)) !important; letter-spacing: calc((1rem / 18)) !important; font-weight: bold !important; color: #444444 !important; text-decoration: none !important; text-align: center; justify-content: center; align-items: center; background: #ffe878; border: calc((3.5rem / 18)) solid #444444 !important; border-radius: calc((45rem / 18)); overflow: hidden; }

.btn-right { display: none; }
@media only screen and (max-width: 1024px) { .btn-right { display: block; }
  .btn-right a { display: flex; width: calc((180rem / 18) * 0.85); height: calc((135rem / 18) * 0.85); background: url(../images/btn/btn-right.png?20250115) no-repeat; background-size: cover; position: fixed; right: 20%; bottom: 5px; z-index: 1009; } }
@media only screen and (max-width: 600px) { .btn-right { display: block; }
  .btn-right a { display: flex; width: calc((180rem / 18) * 0.85); height: calc((135rem / 18) * 0.85); background: url(../images/btn/btn-right.png?20250115) no-repeat; background-size: cover; position: fixed; right: 5px; bottom: 5px; z-index: 1009; } }

.btn-right-180 a { width: calc((180rem / 18)); height: calc((75rem / 18)); min-width: auto; }

.btn-download-photo a { pointer-events: none !important; -webkit-user-select: none; /* Safari, Chrome */ -moz-user-select: none; /* Firefox */ -ms-user-select: none; /* IE10+ */ user-select: none; /* Standard */ }
.btn-download-photo a img { width: calc((360rem / 18)); }
.btn-download-photo .font-s-36 { letter-spacing: calc((1rem / 18) * 1.1); }

.no-text-select { user-select: none; -webkit-user-select: none; -moz-user-select: none; }

.btn-download-photo .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 10; background: transparent; }

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slick-track { position: relative; left: 0; top: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { content: ""; display: table; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; height: 100%; min-height: 1px; display: none; }
[dir="rtl"] .slick-slide { float: right; }
.slick-slide img { display: block; width: 100%; }
.slick-slide.slick-loading img { display: none; }
.slick-initialized .slick-slide { outline: none; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-arrow.slick-hidden { display: none; }

/* Slider */
.slick-loading .slick-list { background: #fff center center no-repeat; }

/* Icons */
@font-face { font-weight: normal; font-style: normal; }
/* Arrows */
.slick-prev, .slick-next { position: absolute; display: block; width: 100px; height: 190px; line-height: 0px; font-size: 0px; cursor: pointer; background: transparent; color: transparent; top: 45%; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); padding: 0; border: none; outline: none; opacity: 1; transition: .5s; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { outline: none; transition: .5s; opacity: 1; }
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: 0.5; }
.slick-prev:before, .slick-next:before { font-size: 20px; line-height: 1; color: white; opacity: 0.75; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.slick-prev { left: -75px; background-size: 51px 90px; z-index: 9; }
[dir="rtl"] .slick-prev { left: auto; right: -75px; }
@media only screen and (max-width: 1024px) { .slick-prev { left: 18%; width: calc((70vw / 640)*60); height: calc((1300vw / 640)*60); top: calc((700vw / 640)*60); position: fixed; z-index: 99999; background: url(../images/cut/slick-left-btn.png) no-repeat center right transparent; background-size: calc((70vw / 640)*60) calc((280vw / 640)*60); background-position-y: 15.5rem; }
  .slick-prev:hover, .slick-prev:focus { outline: none; background: url(../images/cut/slick-left-btn.png) no-repeat center right transparent; background-size: calc((70vw / 640)*60) calc((280vw / 640)*60); background-position-y: 15.5rem; transition: .5s; opacity: 1; }
  .slick-prev:hover:before, .slick-prev:focus:before { opacity: 1; } }
@media only screen and (max-width: 600px) { .slick-prev { left: 0%; width: calc((70vw / 640)*100); height: calc((800vw / 640)*100); top: calc((500vw / 640)*100); position: fixed; z-index: 99999; background: url(../images/cut/slick-left-btn.png) no-repeat center right transparent; background-size: calc((70vw / 640)*100) calc((280vw / 640)*100); background-position-y: 8.5rem; }
  .slick-prev:hover, .slick-prev:focus { outline: none; background: url(../images/cut/slick-left-btn.png) no-repeat center right transparent; background-size: calc((70vw / 640)*100) calc((280vw / 640)*100); background-position-y: 8.5rem; transition: .5s; opacity: 1; }
  .slick-prev:hover:before, .slick-prev:focus:before { opacity: 1; } }

.slick-next { right: -75px; background: center center; background-size: 70px 70px; z-index: 9; }
[dir="rtl"] .slick-next { left: -75px; right: auto; }
.slick-next:hover, .slick-next:focus { outline: none; background: url(../images/cut/slick-right-btn.png) no-repeat center right transparent; background-size: calc((70vw / 640)*100) calc((280vw / 640)*100); transition: .5s; opacity: 1; }
.slick-next:hover:before, .slick-next:focus:before { opacity: 1; }
@media only screen and (max-width: 1024px) { .slick-next { right: 18%; width: calc((70vw / 640)*60); height: calc((1300vw / 640)*60); top: calc((700vw / 640)*60); position: fixed; z-index: 99999; background: url(../images/cut/slick-right-btn.png) no-repeat center right transparent; background-size: calc((70vw / 640)*60) calc((280vw / 640)*60); background-position-y: 15.5rem; }
  .slick-next:hover, .slick-next:focus { outline: none; background: url(../images/cut/slick-right-btn.png) no-repeat center right transparent; background-size: calc((70vw / 640)*60) calc((280vw / 640)*60); background-position-y: 15.5rem; transition: .5s; opacity: 1; }
  .slick-next:hover:before, .slick-next:focus:before { opacity: 1; } }
@media only screen and (max-width: 600px) { .slick-next { right: 0%; width: calc((70vw / 640)*100); height: calc((800vw / 640)*100); top: calc((500vw / 640)*100); position: fixed; z-index: 99999; background: url(../images/cut/slick-right-btn.png?20250108-1) no-repeat center right transparent; background-size: calc((70vw / 640)*100) calc((280vw / 640)*100); background-position-y: 8.5rem; }
  .slick-next:hover, .slick-next:focus { outline: none; background: url(../images/cut/slick-right-btn.png?20250108-1) no-repeat center right transparent; background-size: calc((70vw / 640)*100) calc((280vw / 640)*100); background-position-y: 8.5rem; transition: .5s; opacity: 1; }
  .slick-next:hover:before, .slick-next:focus:before { opacity: 1; } }

.slick-dots { position: absolute; top: -5px; list-style: none; display: block; text-align: center; padding: 0; margin: 0; width: 100%; }
.slick-dots li { position: relative; display: inline-block; width: calc((25vw / 640)*100); height: calc((4vw / 640)*100); margin: 0; padding: 0; cursor: pointer; }
.slick-dots li button { border: 0; background: white; display: block; width: calc((25vw / 640)*100); height: calc((4vw / 640)*100); outline: none; line-height: 0px; font-size: 0px; color: transparent; cursor: pointer; }
.slick-dots li button:hover, .slick-dots li button:focus { background: white; transition: .5s; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }
.slick-dots li button:before { position: absolute; top: 0; left: 0; width: 0; height: calc((4vw / 640)*100); content: ""; text-align: center; opacity: 1; background: transparent; }
.slick-dots li.slick-active button:before { background: #FF9933; transition: .5s; width: calc((25vw / 640)*100); }

* { font-family: "Arial", "Noto Sans TC" !important; -moz-text-size-adjust: none; -webkit-text-size-adjust: none; text-size-adjust: none; }

.font-Arial { font-family: "arial black" !important; padding: 0 calc((5rem / 18)); }

.app { display: block; width: 100%; height: 99.9%; overflow: scroll; }

#mrawebIframe { position: fixed; top: 0; z-index: 9999; background: #ffffff; }

iframe { display: block; overflow: hidden; }

img { width: 100%; height: auto; }

.events-none { pointer-events: none; }

.line-h { line-height: 0 !important; }

.height-auto { height: auto !important; }
.height-auto .user { position: static; }

.container { pointer-events: auto; }

.popup-scroll-no { overflow: hidden; }
@media only screen and (max-width: 600px) { .popup-scroll-no { position: relative; overflow-y: hidden; } }

body, html { font-size: calc((18vw / 1920) * 100); height: 100%; background: #83cdd6; color: #000000; }
body h1, html h1 { font-size: calc((45rem / 18)); line-height: calc((45rem / 18)); letter-spacing: calc((1rem / 18)); font-weight: 900; margin-bottom: calc((30rem / 18)); color: #000000; }
body h1 img, html h1 img { max-width: calc((540rem / 18)); margin: auto; }
body h3, html h3 { font-size: calc((36rem / 18)); line-height: calc((36rem / 18)); letter-spacing: calc((1rem / 18)); font-weight: 900; margin-bottom: calc((1rem / 18)); color: #444444; }
body h6, html h6 { font-size: calc((36rem / 18)); line-height: calc((42rem / 18)); letter-spacing: calc((1rem / 18)); font-weight: 900; margin: calc((40rem / 18)) auto; color: #00AF84; }
body a, html a { color: #445115; outline-color: invert; outline-style: none; outline-width: 0px; border: none; border-style: none; text-shadow: none; -webkit-appearance: none; -webkit-user-select: text; outline-color: transparent; box-shadow: none; -webkit-tap-highlight-color: transparent; text-decoration: none; }
body a:hover, body a:focus, body a:active, html a:hover, html a:focus, html a:active { border: 0; outline: none; }
body li, body p, html li, html p { font-size: calc((32rem / 18) * 1.1); line-height: calc((44rem / 18) * 1.1); letter-spacing: calc((2rem / 18) * 1.1); font-weight: bold; margin-bottom: calc((4rem / 18) * 1.1); color: #000000; }
body li, html li { line-height: calc((54rem / 18) * 1.1); }
body .font-s-42, html .font-s-42 { font-size: calc((42rem / 18) * 1.1); line-height: calc((42rem / 18) * 1.1); letter-spacing: calc((1rem / 18) * 1.1); font-weight: bold; }
body .font-s-36, html .font-s-36 { font-size: calc((36rem / 18) * 1.1); line-height: calc((42rem / 18) * 1.1); letter-spacing: calc((5rem / 18) * 1.1); font-weight: bold; margin-bottom: calc((4rem / 18) * 1.1); color: #000000; }
body .font-s-32, html .font-s-32 { font-size: calc((32rem / 18) * 1.1); letter-spacing: calc((1rem / 18) * 1.1); font-weight: 900; margin-bottom: calc((0rem / 18) * 1.1); }
body .font-s-22, html .font-s-22 { font-size: calc((22rem / 18) * 1.1); line-height: calc((24rem / 18) * 1.1); letter-spacing: calc((1rem / 18) * 1.1); }
body .font-s-24, html .font-s-24 { font-size: calc((24rem / 18) * 1.1); line-height: calc((36rem / 18) * 1.1); }
body .bg, body .object, html .bg, html .object { display: block; width: calc((640vw / 640) * 100); height: calc((1600vw / 640) * 100); min-height: 100vh; z-index: 1; position: absolute; top: 0; bottom: 0; margin: auto; overflow: hidden; }
body ul, html ul { display: table; width: auto; margin: auto !important; }
body ul li .tag, html ul li .tag { background: #bc4861; color: #fff; padding: 0.3rem 0.8rem; font-family: "arial black" !important; font-size: calc((24rem / 18) * 1.1); border-radius: calc((10rem / 18)); margin-right: 1rem; }
body ul li .stock-text span, html ul li .stock-text span { padding-right: 1rem; }
body .over-scroll, html .over-scroll { display: block; width: 100%; height: 100vh; overflow-y: auto; position: relative; /* 確保 sticky 能正確定位 */ z-index: 111; }
body .underline-half, html .underline-half { display: inline-block; position: relative; }
body .underline-half::after, html .underline-half::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; /* 底色寬度一半 */ height: 1rem; /* 底色高度 */ background: #ff9999; z-index: -1; /* 在文字下方 */ }
@media only screen and (max-width: 1024px) { body, html { font-size: calc((16vw / 1024) * 100) !important; min-height: auto; }
  body .bg, body .object, html .bg, html .object { display: block; width: calc((640vw / 1024) * 100); height: calc((1600vw / 1024) * 100); min-height: 100vh; z-index: 1; position: absolute; top: 0; bottom: 0; margin: auto; overflow: hidden; } }
@media only screen and (max-width: 600px) { body, html { min-width: 100%; min-height: auto; font-size: calc((18vw / 640) * 100) !important; }
  body .bg, body .object, html .bg, html .object { display: block; width: calc((640vw / 640) * 100); height: calc((1600vw / 640) * 100); min-height: 100vh; z-index: 1; position: absolute; top: 0; bottom: 0; margin: auto; overflow: hidden; } }

.logo a { display: block; width: calc((270rem / 18)); height: calc((80rem / 18)); position: absolute; top: 2%; left: 2%; background: url(../images/main/logo.png) no-repeat center center; background-size: cover; border-bottom: 0px !important; z-index: 10; }
@media only screen and (max-width: 600px) { .logo a { top: 0.5%; left: 0.5%; } }

.container { display: block; width: 100%; height: 100vh; position: relative; overflow: hidden; }
@media only screen and (max-width: 1024px) { .container { display: block; height: 100%; min-height: auto; overflow: hidden; } }
@media only screen and (max-width: 1024px) { .container { display: block; max-width: calc((640vw / 1024) * 100); margin: auto; } }
@media only screen and (max-width: 600px) { .container { max-width: 100%; }
  .container .over-scroll embed { width: 100%; } }

.user { max-width: calc((640vw / 640) * 100); height: 100%; top: 0; position: absolute; z-index: 3; }

.user, .result { display: none; background: #83cdd6; position: relative; }
@media only screen and (max-width: 1024px) { .user, .result { display: block; } }
@media only screen and (max-width: 1024px) { .user, .result { display: block; max-width: calc((640vw / 1024) * 100); margin: auto; } }
@media only screen and (max-width: 600px) { .user, .result { display: block; max-width: calc((640vw / 640) * 100); height: 100%; } }

.section { display: flex; width: 100%; height: 100vh; position: relative; overflow: hidden; }
.section .content { display: table; width: 100%; height: calc((1070vw / 640) * 100); position: absolute; z-index: 10; margin: auto; left: 0; right: 0; bottom: 0; top: 0; padding: 0 calc((60vw / 640) * 100); padding-top: calc((30vw / 640) * 100); }
@media only screen and (max-width: 1024px) { .section .content { display: table; width: calc((640vw / 1024) * 100); height: calc((1070vw / 1024) * 100); position: absolute; z-index: 10; margin: auto; left: 0; right: 0; bottom: 0; top: 0; padding: 0 calc((60vw / 1024) * 100); padding-top: calc((30vw / 1024) * 100); margin-top: 6vh; } }
@media only screen and (max-width: 600px) { .section { width: calc((640vw / 640) * 100); }
  .section .content { width: calc((640vw / 640) * 100); height: calc((1070vw / 640) * 100); position: absolute; z-index: 10; margin: auto; left: 0; right: 0; bottom: 0; top: 0; padding: 0 calc((60vw / 640) * 100); padding-top: calc((30vw / 640) * 100); margin-top: 2vh; } }

.photo { position: absolute; width: calc((560rem / 18) * 1.1); height: calc((790rem / 18) * 1.1); overflow: hidden; z-index: 99; margin: auto; display: block; opacity: 1; left: 0; right: 0; top: 3.5rem; opacity: 0; -ms-touch-action: pan-y; touch-action: pan-y; }
.photo img { -webkit-user-drag: auto; -ms-touch-action: pan-y; touch-action: pan-y; z-index: 1; position: relative; }
@media only screen and (max-width: 600px) { .photo { width: calc((560rem / 18)); height: calc((790rem / 18)); top: 4.5rem; } }

#main { display: flex; width: 100%; height: 100vh; min-height: 650px; background: url(../images/main/pc.png) no-repeat center center, url(../images/main/pc-bg2.png) no-repeat center center; background-size: calc((1920rem / 18)) calc((1080rem / 18)), calc((1920rem / 18)) calc((3000rem / 18)); justify-content: center; align-items: center; flex-direction: column; overflow: hidden; }
#main .pc-content { display: flex; width: 100%; height: calc((100vh) - 60px); justify-content: center; align-items: center; flex-direction: column; }
#main .man-slogan-pc { display: block; width: calc((720rem / 18)); height: calc((240rem / 18)); background: url(../images/main/slogan.png) no-repeat center; background-size: cover; position: absolute; z-index: 1; top: calc((-280rem / 18)); }
#main .all-con { display: flex; width: calc((1200rem / 18)); flex-wrap: wrap; justify-content: space-between; position: relative; margin: auto; }
#main .main-people { display: block; width: calc((600rem / 18)); height: calc((700rem / 18)); background: url(../images/main/main-people.png) no-repeat center; background-size: cover; margin-bottom: calc((20rem / 18)); position: relative; z-index: 1; margin-top: calc((180rem / 18)); margin-left: calc((20rem / 18)); }
#main .right-con { display: flex; width: calc((560rem / 18)); height: auto; background: #ffffff; flex-direction: column; align-self: center; align-items: center; position: relative; z-index: 2; margin: 0 0.2rem; border: calc((6rem / 18)) solid #000000 !important; border-radius: calc((20rem / 18)); margin-top: calc((300rem / 18)); }
#main .right-con p { padding-top: calc((20rem / 18)); }
#main .user-data { display: flex; width: 90%; flex-wrap: wrap; justify-content: space-between; margin-top: calc((20rem / 18)); }
#main .user-data .img-ex-app { display: block; width: calc((230rem / 18) * 1.2); height: calc((252rem / 18) * 1.2); background: url(../images/main/img_appex.png) no-repeat center; background-size: cover; }
#main .user-data .phone-qrcode { display: block; width: calc((200rem / 18)); height: calc((280rem / 18)); }
#main .user-data .phone-qrcode .qrcode { display: block; width: calc((180rem / 18)); height: calc((180rem / 18)); padding: calc((0rem / 18)); border: 3px solid #f6f6f6; border-radius: calc((12rem / 18)); text-align: center; margin: auto; }
#main .penguin_mc { display: flex; width: calc((240rem / 18)); height: calc((240rem / 18)); background: url(../images/main/penguin_mc.png) no-repeat center; background-size: cover; position: absolute; bottom: calc((-100rem / 18)); right: calc((-160rem / 18)); }
#main .content { display: none; }
@media only screen and (max-width: 1024px) { #main { display: block; width: 100%; height: 100vh; background: #83cdd6; overflow: hidden; }
  #main .content-main { display: block; width: 100%; height: 100vh; position: relative; }
  #main .guide-page { position: relative; height: 100vh; width: 100%; display: flex; justify-content: center; align-items: center; background: url(../images/main/main-guide-color.png) no-repeat center center; background-size: calc((1024vw / 640) * 100) calc((1600vw / 640) * 100); }
  #main .guide-page a { color: #000000; border-bottom: 1px solid #000000; margin: auto; display: table; font-size: calc((22rem / 18)); line-height: calc((22rem / 18)); text-decoration: none; font-weight: normal; }
  #main .guide-page .guide-page-txt { position: relative; margin-bottom: calc((120rem / 18)); z-index: 2; }
  #main .guide-page .slogan { display: block; width: calc((600rem / 18)); height: calc((200rem / 18)); background: url(../images/main/slogan.png) no-repeat center center; background-size: 100%; margin: auto; margin-bottom: calc((540rem / 18)); }
  #main .guide-page .mobile-main-kv { display: block; width: 100%; height: 100vh; position: absolute; z-index: 10; margin: auto; left: 0; right: 0; bottom: 0; top: 0; padding: 0; z-index: 1; }
  #main .guide-page .mobile-main-kv .main-animal { display: block; width: 100%; height: calc((900rem / 18)); background: url(../images/main/main-animal.png?20251229-1) no-repeat center center; background-size: cover; position: absolute; margin: auto; left: 0; right: 0; top: -12%; bottom: 0; }
  #main .guide-page .mobile-main-kv .bottom-animal { display: block; width: calc((740rem / 18)); height: calc((350rem / 18)); background: url(../images/main/bottom-animal.png) no-repeat center center; background-size: 100%; position: absolute; margin: auto; left: 0; right: 0; top: 0; bottom: calc((-1000rem / 18)); }
  #main .start-ani { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: calc((1070vw / 640) * 100); position: absolute; z-index: 10; margin: auto; left: 0; right: 0; bottom: 0; top: 0; padding: 0; z-index: 2; padding-bottom: 5vh; }
  #main .start-ani .slogan { display: block; width: calc((600rem / 18)); height: calc((200rem / 18)); background: url(../images/main/slogan.png) no-repeat center center; background-size: 100%; margin-bottom: calc((620rem / 18)); }
  #main .start-ani .mobile-main-kv { display: block; width: 100%; height: calc((1600vw / 640) * 100); position: absolute; z-index: 10; margin: auto; left: 0; right: 0; bottom: 0; top: 0; padding: 0; z-index: 1; background: url(../images/main/main.png) no-repeat center center; background-size: 100%; } }
@media only screen and (max-width: 600px) { #main .guide-page { position: relative; height: 100vh; width: 100%; display: flex; justify-content: center; align-items: center; background: url(../images/main/main-guide-color.png) no-repeat center center; background-size: calc((1024vw / 640) * 100) calc((1600vw / 640) * 100); }
  #main .guide-page a { color: #000000; border-bottom: 1px solid #000000; margin: auto; display: table; font-size: calc((22rem / 18)); line-height: calc((22rem / 18)); text-decoration: none; font-weight: normal; }
  #main .guide-page .guide-page-txt { position: relative; margin-bottom: 0; margin-top: -16%; z-index: 2; }
  #main .guide-page .slogan { display: block; width: calc((600rem / 18) * 0.8); height: calc((200rem / 18) * 0.8); background: url(../images/main/slogan.png) no-repeat center center; background-size: 100%; margin: auto; margin-bottom: calc((500rem / 18)); }
  #main .guide-page .mobile-main-kv { display: block; width: 100%; height: 100vh; position: absolute; z-index: 10; margin: auto; left: 0; right: 0; bottom: 0; top: 0; padding: 0; z-index: 1; }
  #main .guide-page .mobile-main-kv .main-animal { display: block; width: 100%; height: calc((900rem / 18)); background: url(../images/main/main-animal.png) no-repeat center center; background-size: cover; position: absolute; margin: auto; left: 0; right: 0; top: -12%; bottom: 0; }
  #main .guide-page .mobile-main-kv .bottom-animal { display: block; width: calc((740rem / 18)); height: calc((350rem / 18)); background: url(../images/main/bottom-animal.png) no-repeat center center; background-size: 100%; position: absolute; margin: auto; left: 0; right: 0; top: 0; bottom: calc((-950rem / 18)); } }

footer { display: flex; width: 100%; height: 60px; font-size: 14px; text-align: center; color: #333333; justify-content: center; align-items: center; clear: both; background: #ffffff; z-index: 5; }
@media only screen and (max-width: 1024px) { footer { display: none; } }

.content-main-over { overflow: auto; width: 100%; }

.btn-main-all { top: calc((1260rem / 18)); left: 0; z-index: 99999; height: calc((90rem / 18)); width: 100%; position: absolute; }
.btn-main-all .btn-type-bottom { display: inline-block; margin: auto; font-size: calc((28rem / 18)); line-height: calc((90rem / 18)); text-align: center; color: #ffffff; width: 50%; float: left; }
.btn-main-all .btn-type-bottom a { display: flex; width: 100%; height: auto; color: #7a583b; background: #ffe878; margin: 0; text-decoration: none; font-size: calc((32rem / 18)); line-height: calc((90rem / 18)); font-weight: bold; transition: 0.5s; border-top: #444444 solid 2px; align-items: center; justify-content: center; }
.btn-main-all .btn-type-bottom a i { transition: 0.5s; transform: rotate(0deg); }
.btn-main-all .btn-type-bottom a:hover { color: #7a583b; background: #ffe878; transition: 0.5s; }
.btn-main-all .btn-type-bottom a:hover i { transition: 0.5s; transform: rotate(0deg); }
.btn-main-all .btn-type-bottom:first-child a { border-right: #444444 solid 2px; }
.btn-main-all .btn-type-bottom-focus a { color: #ffffff; background: #f9882d; pointer-events: none; }
.btn-main-all .btn-type-bottom-focus a i { transition: 0.5s; transform: rotate(180deg); }
.btn-main-all .btn-type-bottom-focus a i::before { color: #ffffff; }
.btn-main-all .btn-type-bottom-focus a:hover { color: #ffffff; background: #f9882d; transition: 0.5s; }
.btn-main-all .btn-type-bottom-focus a:hover i { transition: 0.5s; transform: rotate(180deg); }
.btn-main-all .btn-type-bottom-focus a:hover i::before { color: #ffffff; }
@media only screen and (max-width: 1024px) { .btn-main-all { top: calc((1300rem / 18)); } }
@media only screen and (max-width: 600px) { .btn-main-all { top: calc((1260rem / 18)); } }

.btn-main-all-fixed { top: 0; position: fixed; }

.cut1 { position: relative; background: #83cdd6; }
.cut1 .bg { background: url(../images/cut/cut1_bg.png) no-repeat center bottom; background-size: 100%; }
.cut1 .content { padding: 0; padding-top: calc((30vw / 640) * 100); }
.cut1 .content p:last-child { letter-spacing: 0; }
.cut1 .object1 { width: calc((480vw / 1024) * 100); height: calc((240vw / 1024) * 100); background: url(../images/cut/cut1_img.png) no-repeat center bottom; background-size: 100%; position: static; margin: 0 auto; }
@media only screen and (max-width: 600px) { .cut1 .object1 { width: calc((480vw / 640) * 100); height: calc((240vw / 640) * 100); background: url(../images/cut/cut1_img.png) no-repeat center bottom; background-size: 100%; position: static; margin: 0 auto; } }

.cut2 { position: relative; background: #ffc5c5; }
.cut2 .bg { background: url(../images/cut/cut2_bg.png) no-repeat center bottom; background-size: 100%; }

.cut3 { position: relative; background: #ffcc73; }
.cut3 .bg { background: url(../images/cut/cut3_bg.png) no-repeat center bottom; background-size: 100%; }

.cut301 .object { background: url(../images/cut/cut3-1_object.png) no-repeat center bottom; background-size: 100%; z-index: 1; }

.cut302 .object { background: url(../images/cut/cut3-2_object.png) no-repeat center bottom; background-size: 100%; z-index: 1; }

.cut303 .object { background: url(../images/cut/cut3-3_object.png) no-repeat center bottom; background-size: 100%; z-index: 1; }

.cut4 { position: relative; background: #cdb9ed; }
.cut4 .bg { background: url(../images/cut/cut4-1_bg.png) no-repeat center bottom; background-size: 100%; }
.cut4 .content { padding-left: 0; padding-right: 0; }

.cut402 { position: relative; background: #83cdd6; }
.cut402 .bg { background: url(../images/cut/cut4-2_bg.png) no-repeat center bottom; background-size: 100%; }
.cut402 .content { padding-left: 0; padding-right: 0; }

.cut403 { position: relative; background: #cdb9ed; }
.cut403 .bg { background: url(../images/cut/cut4-3_bg.png) no-repeat center bottom; background-size: 100%; }

.cut5 { position: relative; background: #89c5e5; }
.cut5 .bg { background: url(../images/cut/cut5_bg.png) no-repeat center bottom; background-size: 100%; }
.cut5 .content { padding-left: 0; padding-right: 0; }

.cut601 { position: relative; background: #ffcc73; }
.cut601 .content { padding-left: 0; padding-right: 0; height: auto; position: static; }

.cut602 { position: relative; background: #ffcc73; }
.cut602 .bg { background: url(../images/cut/cut6-2_bg.png) no-repeat center bottom; background-size: 100%; }
.cut602 .content { padding-left: 0; padding-right: 0; }
.cut602 .flex { display: flex; justify-content: center; margin-top: calc((20rem / 18)); }
.cut602 .social-youtube { display: flex; width: calc((60rem / 18)); height: calc((60rem / 18)); text-align: center; background: url(../images/cut/social-youtube.png) no-repeat center center; background-size: 100%; }
.cut602 .search-bar { display: flex; width: calc((320rem / 18)); height: calc((70rem / 18)); justify-content: center; flex-direction: row; align-items: center; border-radius: calc((10rem / 18)); background: #ffffff; margin-left: calc((10rem / 18)); }
.cut602 .search-bar p { margin: 0; letter-spacing: calc((5rem / 18)); }
.cut602 .search-bar i { font-size: calc((32rem / 18)); margin-right: calc((10rem / 18)); }

.header-share { display: flex; width: calc((480rem / 18)); align-items: center; justify-content: space-between; margin: 1rem auto; margin-top: calc((40rem / 18)); }
.header-share:before, .header-share:after { content: ""; width: 60%; height: 1px; background: #000000; }
.header-share p { width: 100%; text-align: center; padding: 0 1rem; }

.ps-text { -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; position: absolute; left: 0.1rem; top: 1rem; z-index: 11; color: #c9a171 !important; letter-spacing: 0.3rem !important; }

.result { display: block; width: 100%; height: auto; position: relative; background: #83cdd6; padding-bottom: 5rem; }
.result .section { height: auto; }
.result .over-scroll { height: calc((1070rem / 18)); overflow: hidden; }
.result .content { height: calc((1070rem / 18)); width: calc((640vw / 1024) * 100); position: relative; z-index: 1; padding: 0; margin-top: -1vh; }
.result .main-con { width: 100%; height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding-bottom: 12vh; }
.result .loading-con { display: flex; width: 100%; height: 120%; position: absolute; top: 0; left: 0; right: 0; margin: auto; z-index: 9; background: url(../images/loading/result-loading.png) no-repeat center center #83cdd6; background-size: 100%; justify-content: center; align-items: center; }
@media only screen and (max-width: 600px) { .result .main-con { width: 100%; height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding-bottom: 5vh; padding-top: 3vh; }
  .result .content { height: calc((1070rem / 18)); width: calc((640vw / 640) * 100); position: relative; z-index: 1; padding: 0; margin-top: -1vh; } }

.result-con, .social-con { display: block; width: 100%; }
.result-con img, .social-con img { height: auto; }
.result-con #can-type, .social-con #can-type { width: calc((640vw / 1024) * 100); height: calc((810vw / 1024) * 100); margin: auto; }
.result-con .entitle-all, .social-con .entitle-all { display: flex; justify-content: space-around; width: calc((300rem / 18)); margin: auto; margin-bottom: 0rem; }
.result-con .social, .social-con .social { display: block; width: calc((90rem / 18)); height: auto; text-align: center; }
.result-con .social a, .social-con .social a { text-decoration: none; }
@media only screen and (max-width: 600px) { .result-con #can-type, .social-con #can-type { width: calc((640vw / 640) * 100); height: calc((810vw / 640) * 100); margin: auto; }
  .result-con .entitle-all, .social-con .entitle-all { display: flex; justify-content: space-around; width: calc((300rem / 18)); margin: auto; margin-bottom: 0rem; }
  .result-con .social, .social-con .social { display: block; width: calc((90rem / 18)); height: auto; text-align: center; }
  .result-con .social a, .social-con .social a { text-decoration: none; } }

.social-con { height: auto; margin: 1rem; }

.result-con { pointer-events: none; }

.flex { display: flex; justify-content: center; align-items: center; width: 100%; }

.result-loading { display: block; width: calc((540rem / 18)); height: calc((800rem / 18)); position: relative; margin: 10vh auto; }
.result-loading .tool { display: block; width: calc((300rem / 18)); height: calc((430rem / 18)); margin: auto; margin-top: 2rem; position: relative; }
.result-loading .tool .body { display: block; width: calc((300rem / 18)); height: calc((430rem / 18)); background: url(../images/loading/body.png) no-repeat top center; background-size: cover; margin: auto; position: absolute; z-index: 1; }
.result-loading .tool .mask { display: block; width: calc((220rem / 18)); height: calc((110rem / 18)); background: url(../images/loading/mask.png) no-repeat top center; background-size: cover; position: absolute; left: calc((30rem / 18)); top: calc((195rem / 18)); z-index: 3; }
.result-loading .tool .ball { display: block; width: calc((30rem / 18)); height: calc((30rem / 18)); background: url(../images/loading/ball.png) no-repeat top center; background-size: cover; position: absolute; top: calc((180rem / 18)); right: calc((-3rem / 18)); z-index: 5; }
.result-loading .tool .pillar { display: block; width: calc((12rem / 18)); height: calc((60rem / 18)); background: url(../images/loading/pillar.png) no-repeat top center; background-size: cover; position: absolute; right: calc((5rem / 18)); top: calc((190rem / 18)); z-index: 4; }
.result-loading .tool .item-all { display: block; width: calc((220rem / 18)); height: calc((110rem / 18)); position: absolute; left: calc((30rem / 18)); top: calc((195rem / 18)); overflow: hidden; background-color: #f6f3e7; }
.result-loading .tool .item-all .item1, .result-loading .tool .item-all .item2, .result-loading .tool .item-all .item3 { display: block; width: calc((62rem / 18)); height: calc((633rem / 18) * 4); background: url(../images/loading/item.png) repeat-y top center; background-size: 100%; position: absolute; }
.result-loading .tool .item-all .item1 { left: calc((8rem / 18)); top: calc((-916rem / 18)); }
.result-loading .tool .item-all .item2 { left: calc((78rem / 18)); top: calc((-1571rem / 18)); }
.result-loading .tool .item-all .item3 { left: calc((148rem / 18)); top: calc((-2224rem / 18)); }
.result-loading .result-txt { display: block; width: calc((500rem / 18)); height: calc((200rem / 18)); background: url(../images/loading/txt.png?20250106) no-repeat top center; background-size: cover; margin: auto; z-index: 2; }

#main { position: absolute; top: 0; left: 0; z-index: 2000; }

.pc { display: block !important; }
@media only screen and (max-width: 1024px) { .pc { display: none !important; } }

.pc-flex { display: flex !important; position: relative; }
@media only screen and (max-width: 1024px) { .pc-flex { display: none !important; } }

.mobile-flex { display: none !important; }
@media only screen and (max-width: 1024px) { .mobile-flex { display: flex !important; } }

.mobile { display: none !important; }
@media only screen and (max-width: 1024px) { .mobile { display: block !important; } }

.display_none { display: none !important; }

.popup-alert { display: flex; flex-direction: column; justify-content: center; width: 100%; height: 100%; position: fixed; z-index: 9999; left: 0; right: 0; top: -200%; margin: auto; }
.popup-alert .alert-content { display: flex; flex-direction: column; justify-content: center; min-width: calc((300rem / 18)); max-width: calc((560rem / 18)); min-height: calc((200rem / 18)); background: #ffffff; border-radius: calc((10rem / 18)); box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1); padding: 4% 2%; padding-top: 5%; margin: auto; border: 2px solid #000000; position: relative; }
.popup-alert .alert-content .txt-con { text-align: center; font-size: calc((28rem / 18)); line-height: calc((42rem / 18)); letter-spacing: calc((1rem / 18)); font-weight: bold; margin-bottom: 1rem; margin-top: 0.2rem; }
.popup-alert .alert-content .btn-close_alert { width: calc((60rem / 18)); height: calc((60rem / 18)); position: absolute; right: -15px; top: -15px; background: url(../images/popup/btn-close.png) no-repeat center top; background-size: 100%; z-index: 999; cursor: pointer; }

.test-input-all { position: fixed; display: flex; right: 0; margin: auto 0; width: auto; justify-content: flex-start; background: rgba(255, 255, 255, 0); padding: 1rem 0.5rem; z-index: 10; }

.test-input { background: #ffffff; border: 1px solid #ccc; line-height: 30px; height: 30px; width: 70px; margin: 5px; border-radius: 0; }

/* ---reset.css--- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { padding: 0; margin: 0; }

/*# sourceMappingURL=web.css.map */
