@charset "UTF-8";
@import url("//fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@400;600&family=Noto+Serif+SC:wght@600&family=Inter&display=swap");
*,
::before,
::after {
  box-sizing: border-box;
}

html {
  font-family: "Inter", system-ui, -apple-system, "微軟正黑體", "Microsoft JhengHei", "游明朝体", YuMincho, "游明朝", "Yu Mincho", "Hiragino Kaku Gothic Pro", Meiryo, "MS PGothic", sans-serif;
  line-height: 1.2;
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
}

body {
  margin: 0 auto;
  background: #f2f1ed url(../images/bg.jpg) repeat 0 0;
  color: #4d4d4d;
  letter-spacing: 0.03em;
  -webkit-overflow-scrolling: touch;
}

b, .b,
strong, .strong {
  font-weight: bolder;
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.2;
  color: inherit;
  background: transparent;
  margin: 0;
}

button,
input:where([type=button], [type=reset], [type=submit]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}

legend {
  padding: 0;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

textarea {
  resize: vertical;
}

::placeholder {
  opacity: 1;
  color: color-mix(in srgb, currentColor 50%, transparent);
}

:disabled {
  cursor: default;
}

[hidden] {
  display: none !important;
}

button,
[role=button] {
  cursor: pointer;
  border: 0;
}
button:focus,
[role=button]:focus {
  outline: 0;
}

h1 {
  font-size: 36px;
  margin: 0;
}

hr {
  height: 0;
  color: inherit;
  border: 0 solid #F0B97A;
  border-top-width: 1px;
  margin: 2rem 0;
}

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

a {
  color: var(--color, #c92c29);
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: color 350ms, background 300ms ease;
}
a:hover {
  --color: #B38838;
}
a:not([href]):not([tabindex]), a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
  --color: inherit;
}
a:not([href]):not([tabindex]):focus {
  outline: 0;
}

img {
  vertical-align: middle;
  border-style: none;
}

dd {
  margin: 0;
}

.container::after, .clearfix::after {
  display: table;
  content: "";
  clear: both;
}

.pull-left {
  float: left;
}

.pull-right {
  float: right;
}

.clear {
  clear: both;
}

.rest, .overlay {
  overflow: hidden;
}

.inline {
  display: inline;
}

.inline-block {
  display: inline-block;
}

.block {
  display: block;
}

.circle {
  border-radius: 50%;
}

.hidden {
  display: none;
}

.full {
  width: 100%;
}

.max-full {
  max-width: 100%;
}

.w-auto {
  width: auto;
}

.img-center {
  display: block;
  margin-inline: auto;
  max-width: 100%;
}

.disabled {
  cursor: not-allowed;
}

.overflow-hidden {
  overflow: hidden;
}

.cursor-not-allowed {
  cursor: not-allowed;
}

.cursor-pointer {
  cursor: pointer;
}

.cursor-help {
  cursor: help;
}

.font-tiny, .news-date small, [class*=label-] {
  font-size: 0.75rem;
}
.font-sm, #footer {
  font-size: 0.88rem;
}
.font-md, .news-intro .more {
  font-size: 0.94rem;
}
.font-lg {
  font-size: 1.13rem;
}
.font-xl {
  font-size: 1.5rem;
}
.font-xxl {
  font-size: 2rem;
}
.font-xxxl {
  font-size: 3rem;
}
.font-jumbo {
  font-size: 4rem;
}
.font-normal {
  font-weight: 400;
}

.italic {
  font-style: italic;
}

.no-italic {
  font-style: normal;
}

.hover-white, .text-white {
  color: #fff;
}

.panel-head, .bg-white {
  background-color: #fff;
}

.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center, .news-date, .panel-head {
  text-align: center;
}

.align-top {
  vertical-align: top;
}
.align-middle {
  vertical-align: middle;
}
.align-bottom {
  vertical-align: bottom;
}

.list-inline, .list-unstyled {
  list-style: none;
  padding-left: 0;
}

.list-inline > li {
  display: inline-block;
}
.list-inline > li:not(:last-child) {
  margin-right: 8px;
}

.border {
  border: 1px solid #F0B97A;
}

.border-none {
  border-width: 0;
}

html, body {
  height: 100%;
}

