@charset "UTF-8";
/* CSS Document */
header {
  position: absolute;
  z-index: 10; }
  header h1 {
    font-family: 'Cormorant Garamond', serif;
    color: #fff;
    font-size: 25px;
    font-size: 2.5rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding: 3rem 0 0 4rem; }
    @media screen and (max-width: 575px) {
      header h1 {
        padding: 2rem 0 0 2rem; } }

.change-color header h1 {
  color: #1a1a1a; }

#gloval_nav {
  display: none;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 200;
  background-color: #fff; }
  #gloval_nav .nav-left #nav-bg {
    position: relative;
    background-size: cover;
    background-position: center;
    height: 100vh;
    transition: 0.3s; }
    #gloval_nav .nav-left #nav-bg.nav-bg1 {
      background-image: url(../img/nav-img-1.jpg); }
    #gloval_nav .nav-left #nav-bg.nav-bg2 {
      background-image: url(../img/nav-img-2.jpg); }
    #gloval_nav .nav-left #nav-bg.nav-bg3 {
      background-image: url(../img/nav-img-3.jpg); }
    #gloval_nav .nav-left #nav-bg.nav-bg4 {
      background-image: url(../img/nav-img-4.jpg); }
    #gloval_nav .nav-left #nav-bg.nav-bg5 {
      background-image: url(../img/nav-img-5.jpg); }
  #gloval_nav .nav-left ul {
    position: absolute;
    z-index: -1; }
    #gloval_nav .nav-left ul li img {
      width: 100%;
      height: 100vh;
      object-fit: cover; }
  #gloval_nav .nav-left h1 {
    font-family: 'Cormorant Garamond', serif;
    color: #fff;
    font-size: 25px;
    font-size: 2.5rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding: 3rem 0 0 4rem; }
  #gloval_nav .nav-right > div {
    position: relative;
    padding-top: 10rem;
    padding-left: 6rem;
    height: 100vh; }
    #gloval_nav .nav-right > div > ul {
      padding-right: 3em; }
      @media screen and (max-width: 1399px) {
        #gloval_nav .nav-right > div > ul {
          width: auto; } }
      @media screen and (max-width: 991px) {
        #gloval_nav .nav-right > div > ul {
          padding-right: 1.5em; } }
      #gloval_nav .nav-right > div > ul > li {
        margin-bottom: 4rem; }
        #gloval_nav .nav-right > div > ul > li:last-child {
          margin-bottom: 0; }
        #gloval_nav .nav-right > div > ul > li a {
          font-family: 'Cormorant Garamond', serif;
          font-size: 33px;
          font-size: 3.3rem;
          font-weight: 500;
          letter-spacing: 0.05em;
          color: #1a1a1a; }
          #gloval_nav .nav-right > div > ul > li a span {
            display: block;
            font-family: 'NotoSerifJP', serif;
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 1; }
          #gloval_nav .nav-right > div > ul > li a:hover {
            color: #8c8c8c; }
        #gloval_nav .nav-right > div > ul > li ul {
          display: flex;
          align-items: center;
          margin-bottom: 0; }
          #gloval_nav .nav-right > div > ul > li ul li {
            margin-right: 3rem; }
            #gloval_nav .nav-right > div > ul > li ul li a {
              transition: 0.3s;
              display: block; }
              #gloval_nav .nav-right > div > ul > li ul li a:hover {
                transform: scale(1.2); }
              #gloval_nav .nav-right > div > ul > li ul li a img {
                width: 27px; }
  #gloval_nav .nav-right .nav-footer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 3rem 0 3rem 4rem; }
    @media screen and (max-width: 1199px) {
      #gloval_nav .nav-right .nav-footer {
        padding-left: 4rem; } }
    @media screen and (max-width: 991px) {
      #gloval_nav .nav-right .nav-footer {
        padding-left: 3rem; } }
    @media screen and (max-width: 767px) {
      #gloval_nav .nav-right .nav-footer {
        padding: 2rem; } }
    #gloval_nav .nav-right .nav-footer > div h1 {
      font-family: 'Cormorant Garamond', serif;
      color: #1a1a1a;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: 500;
      letter-spacing: 0.05em; }
      @media screen and (max-width: 991px) {
        #gloval_nav .nav-right .nav-footer > div h1 {
          font-size: 22px;
          font-size: 2.2rem; } }
      @media screen and (max-width: 767px) {
        #gloval_nav .nav-right .nav-footer > div h1 {
          font-size: 20px;
          font-size: 2rem; } }
    #gloval_nav .nav-right .nav-footer > div p {
      font-family: 'NotoSerifJP', serif;
      font-size: 10px;
      font-size: 1rem;
      font-weight: 300;
      line-height: 1.7; }

