/**bootstrap5 grid setting**/
/**bootstrap5 grid setting end**/
body {
  font-family: "Arial", "Microsoft JhengHei";
  width: 100%;
  height: 100%;
  font-size: 0.7rem;
  line-height: 1.5;
  color: #666666;
  background: #fff;
}
body.modal-open {
  position: fixed;
}
body.scroll-lock {
  overflow: hidden;
}

.btn {
  font-size: 0.7rem;
}

a {
  color: #4F77E1;
}

.table > :not(caption) > * > * {
  padding: 0.75rem 0.45rem;
}

.table > tbody > * > * {
  padding: 0.55rem 0.45rem;
}

.table > tfoot > * > * {
  border-bottom: 0px;
}

.table > :not(:first-child) {
  border-top: 1px solid #edeff3;
}

.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
  transition: opacity 300ms;
}

.alert-text {
  color: red;
}

.import-text {
  color: #76C8CD;
}

@media screen and (min-width: 992px) {
  .container.more-pd {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .container.more-pd {
    padding-left: 4.8rem;
    padding-right: 4.8rem;
  }
}
@media screen and (min-width: 1400px) {
  .container.more-pd {
    padding-left: 5.55rem;
    padding-right: 5.55rem;
  }
}

#map {
  opacity: 0;
}

.text-default {
  color: var(--bs-body-color);
}

.text-justify {
  text-align: justify;
}

body.stop-transitions * {
  transition: none !important;
}

.col-xs-margin-bottom {
  margin-bottom: 10px;
}
@media screen and (min-width: 576px) {
  .col-xs-margin-bottom {
    margin-bottom: 0px;
  }
}

.col-md-margin-bottom {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .col-md-margin-bottom {
    margin-bottom: 0px;
  }
}

.noselect {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Safari */
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Firefox */
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently
     supported by Chrome and Opera */
}

.g-recaptcha-response {
  display: block !important;
  visibility: hidden;
  position: absolute;
  left: 0;
  top: 0;
}

.graphic-read-area .graphic-box .graphic-item .graphic-media figure:after, .graphic-read-area .graphic-box .graphic-item .graphic-media picture:after, .editor-content:after, .post-content:after, #tinymce:after {
  content: "";
  display: block;
  clear: both;
}

.editor-content iframe, .post-content iframe, #tinymce iframe {
  max-width: 100%;
  border: 0;
}
.editor-content img, .post-content img, #tinymce img {
  height: auto;
  max-width: 100%;
}
.editor-content h3, .post-content h3, #tinymce h3 {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  color: #666666;
  margin-bottom: 0.75rem;
}
.editor-content h4, .post-content h4, #tinymce h4 {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  color: #E1BB0E;
  margin-bottom: 0.75rem;
}
.editor-content h5, .post-content h5, #tinymce h5 {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  color: #F57454;
  margin-bottom: 0.75rem;
}
.editor-content h6, .post-content h6, #tinymce h6 {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  color: #6F4240;
  margin-bottom: 0.75rem;
}
.editor-content a, .post-content a, #tinymce a {
  color: #38A78C;
  text-decoration: none;
}
.editor-content a:hover, .post-content a:hover, #tinymce a:hover {
  color: #38A78C;
  text-decoration: underline;
}
.editor-content p, .post-content p, #tinymce p {
  margin-bottom: 1.5rem;
}
.editor-content table, .post-content table, #tinymce table {
  max-width: 100%;
  border-collapse: collapse;
  margin-bottom: 1.5rem;
}
.editor-content table thead th, .post-content table thead th, #tinymce table thead th, .editor-content table thead td, .post-content table thead td, #tinymce table thead td {
  background-color: #DEEBE1;
}
.editor-content table th, .post-content table th, #tinymce table th, .editor-content table td, .post-content table td, #tinymce table td {
  padding: 0.2rem 0.3rem;
  border: #DEEBE1 solid 0.05rem;
}
.editor-content table th, .post-content table th, #tinymce table th {
  background-color: #DEEBE1;
  font-weight: normal;
}
.editor-content ul, .post-content ul, #tinymce ul {
  padding: 0;
  list-style: none !important;
  margin-bottom: 1.5rem;
}
.editor-content ul > li, .post-content ul > li, #tinymce ul > li {
  padding-left: 1rem;
  position: relative;
  margin-bottom: 0.4rem;
}
.editor-content ul > li:before, .post-content ul > li:before, #tinymce ul > li:before {
  content: "";
  display: block;
  position: absolute;
  left: 0.2rem;
  top: 0.4rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.25rem 0 0.25rem 0.35rem;
  border-color: transparent transparent transparent #76c8cd;
}
.editor-content ol, .post-content ol, #tinymce ol {
  padding: 0;
  list-style: none !important;
  counter-reset: ol-item;
  margin-bottom: 1.5rem;
}
.editor-content ol > li, .post-content ol > li, #tinymce ol > li {
  display: block;
  padding-left: 1rem;
  position: relative;
  margin-bottom: 0.4rem;
}
.editor-content ol > li:before, .post-content ol > li:before, #tinymce ol > li:before {
  position: absolute;
  left: 0;
  top: 0.15rem;
  content: counter(ol-item) ".";
  counter-increment: ol-item;
  font-size: 0.85rem;
  line-height: 1;
  font-weight: 700;
  color: #76c8cd;
  display: inline-block;
  min-width: 0.85rem;
}

