@charset "UTF-8";
/* CSS Document */
header {background: transparent;transition: 0.4s;}
body.scrolled header {background: #fff;transition: 0.4s;}
#billboard .slider-top-01 {overflow: hidden;}
#billboard .slider-top-01 ul li.slide01 .txt01 {width: 60%;max-width: 900px;position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%,-50%);opacity: 0;transition: opacity 1.2s ease-out 0.2s;}
#billboard .slider-top-01 ul li.slide02 .txt01 {width: 28%;max-width: 440px;position: absolute;top: 50%;right: 8%;z-index: 10;transform: translateY(-50%);opacity: 0;transition: opacity 2.0s ease-out 3.4s;filter: brightness(0) invert(1);}
#billboard .slider-top-01 ul li.slide02 .img01 {position: absolute;top: 0;left: 0;right: 0;z-index: 1;transition: 4s ease-in-out 0s;transform: translateY(-40%);}
#billboard .slider-top-01 ul li.slide03 figure img {transform: scale(1.2);transition: 4s ease-out 0s;}
#billboard .slider-top-01 ul li.slide04 figure img {transform: scale(1.2);transition: 4s ease-out 0s;}
#billboard .slider-top-01 ul li.slide04 .txt01 {width: 25%;max-width: 400px;position: absolute;top: 10%;left: 10%;z-index: 10;opacity: 0;transition: opacity 3.0s ease-out 2.0s;filter: brightness(0) invert(1);}
#billboard .slider-top-01 ul li.slide01.swiper-slide-active .txt01 {opacity: 1;}
#billboard .slider-top-01 ul li.slide02.swiper-slide-active .txt01 {opacity: 1;}
#billboard .slider-top-01 ul li.slide02.swiper-slide-prev .img01,
#billboard .slider-top-01 ul li.slide02.swiper-slide-active .img01 {transform: translateY(0);}
#billboard .slider-top-01 ul li.slide03.swiper-slide-prev figure img,
#billboard .slider-top-01 ul li.slide03.swiper-slide-active figure img {transform: scale(1);}
#billboard .slider-top-01 ul li.slide04.swiper-slide-active .txt01 {opacity: 1;}
#billboard .slider-top-01 ul li.slide04.swiper-slide-prev figure img,
#billboard .slider-top-01 ul li.slide04.swiper-slide-active figure img {transform: scale(1);}
#billboard .usp {letter-spacing: 0.1em;text-align: center;padding: 0 1em;position: relative;z-index: 1;}
#billboard .usp::after {display: block;content: '';width: 100%;height: 600%;background: url(../img/index/index_bg10_pc.webp) no-repeat center / cover;position: absolute;top: 0;left: 0;z-index: -1;pointer-events: none;}
#billboard .usp .box01 {color: var(--beige-01);padding: 2em 0 0;}
#billboard .usp .box01 p {font-size: 125%;}
#billboard .usp .box01 ul {display: flex;flex-wrap: wrap;justify-content: center;align-items: center;margin: 0 -0.5em;}
#billboard .usp .box01 ul li {font-size: 150%;text-align: left;letter-spacing: 0.1em;padding: 0 2em;position: relative;}
#billboard .usp .box01 ul li + li::before {display: block;content: '';width: 1px;height: 3em;background: var(--blue-02);position: absolute;top: 50%;left: 0;z-index: 1;transform: translateY(-50%);}
#billboard .usp .box01 ul li small {font-size: 75%;}
#billboard .usp .box01 ul li small.line {display: block;}
#billboard .usp .box01 ul li .sp01 {display: inline-block;font-size: 125%;line-height: 1.2;position: relative;}
#billboard .usp .box01 ul li .sp02 {color: var(--gold-01);font-size: 175%;line-height: 1.2;}
#billboard .usp .box01 ul li sup {display: inline-block;font-size: 10px;letter-spacing: 0;min-width: 2em;}
#billboard .usp .box01 ul li.bus small {display: block;text-align: left;}
#billboard .usp .box01 ul li.bus small span {color: var(--gold-01);font-size: 150%;}
#billboard .usp .box01 ul li.bus .sp01 .txt01 {display: inline-block;font-size: 60%;letter-spacing: 0.1em;/*position: absolute;top: -1.5em;left: 0;z-index: 1;*/}
#billboard .usp .box02 {display: flex;flex-wrap: wrap;justify-content: center;align-items: center;padding: 0 0 2em;margin: 0 auto;max-width: 1400px;}
#billboard .usp .box02::before {display: block;content: '';width: 100%;height: 1px;margin: 1.5em 0 2em;background: linear-gradient(to right,transparent,var(--blue-02) 10%,var(--blue-02) 90%,transparent);}
#billboard .usp .box02 p {color: var(--beige-01);font-size: 250%;line-height: 1;padding: 0 1em;position: relative;}
#billboard .usp .box02 p small {font-size: 70%;}
#billboard .usp .box02 p + p::before {display: block;content: '';width: 1px;height: 120%;background: var(--blue-02);position: absolute;top: -10%;left: 0;}
#billboard .usp .box02 .sp02 {color: var(--gold-01);line-height: 1.4;}
#billboard .usp .box02 p.project small {display: block;margin-bottom: 0.3em;}
#contentsWrap {}
.block-index-00 {padding: 8em 0;position: relative;z-index: 2;}
.block-index-00 .box01 {color: #fff;text-align: center;}
.block-index-00 .box01 h2 {letter-spacing: 0.1em;}
.block-index-00 .box01 ul {margin-top: 1em;}
.block-index-00 .box01 ul li p {font-size: 187.5%;line-height: 1.66;letter-spacing: 0.05em;}
.block-index-00 .box01 .link-container {display: flex;flex-wrap: wrap;justify-content: center;max-width: 550px;margin: 3em auto 0;}
.block-index-00 .box01 .link-container a {width: 47.2727%;}
.block-index-00 .box02 {display: flex;flex-wrap: wrap;justify-content: space-between;width: 90%;max-width: 1860px;margin: 8em auto 0;}
.block-index-00 .box02 .txt {width: 31%;}
.block-index-00 .box02 .txt > div {color: #fff;max-width: 350px;margin: 0 0 0 auto;}
.block-index-00 .box02 .txt > div h2 {letter-spacing: 0.1em;}
.block-index-00 .box02 .txt > div p:nth-of-type(1) {font-size: 150%;letter-spacing: 0.1em;margin-top: 4em;}
.block-index-00 .box02 .txt > div p:nth-of-type(2) {font-size: 93.75%;line-height: 2.66;letter-spacing: 0.1em;margin-top: 2em;}
.block-index-00 .box02 .txt > div .btn-style-01 {margin-top: 3em;}
.block-index-00 .box02 .slider-top-02 {width: 60%;padding-bottom: 2em;position: relative;}
.block-index-00 .box02 .slider-top-02 > div {overflow: hidden;}
.block-index-00 .box02 .slider-top-02 ul li a {padding: 2em 1.5em;background: rgba(255,255,255,0.6);border-radius: 1em;}
.block-index-00 .box02 .slider-top-02 ul li a > div {color: var(--blue-01);display: flex;flex-wrap: wrap;justify-content: flex-start;}
.block-index-00 .box02 .slider-top-02 ul li a > div > p {font-size: 93.7%;text-align: center;letter-spacing: 0.1em;width: 5.5em;padding-right: 1em;}
.block-index-00 .box02 .slider-top-02 ul li a > div > p span {display: block;font-size: 200%;line-height: 1;}
.block-index-00 .box02 .slider-top-02 ul li a > div > div {letter-spacing: 0.1em;width: calc(100% - 5.5em);padding-left: 1em;border-left: 1px solid var(--blue-01);}
.block-index-00 .box02 .slider-top-02 ul li a > div > div p:nth-of-type(1) {font-size: 112.5%;}
.block-index-00 .box02 .slider-top-02 ul li a > div > div p:nth-of-type(1) span {display: inline-block;font-size: 142.85%;line-height: 1;}
.block-index-00 .box02 .slider-top-02 ul li a > div > div p:nth-of-type(2) {font-size: 75%;margin-top: 0.5em;}
.block-index-00 .box02 .slider-top-02 ul li a > div > div p:nth-of-type(2) span {display: inline-block;font-size: 142.85%;line-height: 1;}
.block-index-00 .box02 .slider-top-02 .swiper-button-next,
.block-index-00 .box02 .slider-top-02 .swiper-button-prev {width: 3em;height: 3em;margin: 0 auto;top: calc(50% - 1em);left: 0;right: 0;background: var(--blue-03);}
.block-index-00 .box02 .slider-top-02 .swiper-button-next {text-indent: 0.25em;left: 100%;right: auto;transform: translate(-1em,-50%);}
.block-index-00 .box02 .slider-top-02 .swiper-button-prev {text-indent: -0.25em;left: auto;right: 100%;transform: translate(1em,-50%);}
.block-index-00 .box02 .slider-top-02 .swiper-button-next:after,
.block-index-00 .box02 .slider-top-02 .swiper-button-prev:after {color: #fff;font-size: 100%;}
.block-index-01 .box {position: sticky;}
.block-index-01 .box::after {display: block;content: '';width: 100%;height: 100%;background: #020821;position: absolute;top: 50%;left: 50%;z-index: -1;transition: 1.0s;transform: translate(-50%,-50%);opacity: 0;}
.block-index-01 .box > div {color: #fff;text-align: center;width: 90%;position: absolute;top: 50%;left: 50%;z-index: 1;transition: 1.0s;transform: translate(-50%,-50%);opacity: 0;}
.block-index-01 .box.on::after {opacity: 0.7;}
.block-index-01 .box.on > div {opacity: 1;}
.block-index-01 .box01 {z-index: 1;}
.block-index-01 .blank01 {z-index: 2;}
.block-index-01 .box02 {z-index: 3;}
.block-index-01 .blank02 {z-index: 4;}
.block-index-01 .box03 {z-index: 5;}
.block-index-01 .blank03 {z-index: 6;}
.block-index-01 .box > div h2 {font-size: 250%;letter-spacing: 0.1em;}
.block-index-01 .box > div p:nth-of-type(1) {font-size: 150%;letter-spacing: 0.1em;margin-top: 3em;}
.block-index-01 .box > div p:nth-of-type(2) {font-size: 93.75%;line-height: 2.5;letter-spacing: 0.1em;margin-top: 1.5em;}
.block-index-01 .design {background: url("../img/index/index_bg01_pc.webp") no-repeat center/cover;}
.block-index-01 .access {background: url("../img/index/index_bg02_pc.webp") no-repeat right bottom/cover;}
.block-index-01 .location {background: url("../img/index/index_bg03_pc.webp") no-repeat center/cover;}
.block-index-03 {/*margin-top: 5em;*/padding: 3em 0;background: url("../img/index/index_bg04_pc.webp") no-repeat center/cover;position: relative;z-index: 1;}
.block-index-03 nav ul {display: flex;flex-wrap: wrap;justify-content: flex-start;margin: 0 -1.5em;}
.block-index-03 nav ul li {width: calc(33.33% - 3em);margin: 1.5em;border-radius: 0.5em;overflow: hidden;}
.block-index-03 nav ul li a {width: 100%;aspect-ratio: 1 / 1;position: relative;background-repeat: no-repeat;background-size: cover;background-position: center;opacity: 0;transform: translateY(2em);transition: 0.8s;}
.block-index-03 nav ul li a p {color: #fff;font-size: 125%;position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%,-50%);pointer-events: none;}
.block-index-03 nav ul li:nth-child(1) a {background-image: url("../img/common/common_img01_pc.webp");transition-delay: 0s !important;}
.block-index-03 nav ul li:nth-child(2) a {background-image: url("../img/common/common_img02_pc.webp");transition-delay: 0.2s !important;}
.block-index-03 nav ul li:nth-child(3) a {background-image: url("../img/common/common_img03_pc.webp");transition-delay: 0.4s !important;}
.block-index-03 nav ul li:nth-child(4) a {background-image: url("../img/common/common_img04_pc.webp");transition-delay: 0.6s !important;}
.block-index-03 nav ul li:nth-child(5) a {background-image: url("../img/common/common_img05_pc.webp");transition-delay: 0.8s !important;}
.block-index-03 nav ul li:nth-child(6) a {background-image: url("../img/common/common_img06_pc.webp");transition-delay: 1.0s !important;}
.block-index-03 nav ul li:nth-child(7) a {background-image: url("../img/common/common_img07_pc.webp");transition-delay: 1.2s !important;}
.block-index-03 nav ul li:nth-child(8) a {background-image: url("../img/common/common_img08_pc.webp");transition-delay: 1.4s !important;}
.block-index-03 nav ul.on li a {opacity: 1;transform: translateY(0);}
@media only screen and (max-width: 1500px) {
  #billboard .slider-top-01 ul li.slide02 .txt01 {right: 7%;}
  #billboard .usp .box01 ul li {padding: 0 1em;}
}
@media only screen and (max-width: 1400px) {
  #billboard .usp .box01 ul li {font-size: 137.5%;padding: 0 1em;}
  #billboard .usp .box02::before {margin: 1em 0;}
  #billboard .usp .box02 p {font-size: 200%;padding: 0 0.5em;}
  .block-index-03 nav ul {margin: 0 -0.8em;}
  .block-index-03 nav ul li {width: calc(33.33% - 1.6em);margin: 0.8em;}
}
@media only screen and (min-width: 1401px) and (max-width: 1600px) {
  #billboard .usp {font-size: 1.0vw;}
}
@media only screen and (min-width: 768px) and (max-width: 1400px) {
  #billboard .usp {font-size: 1.1vw;}
}
@media only screen and (max-width: 900px) {
  #billboard .usp::after {height: 800%;}
}
@media only screen and (min-width: 768px) and (max-width: 1200px) {
}
@media only screen and (min-width: 768px) {
}
@media only screen and (max-width: 767px) {
  body.loaded header h1::after {opacity: 1;transition: 0.8s linear 0.5s;}
  #billboard .slider-top-01 ul li.slide02 .img01 {transform: translateY(-30%);}
  #billboard .slider-top-01 ul li.slide01 .txt01 {width: 90%;}
  #billboard .slider-top-01 ul li.slide02 .txt01 {width: 41%;right: 3%;}
  #billboard .slider-top-01 ul li.slide04 .txt01 {width: 43%;left: 5%;}
  #billboard .usp {padding: 0 5vw;}
  #billboard .usp::after {height: 450%;}
  #billboard .usp .box01 {padding: 2em 0 0;}
  #billboard .usp .box01 ul {justify-content: flex-start;margin: 0 -0.2em;}
  #billboard .usp .box01 ul li {font-size: 150%;text-align: left !important;width: 100%;padding: 0;}
  #billboard .usp .box01 ul li + li::before {width: 100%;height: 1px;margin: 0.75em 0;position: static;opacity: 0.7;}
  #billboard .usp .box01 ul li .sp01 {display: inline-block;}
  #billboard .usp .box01 ul li .sp02 {line-height: 1;}
  #billboard .usp .box01 ul li.bus small {font-size: 87.5%;margin-bottom: 0.2em;}
  #billboard .usp .box01 ul li.bus .sp01.fix01 .txt01 {font-size: 60%;margin-right: 0.3em;position: static;}  
  #billboard .usp .box02 {justify-content: flex-start;}
  #billboard .usp .box02::before {margin: 1em 0 1.5em;background: var(--blue-02);opacity: 0.7;}
  #billboard .usp .box02 p {font-size: 187.5%;white-space: nowrap;letter-spacing: 0;padding: 0;}
  #billboard .usp .box02 p + p {font-size: 225%;text-align: left;margin-top: 0.25em;width: 100%;}
  #billboard .usp .box02 p + p::before {width: 100%;height: 1px;margin: 0 0 0.5em;position: static;}
  #billboard .usp .box02 .sp01 {display: block;font-size: 137.5%;text-align: left;}
  #billboard .usp .box02 p.project small {margin-bottom: 0.4em;}
  .block-index-00 {padding: 4em 0 6em;}
  .block-index-00 .box01 ul li p {font-size: 150%;letter-spacing: 0;white-space: nowrap;}
  .block-index-00 .box01 .link-container {margin-top: 2em;}
  .block-index-00 .box01 .link-container a {width: 70%;}
  .block-index-00 .box01 .link-container a + a {margin-top: 1em;}
  .block-index-00 .box02 {padding-bottom: 6em;position: relative;}
  .block-index-00 .box02 .txt {text-align: center;width: 100%;}
  .block-index-00 .box02 .txt > div {max-width: 100%;}
  .block-index-00 .box02 .txt > div p:nth-of-type(1) {font-size: 125%;margin-top: 2em;}
  .block-index-00 .box02 .txt > div p:nth-of-type(2) {margin-top: 1em;}
  .block-index-00 .box02 .txt .btn-style-01 {width: 70%;position: absolute;left: 50%;bottom: 0;transform: translateX(-50%);}
  .block-index-00 .box02 .slider-top-02 {width: 100vw;margin: 2em 0 0 -5vw;}
  .block-index-00 .box02 .slider-top-02 ul li a {padding: 1.5em 0.5em 2.5em;}
  .block-index-00 .box02 .slider-top-02 ul li a > div > p {letter-spacing: 0;width: 5em;padding-right: 0.25em;}
  .block-index-00 .box02 .slider-top-02 ul li a > div > div {letter-spacing: 0;width: calc(100% - 5em);padding-left: 1em;}
  .block-index-00 .box02 .slider-top-02 .swiper-button-next,
  .block-index-00 .box02 .slider-top-02 .swiper-button-prev {width: 3em;height: 3em;}
  .block-index-00 .box02 .slider-top-02 .swiper-button-next {left: calc(100% - 3em);}
  .block-index-00 .box02 .slider-top-02 .swiper-button-prev {right: calc(100% - 3em);}
  .block-index-00 .box02 .slider-top-02 .caption-03 {padding: 0 1em;}
  .block-index-01 .box > div {top: 44%;}
  .block-index-01 .box > div h2 {font-size: 200%;}
  .block-index-01 .box > div p:nth-of-type(1) {font-size: 125%;margin-top: 2em;}
  .block-index-01 .box > div p:nth-of-type(2) {font-size: 87.5%;line-height: 2;margin-top: 1em;}
  .block-index-03 {margin-top: 2em;padding-bottom: 1em;}
  .block-index-03 nav ul {margin: 0 -0.4em;}
  .block-index-03 nav ul li {width: calc(50% - 0.8em);margin: 0.4em;}
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}