#nav_button {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 300;
  transition: 0.5s; }
  #nav_button p {
    font-family: 'Cormorant Garamond', serif;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 400;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    writing-mode: vertical-rl;
    letter-spacing: 0.2em; }
    @media screen and (max-width: 767px) {
      #nav_button p {
        font-size: 14px;
        font-size: 1.4rem; } }
    #nav_button p.p-close {
      display: none; }

#nav_toggle {
  position: relative;
  top: 0;
  right: 0;
  width: 70px;
  height: 70px;
  background-image: url("../img/nav_toggle.jpg"); }
  @media screen and (max-width: 991px) {
    #nav_toggle {
      width: 60px;
      height: 60px; } }
  #nav_toggle > div {
    position: relative;
    width: 32px;
    height: 23px;
    margin: auto;
    top: 24px; }
    @media screen and (max-width: 991px) {
      #nav_toggle > div {
        top: 20px; } }
    #nav_toggle > div span {
      width: 100%;
      height: 1px;
      left: 0;
      display: block;
      background: #fff;
      position: absolute;
      -webkit-transition: top .5s ease, -webkit-transform .3s ease-in-out;
      transition: top .5s ease, -webkit-transform .3s ease-in-out;
      transition: transform .3s ease-in-out, top .5s ease;
      transition: transform .3s ease-in-out, top .5s ease, -webkit-transform .3s ease-in-out;
      /* #nav-toggle close */ }
      #nav_toggle > div span:nth-child(1) {
        top: 0; }
      #nav_toggle > div span:nth-child(2) {
        top: 10px; }
      #nav_toggle > div span:nth-child(3) {
        top: 20px; }

.change-color #nav_toggle span {
  background: #1a1a1a; }

.change-color #nav_button p {
  color: #1a1a1a; }

.open #nav_toggle > div {
  top: 20px; }
  @media screen and (max-width: 991px) {
    .open #nav_toggle > div {
      top: 15px; } }
  .open #nav_toggle > div span {
    background: #1a1a1a; }
.open #nav_toggle span:nth-child(1) {
  top: 15px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }
.open #nav_toggle span:nth-child(2) {
  top: 15px;
  width: 0;
  left: 50%; }
.open #nav_toggle span:nth-child(3) {
  top: 15px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.open #nav_button p {
  color: #1a1a1a; }
  .open #nav_button p.p-menu {
    display: none; }
  .open #nav_button p.p-close {
    display: block; }