.page-content-area {
  position: relative;
}

.video-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
}
.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.video-wrapper.not-load {
  padding-bottom: 0;
}

.modal-dialog .video-content {
  width: 100%;
}
.modal-dialog .modal-content {
  padding: 2rem 0.75rem;
}
@media screen and (min-width: 992px) {
  .modal-dialog .modal-content {
    padding: 3rem 2rem;
  }
}
.modal-dialog .modal-header {
  padding: 0;
  margin-bottom: 0.75rem;
}
.modal-dialog .modal-header .modal-title {
  color: #666666;
}
.modal-dialog .modal-header .btn-close {
  top: 1.7rem;
  right: 1.7rem;
  padding: 0;
}
.modal-dialog .modal-header .btn-close:before {
  content: "\ec22";
  font-size: 1.25rem;
  color: #737FA7;
  background: transparent;
}
.modal-dialog .modal-body {
  padding: 0;
}
.modal-dialog .modal-footer {
  padding: 0;
  margin-top: 1.25rem;
}
.modal-dialog .modal-footer > * {
  margin: 0;
}

body.modal-open {
  position: relative !important;
}

.video-modal .modal-dialog {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  height: 100%;
  pointer-events: auto;
  max-width: none;
  padding: 0;
}
.video-modal .modal-dialog .video-content {
  max-width: 65rem;
  width: 80vw;
  padding: 0.5rem;
}
.video-modal .close-btn {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  background: url("../img/gallery/button_close_xs@2x.png") no-repeat;
  background-size: 2.5rem;
  width: 2.5rem;
  height: 2.5rem;
  border: 0;
  z-index: 99;
}
@media screen and (min-width: 576px) {
  .video-modal .close-btn {
    background: url("../img/gallery/button_close_lg@2x.png") no-repeat;
    background-size: 4rem;
    width: 4rem;
    height: 4rem;
  }
}

.side-toolbar {
  position: fixed;
  right: 0.5rem;
  bottom: 1rem;
  z-index: 99;
}
.side-toolbar.bot {
  position: absolute;
  top: 0.6rem;
  bottom: auto;
}
@media screen and (min-width: 992px) {
  .side-toolbar {
    right: 2rem;
    bottom: 1.75rem;
  }
  .side-toolbar.bot {
    top: 0;
  }
}
@media screen and (min-width: 1200px) {
  .side-toolbar {
    right: auto;
    left: calc(50% + 25.8rem);
  }
}
@media screen and (min-width: 1400px) {
  .side-toolbar {
    left: calc(50% + 29.55rem);
  }
}

@media (hover: none) {
  .dropdown .dropdown-menu > li > a {
    transition: none;
  }
}

