@charset "UTF-8";
@font-face {
  font-family: "chonburiregular";
  src: url("/assets/fonts/Chonburi/chonburi-regular-webfont.woff2") format("woff2"), url("/assets/fonts/Chonburi/chonburi-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
/**---------------------------------------------
 * global nav PC版
**-----------------------------------------------*/
#desktop__menu {
  display: none;
}

@media screen and (min-width: 769px) {
  #desktop__menu {
    display: block;
    position: sticky;
    left: 0;
    right: 0;
    top: 0;
    height: 80px;
    background-color: #0e335d;
    z-index: 50;
    box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.2);
    /* Ensures it stays on top */
  }
  .header-line .header-line-inner {
    margin: 0 auto;
  }
  .header-line .header-line-inner h1, .header-line .header-line-inner p {
    letter-spacing: 0;
    line-height: 1.6;
    font-size: 10px;
    height: 16px;
    color: hsl(221, 14%, 100%);
  }
  .mega-menu {
    font-size: 10px;
    position: relative;
    margin: 0 auto;
    z-index: 1000;
    display: flex;
    justify-content: space-between;
  }
  .mega-menu .gh-logo {
    width: 150px;
  }
  .mega-menu .gh-phone {
    width: 150px;
  }
  .mega-menu #gh-facilities,
  .mega-menu #gh-facilities-public {
    gap: 8px;
  }
  .mega-menu div.gh-left, .mega-menu div.gh-right {
    position: static;
  }
  .mega-menu div.gh-left > ul, .mega-menu div.gh-right > ul {
    display: flex;
    list-style: none;
    height: 64px;
  }
  .mega-menu div.gh-left > ul > li, .mega-menu div.gh-right > ul > li {
    position: static;
    height: 64px;
  }
  .mega-menu div.gh-left > ul > li:hover .submenu, .mega-menu div.gh-right > ul > li:hover .submenu {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
  }
  .mega-menu div.gh-left > ul > li > a, .mega-menu div.gh-left > ul > li > span, .mega-menu div.gh-right > ul > li > a, .mega-menu div.gh-right > ul > li > span {
    cursor: pointer;
    padding: 1em;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    text-decoration: none;
    /* リンクの下線を削除 */
    color: hsl(221, 14%, 100%);
    /* 親要素のテキストカラーを継承 */
    position: relative;
  }
  .mega-menu div.gh-left > ul > li > a[data-gh]:after, .mega-menu div.gh-left > ul > li > span[data-gh]:after, .mega-menu div.gh-right > ul > li > a[data-gh]:after, .mega-menu div.gh-right > ul > li > span[data-gh]:after {
    content: "";
    position: absolute;
    bottom: 1em;
    left: 0;
    right: 0;
    margin: auto;
    width: 7px;
    height: 4px;
    background: url("../../assets/image/arrowdown.svg") no-repeat center center;
  }
  .mega-menu div.gh-left > ul > li:hover, .mega-menu div.gh-right > ul > li:hover {
    background-color: rgb(20.6728971963, 75.308411215, 137.3271028037);
    animation: textColor 0.6s ease-in-out infinite alternate;
    --bulma-hero-h: var(--bulma-light-h);
    --bulma-hero-s: var(--bulma-light-s);
    --bulma-hero-background-l: var(--bulma-light-l);
    --bulma-hero-color-l: var(--bulma-light-invert-l);
  }
  .mega-menu div.gh-left > ul > li:hover > [data-gh]:after, .mega-menu div.gh-right > ul > li:hover > [data-gh]:after {
    animation: floatArrow 1s ease-in-out infinite alternate;
  }
  .mega-menu div.gh-left > ul > li .submenu, .mega-menu div.gh-right > ul > li .submenu {
    position: absolute;
    left: 0;
    width: 100%;
    height: 480px;
    top: 100%;
    background: #fcfcfc;
    display: block;
    visibility: hidden;
    opacity: 0;
    border-radius: 0 0 10px 10px;
    transition: visibility 0s, opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
    box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.2);
    box-shadow: 5px 5px 5px -5px rgba(0, 0, 0, 0.2);
    transform: translateY(-10px);
  }
  .mega-menu div.gh-left > ul > li .submenu a, .mega-menu div.gh-right > ul > li .submenu a {
    color: hsl(221, 14%, 29%);
  }
  .mega-menu div.gh-left > ul > li .submenu ul > li, .mega-menu div.gh-right > ul > li .submenu ul > li {
    border-bottom: 1px solid #535353;
    line-height: 3.6;
  }
  .mega-menu div.gh-left > ul > li .submenu ul > li:hover, .mega-menu div.gh-right > ul > li .submenu ul > li:hover {
    background-color: rgb(253.1769230769, 246.4923076923, 241.0230769231);
  }
  .mega-menu div.gh-left > ul > li .submenu ul > li a, .mega-menu div.gh-right > ul > li .submenu ul > li a {
    display: block;
    height: 100%;
    color: hsl(221, 14%, 29%);
  }
  .mega-menu div.gh-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    height: 64px;
  }
  @keyframes floatArrow {
    0% {
      transform: translateY(0);
    }
    100% {
      transform: translateY(-5px);
    }
  }
  @keyframes textColor {
    0% {
      color: inherit;
    }
    100% {
      color: var(__bulma-link-text);
    }
  }
  .submenu a img {
    transition: 0.3s;
  }
  .submenu a:hover img {
    filter: brightness(1.05);
  }
  .header-line .header-line-inner {
    width: 800px;
  }
  .mega-menu {
    width: 800px;
    font-size: 10px;
  }
  .mega-menu .gh-logo {
    width: 150px;
  }
  .mega-menu .gh-phone {
    width: 150px;
  }
  .mega-menu #gh-facilities,
  .mega-menu #gh-facilities-public {
    gap: 8px;
  }
  #footer-sitemap {
    font-size: 12px;
  }
}
@media screen and (min-width: 1024px) {
  .header-line .header-line-inner {
    width: 940px;
  }
  .mega-menu {
    width: 940px;
    font-size: 10px;
  }
  .mega-menu .gh-logo {
    width: 150px;
  }
  .mega-menu .gh-phone {
    width: 150px;
  }
  .mega-menu #gh-facilities,
  .mega-menu #gh-facilities-public {
    gap: 10px;
  }
  #footer-sitemap {
    font-size: 12px;
  }
}
@media (min-width: 1024px) {
  .header-line .header-line-inner {
    width: 1004px;
  }
  .mega-menu {
    width: 1004px;
    font-size: 13px;
  }
  .mega-menu .gh-logo {
    width: 150px;
  }
  .mega-menu .gh-phone {
    width: 150px;
  }
  .mega-menu #gh-facilities,
  .mega-menu #gh-facilities-public {
    gap: 10px;
  }
  #footer-sitemap {
    font-size: 14px;
  }
}
@media (min-width: 1216px) {
  .header-line .header-line-inner {
    width: 1216px;
  }
  .mega-menu {
    width: 1216px;
    font-size: 16px;
  }
  .mega-menu .gh-logo {
    width: 150px;
  }
  .mega-menu .gh-phone {
    width: 150px;
  }
  .mega-menu #gh-facilities,
  .mega-menu #gh-facilities-public {
    gap: 13px;
  }
  #footer-sitemap {
    font-size: 16px;
  }
}
/**---------------------------------------------
 * global nav PC版
**-----------------------------------------------*/
#desktop__fixed {
  display: none;
}