#wrapper {
  --bg_p-b: 0 bottom;
  --bg_p-tr: 40.5% 0;
  min-height: 100%;
  margin-bottom: -118px;
  padding-bottom: 172px;
  --bg_p-tl: 2% 0;
  background: url(../images/footer-img2.png) no-repeat var(--bg_p-b), url(../images/bg-light.gif) no-repeat var(--bg_p-tl), url(../images/bg-light2.gif) no-repeat var(--bg_p-tr);
  position: relative;
}
@media (min-width: 112.5em) {
  #wrapper {
    --bg_p-tl: 15% 0;
    --bg_p-tr: 40.5% 0;
  }
}
@media (min-width: 26.25em) and (max-width: 74.99em) {
  #wrapper {
    --bg_p-tl: 1% 580px;
    background: url(../images/footer-img2.png) no-repeat var(--bg_p-b), url(../images/bg-light.gif) no-repeat var(--bg_p-tl);
  }
}

.container {
  max-width: 1560px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 99.5em) {
  .container {
    padding-inline: 16px;
  }
}

.container.small {
  max-width: 980px;
}

#header {
  background: #fff;
  min-height: 87px;
  padding: 38px 4px 28px;
  position: absolute;
  top: 0;
  z-index: 2;
}
@media (min-width: 75em) {
  #header {
    margin-left: -112px;
    top: 8%;
    left: 50%;
    width: 224px;
  }
}
@media (max-width: 74.99em) {
  #header {
    left: 0;
    height: 90vh;
  }
}
@media (max-width: 35.5em) {
  #header {
    width: 150px;
  }
}

.logo {
  padding: 0;
  background: url(../images/index/logo.gif) no-repeat center 0;
  width: 216px;
  height: 462px;
}
.logo {
  text-indent: 101%;
  overflow: hidden;
  white-space: nowrap;
}

@media (max-width: 35.5em) {
  .logo {
    width: 100%;
    height: 100%;
    background-size: contain;
  }
}

.lang-nav {
  display: flex;
  flex-direction: row-reverse;
}
@media (min-width: 75em) {
  .lang-nav {
    margin-right: 65%;
    position: relative;
    top: 138px;
  }
}
@media (min-width: 87.5em) {
  .lang-nav {
    margin-right: -webkit-calc(50% + 250px);
    margin-right: -moz-calc(50% + 250px);
    margin-right: calc(50% + 250px);
  }
}
@media (max-width: 74.99em) {
  .lang-nav {
    margin: 30px 16px;
  }
}
@media (max-width: 63.99em) {
  .lang-nav {
    justify-content: center;
  }
}

.lang-item {
  transition: 300ms;
  border-left: 1px solid #dfdeda;
  padding: 26px 20px;
  font-size: 1.69em;
  font-weight: 600;
  letter-spacing: 0.19em;
}
.lang-item:hover, .lang-item:active {
  background: #fff;
}
.lang-item:first-of-type {
  border-right: 1px solid #dfdeda;
}
@media (max-width: 22.5em) {
  .lang-item {
    width: 25%;
  }
}
.lang-item span {
  vertical-align: top;
  -ms-writing-mode: tb-rl;
  -ms-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
.lang-item.eng span {
  text-orientation: sideways;
}
.lang-item:nth-of-type(even) span {
  margin-top: 32px;
}
.lang-item:first-of-type span {
  margin-bottom: 65px;
}
.lang-item:nth-of-type(2) span {
  margin-bottom: 33px;
}
.lang-item:nth-of-type(3) span {
  margin-bottom: 98px;
}

#footer {
  background: #991816 url(../images/footerBg.gif) repeat-x 0 bottom;
  border-top: 6px solid #F0CC7E;
  min-height: 118px;
  padding-top: 24px;
  position: relative;
  color: #F0CC7E;
  letter-spacing: 0.13em;
}
#footer::before {
  background: url(../images/footer-img.png) no-repeat 0 0;
  width: 50%;
  height: 122px;
  position: absolute;
  right: 0;
  bottom: 105%;
  z-index: 1;
}
#footer::before {
  content: "";
  display: block;
}

