body {
  background-color: #ddeddf;
}

.text-30 {
  font-size: 30px;
}

.text-25 {
  font-size: 25px;
}

.text-20 {
  font-size: 20px;
}

.text-18 {
  font-size: 18px;
}

.text-16 {
  font-size: 16px;
}

.text-14 {
  font-size: 14px;
}

.text-link:hover {
  color: #74c1cb;
  text-decoration: none;
}

.inline-link {
  padding: 0 4px;
  margin: 0 1px;
  background-color: #67bcc8;
  color: #fff;
  text-decoration: none;
}

.inline-link:hover {
  background-color: #67bcc87f;
}

.text-link2 {
  color: #67bcc8;
}

.text-link2:hover {
  color: #67bcc8;
  text-decoration: underline;
}

.text-link-color:hover {
  padding: 0 4px;
  margin: 0 1px;
  background-color: #67bcc8;
  color: #fff;
  text-decoration: none;
}

.text-link-color {
  padding: 0 4px;
  margin: 0 1px;
  color: #67bcc8;
  text-decoration: none;
}

.text-link-color:hover {
  padding: 0 4px;
  margin: 0 1px;
  background-color: #67bcc8;
  color: #fff;
  text-decoration: none;
}

.text-narrow-90 {
  transform: scale(0.9, 1);
  transform-origin: top left;
  width: 111.1%;
}

.text-narrow-80 {
  transform: scale(0.8, 1);
  transform-origin: top left;
  width: 125%;
}

.svg-map a:hover {
  opacity: 0.5;
}

.top-image {
  position: relative;
  top: 0px;
  width: 1920px;
  max-width: 100%;
  height: 1024px;
  background: url("../images/main-image3.jpg") no-repeat center center;
  background-size: cover;
}

.header-title {
  font-size: 20px;
}

.mobile-menu-height {
  padding: 0 0 40px 0;
  max-height: calc(100vh - 80px);
  overflow-y: auto;
  overscroll-behavior-y: contain;
}

@supports (-webkit-touch-callout: none) {
  .mobile-menu-height {
    max-height: -webkit-fill-available;
  }
}

.contents-width {
  width: 1440px;
  max-width: calc(100% - 2rem);
}

.contents-header {
  height: 80px;
}

.information-margin {
  margin-top: -80px;
}

.information-padding {
  padding-bottom: 48px;
}

.contents-header-image {
  height: 25px;
}

.information-font {
  font-size: 18px;
}

.infomation-contens-container {
  width: 70%;
}