@media screen and (min-width: 769px) {
  #desktop__fixed {
    display: flex;
    flex-direction: column;
    position: fixed;
    right: 0;
    min-width: 100px;
    bottom: 120px;
    font-size: 12px;
    z-index: 38;
  }
  #desktop__fixed a.gs-button .gs_button_container {
    text-align: center;
    padding: 3em 1em;
    box-sizing: border-box;
  }
  #desktop__fixed a.gs-button.is-primary > .gs_button_container {
    background-color: #0e335d;
    color: #fff;
    border-top: 1px solid #0e335d;
    border-left: 1px solid #0e335d;
    border-right: 1px solid #0e335d;
    border-bottom: 1px solid #0e335d;
  }
  #desktop__fixed a.gs-button.is-primary > .gs_button_container p.gs-icon {
    animation: floatIcon 1s ease-in-out infinite alternate;
  }
  #desktop__fixed a.gs-button.is-primary:hover > .gs_button_container {
    animation: background-primary 1s ease-in-out infinite alternate;
  }
  #desktop__fixed a.gs-button.is-success > .gs_button_container {
    background-color: #fff;
    color: #2450a3;
    border-left: 1px solid #2450a3;
    border-right: 1px solid #2450a3;
    border-bottom: 1px solid #2450a3;
  }
  #desktop__fixed a.gs-button.is-success > .gs_button_container p.gs-icon {
    animation: floatIcon 1s ease-in-out infinite alternate;
  }
  #desktop__fixed a.gs-button.is-success:hover > .gs_button_container {
    animation: background-success 1s ease-in-out infinite alternate;
  }
  @keyframes floatIcon {
    0% {
      transform: translateY(0);
    }
    100% {
      transform: translateY(-3px);
    }
  }
  @keyframes background-primary {
    0% {
      background-color: #0e335d;
      color: #fff;
    }
    100% {
      background-color: rgb(27.3457943925, 99.6168224299, 181.6542056075);
      color: #fff;
    }
  }
  @keyframes background-success {
    0% {
      background-color: #fff;
      color: #2450a3;
    }
    100% {
      background-color: rgb(209.1306532663, 221.5125628141, 244.8693467337);
      color: #2450a3;
    }
  }
  @keyframes shakeIcon {
    0% {
      transform: translateX(0);
    }
    50% {
      transform: translateX(-3px);
    }
    100% {
      transform: translateX(3px);
    }
  }
}
/*# sourceMappingURL=style-desktop-menu.css.map */