@media (min-width: 35.56em) {
  #footer {
    background: url(../images/footerBg2.gif) no-repeat 90% -1px, #991816 url(../images/footerBg.gif) repeat-x 0 bottom;
  }
}
@media (min-width: 64em) {
  #footer::before {
    background-position: 0 0;
    width: 614px;
  }
}
#footer .indent {
  margin: 10px 0 10px 16px;
}
#footer a {
  color: #f0cc7e;
}
#footer a:hover {
  color: #f8e6bf;
}
#footer a:before {
  content: "。";
}

.copyright {
  color: #bdb6b5;
}

.gotop {
  background: url(../images/temple_gotop.png) no-repeat 0 0;
  width: 157px;
  height: 80px;
  position: fixed;
  right: 16px;
  z-index: 2;
  bottom: 0;
  visibility: hidden;
  opacity: 0;
  transition: 500ms;
}
.gotop.inbottom.fadein {
  visibility: visible;
  opacity: 1 !important;
  bottom: 117px;
}
.gotop::before {
  content: "";
  display: inline-block;
  border: solid #fff;
  border-width: 0 1px 1px 0;
  padding: 8px;
  transition: 0.35s ease;
  transform: translate(70px, 20px) rotate(-135deg);
  opacity: 0;
}
.gotop:hover {
  opacity: 1;
}
.gotop:hover:before {
  opacity: 1;
}

.fadein {
  visibility: visible;
  opacity: 0.5;
}

button[class*=hover-] {
  padding: 0;
  text-align: inherit;
}

.text-primary, .news-intro .more, .hover-primary {
  color: #9C1816;
}

.hover-primary:hover, .hover-primary:focus {
  color: #7d1312;
}

.bg-primary {
  background: #9C1816;
}

.text-secondary, .news-intro .hover, .title-circle, .hover-secondary {
  color: #665652;
}

.hover-secondary:hover, .hover-secondary:focus {
  color: #524542;
}

.bg-secondary {
  background: #665652;
}

.text-info, .hover-info {
  color: #F0B97A;
}

.hover-info:hover, .hover-info:focus {
  color: #c09462;
}

.bg-info {
  background: #F0B97A;
}

.text-success, .hover-success {
  color: #B38838;
}

.hover-success:hover, .hover-success:focus {
  color: #8f6d2d;
}

.bg-success {
  background: #B38838;
}

.text-warning, .hover-warning {
  color: #F0CC7E;
}

.hover-warning:hover, .hover-warning:focus {
  color: #c0a365;
}

.bg-warning {
  background: #F0CC7E;
}

.text-danger, .hover-danger {
  color: #C43C3A;
}

.hover-danger:hover, .hover-danger:focus {
  color: #9d302e;
}

.bg-danger {
  background: #C43C3A;
}

.text-muted, .hover-muted {
  color: #F2F1ED;
}

.hover-muted:hover, .hover-muted:focus {
  color: #c2c1be;
}

.bg-muted, .panel {
  background: #F2F1ED;
}

.hover-white:hover, .hover-white:focus {
  color: #d9d9d9;
}

.text-black {
  color: #000;
}

[class*=label-] {
  display: inline-block;
  border-radius: 2px;
  padding: 0.1em 0.3em;
}
[class*=label-]:not(:only-of-type) {
  margin: 0.2em;
}

.label-warning {
  background: #fbf2dd;
  color: #8e6911;
  border: 1px solid #e8e0cc;
}

.label-danger {
  background: #ecc1c0;
  color: #9b312f;
  border: 1px solid #dab3b2;
}

.label-success {
  background: #e4d5b9;
  color: #735a2c;
  border: 1px solid #d3c5ab;
}

.label-info {
  background: #c9c4c2;
  color: #58514e;
  border: 1px solid #bab5b3;
}

.label-muted {
  background: #f8f7f5;
  color: #7d7057;
  border: 1px solid #e5e4e3;
}