.fade-in-left {
  opacity: 0;
  animation-duration: 0.75s;
  -webkit-animation-duration: 0.75s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
.fade-in-left.motion {
  animation-name: fadeInLeft;
  -webkit-animation-name: fadeInLeft;
  opacity: 1;
}

@keyframes fadeInLeft {
  0% {
    transform: translateX(100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0%);
    opacity: 1;
  }
}
.fade-in-right {
  opacity: 0;
  animation-duration: 0.75s;
  -webkit-animation-duration: 0.75s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
.fade-in-right.motion {
  animation-name: fadeInRight;
  -webkit-animation-name: fadeInRight;
  opacity: 1;
}

@keyframes fadeInRight {
  0% {
    transform: translateX(-100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0%);
    opacity: 1;
  }
}
.fade-in-up {
  opacity: 0;
  animation-duration: 0.75s;
  -webkit-animation-duration: 0.75s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
.fade-in-up.motion {
  animation-name: fadeInUp;
  -webkit-animation-name: fadeInUp;
  opacity: 1;
}

@keyframes fadeInUp {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0%);
    opacity: 1;
  }
}
/*
=================================================================
(#m02-1hds) HEADER
=================================================================
*/
header .header-top {
  position: relative;
  z-index: 1020;
}
header .hamburger {
  color: #666666;
  margin-left: 0.75rem;
}
header .hamburger span, header .hamburger:before, header .hamburger:after {
  width: 1rem;
}
header .donation-link {
  flex: 0 0 1.6rem;
  margin-left: auto;
}
header .donation-link img {
  max-width: 1.6rem;
  width: 100%;
}

.navbar-expand-lg {
  box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 768px) {
  .navbar-expand-lg {
    box-shadow: 0 0.45rem 0.45rem -0.35rem rgba(0, 0, 0, 0.15) !important;
  }
  .navbar-expand-lg .navbar-other .btn.btn-circle {
    font-size: 1.3rem;
  }
  .navbar-expand-lg .navbar-nav > .nav-item .nav-link {
    height: 100%;
    padding-left: 0.875rem;
    padding-right: 0.875rem;
  }
  .navbar-expand-lg .navbar-nav > .nav-item .nav-link .nav-title {
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1;
    color: #6F4240;
    margin-left: 0.5rem;
    transition: color 0.2s ease;
  }
  .navbar-expand-lg .navbar-nav > .nav-item .nav-link:hover .nav-title, .navbar-expand-lg .navbar-nav > .nav-item .nav-link.active .nav-title {
    color: #F57454;
  }
}

@media (max-width: 991.98px) {
  .navbar-collapse.offcanvas .offcanvas-header {
    padding: 0.4rem 0.75rem;
    background-color: #F6F7F2;
    color: #666666;
    box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.15);
  }
  .navbar-collapse.offcanvas .offcanvas-header .btn-close {
    position: relative;
    color: #666666;
    width: 1.2rem;
    height: 1.2rem;
    margin-right: 0;
    margin-left: 0.5rem;
  }
  .navbar-collapse.offcanvas .offcanvas-header .btn-close:before, .navbar-collapse.offcanvas .offcanvas-header .btn-close:after {
    content: "";
    position: absolute;
    top: 0.55rem;
    left: 0.05rem;
    width: 100%;
    height: 0.15rem;
    background: currentColor;
    border-radius: 0;
  }
  .navbar-collapse.offcanvas .offcanvas-header .btn-close:before {
    transform: rotate(40deg);
  }
  .navbar-collapse.offcanvas .offcanvas-header .btn-close:after {
    transform: rotate(-40deg);
  }
  .navbar-collapse.offcanvas .offcanvas-body .navbar-nav .nav-link.active {
    color: #48547B !important;
  }
  .navbar-collapse.offcanvas .offcanvas-body .navbar-nav > li > a:hover .nav-title, .navbar-collapse.offcanvas .offcanvas-body .navbar-nav > li > a.active .nav-title {
    color: #6F4240;
    padding: 0.35rem 0.5rem;
    background-color: #FBEDBC;
    border-radius: 0.75rem;
    margin-left: 0.5rem;
    margin-right: -0.5rem;
  }
}
/*
=================================================================
(#m02-2fts) FOOTER
=================================================================
*/
/*
=================================================================
(#m03mcs) MAIN CONTENT
=================================================================
*/
.loading-page {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  color: #fff;
  z-index: 1030;
  background: #fff;
  padding: 0 0.75rem;
  opacity: 1;
  transition: all 0.2s;
}
.loading-page .spinner {
  width: 0.56rem;
  height: 0.56rem;
  border-radius: 0.56rem;
  box-shadow: 1.4rem 0px 0 0 rgba(131, 129, 211, 0.2), 1.135rem 0.825rem 0 0 rgba(131, 129, 211, 0.4), 0.434rem 1.33rem 0 0 rgba(131, 129, 211, 0.6), -0.434rem 1.33rem 0 0 rgba(131, 129, 211, 0.8), -1.135rem 0.825rem 0 0 #8381d3;
  animation: spinner-b87k6z 1s infinite linear;
}
@keyframes spinner-b87k6z {
  to {
    transform: rotate(360deg);
  }
}
.loading-page.hide {
  opacity: 0;
  visibility: hidden;
}

.title-group-box {
  display: flex;
}
.title-group-box .title-group {
  display: flex;
  flex-direction: column;
}
.title-group-box .title-group .ch-title {
  font-family: "Noto Sans TC";
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.133rem;
  color: #076A40;
}
.title-group-box .title-group .eng-title {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1;
  color: #F57454;
  margin-bottom: 0.6rem;
}
.title-group-box.detail .detail-info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 0.6rem;
}
.title-group-box.detail .detail-info > div + div {
  margin-left: 0.6rem;
}
.title-group-box.detail .detail-info .info-date {
  font-size: 0.85rem;
  line-height: 1;
  font-weight: 600;
  color: #F57454;
}
.title-group-box.detail .detail-info .info-cat {
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
  color: #6A8C51;
  padding: 0.4rem;
  border-radius: 0.5rem;
  background-color: #FFF;
}
.title-group-box.detail .detail-info .info-location {
  display: flex;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
  color: #F57454;
}
.title-group-box.detail .detail-info .info-location:before {
  content: "";
  display: block;
  background: url("../img/list/icon_location@2x.png") no-repeat;
  background-size: 0.65rem 0.85rem;
  width: 0.65rem;
  height: 0.85rem;
  margin-right: 0.25rem;
}
.title-group-box.detail .detail-title {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.3;
  color: #076A40;
  margin-bottom: 0;
}
.title-group-box.center {
  justify-content: center;
}
.title-group-box.center .title-group {
  align-items: center;
}
@media screen and (min-width: 768px) {
  .title-group-box .title-group .ch-title {
    font-size: 1.9rem;
  }
  .title-group-box .title-group .eng-title {
    font-size: 1.5rem;
  }
  .title-group-box.detail {
    padding-top: 1rem;
  }
  .title-group-box.detail .detail-info .detail-title {
    font-size: 1.6rem;
  }
}