footer {
  background: #1a1a1a;
  padding: 3rem 0; }
  footer .container > div {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      footer .container > div {
        flex-wrap: wrap;
        justify-content: center; } }
    @media screen and (max-width: 767px) {
      footer .container > div .footer-left {
        text-align: center;
        margin-bottom: 2rem; } }
    footer .container > div .footer-left h1 {
      font-family: 'Cormorant Garamond', serif;
      color: #fff;
      font-size: 22px;
      font-size: 2.2rem;
      letter-spacing: 0.04em;
      margin-bottom: 2rem; }
      @media screen and (max-width: 575px) {
        footer .container > div .footer-left h1 {
          font-size: 20px;
          font-size: 2rem; } }
    footer .container > div .footer-left p {
      font-family: 'NotoSerifJP', serif;
      color: #fff;
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.7;
      letter-spacing: 0.05em; }
    footer .container > div .footer-left a {
      color: #fff; }
    footer .container > div .footer-right {
      text-align: right; }
      @media screen and (max-width: 767px) {
        footer .container > div .footer-right {
          text-align: center; } }
      footer .container > div .footer-right ul {
        display: flex;
        justify-content: flex-end;
        margin-bottom: 2rem; }
        @media screen and (max-width: 767px) {
          footer .container > div .footer-right ul {
            justify-content: center; } }
        footer .container > div .footer-right ul li {
          padding-left: 2em; }
          @media screen and (max-width: 991px) {
            footer .container > div .footer-right ul li {
              padding-left: 1.2em; } }
          @media screen and (max-width: 767px) {
            footer .container > div .footer-right ul li {
              padding: 0 1em; } }
          @media screen and (max-width: 575px) {
            footer .container > div .footer-right ul li {
              padding: 0 0.5em; } }
          footer .container > div .footer-right ul li a {
            font-family: 'NotoSerifJP', serif;
            color: #fff;
            font-size: 18px;
            font-size: 1.8rem;
            transition: 0.3s; }
            footer .container > div .footer-right ul li a:hover {
              color: #8c8c8c; }
            @media screen and (max-width: 991px) {
              footer .container > div .footer-right ul li a {
                font-size: 17px;
                font-size: 1.7rem; } }
            @media screen and (max-width: 575px) {
              footer .container > div .footer-right ul li a {
                font-size: 14px;
                font-size: 1.4rem; } }
      footer .container > div .footer-right > a {
        font-family: 'NotoSerifJP', serif;
        color: #fff;
        font-size: 18px;
        font-size: 1.8rem;
        border: solid 1px #fff;
        padding: 0.5rem 2rem;
        display: inline-block;
        text-align: right;
        transition: 0.3s; }
        footer .container > div .footer-right > a:hover {
          background-color: #fff;
          color: #333; }
        @media screen and (max-width: 991px) {
          footer .container > div .footer-right > a {
            font-size: 17px;
            font-size: 1.7rem; } }
  footer .footer-sns {
    display: flex;
    align-items: center;
    margin-bottom: 0; }
    @media screen and (max-width: 767px) {
      footer .footer-sns {
        justify-content: center;
        margin: 2rem; } }
    footer .footer-sns li {
      margin-right: 3rem; }
      footer .footer-sns li:last-child {
        margin-right: 0; }
      footer .footer-sns li a {
        transition: 0.3s;
        display: block; }
        footer .footer-sns li a img {
          width: 22px; }
        footer .footer-sns li a:hover {
          transform: scale(1.2); }
  footer .copyright {
    font-family: 'Cormorant Garamond', serif;
    color: #fff;
    font-size: 11px;
    font-size: 1.1rem; }
    @media screen and (max-width: 767px) {
      footer .copyright {
        text-align: center; } }

.breadcrumbs {
  display: flex;
  padding: 2rem 0;
  margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    .breadcrumbs {
      flex-wrap: wrap; } }
  .breadcrumbs li {
    font-family: 'NotoSerifJP', serif;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 400;
    margin-right: 1em;
    letter-spacing: 0.1em;
    color: #CBCBCB; }
    .breadcrumbs li::after {
      content: "―";
      padding-left: 1em; }
    .breadcrumbs li:last-child {
      margin-right: 0; }
      .breadcrumbs li:last-child::after {
        content: none; }
    .breadcrumbs li a {
      color: #cbcbcb;
      transition: 0.3s; }
      .breadcrumbs li a:hover {
        color: #fff; }

article.isActive .breadcrumbs li {
  color: #333; }
article.isActive .breadcrumbs a {
  color: #333; }
  article.isActive .breadcrumbs a:hover {
    color: #1a1a1a; }

.inner {
  width: 87%;
  margin: 0 auto; }
  @media screen and (max-width: 991px) {
    .inner {
      width: 100%; } }

.inner2 {
  width: 65%;
  margin: 0 auto; }
  @media screen and (max-width: 1199px) {
    .inner2 {
      width: 75%; } }
  @media screen and (max-width: 991px) {
    .inner2 {
      width: 85%; } }
  @media screen and (max-width: 767px) {
    .inner2 {
      width: 95%; } }

#top-img {
  height: 365px;
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center; }
  #top-img h1 {
    font-family: 'Cormorant Garamond', serif;
    color: #fff;
    font-size: 75px;
    font-size: 7.5rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-align: center; }
@inlude sm {
  #top-img h1 {
    font-size: 70px;
    font-size: 7rem; } }
    @media screen and (max-width: 575px) {
      #top-img h1 {
        font-size: 50px;
        font-size: 5rem; } }
    #top-img h1 span {
      display: block;
      font-family: 'NotoSerifJP', serif;
      color: #808080;
      font-size: 19px;
      font-size: 1.9rem;
      font-weight: 400; }

/* トップへ戻るボタン */
#page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 77%;
  z-index: 5; }
  #page-top a {
    text-decoration: none;
    color: #fff;
    width: 58px;
    height: 58px;
    background-image: url("../img/page-top.svg");
    display: block;
    transition: 0.5s; }
    @media screen and (max-width: 767px) {
      #page-top a {
        width: 50px;
        height: 50px; } }
    #page-top a:hover {
      background-image: url("../img/page-top-over.svg"); }

/* トップへ戻るボタン */