@media (min-width: 35.5em) {
  .pull-xs-left {
    float: left;
  }
  .pull-xs-right {
    float: right;
  }
  .text-xs-left {
    text-align: left;
  }
  .text-xs-right {
    text-align: right;
  }
  .text-xs-center {
    text-align: center;
  }
  .xs-hide {
    display: none;
  }
}
@media (min-width: 48em) {
  .pull-sm-left {
    float: left;
  }
  .pull-sm-right {
    float: right;
  }
  .text-sm-left {
    text-align: left;
  }
  .text-sm-right {
    text-align: right;
  }
  .text-sm-center {
    text-align: center;
  }
  .sm-hide {
    display: none;
  }
}
@media (min-width: 64em) {
  .pull-md-left {
    float: left;
  }
  .pull-md-right {
    float: right;
  }
  .text-md-left {
    text-align: left;
  }
  .text-md-right {
    text-align: right;
  }
  .text-md-center {
    text-align: center;
  }
}
@media (min-width: 75em) {
  .pull-lg-left {
    float: left;
  }
  .pull-lg-right {
    float: right;
  }
  .text-lg-left {
    text-align: left;
  }
  .text-lg-right {
    text-align: right;
  }
  .text-lg-center {
    text-align: center;
  }
}
.font-sp {
  font-family: "Noto Serif TC", "Noto Serif SC", serif;
  font-display: swap;
}

.hant-rl {
  -ms-writing-mode: tb-rl;
  -ms-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
@media (min-width: 48em) {
  .hant-rl-sm {
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
  }
}

.title-circle i {
  border: 1px solid #dad9d5;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.title-circle {
  font-size: 1.75em;
  letter-spacing: 0.19em;
}
.title-circle[onclick] {
  cursor: pointer;
}
.title-circle[onclick]:hover i {
  background: #F0CC7E;
}
.title-circle i {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  margin: 2px;
  font-style: normal;
  letter-spacing: 0;
  transition: 300ms;
}

.border-outline {
  background-color: #fff;
  outline: 2px solid #F0B97A;
  outline-offset: -12px;
}

.panel {
  border: 2px solid #fff;
  outline: 3px solid #F0B97A;
}

.panel-head {
  margin-block: 0;
  padding: 15px;
}

.panel-body {
  margin: 15px;
}

.news-item {
  display: flex;
  margin-block: 0;
  margin: 0;
  padding: 5px 0 5px 16px;
}
.news-item:first-of-type {
  padding-top: 16px;
}
.news-item:last-of-type {
  padding-bottom: 16px;
}

.news-date {
  font-size: 2.81em;
  line-height: 1.01;
  border: 1px solid #f2d28d;
  background: #fff;
  flex-basis: 75px;
  padding: 8px 5px;
}
.news-date small {
  display: block;
  margin-bottom: 3px;
}

.news-intro {
  flex-basis: 100%;
  margin-left: 3.5%;
  padding: 3px 0;
  position: relative;
}
.news-intro .hover {
  line-height: 1.4;
}
.news-intro .hover:hover {
  color: #9C1816;
}
.news-item:not(:last-child) .news-intro {
  border-bottom: 2px solid #fff;
}
.news-intro .more {
  letter-spacing: 0.13em;
  transition: 350ms;
}
@media (min-width: 48em) {
  .news-intro .more {
    position: absolute;
    right: 0;
    bottom: 4px;
  }
}
.news-intro .more:hover {
  letter-spacing: 0.22em;
}

.slogan {
  font-size: 0.88em;
  font-weight: normal;
  letter-spacing: 0.13em;
  line-height: 1.35;
  margin-top: -80%;
  margin-left: 4px;
}
@media (max-width: 35.5em) {
  .slogan {
    margin-top: -220px;
  }
}

@media (min-width: 75em) {
  #banner {
    width: 50%;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 118px;
  }
}
@media (max-width: 74.99em) {
  #banner {
    height: 90vh;
    margin-left: 224px;
  }
}
@media (max-width: 35.5em) {
  #banner {
    margin-left: 150px;
  }
}
#banner .swiper-slide {
  background-position: center 0;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0;
  min-height: 90vh;
}
@media (min-width: 75em) {
  #banner .swiper-slide {
    background-position: center;
  }
}

.latest-news {
  margin: 0 16px;
  position: relative;
  z-index: 2;
}
@media (min-width: 64em) {
  .latest-news {
    margin-top: -270px;
    width: calc(100% - 350px);
  }
}
@media (min-width: 75em) {
  .latest-news {
    margin-top: 170px;
    width: 454px;
  }
}
@media (min-width: 87.5em) {
  .latest-news {
    margin-left: -614px;
    left: 50%;
  }
}
