@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
@import url('https://fonts.googleapis.com/css2?family=BIZ+UDGothic:wght@400;700&family=Outfit:wght@100..900&display=swap');
*, *::before, *::after {
  box-sizing: border-box;
}
/* 共通 
============================================================================= */
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
  position: relative;
  height: 100%;
}
html, body {
  background-color: #F4F4F6;
}
body, p, h1, h2, h4, h5, h6 {
  position: relative;
  color: #252629;
  font-family: "BIZ+UDGothic", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-size: 16px;
  letter-spacing: .05em;
  line-height: 2;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}
h3 {
  position: relative;
  color: #252629;
  font-family: "Outfit", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-size: 16px;
  letter-spacing: .05em;
  line-height: 2;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}
a {
  text-decoration: none;
  color: #252629;
}
li {
  list-style: none;
}
main.main {
  overflow: hidden;
}
html {
  scroll-behavior: smooth;
}
.content-inner {
    margin: 0 auto;
    padding: 0 max(8vw, 1.75rem);
}
h1.page_title.error-404.not-found {
    font-size: 3rem;
}

/* header 
============================================================================= */
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  transition: .4s;
}
#header div.headerinner {
  display: flex;
  grid-template-columns: max(22vw, 11rem) minmax(0, 1fr);
  place-items: center start;
  padding: max(1vw, 1.25rem);
  gap: max(2vw, 1.25rem);
  justify-content: space-between;
  transition: .4s;
  /*  -webkit-backdrop-filter: blur(22px);*/
  margin: max(1vw, 1.25rem);
}
.gnav a {
  font-family: 'BIZ UDGothic', sans-serif;
  font-weight: 600;
}
.h-menu {
  display: none;
}
.navinner {
  position: fixed;
  top: -1rem;
  right: 0;
  width: 100%;
  height: 100vh;
  opacity: 0;
  z-index: 20;
  pointer-events: none;
  background-color: rgba(0, 0, 0, 0.9);
  transition: .6s;
  animation: blur-anim-re .3s linear forwards;
}
figure.logo {
  margin: 0;
}
figure.logo img {
  width: max(18vw, 30rem);
}
#header div.headerinner nav.gnav ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  column-gap: 2.5em;
  font-size: 1.5rem;
  transition: .4s;
  padding: 1rem 1rem 1rem 4rem;
  margin: 0;
}
nav.gnav {
  background-color: #fff;
  border-radius: 10px;
}
.menu_btn-contact a {
  padding: 15px 20px;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  color: #fff;
  text-decoration: none;
  border-radius: 10px;
  transition: transform 0.3s ease;
  width: 160px;
  justify-content: center;
  display: flex;
  transition: all 0.3s ease;
  filter: brightness(1);
}
.menu_btn-contact a:hover {
  filter: brightness(1.15);
  opacity: 0.9;
}
.menu_btn-calender a {
  padding: 15px 20px;
  background: linear-gradient(135deg, #3D84A7, #46CDCF);
  color: #fff;
  text-decoration: none;
  border-radius: 10px;
  transition: transform 0.3s ease;
  width: 160px;
  justify-content: center;
  display: flex;
  transition: all 0.3s ease;
  filter: brightness(1);
}
.menu_btn-calender a:hover {
  filter: brightness(1.15);
  opacity: 0.9;
}
.sticky-banner {
  position: fixed;
  display: flex;
  bottom: 4rem;
  right: 4rem;
  background-color: rgba(61, 132, 167, 0.7);
  color: #fff;
  padding: 12px 20px;
  border-radius: 100px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  opacity: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 10vw;
  height: 10vw;
  pointer-events: none;
  z-index: 9999;
  transform: translateY(30px); /* 아래에서 올라오듯 */
  transition: opacity 1s ease, transform 1s ease; /* 천천히 나타남 */
}
a.sticky-banner-link {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
}
.sticky-banner.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto; /* show일 때 클릭 가능 */
}
.sticky-icon img {
  width: 100%;
}
.sticky-icon {
  width: 5rem;
}
/* topslide
============================================================================= */
ul.swiper-wrapper {
  margin-top: 0;
  padding: 0;
}
.calendar-icon img {
  width: 100%;
}
.calendar-icon {
  width: 20%;
}
.slide-btn-link {
  width: 18%;
  height: 20%;
  min-width: 150px;
  min-height: 50px;
  position: absolute;
  right: 0;
  bottom: calc(2.5vw);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 20px 24px;
  background-color: #F4F4F6;
  color: #1D2087;
  text-decoration: none;
  border-radius: 25px 0 0 0;
  font-weight: bold;
  transition: 0.3s;
  z-index: 3;
  gap: 1rem;
}
.slide-cover {
  position: absolute;
  background: #F4F4F6;
  width: 100%;
  bottom: 0;
  height: 2.5vw;
  z-index: 2;
  border-radius: 50px 0 0 0;
}
.slide .main-visual {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.swiper-container {
  width: 100%;
  height: 100%;
}
.swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
  z-index: 1;
}
.slide-gradation {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(to top, #a0bbf1 0%, rgba(120, 147, 203, 0) 100%);
  z-index: 2;
  pointer-events: none;
}
.swiper-pagination {
  position: absolute !important;
  bottom: calc(2.5vw + 2.5rem) !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 3;
  display: flex !important;
  justify-content: center;
  gap: 20px;
}
.btn-radius {
  position: absolute;
  right: calc(18%);
  bottom: calc(2.5vw);
  width: 2%;
  height: auto;
  z-index: 2;
}
.btn-radius img {
  width: 100%;
  height: auto;
  display: block;
}
.swiper-pagination-bullet {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  border: 1px solid #fff !important;
  background-color: transparent;
  flex-shrink: 0;
  transition: all 0.3s;
}
.swiper-pagination-bullet-active {
  background-color: #fff !important;
  border-color: #fff !important;
}
.slide-left {
  z-index: 3;
  position: absolute;
  left: 5vw;
  top: 10vw;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.catch-txt {
  width: 8rem;
}
.catch-txt img {
  width: 100%;
}
.scroll img {
  width: 100%;
}
.scroll {
  width: 3rem;
}
.line {
  width: 1px;
  height: 12rem;
  background-color: #fff;
  left: 14px;
  position: relative;
}
#circle {
  fill: none;
  stroke: white;
  stroke-width: 2;
  stroke-dasharray: 245; /* path 길이에 맞춰 대략 설정 */
  stroke-dashoffset: 245;
  transform: rotate(-180deg);
  transform-origin: 50% 50%;
  animation: drawCircle 1.5s linear infinite;
}
@keyframes drawCircle {
  0% {
    stroke-dashoffset: 245;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
/* 화살표 */
#arrow {
  fill: white; /* 화살표 흰색으로 채움 */
  animation: moveArrow 1s ease-in-out infinite alternate;
}
@keyframes moveArrow {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(6px);
  }
  100% {
    transform: translateY(0);
  }
}
/* company
============================================================================= */
.company-inner {
  display: flex;
  position: relative;
}
.company_ttl img {
  width: 100%;
}
.company-imgs img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.company-imgs {
  width: 35vw;
  height: 40vw;
  overflow: hidden;
  position: relative;
  border-radius: 50px;
}
.company-left {
  width: 45%;
}
.company {
  display: flex;
  justify-content: center;
  margin-top: 10rem;
}
.company-inner {
  display: flex;
  position: relative;
  width: 80%;
  margin: 0 auto;
  justify-content: space-between;
}
.company_ttl {
  margin-top: 2rem;
  margin-bottom: 5rem;
}
.txt-area {
  margin-top: 8rem;
}
.img-area {
  position: relative;
}
.com-gra01 {
  width: 30vw;
  height: 28vw;
  z-index: -1;
  top: -2vw;
  left: 7vw;
  position: absolute;
  border-radius: 80px 0 80px 80px;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: transform 0.3s ease;
}
.com-gra02 {
  width: 10vw;
  height: 10vw;
  z-index: 0;
  bottom: -2vw;
  left: -2vw;
  position: absolute;
  border-radius: 100px 100px 100px 0;
  background: linear-gradient(135deg, #3D84A7, #46CDCF);
  transition: transform 0.3s ease;
}
.arrow img {
  width: 100%;
}
.arrow {
  width: 1rem;
  margin-top: 4px;
}
.company-btn-link {
  width: 15vw;
  padding: 2rem 3rem;
  border: 1px #1D2087 solid;
  color: #1D2087;
  display: flex;
  justify-content: center;
  border-radius: 50px 50px 0 50px;
  font-size: 2rem;
  font-weight: 700;
  gap: 2rem;
  position: relative;
  margin-top: 5rem;
  align-items: center;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
  z-index: 1;
}
.company-btn-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: -1;
}
.arrow:hover {
  color: white;
}
.company-btn-link:hover::before {
  left: 0;
}
.company-btn-link:hover {
  color: #fff;
}
h3.title-en::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 5px 5px 5px 0;
  background-color: #46CDCF;
}
/* slide
============================================================================= */
.roomslide_wrap {
  width: 100%;
  margin-top: 20rem;
}
.roomswiper-wrapper {
  display: flex;
  flex-wrap: nowrap;
}
.swiper-roomslide {
  flex: 0 0 auto;
  margin-right: 5rem;
  width: 25vw;
  border-radius: 12px;
  overflow: hidden;
}
.swiper-roomslide img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.roomswiper-wrapper div.swiper-roomslide:nth-child(even) {
  transform: translateY(15%);
}
/* Conference Room
============================================================================= */
section.conference {
  position: relative;
}
.conference-inner {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 7rem;
  width: 100%;
  position: relative;
  flex-wrap: wrap;
  margin-top: 25rem;
	opacity: 0;
}
.con-left {
  flex: 0 1 55%;
  position: relative;
  right: 4rem;
  z-index: 1;
}
.con-right {
  flex: 0 1 40%;
  padding-right: 5vw;
  z-index: 1;
}
.bg-01 img {
  width: 100%;
}
.bg-01 {
  position: absolute;
  width: 40vw;
  height: 40vw;
  z-index: -3;
  right: 1rem;
  top: -27rem;
}
.con_screen {
  width: 100%;
  height: 30vw;
  position: relative;
  overflow: visible;
}
.screen img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.screen {
  width: 100%;
  height: 30vw;
  position: relative;
}
.a_screen, .b_screen, .c_screen, .d_screen, .e_screen {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.5s ease;
  display: block;
}
.screen-img {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 0 30px 30px 0;
}
.screen-btn {
  gap: 1rem;
  position: absolute;
  bottom: -1rem;
  right: -1rem;
  z-index: 5;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  color: #fff;
  padding: 2rem 5rem;
  border-radius: 50px 50px 0 50px;
  text-decoration: none;
  transition: all 0.3s ease;
  filter: brightness(1);
}
.screen-btn:hover {
  filter: brightness(1.15);
  opacity: 0.9;
}
.btn-a, .btn-b, .btn-c, .btn-d, .btn-e {
  display: none;
}
.a_screen.active ~ .btn-a {
  display: flex;
}
.b_screen.active ~ .btn-b {
  display: flex;
}
.c_screen.active ~ .btn-b {
  display: flex;
}
.d_screen.active ~ .btn-b {
  display: flex;
}
.e_screen.active ~ .btn-b {
  display: flex;
}
.glasses-icon img {
  width: 100%;
}
.glasses-icon {
  width: 3rem;
  padding-left: 1rem;
  padding-top: 1rem;
}
.a_screen.active, .b_screen.active, .c_screen.active, .d_screen.active, .e_screen.active {
  opacity: 1;
}
.buttons {
  margin-top: 2vw;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.button {
  border: none;
  border-radius: 0 15px 15px 15px;
  font-weight: bold;
  cursor: pointer;
  background-color: #fff;
  color: #1d2087;
  transition: background-color 0.3s, color 0.3s;
  width: 10vw;
  height: 5vw;
}
.button.active {
  color: #fff;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  width: 10vw;
  height: 5vw;
  border-radius: 0 15px 15px 15px;
}
h2.title-jp {
  font-size: 4rem;
  font-weight: 700;
}
.con-ttl_toparea {
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
}
.con-txt {
  line-height: 3.5rem;
}
.con-btn-link {
  width: 17vw;
  padding: 2rem 3rem;
  border: 1px #1D2087 solid;
  color: #1D2087;
  display: flex;
  justify-content: center;
  border-radius: 50px 50px 0 50px;
  font-size: 1.7rem;
  font-weight: 700;
  gap: 2rem;
  position: relative;
  margin-top: 1.5rem;
  margin-bottom: 2rem;
  align-items: center;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
  z-index: 1;
}
.con-btn-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: -1;
}
.arrow:hover {
  color: white;
}
.con-btn-link:hover::before {
  left: 0;
}
.con-btn-link:hover {
  color: #fff;
}
/* News
============================================================================= */
.news-area {
  margin-top: 20rem;
  position: relative;
}
.news-post {
  display: flex;
  align-items: center;
  gap: 3rem;
  padding: 2rem;
  justify-content: center;
}
.ul_news {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  gap: 2rem;
  margin-top: 6rem;
  margin-bottom: 10rem;
}
.ul_news li {
  background-color: transparent;
  transition: background-color 0.3s ease;
  position: relative;
}
.ul_news li::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(236, 236, 242, 0);
  z-index: 0;
  transition: background-color 0.3s ease;
  border-radius: 15px;
}
.ul_news li:hover::before {
  background-color: rgba(236, 236, 242, 0.5);
}
.ul_news li > * {
  position: relative;
  z-index: 1;
}
img.news-arrow {
  width: 100%;
}
.news-arrow {
  width: 1.1rem;
}
.post-middle {
  padding-right: 10rem;
  display: flex;
  flex-direction: column;
  width: 40vw;
  gap: 7px;
  font-size: 1.2rem;
}
img.attachment-medium.size-medium.wp-post-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.post-thumb img {
  width: 100%;
  object-fit: cover;
  height: 100%;
}
.post-thumb {
  width: 16vw;
  height: 7vw;
  overflow: hidden;
  border-radius: 1rem;
}
.post-right {
  width: 1vw;
}
h4.news-post-ttl {
  font-size: 16px;
}
h4.news-post-txt {
  font-size: 16px;
}
.news-btn-link {
  width: 15vw;
  padding: 2rem 3rem;
  border: 1px #1D2087 solid;
  color: #1D2087;
  display: flex;
  justify-content: center;
  border-radius: 50px 50px 0 50px;
  font-size: 2rem;
  font-weight: 700;
  gap: 2rem;
  position: relative;
  margin: 0 auto;
  align-items: center;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
  z-index: 1;
}
.news-btn-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: -1;
}
.arrow:hover {
  color: white;
}
.news-btn-link:hover::before {
  left: 0;
}
.news-btn-link:hover {
  color: #fff;
}
.bg-02 img {
  width: 100%;
}
.bg-02 {
  position: absolute;
  width: 35vw;
  height: 35vw;
  z-index: -3;
  right: -10rem;
  top: -8rem;
}
.bg-03 img {
  width: 100%;
}
.bg-03 {
  position: absolute;
  z-index: -3;
  width: 45vw;
  bottom: 5rem;
  left: -10rem;
  height: 45vw;
  transform: rotate(90deg);
}
.office-banner img {
  width: 100%;
}
.office-banner {
  width: 80%;
  margin: auto;
  margin-top: 15rem;
}
/* office rentals
============================================================================= */
.office-rental {
  position: relative;
  width: 90%;
  margin: 0 auto;
  margin-top: 8em;
}
a.rental-link {
  width: 100%;
  height: 100%;
  display: block;
  margin: 0 auto;
}
.office-rental-img img {
  width: 100%;
  object-fit: cover;
}
.office-rental-img {
  overflow: hidden;
  position: relative;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 25vw;
  border-radius: max(0.8vw, 12px);
}
.office-rental-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.office-rental-img::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1;
  transition: background 0.4s ease;
}
.office-rental-img:hover::before {
  background: rgba(61, 132, 167, 0.7);
}
.office-rental-img:hover img {
  transform: scale(1.08);
}
.rental-txt-wrap {
  position: absolute;
  inset: 0;
  padding: 2vw 3vw;
  display: flex;
  flex-direction: column;
  width: 50%;
  gap: 1vw;
  z-index: 3;
  justify-content: center;
  pointer-events: none;
}
h1.top-rental-title {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
span.ren-en {
  font-size: 10rem;
  font-family: "Outfit", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  color: white;
  line-height: 11rem;
}
span.ren-jp {
  color: white;
  display: flex;
  align-items: center;
  gap: 1rem;
}
span.ren-jp:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 7px 7px 7px 0;
  background-color: white;
}
p.ren-txt {
  color: white;
}
.ren-detail {
  position: absolute;
  right: 3vw;
  bottom: 2vw;
  display: flex;
  gap: 2vw;
  color: white;
}
/* sub-page
============================================================================= */
.page-ttl-wrap {
  padding: 10vw 5vw 5vw;
}
.sub-wrap {
  display: flex;
  gap: 6rem;
  position: relative;
  height: 15vw;
}
.sub-left {
  flex: 0 0 40%;
}
.sub-right {
  position: absolute;
  right: -25rem;
}
h1.page-ttl-alls {
  display: flex;
  flex-direction: column;
}
.sub-page-img img {
  width: 100%;
  overflow: overlay;
}
.sub-page-img {
  width: 65vw;
  height: 22vw;
  overflow: hidden;
  border-radius: 5rem 0 0 0;
}
.sub-gage-ttl-h3 {
  color: #1D2087;
}
span.jp {
  color: #46CDCF;
  display: flex;
  align-items: center;
  gap: 6px;
}
span.jp::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 5px 5px 5px 0;
  background-color: #46CDCF;
}
span.en {
  font-weight: bold;
  font-size: 6rem;
  font-family: "Outfit", "Noto Sans JP", sans-serif;
  line-height: 6rem;
}
span.sub-detaile-txt {
  margin-top: 2rem;
  font-size: 14px;
  line-height: 3.2rem;
}
.sub-roomslide_wrap {
  width: 100%;
  margin-top: 5vw;
}
.sub-roomswiper-wrapper {
  display: flex;
  flex-wrap: nowrap;
}
.sub-swiper-roomslide {
  flex: 0 0 auto;
  margin-right: 5rem;
  width: 25vw;
  border-radius: 12px;
  overflow: hidden;
}
.sub-swiper-roomslide img {
  display: block;
  width: 100%;
  object-fit: cover;
}
.sub-roomswiper-wrapper div.sub-swiper-roomslide:nth-child(even) {
  transform: translateY(20%);
}
.sub-page-bg img {
  width: 100%;
}
.sub-page-bg {
  width: 40vw;
  height: 40vw;
  position: absolute;
  left: -6vw;
  top: 0vw;
  z-index: -1;
}
.page-body {
  padding: 15rem;
}
.floor-inner {
  display: flex;
  align-items: flex-start;
  gap: 2vw;
}
.floor-left {
  flex: 0 1 70%;
  position: relative;
  z-index: 1;
}
.floor-right {
  flex: 0 1 30%;
  z-index: 1;
}
.floor-screen {
  width: 100%;
  height: 40vw;
  position: relative;
  overflow: visible;
}
.floor-screen img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.f1_screen, .f2_screen, .f3_screen, .f4_screen, .f5_screen {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.5s ease;
  display: block;
}
.f-screen-img {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 0 30px 0 30px;
  border: 1px solid #1D2087;
}
.f1_screen.active, .f2_screen.active, .f3_screen.active, .f4_screen.active, .f5_screen.active {
  opacity: 1;
}
.floor-buttons {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.f-button {
  border: none;
  border-radius: 0 15px 15px 15px;
  font-weight: bold;
  cursor: pointer;
  background-color: #fff;
  color: #1d2087;
  transition: background-color 0.3s, color 0.3s;
  width: 10vw;
  height: 5vw;
  font-size: 2rem;
}
.f-button.active {
  color: #fff;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  width: 10vw;
  height: 5vw;
  border-radius: 0 15px 15px 15px;
}
h2.wp-block-heading.\.sub-page-ttl-h2 {
  font-size: 4rem;
}
.sub-ttl-area {
  display: flex;
  gap: 3vw;
  align-items: center;
  margin-bottom: 2vw;
}
.sub-page-ttl-h2 {
  font-size: 4rem;
}
.conference-info_column {
  gap: 5rem;
  margin-top: 2vw;
}
.history-img01 {
  border-radius: 10px;
  overflow: hidden;
}
.history-img02 {
  border-radius: 10px;
  overflow: hidden;
}
/*-----会議室スライダー-----*/
.con-sub-slider .n2-ss-slider-wrapper-inside {
  overflow: hidden;
  border-radius: 10px;
}
.con-sub-slider .n2-style-107cb0e4b96e295f0c4852cfc0854d07-heading {
  background: rgba(255, 255, 255, 0.35) !important;
  backdrop-filter: blur(10px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(10px) saturate(120%) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
}
.con-sub-slider .n2-thumbnail-dot img {
  width: 100% !important;
  height: 100% !important;
}
.con-sub-slider .n2-thumbnail-dot.n2-active, .con-sub-slider .n2-thumbnail-dot {
  width: 32%;
  margin: 0 !important;
  border-radius: 10px !important;
}
.con-sub-slider .nextend-thumbnail-scroller {
  display: flex !important;
  justify-content: space-between !important;
  margin-top: 1rem;
}
.con-sub-slider .nextend-arrow img {
  width: 35px !important;
}
.con-sub-slider .n2-style-f58d52632d016e4532dc73de3ceef8d2-simple {
  background: transparent !important;
}
.con-sub-slider .nextend-thumbnail-scroller.n2-align-content-start {
  gap: 10px;
}
.seat-layout-box {
  background: #E6EBF5;
  padding: 3rem;
  border-radius: 10px;
}
.s-seat-layout-box {
  background: #E6EBF5;
  padding: 3rem;
  border-radius: 10px;
}
.s-seat-layout-wrap {
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.seat-btn-flex {
  margin: 0;
}
.seat-layout-ttl {
  font-size: 2.2rem;
}
.seat-layout-wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.vk_button_link_caption {
  gap: 1rem;
}
.reservation-info-box {
  background: #fff;
  padding: 5rem 0;
  border-top: 1px #5794B3 solid;
  border-bottom: 1px #5794B3 solid;
  margin-top: 5rem;
}
.reservation-left {
  border-right: 1px #5794B3 solid;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.reservation-middle {
  border-right: 1px #5794B3 solid;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.reservation-right {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.reservation-btn-ttl {
  color: #1d2087;
  font-size: 2rem;
}
.reservation-btn a {
  width: 60%;
  font-size: 2rem !important;
  border-radius: 30px 30px 0 30px;
  border: 1px #1D2087 solid;
  position: relative;
  display: inline-block;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
}
.reservation-btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: 0;
}
.reservation-btn a:hover::before {
  left: 0;
}
.fa-file-pdf:hover::before {
  color: white;
}
.reservation-btn a:hover {
  color: #fff;
}
.reservation-btn a span, .reservation-btn a .fa-file-pdf:before {
  position: relative;
  z-index: 1;
}
.fa-fax:before {
  position: relative;
  z-index: 1;
}
.fa-file-arrow-down::before {
  position: relative;
  z-index: 1;
}
iframe.calendar {
  border: 1px #1D2087 solid;
  border-radius: 10px;
}
.sub-pre_inner {
  background: url(../img/precautions.png) no-repeat;
  background-size: 70%;
  position: relative;
  z-index: 0;
  margin: 0 auto;
  background-position: 50% 0;
  padding: 1rem 10rem;
}
.pre-back_gra img {
  width: 100%;
}
.pre-back_gra {
  position: absolute;
  z-index: -5;
  width: 45vw;
  bottom: -22rem;
  left: -31rem;
  height: 45vw;
  transform: rotate(90deg);
}
p.precautions-info {
  margin-top: 5rem;
}
.rental {
  background: url(../img/office_rentals.png) no-repeat;
  background-size: 70%;
  position: relative;
  z-index: 0;
  margin: 0 auto;
  background-position: 50% 0;
}
.rental-back_gra img {
  width: 100%;
}
.rental-img img {
  width: 100%;
  object-fit: cover;
  height: 100%
}
.rental-info {
  margin-top: 7rem;
}
.rental-back_gra {
  position: absolute;
  width: 40vw;
  height: 40vw;
  right: -34rem;
  top: -19rem;
  z-index: -5;
}
.rental-img {
  position: absolute;
  width: 70%;
  height: 25vw;
  overflow: hidden;
  left: -15rem;
  border-radius: 0 5rem 0 0;
}
.rental-btn a {
  width: 55%;
  padding: 2rem !important;
  font-size: 2rem !important;
  border-radius: 40px 40px 0 40px;
  border: 1px solid #1D2087;
  position: relative;
  display: inline-block;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
}
.rental-btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: 0;
}
.rental-btn a:hover::before {
  left: 0;
}
.fa-file-pdf:hover::before, .fa-phone:hover::before {
  color: white;
}
.rental-btn a:hover {
  color: #fff;
}
.rental-btn a span, .rental-btn a, .fa-file-pdf:before, .fa-phone:before {
  position: relative;
  z-index: 1;
}
.rental-right {
  display: flex;
  flex-direction: column;
  gap: 7vw;
}
.rental-btn_box {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.seat-btn-flex {
  gap: 0;
}
.seat-layout-left {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.seat-layout-right {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.seat-layout-btn a {
  width: 80%;
  margin: 0 auto;
  padding: 2.5rem 2rem !important;
  border: 1px solid #1D2087;
  border-radius: 0 10px 10px;
  font-size: 2rem !important;
  position: relative;
  display: flex;
  justify-content: center;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
}
.seat-layout-btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: 0;
}
.seat-layout-btn a:hover::before {
  left: 0;
}
.fa-download:hover::before {
  color: white;
}
.seat-layout-btn a:hover {
  color: #fff;
}
.seat-layout-btn a span, .seat-layout-btn a .fa-download:before {
  position: relative;
  z-index: 1;
}
.s-seat-layout-btn a {
  width: 100%;
  padding: 2rem !important;
  border: 1px solid #1D2087;
  border-radius: 0 10px 10px;
  font-size: 2rem !important;
  position: relative;
  display: flex;
  justify-content: center;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
}
.s-seat-layout-btn a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: 0;
}
.s-seat-layout-btn a:hover::before {
  left: 0;
}
.s-seat-layout-btn a:hover {
  color: #fff;
}
.s-seat-layout-btn a span, .s-seat-layout-btn a .fa-download:before {
  position: relative;
  z-index: 1;
}
.sub-ttl_flex {
  display: flex;
  align-items: center;
  gap: 5rem;
}
.company-contents {
  padding: 3vw;
}
.greeting-info {
  display: flex;
}
.greeting-left {
  padding: 0 6rem;
}
.greeting-right img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.greeting-right .aligncenter {
  width: 100%;
  overflow: hidden;
  border-radius: 15px;
}
.greeting-sign {
  font-size: 18px;
  margin-top: 2rem;
}
.company-table {
  margin-top: 4rem;
}
.allnews-ttl-wrap {
  position: relative;
  width: 100%;
  height: 20vw;
  overflow: hidden;
}
.sub_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.allnews-page-img {
  position: absolute;
  top: 0;
  width: 100%;
  height: 22vw;
  overflow: hidden;
  z-index: -1;
}
.allnews-gra {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 70%;
  background: linear-gradient(to top, #a0bbf1 0%, rgba(120, 147, 203, 0) 100%);
  z-index: 0;
  pointer-events: none;
}
.allnews-ttl-box {
  position: absolute;
  bottom: 9rem;
  left: 12vw;
  z-index: 1;
}
h1.allnews-ttl-alls {
  display: flex;
  gap: 4rem;
  align-items: self-end;
}
.allnews-ttl-alls .en {
  color: white;
}
.allnews-ttl-alls .jp {
  color: white;
}
.allnews-ttl-alls .jp::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 5px 5px 5px 0;
  background-color: #fff;
}
.news-li {
  background-color: transparent;
  transition: background-color 0.3s ease;
  position: relative;
}
.news-li::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(236, 236, 242, 0);
  z-index: 0;
  transition: background-color 0.3s ease;
  border-radius: 15px;
}
.news-li:hover::before {
  background-color: rgba(236, 236, 242, 0.5);
}
.news-li > * {
  position: relative;
  z-index: 1;
}
.ul-news {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  gap: 2rem;
  margin-top: 6rem;
  margin-bottom: 10rem;
}
.single-ttlwrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 23rem 20rem 0 20rem;
}
.single-inner {
  position: relative;
  padding-bottom: max(calc(4vw + 1rem), 3rem);
}
.single-left {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: end;
}
h1.single-title {
  font-weight: bold;
  font-size: 4rem;
  font-family: "BIZ+UDGothic", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  line-height: 6rem;
}
.single-inner:after {
  content: '';
  position: absolute;
  width: 100%;
  bottom: 4rem;
  height: 2px;
  background: #E6EBF5;
}
.single-info {
  font-family: "Outfit", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  color: #1D2087;
  font-weight: 600;
}
section.single-content-wrap {
  padding: 1rem 20rem 1rem;
}
a.allnews-btn {
  width: 15vw;
  padding: 2rem 3rem;
  background-color: #E6EBF5;
  color: black;
  border-radius: 10px 10px 10px 10px;
  font-size: 1.5rem;
  font-weight: 700;
  gap: 2rem;
  margin-top: max(5vw, 3.75rem);
  align-items: center;
  position: relative;
  display: flex;
  justify-content: center;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
  z-index: 1;
}
a.allnews-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: -1;
}
a.allnews-btn:hover::before {
  left: 0;
}
a.allnews-btn:hover {
  color: #fff;
}
.news-box {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.allnews-pagenation {
  display: flex;
  gap: 0.5vw;
}
a.page-numbers {
  background-color: white;
  width: 37px;
  height: 37px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  transition: all 0.3s ease;
}
span.page-numbers.current {
  background-color: white;
  width: 37px;
  height: 37px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  transition: all 0.3s ease;
}
a.page-numbers:hover {
  background-color: #E6EBF5;
}
span.page-numbers.current:hover {
  background-color: #E6EBF5;
}
.company-table tbody tr:nth-child(odd) td {
  background-color: #e6ebf5 !important;
  border: none !important;
  padding: 20px !important;
}
.company-table tbody tr:nth-child(even) td {
  border-width: 0 !important;
  padding: 20px !important;
  background-color: #f4f4f6 !important;
}
/* footer
============================================================================= */
p.copy-txt {
  text-align: center;
  font-size: 1.5rem;
  padding: 1rem 0px;
}
#footer.footer_gradation {
  background: linear-gradient(to top, #EBF2FF 0%, rgba(235, 242, 255, 0) 100%);
}
h2.title-jp {
  font-size: 4rem;
}
.text_area {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-bottom: 5rem;
}
h3.title-en {
  color: #46CDCF;
  display: flex;
  align-items: center;
  gap: 6px;
}
.accesswrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5rem 5.4vw;
  align-items: center;
}
.accessinfo table th, .accessinfo table td {
  padding: .8em 0 .7em;
  border-bottom: 1px solid #c6c6c6;
}
h2.contact-title {
  font-size: 4rem;
  margin-bottom: 4rem;
}
.footerinner {
  display: flex;
  justify-content: center;
  text-align: center;
  padding: 10rem 0 15rem 0;
}
section.footer {
  margin-top: 15rem;
}
.inner {
  background: url(../img/footer-contact.png)no-repeat;
  background-size: 50%;
  position: relative;
  z-index: 0;
  margin: 0 auto;
  background-position: 50% 0;
}
.footerinner > * {
  position: relative;
  z-index: 1;
}
.tel-icon img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.tel-icon {
  width: 10%;
  display: flex;
}
.contact-btn-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  font-size: 2.5rem;
  padding: 15px 20px;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  color: #fff;
  text-decoration: none;
  border-radius: 40px 40px 0px 40px;
  transition: all 0.3s ease;
  filter: brightness(1);
  width: 35rem;
}
.contact-btn-link:hover {
  filter: brightness(1.15);
  opacity: 0.9;
}
h4.contact {
  margin-bottom: 4rem;
  line-height: 2.5;
}
.footer_upper {
  margin-top: 15rem;
}
.install-icon img {
  width: 100%;
}
.install-icon {
  width: 2rem;
  padding-top: 4px;
}
.parking-btn-link {
  padding: 1rem 2rem;
  border: 1px #1D2087 solid;
  color: #1D2087;
  display: flex;
  justify-content: center;
  border-radius: 50px 50px 0 50px;
  font-size: 1.7rem;
  font-weight: 700;
  gap: 1rem;
  position: relative;
  align-items: center;
  overflow: hidden;
  transition: color 0.3s ease, border-color 0.3s ease;
  z-index: 1;
}
.parking-btn-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #595DD0, #0F1044);
  transition: left 0.5s ease;
  z-index: -1;
}
.arrow:hover {
  color: white;
}
.parking-btn-link:hover::before {
  left: 0;
}
.parking-btn-link:hover {
  color: #fff;
}
td.shuei-last {
  display: flex;
  gap: 3rem;
  align-items: center;
}
.category-nav {
  background-color: #e7ebf6;
  position: relative;
  margin-bottom: 1rem;
  border-radius: 10rem;
}
.category-menu {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  color: #282b7c;
}
.bg-category {
  background: linear-gradient(135deg, #0f1044, #595dd0);
  color: #fff;
}
.category-menu li {
  margin: 0;
  padding: .75rem 2rem;
  border-radius: 10rem;
}
@media screen and (max-width: 791px) {
  .category-nav {
    border-radius: 0;
  }
  .category-menu {
    display: block;
  }
  .category-menu li {
    border-radius: 0;
  }
}
/* レスポンシブ
============================================================================= */
@media screen and (min-width: 1800px) {
  .slide-left {
    top: 12vw;
  }
}
@media screen and (max-width: 1713px) {
  span.ren-en {
    font-size: 8rem;
    line-height: 10rem;
  }
  .sub-roomslide_wrap {
    margin-top: 9vw;
  }
  .sub-page-img {
    height: 26vw;
  }
}
@media screen and (max-width: 1536px) {
  .line {
    height: 8rem;
  }
  .news-btn-link {
    width: 18vw;
    font-size: 1.6rem;
  }
  p.ren-txt {
    font-size: 14px;
  }
  span.ren-en {
    line-height: 9rem;
  }
  .sticky-banner.show {
    width: 12vw;
    height: 12vw;
  }
  .con-btn-link {
    width: 18vw;
    padding: 2rem 3rem;
    font-size: 1.5rem;
  }
  .company-btn-link {
    width: 17vw;
    font-size: 1.8rem;
  }
  .reservation-btn a {
    width: 80%;
  }
  .rental-right {
    gap: 2vw;
  }
  .rental-btn a {
    width: 70%;
  }
  .rental-img {
    height: 30vw;
  }
}
@media screen and (max-width: 1440px) {
  .line {
    height: 15rem;
  }
  .company-btn-link {
    width: 18vw;
  }
  .txt-area {
    margin-top: 4rem;
  }
  .sticky-banner.show {
    width: 11vw;
    height: 11vw;
  }
  .screen {
    width: 100%;
    height: 33vw;
    position: relative;
  }
  a.sticky-banner-link {
    font-size: 14px;
  }
  .sticky-icon {
    width: 4rem;
  }
  .parking-btn-link {
    font-size: 1.5rem;
  }
  .sub-right {
    right: -20rem;
  }
  .sub-left {
    flex: 0 0 40%;
  }
  .sub-roomslide_wrap {
    margin-top: 13vw;
  }
  .f-button.active {
    width: 11vw;
    height: 6vw;
  }
  .f-button {
    width: 11vw;
    height: 6vw;
  }
  .pre-back_gra {
    bottom: 0rem;
  }
  .rental-back_gra {
    right: -28rem;
    top: -17rem;
  }
  .page-body {
    padding: 6rem;
  }
  figure.sub_img {
    width: 100%;
    height: 100%;
  }
  .sub-page-img {
    height: 30vw;
  }
}
@media screen and (max-width: 1366px) {
  .line {
    height: 8rem;
  }
  .catch-txt {
    width: 6.5rem;
  }
  span.slide-txt {
    font-size: 1.5rem;
  }
  .slide-btn-link {
    width: 20%;
  }
  .btn-radius {
    right: calc(20%);
  }
  .txt-area {
    margin-top: 0;
  }
  .company-btn-link {
    font-size: 1.8rem;
    width: 18vw;
  }
  .com-gra02 {
    width: 8vw;
    height: 8vw;
  }
  .com-gra01 {
    height: 35vw;
  }
  .company-imgs {
    border-radius: 40px;
  }
  .sticky-banner.show {
    width: 13vw;
    height: 13vw;
  }
  .swiper-roomslide {
    width: 28vw;
  }
  .roomslide-wrap {
    margin-top: 14rem;
  }
  .con-left {
    flex: 0 1 50%;
  }
  .con-txt {
    font-size: 14px;
  }
  .company-txt {
    font-size: 14px;
    line-height: 3rem;
  }
  h4.news-post-ttl {
    font-size: 14px;
  }
  h4.news-post-txt {
    font-size: 14px;
  }
  table.shuei {
    font-size: 14px;
  }
  h4.contact {
    font-size: 14px;
  }
  p.copy-txt {
    font-size: 1.3rem;
  }
  .con-btn-link {
    width: 20vw;
  }
  .screen-btn {
    padding: 1rem 4rem;
  }
  .button {
    width: 11vw;
    height: 6vw;
  }
  .button.active {
    width: 11vw;
    height: 6vw;
  }
  .conference-inner {
    gap: 4rem;
  }
  .con-right {
    flex: 0 1 35%;
    padding-right: 0;
  }
  .con-left {
    flex: 0 1 55%;
    right: 5rem;
  }
  span.ren-en {
    font-size: 7rem;
    line-height: 7.5rem;
  }
  .rental-btn a {
    width: 80%;
  }
  .rental-img {
    height: 32vw;
  }
  .ul-news {
    margin-top: 0;
  }
  .single-ttlwrap {
    padding: 23rem 10rem 0 10rem;
  }
  section.single-content-wrap {
    padding: 1rem 10rem 1rem;
  }
  a.allnews-btn {
    width: 18vw;
  }
  .sub-left {
    flex: 0 0 45%;
  }
  .sub-right {
    right: -25rem;
  }
}
@media screen and (max-width: 1280px) {
  .slide-left {
    top: 12vw;
  }
  .scroll {
    width: 2.5rem;
  }
  .catch-txt {
    width: 6rem;
  }
  .conference-inner {
    gap: 3rem;
  }
  .screen {
    height: 37vw;
  }
  .screen-btn {
    padding: 1rem 4rem;
  }
  .button {
    width: 11vw;
    height: 6vw;
  }
  .button.active {
    width: 11vw;
    height: 6vw;
  }
  .con-btn-link {
    padding: 2rem 2rem;
  }
  .menu_btn-contact a {
    padding: 12px 15px;
  }
  .menu_btn-calender a {
    padding: 12px 15px;
    width: 170px;
  }
  #header div.headerinner nav.gnav ul {
    column-gap: 2em;
  }
  .con-left {
    right: 5rem;
  }
  .sticky-banner.show {
    width: 13vw;
    height: 13vw;
  }
  .sticky-icon {
    width: 4rem;
  }
  span.sticky-txt {
    font-size: 15px;
  }
  .office-rental-img {
    height: 30vw
  }
  .sub-left {
    padding-top: 2rem;
  }
  .sub-page-img {
    height: 37vw;
  }
  .sub-roomslide_wrap {
    margin-top: 18vw;
  }
}
@media screen and (max-width: 1180px) {
  #header div.headerinner nav.gnav ul {
    font-size: 1.4rem;
  }
  .menu_btn-contact a {
    width: 150px;
  }
  .menu_btn-calender a {
    width: 150px;
  }
  .company-imgs {
    height: 46vw;
  }
  .com-gra01 {
    height: 37vw;
  }
  .company-inner {
    width: 85%;
  }
  .company-btn-link {
    width: 22vw;
    font-size: 1.6rem;
  }
  .button {
    width: 12vw;
    height: 7vw;
  }
  .button.active {
    width: 12vw;
    height: 7vw;
  }
  .con-right {
    flex: 0 1 40%;
  }
  .screen {
    height: 38vw;
  }
  .office-banner {
    margin-top: 10rem;
  }
  .news-btn-link {
    width: 20vw;
  }
  .footerinner {
    padding: 4rem 0 15rem 0;
  }
  .slide-btn-link {
    width: 23%;
  }
  .btn-radius {
    right: calc(23%);
  }
  .rental-txt-wrap {
    width: 70%;
  }
  .sub-page-img {
    height: 35vw;
  }
  .sub-roomslide_wrap {
    margin-top: 13vw;
  }
  .sub-wrap {
    height: 20vw;
  }
  .page-ttl-wrap {
    padding: 12vw 5vw 5vw;
  }
  .sub-left {
    flex: 0 0 45%;
  }
  .post-middle {
    padding-right: 2rem;
    width: 50vw;
  }
  .post-thumb {
    width: 18vw;
    height: 9vw;
  }
}
@media screen and (max-width: 1024px) {
  .catch-txt {
    width: 4rem;
  }
  .slide-left {
    top: 18vw;
  }
  .scroll {
    width: 2rem;
  }
  .line {
    left: 10px;
  }
  .calendar-icon {
    width: 17%;
  }
  span.slide-txt {
    font-size: 1.3rem;
  }
  .menu_btn-contact a {
    width: 140px;
  }
  .menu_btn-calender a {
    width: 140px;
  }
  #header div.headerinner nav.gnav ul {
    column-gap: 1.5em;
  }
  .sub-page-ttl-h2 {
    font-size: 3rem;
  }
  .slide-btn-link {
    width: 26%;
  }
  .swiper-pagination-bullet {
    width: 4px !important;
    height: 4px !important;
  }
  .btn-radius {
    right: calc(26%);
  }
  .company-left {
    width: 50%;
  }
  .company-btn-link {
    margin-top: 3rem;
  }
  .company-imgs {
    height: 53vw;
    width: 36vw;
  }
  .com-gra01 {
    left: 8vw;
  }
  .company {
    margin-top: 8rem;
  }
  .conference-inner {
    margin-top: 20rem;
  }
  figure.logo img {
    width: max(18vw, 27rem);
  }
  span.sub-detaile-txt {
    font-size: 12px;
    line-height: 3rem;
  }
  .page-ttl-wrap {
    padding-top: 12vw;
  }
  .sub-left {
    flex: 0 0 50%;
  }
  .sub-page-img {
    height: 37vw;
  }
  .sub-roomslide_wrap {
    margin-top: 15vw;
  }
  p.greeing-txt {
    font-size: 13px;
  }
  .greeting-sign {
    font-size: 16px;
  }
  .seat-layout-btn a {
    font-size: 1.6rem !important;
  }
  .s-seat-layout-btn a {
    font-size: 1.6rem !important;
  }
  .seat-layout-ttl {
    font-size: 2rem;
  }
  .s-seat-layout-box {
    padding: 2rem 0;
  }
  td.shuei-last {
    justify-content: center;
  }
  .shuei tr, td {
    text-align: center;
    vertical-align: middle;
  }
  table.shuei {
    width: 100%;
  }
  .accessinfo {
    width: 65%;
  }
  .map {
    width: 100%;
    margin-top: 4rem;
  }
  .map iframe {
    width: 100%;
  }
  .conference-inner {
    align-items: normal;
    flex-direction: column-reverse;
    padding: 0 8vw;
  }
  .con-left {
    right: 0;
  }
  .screen-img {
    border-radius: 10px;
  }
  .button {
    flex: 1;
  }
  .buttons {
    gap: 1.5rem;
    justify-content: space-around;
  }
  .con-btn-link {
    width: auto;
  }
  .bg-01 {
    width: 50vw;
    height: 50vw;
    right: -6rem;
    top: -9rem;
  }
  .sticky-banner.show {
    width: 16vw;
    height: 16vw;
  }
  span.vk_button_link_txt {
    font-size: 1.4rem;
  }
  .reservation-btn-ttl {
    font-size: 1.8rem;
  }
  /*
  p.precautions-info {
    font-size: 15px;
  }
*/
  .conference-info_column {
    flex-direction: column-reverse;
  }
  .rental-info {
    flex-direction: column;
  }
  .rental-img {
    position: unset;
    width: 100%;
    overflow: hidden;
    border-radius: 10px;
    margin-bottom: 1.5rem;
  }
  .rental-back_gra {
    right: -28rem;
    top: -47rem;
    width: 60vw;
    height: 60vw;
  }
  .pre-back_gra {
    width: 60vw;
    bottom: 4rem;
    left: -12rem;
    height: 60vw;
  }
  .rental-info {
    margin-top: 3rem;
  }
  .reservation-info-box {
    gap: 0;
  }
  .rental-btn a {
    width: 80%;
  }
  .rental-right {
    flex-basis: 100% !important;
    flex-direction: row;
  }
  .rental-btns {
    width: 100%;
  }
  .s-seat-layout-btn {
    width: 26rem;
  }
  .allnews-ttl-wrap {
    height: 27vw;
  }
  .allnews-page-img {
    height: 27vw;
  }
  .allnews-ttl-box {
    bottom: 2rem;
  }
  h1.single-title {
    font-size: 3rem;
  }
}
@media screen and (max-width: 960px) {
  .h-menu {
    display: flex;
    position: fixed;
    top: 1.5rem;
    right: 2rem;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 10px 23px;
    width: 8rem;
    height: 7.8rem;
    cursor: pointer;
    transition: .4s;
    z-index: 90;
    background: #1D2087;
    color: white;
    border-radius: 50px;
  }
  .h-menu .openbtn {
    position: relative;
    width: 100%;
    height: 12px;
    cursor: pointer;
    overflow: hidden;
    transition: .5s;
  }
  .h-menu .openbtn span {
    position: absolute;
    display: inline-block;
    top: 0;
    width: 100%;
    height: 2px;
    background: white;
    transition: .4s;
  }
  .h-menu .txt {
    margin: 0;
    font-size: 10px;
    color: white;
    line-height: 0;
  }
  .navinner.active {
    opacity: 1;
    pointer-events: auto;
    top: 0;
    transition: opacity 0.6s ease, top 0.6s ease;
  }
  .h-menu .openbtn span:nth-child(1) {
    top: 0;
  }
  .h-menu .openbtn span:nth-child(2) {
    top: 8px; /* 두 번째 줄 아래로 내림 */
  }
  .h-menu.active .openbtn span:nth-child(1) {
    transform: rotate(45deg);
    top: 5px;
  }
  .h-menu.active .openbtn span:nth-child(2) {
    transform: rotate(-45deg);
    top: 5px;
  }
  .nav ul.nonstyle {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding-left: 0;
  }
  #menu-item-587 a::after {
    content: "Home";
    font-size: 8px;
    color: white;
    padding-left: 2rem;
  }
  #menu-item-540 a::after {
    content: "Company";
    font-size: 8px;
    color: white;
    padding-left: 2rem;
  }
  #menu-item-539 a::after {
    content: "Conference Room";
    font-size: 8px;
    color: white;
    padding-left: 2rem;
  }
  #menu-item-538 a::after {
    content: "News";
    font-size: 8px;
    color: white;
    padding-left: 2rem;
  }
  .navinner {
    padding: max(10vw, 5rem) max(5vw, 2.5rem) 0;
    width: 35vw;
    gap: 2rem;
  }
  .menu-item a {
    color: white;
  }
  nav.gnav {
    display: none;
  }
  .slide-left {
    top: 14vw;
  }
  .company {
    margin-top: 5rem;
  }
  .roomslide_wrap {
    margin-top: 12rem;
  }
  .conference-inner {
    margin-top: 14rem;
  }
  .news-area {
    margin-top: 14rem;
  }
  .bg-02 {
    width: 45vw;
    height: 45vw;
  }
  .bg-03 {
    width: 60vw;
    height: 60vw;
  }
  .news-btn-link {
    width: 25vw;
  }
  .ul_news {
    margin-top: 3rem;
    margin-bottom: 5rem;
  }
  p.ren-txt {
    display: none;
  }
  .contact-btn-link {
    font-size: 2rem;
    width: 32rem;
  }
  .text_area {
    margin-bottom: 2rem;
  }
  .floor-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2vw;
  }
  .floor-left {
    order: 2;
    width: 100%;
    height: 40vw;
    position: relative;
  }
  .floor-right {
    order: 1;
    width: 100%;
    display: flex;
    justify-content: center;
  }
  .floor-screen {
    height: 53vw;
  }
  .floor-buttons {
    width: 100%;
    justify-content: space-around;
  }
  .f-button, .f-button.active {
    width: 18%;
  }
  span.sub-detaile-txt {
    display: none;
  }
  .page-ttl-wrap {
    padding: 14vw 0;
  }
  .sub-wrap {
    flex-direction: column;
    height: auto;
    gap: 5rem;
  }
  .sub-page-img {
    width: 100%;
    border-radius: 0;
    height: 30vw;
  }
  .sub-right {
    position: unset;
    width: 100%;
  }
  .sub-left {
    flex: 1;
    padding-left: 4rem;
  }
  .sub-roomslide_wrap {
    margin-top: 8rem;
  }
  .sub-swiper-roomslide {
    margin-right: 2rem;
    width: 40vw;
    border-radius: 8px;
  }
  span.en {
    font-size: 5.4rem;
  }
}
@media screen and (max-width: 834px) {
  .catch-txt {
    width: 7rem;
  }
  .line {
    height: 25rem;
    left: 17px;
  }
  .slide-left {
    top: 32vw;
    gap: 4rem;
  }
  .scroll {
    width: 3rem;
  }
  .calendar-icon {
    width: 25%;
  }
  .slide-btn-link {
    height: 15%;
  }
  .company-btn-link {
    width: 28vw;
  }
  .sticky-banner.show {
    width: 18vw;
    height: 18vw;
  }
  .swiper-roomslide {
    margin-right: 4rem;
    width: 35vw;
  }
  .footer .inner {
    background-size: 70%;
  }
  .wp-block-column.greeting-info.is-layout-flow.wp-block-column-is-layout-flow {
    flex-wrap: wrap-reverse;
  }
  .greeting-right figure.aligncenter.size-large {
    width: 30%;
    border-radius: 10px;
    margin-bottom: 2rem;
  }
  .sub-page-space {
    height: 5rem !important;
  }
  .greeting-left {
    padding: 0;
  }
  .company-contents {
    padding: 0;
  }
  .seat-layout-btn a {
    width: 90%;
  }
  .reservation-btn-ttl {
    font-size: 1.6rem;
  }
  .reservation-btn a {
    width: 90%;
  }
  .pre-back_gra {
    left: -22rem;
  }
  .rental-btn a {
    width: 100%;
  }
  .f-button, .f-button.active {
    height: 8vw;
  }
  h4.news-post-txt {
    display: none;
  }
  a.allnews-btn {
    width: 30vw;
  }
}
@media screen and (max-width: 820px) {
  .rental-txt-wrap {
    width: 80%;
  }
  .single-ttlwrap {
    padding: 23rem 5rem 0 5rem;
  }
  section.single-content-wrap {
    padding: 1rem 5rem 1rem;
  }
}
@media screen and (max-width: 810px) {
  .slide-btn-link {
    height: 13%;
    width: 28%;
  }
  .btn-radius {
    right: calc(28%);
  }
}
@media screen and (max-width: 800px) {
  .slide-left {
    top: 57vw;
  }
}
@media screen and (max-width: 768px) {
  .slide-left {
    top: 27vw;
  }
  .navinner {
    width: 40vw;
  }
  .news-btn-link {
    width: 27vw;
  }
  table.is-stacked-on-mobile td:not(:last-child) {
    padding-bottom: 0 !important;
  }
  table.is-stacked-on-mobile tr td:not(:first-child) {
    padding-top: .5rem !important;
  }
  .seat-layout-right, .seat-layout-left {
    gap: 0;
  }
  .seat-layout-box {
    padding: 2rem 1rem;
  }
  .reservation-right {
    padding: 0 8rem;
  }
  .reservation-left, .reservation-middle {
    padding: 0 8rem;
    padding-bottom: 5rem;
    border-bottom: 1px #5794B3 solid;
    border-right: 0;
  }
  .reservation-middle, .reservation-right {
    padding-top: 5rem;
  }
  .reservation-info-box {
    padding: 5rem 4rem;
  }
  .sub-pre_inner {
    padding: 1rem 0;
  }
  .rental-right {
    flex-direction: column;
  }
  .rental-btn a {
    width: 40%;
  }
  .sticky-banner.show {
    display: none;
  }
}
@media screen and (max-width: 744px) {
  .slide-left {
    top: 42vw;
  }
  span.slide-txt {
    font-size: 1.2rem;
  }
  .company-imgs {
    height: 71vw;
  }
  .com-gra01 {
    height: 60vw;
    border-radius: 40px 0 40px 40px;
  }
  .com-gra02 {
    width: 12vw;
    height: 12vw;
  }
  .rental-back_gra {
    right: -20rem;
    top: -42rem;
  }
  span.en {
    font-size: 4.4rem;
  }
  span.jp {
    font-size: 14px;
  }
  .sub-page-bg {
    width: 60vw;
    height: 60vw;
  }
  p.precautions-info {
    margin-top: 5rem;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 601px) {
  .slide-left {
    top: 30vw;
  }
  .line {
    height: 23rem;
  }
  .catch-txt {
    width: 6rem;
  }
  .swiper-pagination {
    left: 22% !important;
  }
  .slide-btn-link {
    width: 35%;
  }
  .btn-radius {
    right: calc(35%);
    width: 4%;
  }
  .company-inner {
    flex-direction: column;
    gap: 3rem;
  }
  .company-left {
    width: 100%;
  }
  .company-imgs {
    height: 45vw;
    width: 100%;
  }
  .com-gra01 {
    height: 40vw;
    left: auto;
    right: -2vw;
  }
  .company-btn-link {
    width: 36vw;
    padding: 1.5rem 1rem;
    margin-bottom: 2rem;
  }
  .swiper-roomslide {
    width: 50vw;
  }
  .button {
    height: 12vw;
    width: 30%;
    flex: none;
  }
  .button.active {
    height: 12vw;
    width: 30%;
  }
  .buttons {
    gap: 10px;
    justify-content: normal;
  }
  .screen-btn {
    padding: 1rem 3rem;
  }
  .screen {
    height: 45vw;
  }
  .post-thumb {
    width: 32vw;
    height: 15vw;
  }
  h4.news-post-ttl {
    font-size: 12px;
  }
  h4.news-post-txt {
    font-size: 12px;
  }
  .post-middle time {
    font-size: 10px;
  }
  .news-post {
    gap: 1.5rem;
  }
  .news-btn-link {
    width: 36vw;
  }
  span.ren-en {
    font-size: 5rem;
    line-height: 6rem;
  }
  span.ren-jp {
    font-size: 14px;
  }
  h1.top-rental-title {
    gap: 2rem;
  }
  .accessinfo {
    width: 85%;
  }
  section.footer {
    margin-top: 10rem;
  }
  .office-rental-img {
    height: 50vw;
  }
  .greeting-right figure.aligncenter.size-large {
    width: 40%;
  }
  .f-button, .f-button.active {
    height: 9vw;
    font-size: 15px;
    border-radius: 0 5px 5px 5px;
  }
  .f-screen-img {
    border-radius: 0 10px 0 10px;
  }
  .sub-page-ttl-h2 {
    font-size: 2.5rem;
  }
  h3.sub-gage-ttl-h3 {
    font-size: 12px;
  }
  .conference-info_column {
    gap: 1rem;
  }
  .seat-layout-btn a {
    padding: 1.5rem 1rem !important;
  }
  .reservation-left, .reservation-middle {
    padding: 0 4rem;
    padding-bottom: 5rem;
  }
  .reservation-right {
    padding: 0 4rem;
  }
  .reservation-middle, .reservation-right {
    padding-top: 5rem;
  }
  p.precautions-info {
    margin-top: 3rem;
  }
  .rental-btn a {
    width: 52%;
  }
  .sub-page-space-02 {
    height: 10rem !important;
  }
  .rental-info {
    gap: 1rem;
  }
  .single-ttlwrap {
    padding: 16rem 2rem 0 2rem;
  }
  section.single-content-wrap {
    padding: 1rem 2rem 1rem;
  }
  h1.single-title {
    font-size: 2.5rem;
  }
  .single-info {
    font-size: 15px;
  }
  .single-inner:after {
    bottom: 2rem;
  }
  a.allnews-btn {
    width: 40vw;
    margin: 0 auto;
    margin-top: 6rem;
  }
  .navinner {
    width: 100%;
    padding: 10rem 3rem;
  }
  .nav ul.nonstyle {
    gap: 3rem;
    padding-left: 3rem;
  }
  figure.logo img {
    width: max(15vw, 23rem);
  }
}
@media screen and (max-width: 440px) {
  .slide-btn-link {
    width: 48%;
    height: 17%;
  }
  .btn-radius {
    right: calc(48%);
  }
  .company_ttl {
    margin-bottom: 2rem;
  }
  .company-btn-link {
    width: 100%;
    margin-top: 4rem;
    gap: 3rem;
  }
  .company-imgs {
    height: 50vw;
    border-radius: 25px;
  }
  .swiper-roomslide {
    width: 70vw;
  }
  .con-ttl_toparea {
    flex-wrap: wrap;
  }
  .con-btn {
    width: 100%;
  }
  a.con-btn-link {
    width: 100%;
    margin-top: 1rem;
    margin-bottom: 3rem;
  }
  .con-ttl_toparea .top-ttl {
    width: 100%;
  }
  .buttons {
    margin-top: 2rem;
  }
  .button.active, .button {
    height: 15vw;
  }
  .screen {
    height: 55vw;
  }
  .screen-btn {
    bottom: -2rem;
    right: -2rem;
  }
  .post-thumb {
    height: 19vw;
  }
  .news-post {
    padding: 1rem 2rem;
  }
  .ul_news {
    gap: 1rem;
  }
  .news-btn-link {
    width: 80%;
  }
  .office-rental {
    margin-top: 5em;
  }
  span.detail-txt {
    display: none;
  }
  .ren-detail {
    bottom: 20vw;
  }
  .rental-txt-wrap {
    width: 100%;
  }
  span.ren-en {
    font-size: 4rem;
    line-height: 5rem;
  }
  h1.top-rental-title {
    gap: 1rem;
  }
  td.shuei-last {
    flex-wrap: wrap;
    gap: 1rem;
  }
  h2.contact-title {
    font-size: 3.5rem;
    margin-bottom: 2rem;
  }
  h2.title-jp {
    font-size: 3.5rem;
  }
  .post-middle {
    padding-right: 2rem;
    width: 45vw;
  }
  .bg-01 {
    width: 100vw;
    height: 100vw;
    right: -7rem;
    top: -12rem;
  }
  .bg-02 {
    width: 75vw;
    height: 75vw;
  }
  .bg-03 {
    width: 100vw;
    height: 100vw;
    bottom: 0rem;
  }
  /*
	    .sticky-banner.show {
        width: 100%;
        height: 22vw;
        border-radius: 30px 30px 0 0;
        right: 0;
        bottom: 0;
    }
*/
  .footer_upper {
    margin-top: 10rem;
  }
  .slide .main-visual {
    height: 65rem;
  }
  .catch-txt {
    width: 5rem;
  }
  .line {
    height: 10rem;
    left: 10px;
  }
  .slide-left {
    top: 32vw;
    gap: 2rem;
  }
  .scroll {
    width: 2rem;
  }
  .greeting-right figure.aligncenter.size-large {
    width: 55%;
  }
  .page-body {
    padding: 5rem 4rem;
  }
  .company-table {
    font-size: 14px;
  }
  .sub-page-ttl-h2 {
    font-size: 2.3rem;
  }
  .s-seat-layout-wrap {
    flex-direction: column;
    gap: 1rem;
  }
  .seat-layout-ttl {
    font-size: 1.8rem;
  }
  .seat-btn-flex {
    flex-direction: column;
  }
  .floor-buttons {
    justify-content: flex-start;
  }
  .f-button, .f-button.active {
    width: 31%;
  }
  .sub-ttl_flex {
    flex-direction: column;
    gap: .5rem;
  }
  .reservation-left, .reservation-middle, .reservation-right {
    padding-left: 0;
    padding-right: 0;
  }
  .pre-back_gra {
    left: -9rem;
    bottom: 29rem;
    width: 80vw;
  }
  .rental-back_gra {
    right: -12rem;
    top: -28rem;
    width: 70vw;
  }
  .rental-btn a {
    width: 68%;
  }
  .page-ttl-wrap {
    padding: 24vw 0;
  }
  .sub-page-bg {
    width: 70vw;
    left: -18vw;
  }
  .sub-left {
    flex: 1;
    padding-left: 2rem;
  }
  span.en {
    font-size: 3.8rem;
    line-height: 1;
  }
  .sub-wrap {
    gap: 4rem;
  }
  .sub-page-img {
    height: 40vw;
  }
  .sub-swiper-roomslide {
    width: 60vw;
    border-radius: 5px;
  }
  .page-conference_table {
    font-size: 14px;
  }
  .allnews-ttl-wrap {
    height: 40vw;
  }
  .allnews-page-img {
    height: 40vw;
  }
  .single-left {
    flex-direction: column;
    align-items: baseline;
  }
  a.allnews-btn {
    width: 65vw;
  }
  .seat-layout-wrap {
    gap: 0rem;
  }
  .seat-layout-ttl {
    margin-bottom: 3rem;
  }
	  .page-body {
    padding: 5rem 2rem;
  }
}
@media screen and (max-width: 414px) {
  .slide-btn-link {
    height: 16%;
  }
  .roomslide_wrap {
    margin-top: 8rem;
  }
  .conference-inner {
    margin-top: 10rem;
  }
  .button.active, .button {
    height: 18vw;
  }
  .slide-btn-link {
    padding: 20px;
  }
  .reservation-info-box {
    padding: 3rem 3rem;
  }
  .reservation-middle, .reservation-right {
    padding-top: 3rem;
  }
  .reservation-left, .reservation-middle {
    padding-bottom: 3rem;
  }
  .h-menu {
    width: 7rem;
    height: 6.8rem;
    right: 1rem;
    top: 1rem;
  }
  td.conference_table_column2 {
    width: 54% !important;
  }
}
@media screen and (max-width: 402px) {
  .slide-btn-link {
    height: 22%;
    width: 50%;
  }
  .swiper-pagination {
    gap: 10px;
    left: 25% !important;
  }
  .btn-radius {
    right: calc(50%);
  }
  figure.logo img {
    width: max(13vw, 20rem);
  }
}
@media screen and (max-width: 375px) {
  span.slide-txt {
    font-size: 1rem;
  }
  .rental-right {
    gap: 6vw;
  }
  .allnews-ttl-wrap {
    height: 50vw;
  }
  .allnews-page-img {
    height: 50vw;
  }
  h1.allnews-ttl-alls {
    gap: 2rem;
  }
}
@media screen and (max-width: 320px) {
  .slide-btn-link {
    padding: 14px;
  }
  .footerinner {
    padding: 4rem 2rem 15rem 2rem;
  }
  .contact-btn-link {
    font-size: 2rem;
    width: 28rem;
  }
  .rental-btn a {
    width: 100%;
  }
  .allnews-ttl-wrap {
    height: 60vw;
  }
  .allnews-page-img {
    height: 60vw;
  }
}
@media (orientation: landscape) and (max-width: 844px) {
  body {
    font-size: 1.4rem;
  }
  p, p.precautions-info, p.greeing-txt {
    font-size: 1rem;
  }
  .catch-txt {
    width: 5rem;
  }
  .slide-left {
    top: 15vw;
  }
  .slide-btn-link {
    height: 22%;
    width: 28%;
  }
  span.slide-txt {
    font-size: 1rem;
  }
  .company-btn-link {
    width: 90%;
    padding: 1rem 3rem;
  }
  .news-btn-link {
    width: 50%;
    padding: 1rem 3rem;
  }
  .office-rental-img {
    height: 40vw;
  }
  span.ren-en {
    font-size: 6rem;
    line-height: 6.5rem;
  }
}

.fadein {
  opacity: 0;
  transform: translateY(20px);
  transition: 0.8s ease;
}

.fadein.show {
  opacity: 1;
  transform: translateY(0);
}