.page-banner-wrapper {
  position: relative;
  background: url("../img/banner/banner.jpg") no-repeat center #87ced2;
  background-size: auto 100%;
  height: 8rem;
}
.page-banner-wrapper h2 {
  color: #fff;
}
@media screen and (min-width: 992px) {
  .page-banner-wrapper {
    background-size: unset;
    height: 10.5rem;
  }
}

.breadcrumbs {
  position: relative;
  font-size: 0.7rem;
  font-weight: 400;
  line-height: 1.3;
  color: #888888;
  padding-top: 0.5rem;
  padding-bottom: 1.3rem;
}
.breadcrumbs a {
  color: #888888;
}
.breadcrumbs a:hover {
  color: #76c8cd;
}
.breadcrumbs i {
  font-size: 0.5rem;
  padding-top: 0.2rem;
  margin-left: 0.2rem;
  margin-right: 0.2rem;
}

.share-box {
  position: relative;
  min-width: 5.9rem;
}
.share-box:before {
  content: "";
  width: 1.25rem;
  height: 1.4rem;
  background: url("../img/share/icon_share@2x.png") center no-repeat;
  background-size: 100% auto;
  margin-right: 0.75rem;
}
.share-box .share-btn {
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  text-indent: -100rem;
  overflow: hidden;
}
.share-box .share-btn + .share-btn {
  margin-left: 0.4rem;
}
.share-box .share-btn.share-fb {
  background: url(../img/share/button_share_fb@2x.png) no-repeat center;
  background-size: 100% auto;
}
.share-box .share-btn.share-fb:hover {
  background: url(../img/share/button_share_fb_hover@2x.png) no-repeat center;
  background-size: 100% auto;
}
.share-box .share-btn.share-line {
  background: url(../img/share/button_share_line@2x.png) no-repeat center;
  background-size: 100% auto;
}
.share-box .share-btn.share-line:hover {
  background: url(../img/share/button_share_line_hover@2x.png) no-repeat center;
  background-size: 100% auto;
}

.post-content, #tinymce {
  overflow: visible;
}

.info-meta {
  list-style: none;
  padding: 0;
  margin: 0;
}

.detail-wrapper {
  position: relative;
}
.detail-wrapper .label-title-box {
  margin-bottom: 0.75rem;
}
.detail-wrapper .label-title-box .label-title {
  position: relative;
  height: 2rem;
  padding: 0.5rem 0.2rem 0.5rem 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  color: #FFF;
  background-color: #F3CB18;
  margin-bottom: 0;
  margin-right: 1rem;
}
.detail-wrapper .label-title-box .label-title:after {
  content: "";
  position: absolute;
  top: 0;
  right: -1rem;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1rem 0 1rem 1rem;
  border-color: transparent transparent transparent #F3CB18;
}
.detail-wrapper .label-title-box .board-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.detail-wrapper .label-title-box .board-item .board-head {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0.75rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: #FFF;
  background-color: #A18561;
  border-radius: 0.25rem;
  text-align: center;
}
.detail-wrapper .label-title-box .board-item .board-head .service-cnt {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.075rem;
  color: #F3CB18;
  margin-bottom: 0.25rem;
}
.detail-wrapper .label-title-box .board-item .board-head .dot, .detail-wrapper .label-title-box .board-item .board-head:before, .detail-wrapper .label-title-box .board-item .board-head:after {
  content: "";
  position: absolute;
  width: 0.2rem;
  height: 0.2rem;
  background-color: #D9D9D9;
  border-radius: 50%;
}
.detail-wrapper .label-title-box .board-item .board-head .dot.lt {
  top: 0.35rem;
  left: 0.35rem;
}
.detail-wrapper .label-title-box .board-item .board-head .dot.lb {
  bottom: 0.35rem;
  left: 0.35rem;
}
.detail-wrapper .label-title-box .board-item .board-head:before {
  top: 0.35rem;
  right: 0.35rem;
}
.detail-wrapper .label-title-box .board-item .board-head:after {
  bottom: 0.35rem;
  right: 0.35rem;
}
.detail-wrapper .label-title-box .board-item .board-stick {
  width: 0.8rem;
  height: 1.45rem;
  background-color: #8A7253;
  border-radius: 0rem 0rem 0.1rem 0.1rem;
}
.detail-wrapper .detail-header {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px dashed #666666;
}
.detail-wrapper .post-footer {
  position: relative;
  text-align: center;
}
.detail-wrapper .post-footer .share-box {
  justify-content: flex-end;
  margin-bottom: 4.25rem;
}
@media screen and (min-width: 768px) {
  .detail-wrapper .post-footer {
    position: relative;
  }
  .detail-wrapper .post-footer .share-box {
    position: absolute;
    top: calc(50% - 0.875rem);
    right: 0;
    margin-bottom: 0;
  }
}

