@charset "UTF-8";
@import url("/css/font-awesome.css");
@import url("/css/animate.css");
@import url("/css/hover.css");
@import url("https://fonts.googleapis.com/earlyaccess/notosanstc.css");
@import url("https://fonts.googleapis.com/css2?family=Fredoka+One&display=swap");
html, body { width: 100%; height: auto; overflow-X: hidden; }

body { font-size: 100%; background: #f5f4f0 !important; }

.wrap * { transition: all .3s; -webkit-transition: all .3s; }

/*:before{ content:"\f146";font-family: 'FontAwesome'; }*/
.btnTop { background: #CCC \9; background: rgba(255, 162, 0, 0.5); border-radius: 50%; width: 50px; height: 50px; position: fixed; right: 15px; bottom: 15px; cursor: pointer; z-index: 99; color: #FFF; text-align: center; font-family: Arial, Helvetica, sans-serif; text-transform: uppercase; font-size: 13px; letter-spacing: 1px; display: none; z-index: 999; line-height: 1; }

.btnTop:before { content: "\f106"; font-family: 'FontAwesome'; font-size: 20px; color: #FFF; display: block; padding-top: 6px; }

.btnTop:hover { background: #ffa200; }

.img-response { max-width: 100%; height: auto; }

/*------------item-inline-block------------*/
.item-inline-block { letter-spacing: -5px; }

.item-inline-block > * { display: inline-block !important; letter-spacing: 1px; vertical-align: top; }

/*------------item-table-cell------------*/
.item-table-cell { display: table; }

.item-table-cell > * { display: table-cell !important; vertical-align: top; }

/*------------item-flex------------*/
.item-flex { display: flex !important; display: -webkit-flex !important; flex-flow: row wrap; }

.item-flex > * { flex: 1; -webkit-flex: 1; }

@media screen and (max-width: 640px) { .vertical-xs { display: block !important; }
  .vertical-xs > * { display: block !important; width: 100% !important; float: none !important; } }
.show { display: block !important; }

.hide { display: none !important; }

@media screen and (max-width: 640px) { .hide-xs { display: none !important; }
  .show-xs { display: block !important; }
  .inline-block-xs { display: inline-block !important; } }
.wrap { width: 100%; height: auto; position: relative; font-family: 'Noto Sans TC',"微軟正黑體",Microsoft Yahei; line-height: 1.6; padding-bottom: 80px; }

.header { font-size: calc(1vw + 1vh + .5vmin) !important; width: 100%; position: relative; height: auto; overflow: hidden; background: url("../images/header-bg.gif") no-repeat top center; background-size: contain; }
.header .logo { width: 7.2em; padding: 10px; position: absolute; left: 0; top: 0; }
.header .container-wrap { padding-top: 1.6em; }
.header .container-wrap > div { margin-left: auto; margin-right: auto; }
.header .tit01 { width: 9.3em; margin-bottom: 1em; }
.header .tit02 { width: 22em; margin-bottom: .4em; }
.header .tit03 { width: 25em; margin-bottom: 1em; }
.header .device { width: 34em; }
.header img { display: block; margin-left: auto; margin-right: auto; }

@media screen and (max-width: 768px) { .header { background: url("../images/header-bg-m.gif") no-repeat top center; min-height: 0; background-size: contain; }
  .header .container-wrap { padding-top: 3em; }
  .header .device { width: 100%; padding-left: 10px; padding-right: 10px; } }
.container-wrap { max-width: 1100px; width: 100%; margin: 0 auto; position: relative; }

.title-line-caption { display: flex; white-space: nowrap; text-align: center; align-items: center; font-family: 'Fredoka One', cursive; font-weight: bold; font-size: 1.8em; color: #363636; letter-spacing: 3px; width: 100%; overflow: hidden; }
.title-line-caption:after, .title-line-caption:before { border-top: 6px dotted #363636; content: ''; position: relative; width: 50%; }
.title-line-caption:before { right: 1.5%; }
.title-line-caption:after { left: 1.5%; }

.part { padding-top: 5vh; padding-bottom: 6vh; }

@media screen and (max-width: 768px) { .part { font-size: calc(1vw + 1vh + .5vmin) !important; } }
.part1 .item { padding: 2em; width: 50%; }
@media screen and (max-width: 768px) { .part1 .item { width: 100%; } }
.part1 .item .text { width: 55%; padding-top: 1em; }
.part1 .item .pic { width: 45%; }
.part1 .item h2 { font-weight: bold; color: #14c255; font-size: 2.2em; margin-bottom: .4em; }
.part1 .item p { font-size: 1.1em; max-width: 200px; }

.part2 { padding-left: 10px; padding-right: 10px; padding-bottom: 44px; }
.part2 .container-wrap { background: #ffa200; box-shadow: 2px 2px 0 6px #ad5506; border-radius: 30px; padding: 40px 20px 50px; }
.part2 h2 { color: #FFF; font-weight: bold; font-size: 2em; text-align: center; margin-bottom: 2em; text-shadow: 1px 1px 5px #000 ,1px 1px 5px #000,1px 1px 5px #000,1px 1px 5px #000 ,1px 1px 5px #000,1px 1px 5px #000, 1px 1px 5px #000 ,1px 1px 5px #000,1px 1px 5px #000,1px 1px 5px #000 ,1px 1px 5px #000,1px 1px 5px #000; }
.part2 .product { text-align: center; padding-left: 10px; padding-right: 10px; }
.part2 .product .item { margin-bottom: 20px; }
.part2 .product .icon { margin-bottom: 16px; }
.part2 .product .icon img { max-height: 108px; }
.part2 .product h3 { font-size: 1.4em; color: #000; font-weight: 500; font-weight: bold; }
.part2 .product p { text-align: center; margin-top: 12px; display: block; margin-left: auto; margin-right: auto; max-width: 170px; color: #000; }
.part2 .register-part { padding: 30px 15px 30px; background: #fff; border-radius: 30px; max-width: 900px; margin-left: auto; margin-right: auto; margin-top: 30px; }

@media screen and (max-width: 768px) { .part2 .container-wrap { padding: 25px 10px; } }
.part-gift { padding-top: 0; }
.part-gift .container-wrap { max-width: 1000px; padding-left: 10px; padding-right: 10px; }
.part-gift .text p { margin: 0; margin-bottom: 2px; }
.part-gift .text h3 { line-height: 1; font-weight: bold; font-size: 1.9em; }
@media screen and (max-width: 768px) { .part-gift .gift { margin-top: 6px; } }
.part-gift .gift img { position: relative; top: -14px; }
.part-gift .gift p { font-weight: bold; font-size: 1.8em; margin-left: 10px; }
.part-gift .title-line-gift { display: flex; white-space: nowrap; text-align: center; align-items: center; font-weight: 600; font-size: 1.2em; color: #363636; letter-spacing: 0px; width: 100%; overflow: hidden; }
.part-gift .title-line-gift:after, .part-gift .title-line-gift:before { border-top: 4px dotted #363636; content: ''; position: relative; width: 50%; }
.part-gift .title-line-gift:before { right: 1.5%; }
.part-gift .title-line-gift:after { left: 1.5%; }

@media screen and (max-width: 768px) { .part-gift { margin-top: 0; }
  .part-gift .text { margin-bottom: 20px; background: #363636; border-radius: 0 100px 100px 0; color: #fff; padding: 10px 18px; }
  .part-gift .text p { font-size: 1.4em; line-height: 1.4; margin-bottom: 0; font-weight: 300; }
  .part-gift .text h3 { font-size: 1.6em; line-height: 1.2; color: #ffa200; margin-bottom: 0; }
  .part-gift .gift { border-bottom: 2px dotted #666666; padding-top: 12px; }
  .title-line-gift:after, .title-line-gift:before { display: none; } }

/*# sourceMappingURL=style.css.map */