.infomation-contens-size {
  width: 70%;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.infomation-contens-gap {
  gap: 0.5rem;
}

.infomation-border-size {
  width: 90%;
}

.informatin-date {
  width: 85px;
}

.information-label-new {
  background: #ffffff;
  /* border-radius: 2px; */
  color: #67bcc8;
  font-size: 12px;
  /* margin: 0 5px 0 0; */
  padding: 4px 4px;
  position: relative;
  line-height: 12px;
}

.label-link {
  border: 1px solid #fff;
  background-color: #67bcc8;
  color: #fff;
  font-size: 14px;
  /* margin: 0 5px 0 0; */
  padding: 5px 5px;
  position: relative;
  line-height: 14px;
}

.label-link:hover {
  background-color: #ffffff7f;
}

.social-link-margin {
  margin-top: 25px;
}

.social-link-image {
  height: 25px;
  margin-top: 25px;
  margin-bottom: 25px;
}

.social-link-icon-image {
  width: 280px;
  height: 80px;
}

.social-link-icon {
  border: 1px solid transparent;
  border-radius: 100vh;
  padding: 15px 55px;
  padding: 0;
  cursor: pointer;
}

.social-link-icon:hover {
  border: 1px solid #74c1cb;
}

.service-menu-margin {
  margin-top: 75px;
}

.service-menu-image {
  height: 25px;
}

.service-menu-padding {
  position: absolute;
  top: -30px;
  width: 390px;
  height: 60px;
}

.service-menu-size {
  top: 0px;
  width: 100%;
  max-width: 1920px;
  height: 390px;
  padding-left: 64px;
  padding-right: 64px;
  gap: 75px;
}

.service-menu-bg {
  top: 0px;
  width: 1920px;
  max-width: 100%;
  height: 390px;
  background: url("../images/service-menu-bg.jpg") no-repeat center center;
  background-size: cover;
}

.service-menu-button {
  background-color: #67bcc8;
  border-color: #fff;
  border-width: 4px;
  width: 240px;
  min-width: 240px;
  height: 240px;
  font-size: 25px;
  z-index: 1;
}

.service-menu-button-z {
  z-index: 2;
}

.service-menu-text {
  bottom: 35px;
}

.service-menu-icon {
  height: 100px;
  top: 45px;
  margin: auto;
}

.service-menu-icon2 {
  height: 150px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.download-link-adjust {
  top: 8px;
}

.download-link-margin {
  width: 390px;
  height: 60px;
  padding-left: 48px;
  padding-right: 48px;
  margin-bottom: -30px;
}

.download-link-margin2 {
  padding-top: 145px;
  padding-bottom: 90px;
  gap: 100px;
}

.download-link-image {
  position: relative;
  top: 3px;
  height: 60px;
}

.download-link-size {
  width: 100%;
  max-width: 1920px;
  font-size: 22px;
}

.link-poster {
  width: 475px;
  height: 671px;
}

.link-banner-height {
  /*height: 725px;*/
  height: auto;
  gap: 32px;
}

.link-gap {
  gap: 100px;
}

.link-banner {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 476px;
  height: 150px;
  /*background-color: #ddeddf;*/
  background-color: transparent;
}

.link-text-gap {
  gap: 32px;
}

.poster-downlad-border {
  border: 6px solid #f2f2f2bf;
}

.poster-download-svg {
  width: 106px;
  height: 22px;
  margin: -2px 40px 4px 40px;
}

.poster-download-button {
  width: 210px;
  height: 75px;
  background-color: #0000007f;
  color: #1e3743;
  font-size: 25px;
}

.poster-download-button-innner {
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  margin: 5px;
  background-color: #ffffffbf;
}

.poster-download-button-innner img {
  padding: 0 18px 0 10px;
}

.secretariat {
  gap: 80px;
}

.secretariat-size {
  padding: 96px 16px;
}

.footer-size {
  padding: 32px 16px;
}

.mobile-menu {
  z-index: 5;
}

.nav-menu-mobile {
  display: flex;
  visibility: hidden;
}

.nav-menu-item {
  position: relative;
  cursor: pointer;
}

.nav-menu-item:hover {
  background-color: #04374ab7;
}

.nav-menu-item:hover .nav-menu-item-contents {
  opacity: 1;
  visibility: visible;
}

.nav-menu-item-mobile {
  position: relative;
}

.nav-menu-item-mobile:hover {
  background-color: #ffffff3f;
}

.nav-menu-item-mobile-disabled {
  cursor: default;
  opacity: 0.5;
}

.nav-menu-item-mobile-disabled:hover {
  background-color: transparent;
}

.nav-menu-item-contents {
  opacity: 0;
  transition: opacity 0.2s 0s ease-in;
  visibility: hidden;
  padding-bottom: 8px;
  text-align: center;
}

.nav-menu-item-contents-item {
  position: relative;
}

.nav-menu-item-contents-item:hover {
  background-color: #ffffff7f;
}

.nav-menu-item-contents-item-disabled {
  cursor: default;
  opacity: 0.5;
}

.nav-menu-item-contents-item-disabled:hover {
  background-color: transparent;
}

.service-menu-nav {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 225px;
  padding-top: 4px;
  padding-bottom: 12px;
  background-color: #04374abf;
  box-shadow: 0px 0px 8px 2px #0000004f;
  z-index: 4;
}

.service-menu-nav-item {
  position: relative;
  padding-top: 7px;
  padding-bottom: 7px;
  font-size: 15px;
}

.service-menu-nav-item:hover {
  background-color: #ffffff3f;
}

.service-menu-nav-item-disabled {
  cursor: default;
  opacity: 0.5;
}

.service-menu-nav-item-disabled:hover {
  background-color: transparent;
}

@media screen and (max-width: 1620px) {
  .header-title {
    font-size: 16px;
  }
}

@media screen and (max-width: 1575px) {
  .header-menu-home {
    display: none;
  }

  .service-menu-size {
    gap: 25px;
  }
}

@media screen and (max-width: 1450px) {
  .text-30 {
    font-size: 28px;
  }

  .text-25 {
    font-size: 22px;
  }

  .text-20 {
    font-size: 18px;
  }

  .text-18 {
    font-size: 16px;
  }

  .nav-menu {
    display: none;
  }

  .nav-menu-mobile {
    width: 100%;
    height: 40px;
    visibility: visible;
  }

  .header-title {
    height: 40px;
  }
}

@media screen and (max-width: 1366px) {
  .contents-width {
    width: 100%;
    max-width: calc(100% - 24px);
  }

  .contents-width-mobile {
    width: 375px;
    max-width: 100%;
  }

  .text-30 {
    font-size: 26px;
  }

  .text-25 {
    font-size: 20px;
  }

  .text-20 {
    font-size: 16px;
  }

  .text-18 {
    font-size: 14px;
  }

  .text-16 {
    font-size: 14px;
  }

  .nav-menu {
    display: none;
  }

  .nav-menu-mobile {
    width: 100%;
    height: 40px;
    visibility: visible;
  }

  .top-image {
    position: relative;
    top: 0px;
    width: 562.5px;
    max-width: 100%;
    height: 300px;
    background: url("../images/main-image-mobile3.jpg") no-repeat center center;
    background-size: cover;
  }

  .header-title {
    font-size: 12px;
  }

  .information-font {
    font-size: 12px;
  }

  .information-contents-font {
    font-size: 14px;
  }

  .information-margin {
    margin-top: -40px;
  }

  .information-padding {
    padding-bottom: 25px;
  }

  .contents-header {
    height: 40px;
  }

  .contents-header-image {
    height: 12.5px;
  }

  .infomation-contens-container {
    width: auto;
    padding: 0 35px 0 35px;
  }

  .infomation-contens-size {
    width: 100%;
    padding: 0.5rem 1rem;
  }

  .infomation-contens-gap {
    gap: 0.5rem;
  }

  .infomation-border-size {
    width: 100%;
  }

  .informatin-date {
    flex-shrink: 0;
    width: 57px;
  }

  .label-link {
    /* border-radius: 2px; */
    font-size: 12px;
    /* margin: 0 5px 0 0; */
    padding: 5px 5px;
    position: relative;
    line-height: 12px;
  }

  .social-link-margin {
    margin-top: 15px;
  }

  .social-link-image {
    height: 12.5px;
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .social-link-icon-image {
    width: 140px;
    height: 40px;
  }

  .social-link-icon {
    padding: 7.5px 22.5px;
    cursor: pointer;
  }

  .service-menu-margin {
    margin-top: 35px;
  }

  .service-menu-image {
    height: 12.5px;
  }

  .service-menu-padding {
    top: -15px;
    width: 195px;
    height: 30px;
  }

  .service-menu-size {
    top: 0px;
    width: 375px;
    max-width: 100%;
    height: 495px;
    padding-left: 45px;
    padding-right: 45px;
    flex-wrap: wrap;
    gap: 0px;
    justify-content: space-between;
  }

  .service-menu-bg {
    top: 0px;
    width: 100%;
    max-width: 100%;
    height: 495px;
    background: url("../images/service-menu-bg-mobile.jpg") no-repeat center
      center;
    background-size: cover;
  }

  .service-menu-button {
    width: 120px;
    min-width: 120px;
    height: 120px;
    border-width: 2px;
    font-size: 12.5px;
  }

  .service-menu-text {
    bottom: 17.5px;
  }

  .service-menu-icon {
    height: 50px;
    top: 22.5px;
  }

  .service-menu-nav {
    width: 200px;
    padding-top: 2px;
    padding-bottom: 6px;
  }

  .service-menu-nav-item {
    font-size: 14px;
  }

  .download-link-adjust {
    top: 23px;
  }

  .download-link-margin {
    width: 195px;
    height: 30px;
    padding-left: 24px;
    padding-right: 24px;
    margin-bottom: -15px;
  }

  .download-link-margin2 {
    padding-top: 72.5px;
    padding-bottom: 45px;
    gap: 50px;
  }

  .download-link-image {
    position: relative;
    top: 1.5px;
    height: 30px;
  }

  .download-link-size {
    width: 100%;
    max-width: clac(100% - 2rem);
    padding-bottom: 45px;
    font-size: 11px;
  }

  .download-link-flex {
    flex-wrap: nowrap;
    flex-direction: column;
  }

  .link-banner-height {
    height: auto;
    gap: 27px;
  }

  .link-gap {
    gap: 50px;
  }

  .link-poster {
    width: 237.5px;
    height: 335.5px;
  }

  .link-banner {
    width: 238.2px;
    height: 75px;
  }

  .link-text-gap {
    gap: 16px;
  }

  .poster-downlad-border {
    border: 3px solid #f2f2f2bf;
  }

  .poster-download-svg {
    width: 53px;
    height: 11px;
    margin: -1px 20px 2px 20px;
  }

  .poster-download-button {
    width: 105px;
    height: 32.5px;
    background-color: #0000007f;
    color: #1e3743;
    font-size: 14px;
  }

  .poster-download-button-innner {
    width: calc(100% - 5px);
    height: calc(100% - 5px);
    margin: 2.5px;
    background-color: #ffffffbf;
  }

  .poster-download-button-innner img {
    padding: 0 9px 0 5px;
    height: 20px;
  }

  .secretariat {
    flex-direction: column;
    gap: 40px;
  }

  .secretariat-size {
    padding: 48px 8px;
    font-size: 12px;
  }

  .secretariat-font-size {
    padding-top: 2px;
    font-size: 15px !important;
  }

  .footer-size {
    width: 100%;
    padding: 8px 8px;
    font-size: 12px;
  }
}

/*0.711*/
/*
@media screen and (max-width: 1366px) {
  .top-image {
    width: 1366px;
    height: 728px;
  }

  .contents-width {
    width: 1024px;
  }

  .contents-header {
    height: 56px;
  }

  .information-margin {
    margin-top: -56px;
  }

  .contents-header-image {
    height: 18px;
  }
}
*/

/*0.533*/
/*
@media screen and (max-width: 1024px) {
  .top-image {
    width: 1024px;
    height: 546px;
  }

  .contents-width {
    width: 768px;
  }

  .contents-header {
    height: 42px;
  }

  .information-margin {
    margin-top: -42px;
  }

  .contents-header-image {
    height: 13px;
  }

  .secretariat {
    flex-direction: column;
  }
}
*/

/*0.4*/
/*
@media screen and (max-width: 768px) {
  .top-image {
    width: 1024px;
    height: 409px;
  }

  .contents-width {
    width: 576px;
  }

  .contents-header {
    height: 32px;
  }

  .information-margin {
    margin-top: -32px;
  }

  .contents-header-image {
    height: 10px;
  }
}
*/

/*0.333*/
/*
@media screen and (max-width: 640px) {
  .top-image {
    width: 640px;
    height: 341px;
  }

  .contents-width {
    width: 432px;
  }

  .contents-header {
    height: 26px;
  }

  .information-margin {
    margin-top: -26px;
  }

  .contents-header-image {
    height: 8px;
  }
}
*/

/* 0.25 */
/*
@media screen and (max-width: 480px) {
  .top-image {
    width: 480px;
    height: 256px;
  }

  .contents-width {
    width: 360px;
  }

  .contents-header {
    height: 20px;
  }

  .information-margin {
    margin-top: -20px;
  }

  .contents-header-image {
    height: 6px;
  }
}
*/

.border-white {
  width: 100%;
  height: 1px;
  background: linear-gradient(to right, transparent, white, transparent);
}

.border-blue {
  width: 100%;
  height: 1px;
  background: linear-gradient(to right, transparent, #1e3743, transparent);
}

.label-under-construction:after {
  background: rgba(4, 55, 74, 0.75);
  /* border-radius: 2px; */
  color: #fff;
  content: "準備中";
  float: right;
  font-size: 12px;
  /* margin: 0 5px 0 0; */
  padding: 4px 4px;
  position: absolute;
  top: 0px;
  right: 0;
  /* height: 18px; */
  line-height: 10px;
}

.label-new:after {
  background: rgba(103, 188, 200, 0.75);
  /* border-radius: 2px; */
  color: #fff;
  content: "NEW";
  float: right;
  font-size: 12px;
  /* margin: 0 5px 0 0; */
  padding: 4px 4px;
  position: absolute;
  top: 0;
  right: 0;
  /* height: 18px; */
  line-height: 10px;
}

.label-end:after {
  background: #aaaaaabf;
  /* border-radius: 2px; */
  color: #fff;
  content: "NEW";
  float: right;
  font-size: 12px;
  /* margin: 0 5px 0 0; */
  padding: 4px 4px;
  position: absolute;
  top: 0;
  right: 0;
  /* height: 18px; */
  line-height: 10px;
}

.nav-menu-item .label-under-construction:after,
.nav-menu-item .label-new:after,
.nav-menu-item .label-end:after,
.service-menu-nav .label-under-construction:after,
.service-menu-nav .label-new:after,
.service-menu-nav .label-end:after {
  top: -8px;
}

.social-link-icon.label-under-construction:after {
  top: -10px;
}

.service-menu-button.label-under-construction:after,
.service-menu-button.label-new:after,
.service-menu-button.label-end:after {
  border-radius: 8px;
}

.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.2s ease;
}
.fade-enter,
.fade-leave-to {
  opacity: 0;
}

.scrollAnime {
  transition: transform 0.5s ease, opacity 0.5s ease;
  transform: translateY(100px);
  opacity: 0;
}
.scrollAnime.active {
  transform: translateY(0);
  opacity: 1;
}

.scrollAnime-delay-1 {
  transition-delay: 100ms;
}

.scrollAnime-delay-2 {
  transition-delay: 200ms;
}

.scrollAnime-delay-3 {
  transition-delay: 300ms;
}

.scrollAnime-delay-4 {
  transition-delay: 400ms;
}

.scrollAnime-delay-5 {
  transition-delay: 500ms;
}