.judge-wrapper {
  background-color: #F4F3FC;
}
.judge-wrapper .judge-container {
  max-width: 12rem;
  margin: 0 auto;
}
@media screen and (min-width: 992px) {
  .judge-wrapper .judge-container {
    max-width: 37.5rem;
  }
}
.judge-wrapper .judge-item {
  max-width: 12.45rem;
  width: 100%;
}
.judge-wrapper .judge-item .img-blob {
  text-align: center;
  position: relative;
  padding-right: 2%;
}
.judge-wrapper .judge-item .img-blob .judge-photo figure {
  height: 0;
  padding-bottom: 117.7570093458%;
  width: 100%;
}
.judge-wrapper .judge-item .img-blob .judge-photo .shape {
  height: 0;
  width: 100%;
  padding-bottom: 117.7570093458%;
  top: 3%;
  right: -2%;
  z-index: 0;
  background-color: #E5E5FB;
}
.judge-wrapper .judge-item .judge-name {
  font-size: 1.1rem;
  line-height: 1.3;
  font-weight: 700;
  color: #5B59A8;
}
.judge-wrapper .judge-item .judge-title {
  font-size: 0.8rem;
  line-height: 1.5;
  color: #737FA7;
}

.bt-line {
  border-bottom: 1px dashed #666666;
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
}

.page-search-wrapper {
  position: relative;
}
.page-search-wrapper .page-cat-box {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  margin-top: -0.5rem;
}
.page-search-wrapper .page-cat-box .cat-item {
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1;
  color: #666666;
  border-radius: 0.75rem;
  border: 0.05rem solid #F3CB18;
  background: #F8E9B4;
  padding: 0.45rem 0.55rem;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  margin-top: 0.5rem;
  cursor: pointer;
  transition: all 0.2s ease;
}
.page-search-wrapper .page-cat-box .cat-item:hover, .page-search-wrapper .page-cat-box .cat-item.active {
  background-color: #F3CB18;
}
.page-search-wrapper .select-item {
  width: 100%;
}
.page-search-wrapper .select-item + .select-item {
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .page-search-wrapper .select-item {
    width: 11.25rem;
  }
  .page-search-wrapper .select-item + .select-item {
    margin-top: 0;
  }
}

.fixedpage-wrapper .title-group-box {
  margin-bottom: 1.5rem;
}
.fixedpage-wrapper .title-group-box .ch-title {
  margin-bottom: 0;
}
.fixedpage-wrapper .origin-wrapper {
  position: relative;
  overflow: hidden;
  padding-bottom: 5rem;
}
.fixedpage-wrapper .origin-wrapper .origin-content {
  margin-left: auto;
  margin-right: auto;
}
.fixedpage-wrapper .origin-wrapper .origin-content > p {
  text-align: justify;
}
.fixedpage-wrapper .origin-wrapper:before {
  content: "";
  position: absolute;
  top: 0.65rem;
  left: calc(50% - 10.1rem);
  background: url("../img/service_plan/service_pic01@2x.png") no-repeat;
  background-size: 4.8rem 3.9rem;
  width: 4.8rem;
  height: 3.9rem;
}
.fixedpage-wrapper .origin-wrapper:after {
  content: "";
  display: none;
  position: absolute;
  top: 7.6rem;
  left: calc(50% + 17.6rem);
  background: url("../img/service_plan/service_pic02@2x.png") no-repeat;
  background-size: 7.4rem 11.1rem;
  width: 7.4rem;
  height: 11.1rem;
}
@media screen and (min-width: 768px) {
  .fixedpage-wrapper .origin-wrapper .origin-content {
    max-width: 26.8rem;
  }
  .fixedpage-wrapper .origin-wrapper:before {
    top: 3.7rem;
    left: calc(50% - 23.35rem);
    background-size: 8rem 6.5rem;
    width: 8rem;
    height: 6.5rem;
  }
  .fixedpage-wrapper .origin-wrapper:after {
    display: block;
    left: calc(50% + 15.35rem);
  }
}
@media screen and (min-width: 1400px) {
  .fixedpage-wrapper .origin-wrapper .origin-content {
    max-width: 31.25rem;
  }
  .fixedpage-wrapper .origin-wrapper:before {
    left: calc(50% - 25.6rem);
  }
  .fixedpage-wrapper .origin-wrapper:after {
    left: calc(50% + 17.6rem);
  }
}
.fixedpage-wrapper .donation-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 5rem;
  padding-left: 1.2rem;
  padding-right: 1.2rem;
}
.fixedpage-wrapper .donation-wrapper .donation-content-lg {
  position: relative;
  width: 100%;
}
.fixedpage-wrapper .donation-wrapper .donation-content-lg .donation-item {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
@media screen and (min-width: 768px) {
  .fixedpage-wrapper .donation-wrapper .donation-content-lg {
    padding-bottom: 65.4427645788%;
  }
}
@media screen and (min-width: 992px) {
  .fixedpage-wrapper .donation-wrapper .donation-content-lg {
    width: 46.3rem;
    height: 30.3rem;
    padding-bottom: 0;
  }
}
.fixedpage-wrapper .donation-wrapper .donation-content-xs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
}
.fixedpage-wrapper .donation-wrapper .donation-content-xs .donation-item {
  text-align: center;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.fixedpage-wrapper .donation-wrapper .donation-content-xs .donation-item.main {
  width: 100%;
  margin-bottom: 1.25rem;
}

.index-title {
  color: #5B59A8;
}

.home-banner .swiper-container {
  background-color: #E5E5FB;
}
.home-banner .swiper-container .swiper-controls .swiper-pagination {
  bottom: 0.75rem;
}
.home-banner .swiper-container .swiper-controls .swiper-pagination .swiper-pagination-bullet {
  transform: none;
  background: transparent;
  border-color: #8381D3;
  border-width: 0.05rem;
  opacity: 1;
}
.home-banner .swiper-container .swiper-controls .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #8381D3;
}
@media screen and (min-width: 768px) {
  .home-banner .swiper-container {
    height: 16rem;
  }
  .home-banner .swiper-container .swiper {
    height: 100%;
  }
  .home-banner .swiper-container .swiper figure {
    height: 100%;
    width: 100%;
    overflow: hidden;
  }
  .home-banner .swiper-container .swiper figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    height: 100% !important;
    max-width: none;
  }
}
@media screen and (min-width: 992px) {
  .home-banner .swiper-container {
    height: 20rem;
  }
}
@media screen and (min-width: 1200px) {
  .home-banner .swiper-container {
    height: 25.4rem;
  }
}

.home-link-area {
  margin-bottom: 2.75rem;
}
.home-link-area h3 {
  transition: all 0.2s;
  color: #5B59A8;
}
.home-link-area figure {
  max-width: 7.5rem;
  margin: 0 auto;
}
.home-link-area figure source, .home-link-area figure img {
  max-width: 7.5rem;
}
.home-link-area .home-link-item {
  transition: all 0.2s;
}
.home-link-area .home-link-item:hover {
  transform: translateY(-0.5rem);
}
.home-link-area .home-link-item:hover h3 {
  color: #EB6672;
}
@media screen and (min-width: 992px) {
  .home-link-area {
    margin-bottom: 2.25rem;
  }
}

.graphic-read-area .graphic-box .graphic-item .img-blob {
  max-width: 36rem;
  width: 100%;
  height: 100%;
  position: relative;
}
.graphic-read-area .graphic-box .graphic-item .img-blob figure img, .graphic-read-area .graphic-box .graphic-item .img-blob picture img {
  width: 100% !important;
}
.graphic-read-area .graphic-box .graphic-item .img-blob .shape {
  top: 10%;
  right: -2.5%;
  background: #C7E1B4;
}
.graphic-read-area .graphic-box .graphic-item .graphic-media figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media picture img {
  width: 100%;
  max-width: 41rem;
}
.graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-24 figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-24 picture img {
  max-width: 24rem;
}
.graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-26 figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-26 picture img {
  max-width: 36rem;
}
.graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-36-2 figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-36-2 picture img {
  max-width: 36.2rem;
}
.graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-25-75 figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-25-75 picture img {
  max-width: 25.75rem;
}
.graphic-read-area .graphic-box .graphic-item .graphic-content {
  max-width: 36rem;
  margin: 0 auto;
}
.graphic-read-area .graphic-box .graphic-item .graphic-content.xs-container-width {
  max-width: 100%;
}
.graphic-read-area .graphic-box .graphic-item .content-box .sub-title {
  color: #7A78D7;
}
.graphic-read-area .graphic-box .graphic-item .content-box .comment-group .comment-name:before {
  content: "";
  width: 1.5rem;
  height: 1.3rem;
  background: url("../img/rights/box/icon_talk@2x.png") no-repeat;
  background-size: 1.5rem 1.3rem;
  margin-right: 0.5rem;
}
.graphic-read-area .graphic-box .graphic-item .content-box .comment-group + .comment-group {
  border-top: 0.05rem solid #E0E2ED;
}
.graphic-read-area .graphic-box .graphic-item.right .graphic-media figure img, .graphic-read-area .graphic-box .graphic-item.right .graphic-media picture img {
  float: right;
}
.graphic-read-area .graphic-box .graphic-item.share .graphic-media {
  height: auto !important;
}
@media screen and (min-width: 576px) {
  .graphic-read-area .graphic-box .graphic-item .graphic-content.xs-container-width {
    max-width: 27rem;
  }
}
@media screen and (min-width: 768px) {
  .graphic-read-area .graphic-box .graphic-item.md-change > div {
    width: 50%;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media {
    position: relative;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media figure, .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media picture {
    position: absolute;
    top: 0;
    right: 0;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media figure img, .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media picture img {
    min-width: 41rem;
    float: none;
    margin-right: 0;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media.w-img-24 {
    height: 24.3rem;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media.w-img-24 figure img, .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media.w-img-24 picture img {
    min-width: 24rem;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media.w-img-25-75 {
    height: 20rem;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media.w-img-25-75 figure img, .graphic-read-area .graphic-box .graphic-item.md-change .graphic-media.w-img-25-75 picture img {
    min-width: 25.75rem;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-content {
    margin: 0;
    max-width: none;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .graphic-content.xs-container-width {
    max-width: none;
    text-align: left;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change .content-box {
    max-width: 25.7rem;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change.right .graphic-media figure, .graphic-read-area .graphic-box .graphic-item.md-change.right .graphic-media picture {
    left: 0;
    right: auto;
  }
  .graphic-read-area .graphic-box .graphic-item.md-change.right .content-box {
    margin-left: auto;
  }
}
@media screen and (min-width: 992px) {
  .graphic-read-area .graphic-box .graphic-item > div {
    width: 50%;
  }
  .graphic-read-area .graphic-box .graphic-item .img-blob {
    width: 36rem;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-media {
    position: relative;
    height: 30rem;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-media figure, .graphic-read-area .graphic-box .graphic-item .graphic-media picture {
    position: absolute;
    top: 0;
    right: 0;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-media figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media picture img {
    min-width: 41rem;
    float: none;
    margin-right: 0;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-26 {
    height: 27rem;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-26 figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-26 picture img {
    min-width: 36rem;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-36-2 {
    height: 26.5rem;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-36-2 figure img, .graphic-read-area .graphic-box .graphic-item .graphic-media.w-img-36-2 picture img {
    min-width: 36.2rem;
  }
  .graphic-read-area .graphic-box .graphic-item .graphic-content {
    margin: 0;
    max-width: none;
  }
  .graphic-read-area .graphic-box .graphic-item .content-box {
    max-width: 25.7rem;
  }
  .graphic-read-area .graphic-box .graphic-item.right .graphic-media figure, .graphic-read-area .graphic-box .graphic-item.right .graphic-media picture {
    left: 0;
    right: auto;
  }
  .graphic-read-area .graphic-box .graphic-item.right .content-box {
    margin-left: auto;
  }
}
@media screen and (min-width: 1400px) {
  .graphic-read-area .graphic-box .graphic-item .content-box {
    max-width: 25.7rem;
  }
  .graphic-read-area .graphic-box .graphic-item .content-box.chairman {
    max-width: 30rem;
  }
}
.graphic-read-area.index {
  background: linear-gradient(#F4F3FC, #F4F3FC) no-repeat;
  background-position: bottom;
  background-size: 100% calc(100% - 2.5rem);
}
@media screen and (min-width: 992px) {
  .graphic-read-area.index {
    background-position: center;
    background-size: 100% calc(100% - 5rem);
  }
}
.graphic-read-area.content-bg {
  background: linear-gradient(#F4F3FC, #F4F3FC) no-repeat;
  background-position: bottom;
  background-size: 100% calc(100% - 5rem);
}
.graphic-read-area.content-bg .graphic-box .graphic-item .content-box {
  border-radius: 5rem;
}
@media screen and (min-width: 768px) {
  .graphic-read-area.content-bg {
    background: transparent;
  }
  .graphic-read-area.content-bg .graphic-box .graphic-item .content-box {
    background-color: #F4F3FC;
    max-width: 43.25rem;
    padding: 2.5rem 4rem 2.5rem 17.5rem;
    margin-left: -17.5rem;
    margin-right: 1.5rem;
  }
}

.home-achievement-area picture source, .home-achievement-area picture img {
  max-width: 100%;
}
.home-achievement-area .home-achievement-group {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .home-achievement-area .home-achievement-group {
    width: auto;
  }
}
.home-achievement-area .home-achievement-item > h3 {
  color: #5B59A8;
  line-height: 1.3;
}
.home-achievement-area .home-achievement-item .achievement-text span {
  display: inline-block;
  font-size: 1.5rem;
}
@media screen and (min-width: 992px) {
  .home-achievement-area .home-achievement-item .achievement-text span {
    font-size: 2.8rem;
  }
}

.home-ad-area div[class*=col] {
  max-width: 18.5rem;
}
.home-ad-area .ad-item {
  width: 100%;
  height: 0;
  padding-bottom: 37.2972972973%;
  margin: 0 auto;
  position: relative;
  border-radius: 0.5rem;
}
.home-ad-area .ad-item img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
}

.hover-scale:hover figure img {
  transform: scale(1.1) translate3d(0, 0, 0.5rem);
  -webkit-transform: scale(1.1) translate3d(0, 0, 0.5rem);
}

.media-list-wrapper .list-item > a {
  color: #666666;
}
.media-list-wrapper .list-media {
  position: relative;
  margin-bottom: 1rem;
}
.media-list-wrapper .list-media figure {
  position: relative;
  padding-bottom: 74.9271137026%;
  width: 100%;
  /*mask image*/
  mask-image: url("../img/list/list_frame.svg");
  -webkit-mask-image: url("../img/list/list_frame.svg");
  mask-position: center;
  -webkit-mask-position: center;
  mask-size: cover;
  -webkit-mask-size: cover;
  overflow: hidden;
}
.media-list-wrapper .list-media figure img {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
}
.media-list-wrapper .list-media .label-box {
  position: absolute;
  bottom: 0;
  left: 1rem;
  display: flex;
  font-size: 0.8rem;
  line-height: 1;
  font-weight: 600;
  color: #FFF;
  letter-spacing: 0.04rem;
}
.media-list-wrapper .list-media .label-box .list-label {
  padding: 0.4rem;
  border-radius: 0.5rem 0.5rem 0rem 0rem;
}
.media-list-wrapper .list-media .label-box .list-label.top {
  background: #F3CB18;
}
.media-list-wrapper .list-media .label-box .list-label.hot {
  background: #F57454;
}
.media-list-wrapper .list-media .label-box .list-label.service {
  background: #FFF;
  color: #6A8C51;
}
.media-list-wrapper .list-media .label-box .list-label + .list-label {
  margin-left: 0.5rem;
}
.media-list-wrapper .list-header {
  margin-bottom: 0.5rem;
}
.media-list-wrapper .list-header .list-title {
  color: #666666;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
}
.media-list-wrapper .info-meta {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 0.05rem dashed #666666;
}
.media-list-wrapper .info-meta .list-date {
  font-size: 0.85rem;
  line-height: 1;
  color: #F57454;
  font-size: 600;
}
.media-list-wrapper .info-meta .list-location {
  display: flex;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
  color: #F57454;
}
.media-list-wrapper .info-meta .list-location:before {
  content: "";
  display: block;
  background: url("../img/list/icon_location@2x.png") no-repeat;
  background-size: 0.65rem 0.85rem;
  width: 0.65rem;
  height: 0.85rem;
  margin-right: 0.25rem;
}

.table {
  overflow: hidden;
}
.table thead th {
  border: 0;
}

.form-control {
  font-size: 0.7rem;
  line-height: 1.2;
  padding: 0.4rem 0.5rem 0.3rem;
}

.form-select {
  font-size: 0.7rem;
  padding: 0.485rem 1rem 0.4rem 0.5rem;
}

.form-row {
  margin-left: -15px;
  margin-right: -15px;
}
@media screen and (min-width: 992px) {
  .form-row {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.form-area .form-input-line:first-of-type {
  border-top: 0;
}
.form-area .form-input-line {
  padding: 0.6rem 0.5rem;
  border-top: 1px dashed #E3EAEA;
}
@media screen and (min-width: 992px) {
  .form-area .form-input-line {
    padding: 0.6rem 0.5rem;
  }
}

.form-control {
  line-height: 1;
  box-shadow: none;
}

.select2-container.select2-container--default .select2-selection--single {
  border-radius: 0.25rem;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1;
  box-shadow: none;
  padding: 0;
  height: 1.95rem;
  border: 0;
  background: transparent;
}
.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #666666;
  line-height: 1;
  padding: 0.5rem 0.6rem 0.5rem;
  border: 0.05rem solid #AFCEBF;
  border-radius: 0.75rem;
  background-color: #DEEBE1;
}
.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered .select2-selection__placeholder {
  color: #666666;
}
.select2-container.select2-container--default .select2-selection--single .select2-selection__arrow {
  opacity: 0;
}
.select2-container.select2-container--default .select2-selection--single:focus {
  box-shadow: none;
  outline: none;
}
.select2-container.select2-container--default .select2-selection--single:focus .select2-selection__rendered {
  border-color: #AFCEBF;
}
.select2-container.select2-container--default .select2-dropdown {
  border: 0.05rem solid #AFCEBF;
  border-radius: 4px;
  position: relative;
  z-index: 9999;
  border-radius: 0.4rem;
  font-size: 0.95rem;
  color: #666666;
  font-weight: 700;
  margin-top: 0.25rem;
}
.select2-container.select2-container--default .select2-dropdown .select2-results .select2-results__options {
  margin: 0.25rem 0.25rem 0.25rem 0.5rem;
  padding-right: 0.25rem;
}
.select2-container.select2-container--default .select2-dropdown li.select2-results__option {
  padding: 0.6rem 0.5rem 0.6rem;
  border-radius: 0.5rem;
  line-height: 1;
}
.select2-container.select2-container--default .select2-dropdown li.select2-results__option.select2-results__option--highlighted {
  background-color: #DEEBE1;
  color: #666666;
}
.select2-container.select2-container--default .select2-dropdown li.select2-results__option + li.select2-results__option {
  margin-top: 0.25rem;
}
.select2-container.select2-container--default .select2-dropdown .select2-results__option--selected {
  background-color: transparent;
}
.select2-container.select2-container--default .select2-dropdown.dropdown-type2 {
  border: 0.05rem solid #F3CB18;
}
.select2-container.select2-container--default .select2-dropdown.dropdown-type2 li.select2-results__option.select2-results__option--highlighted {
  background-color: #F8E9B5;
}

.select-item.select-type2 .select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
  border: 0.05rem solid #F3CB18;
  background-color: #F8E9B5;
}
.select-item.select-type2 .select2-container.select2-container--default .select2-selection--single:focus .select2-selection__rendered {
  border-color: #F3CB18;
}

/*
=================================================================
(#m04idb) INDEX BANNER
=================================================================
*/
/*# sourceMappingURL=base.css.map */
