@charset "UTF-8";
/* ============== reset css ============== */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
nav ul {
  list-style-type: none;
}
li, ul {
  list-style-type: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
p {
  display: block;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
  border-radius: 0;
}
input {
  -webkit-appearance: none;
}

/* ============== reset css ============== */
/* ========== スタイル ========== */
html, body {
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 62.5%;
  background-color: #30455d;
  color: #fff;
  line-height: 1.7;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: "palt";
  margin: auto;
  overflow-wrap: break-word;
  word-wrap: break-word;
  font-family: futura-pt, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.06em;
  overflow-x: hidden;
}
*, *:after, *:before {
  box-sizing: border-box;
}
a {
  text-decoration: none;
  color: #30455d;
  cursor: pointer;
}
img {
  width: 100%;
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
}
iframe {
  display: inline-block;
  max-width: 100%;
  width: 100%;
}
img[src$=".svg"] {
  width: 100%;
}
svg {
  width: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
}
input::-ms-clear {
  visibility: hidden;
}
div, h2, h3, p {
  letter-spacing: 0.06em;
}
div {
  font-size: 0;
}
button {
  background-color: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
  font-family: futura-pt, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
picture {
  display: block;
}

/* ========== オープニングアニメーション ========== */
.op-anim,
.op-anim2 {
  position: fixed;
  top: 0;
  left: 0;
  margin: 0 auto;
  width: 100%;
  height: 100vh;
}
.op-anim {
  z-index: 99;
  background: #fff;
  animation-duration: 1.2s;
  animation-delay: 1.4s;
  animation-fill-mode: forwards;
  animation-name: top-op;
}
.op-anim2 {
  z-index: 100;
  /* background: #e9edf3; */
  background: #30455d;
  animation-duration: 0.7s;
  animation-delay: 0.6s;
  animation-fill-mode: forwards;
  animation-name: top-op2;
}
@keyframes top-op {
  0% {
    width: 100%;
    left: 0;
  }
  50% {
    width: 100%;
  }
  100% {
    width: 0%;
    left: 100%;
  }
}
@keyframes top-op2 {
  0% {
    width: 100%;
    left: 0;
  }
  50% {
    width: 100%;
  }
  100% {
    width: 0%;
    left: 100%;
  }
}
/* ========== スクロールアニメーション ========== */
.anim {
  -webkit-clip-path: inset(0 100% 0 0);
  clip-path: inset(0 100% 0 0);
  transition: -webkit-clip-path 2s cubic-bezier(.23, 1, .32, 1) 0s;
  transition: clip-path 2s cubic-bezier(.23, 1, .32, 1) 0s;
}
.anim[aria-hidden="false"] {
  -webkit-clip-path: inset(0 0 0 0);
  clip-path: inset(0 0 0 0);
}
.wp-block-image {
  -webkit-clip-path: inset(0 100% 0 0);
  clip-path: inset(0 100% 0 0);
  transition: -webkit-clip-path 2s cubic-bezier(.23, 1, .32, 1) 0s;
  transition: clip-path 2s cubic-bezier(.23, 1, .32, 1) 0s;
}
.wp-block-image[aria-hidden="false"] {
  -webkit-clip-path: inset(0 0 0 0);
  clip-path: inset(0 0 0 0);
}

/* ========== header ========== */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 70;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.header.active {
  transition: all 1s ease-in-out;
  transition-delay: 1.1s;
}
.header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header-logo {
  padding: 30px;
  background-color: #fff;
  transition: all 0.3s ease-in-out;
}
.header-logo a {
  display: block;
}
.header-logo svg {
  width: 210px;
  height: auto;
}
.header-logo svg .d {
  fill: #f7b52c;
}
.header-logo svg .e {
  fill: #006934;
}
.header-logo svg .f {
  fill: #036eb7;
}
.header-logo svg .g {
  fill: #fff;
}
.header-logo svg .h {
  fill: #c30d23;
}
.header-logo svg .i {
  fill: #1a1a1a;
}

.header-right {
  padding-right: 30px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
header[data-js-scroll=true] {
  /* スクロールした時のスタイル */
  background-color: rgba(48, 69, 93, 0.4196078431);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
header[data-js-scroll=true] .header-logo {
  background-color: unset;
  transition: background-color 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
header[data-js-scroll=true] .header-logo svg .i {
  fill: #fff;
}
header[data-js-scroll=true].header.open {
  background-color: unset;
  -webkit-backdrop-filter: unset;
          backdrop-filter: unset;
}

/* ========== headerお問い合わせボタン ========== */
.contact-btn-wrap {
  margin-right: 30px;
}
.contact-btn-wrap button {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 25px;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.contact-btn-wrap button:hover {
  background-color: #fff;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.contact-btn-wrap .button-text {
  font-size: 1.3rem;
  line-height: 3.1;
  color: #151e29;
  margin-right: 10px;
  padding-left: 14px;
}
.contact-btn-wrap img {
  width: 42px;
}

/* ========== header menu ========== */
.menu-btn-wrap {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  z-index: 40;
}
.menu-btn-inner {
  display: block;
  width: 100%;
  height: 100%;
  outline: none;
  transition: all 0.3s ease-in-out;
}
.menu-btn-inner p {
  font-size: 1.1rem;
  line-height: 1;
  color: #fff;
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
}
.menu-btn-line {
  width: 34px;
  height: 1px;
  background-color: #fff;
  display: block;
  position: absolute;
  top: 12px;
  right: 50%;
  transform: translateX(50%);
  transition: all 0.3s ease-in-out;
}
.menu-btn-line.second {
  top: auto;
  bottom: 26px;
  right: 50%;
  transform: translateX(50%);
}

.header.open {
  position: fixed;
}
.header.open .header-logo {
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
}
.header.open .menu-btn-inner p {
  color: #fff!important;
  transition: all 0.3s ease-in-out;
}
.header.open .menu-btn-line {
  background-color: #fff!important;
  top: 15px;
  transform: rotate(45deg);
  transition: all 0.3s ease-in-out;
  right: 8px;
}
.header.open .menu-btn-line.second {
  background-color: #fff;
  top: auto;
  bottom: 34px;
  right: 8px;
  transform: rotate(-45deg);
  transition: all 0.3s ease-in-out;
}
.sp-block {
  display: none;
}
.pc-block {
  display: block;
}
.menu-list-flex {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  height: 100vh;
}
.menu-logo-wrap {
  padding: 0 40px;
  max-width: 320px;
  margin: 0 auto;
}
.menu-logo-wrap p {
  font-size: 1.4rem;
  color: #151e29;
  margin-bottom: 30px;
}
.menu-logo-wrap p a {
  display: inline-block;
  width: 18px;
  margin-left: 10px;
}
.menu-logo-wrap p a img {
  margin-bottom: 3px;
}
.menu-box-logo {
  display: block;
  width: 210px;
  margin: 0 auto 30px;
}
.copy-wrap .privacy-btn {
  margin-bottom: 8px;
}
.menu-box-txt-wrap {
  display: flex;
  align-items: center;
  width: 100%;
  background-image: url("../images/bg-menu-img_pc.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  min-height: 100%;
  box-shadow: -6px 0 20px 0px rgba(32, 43, 58, 0.4);
}
.menu-list-title {
  font-size: 1.4rem;
  font-weight: 700;
  font-style: italic;
  color: #ad9d8f;
  margin-bottom: 10px;
}
.menu-list-wrap {
  margin-left: 90px;
}
.menu-list-inner {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 90px;
}
.menu-list-inner-flex:first-of-type {
  margin-right: 60px;
}
.access-wrap .address-txt {
  display: block;
  font-size: 1.5rem;
  line-height: 1.8;
  color: #fff;
  margin-bottom: 10px;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.access-wrap .address-txt:hover {
  color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.access-wrap .tel-txt {
  font-size: 1.6rem;
  color: #fff;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.access-wrap .tel-txt:hover {
  color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.tel-wrap {
  display: inline-block;
  /* text-align: justify;
  text-align-last: justify; */
}

.menu-box {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow-y: auto;
  z-index: 60;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease-in-out;
}
.menu-box .header-logo-path1 {
  fill: #fff;
}
.menu-box .menu-box-inner {
  height: 100%;
  overflow-y: scroll;
}
.menu-box .header-logo-path2 {
  stroke: #333;
}
.menu-box .menu-box-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.menu-box .menu-btn-wrap {
  margin-right: 8px;
}
.menu-box .menu-btn-txt {
  color: #fff;
}
.menu-box .menu-btn-line {
  background-color: #fff;
}
.menu-box .close-img {
  width: 16px;
}
.menu-box .menu-list-inner .menu-list a {
  position: relative;
  opacity: 1;
}

.menu-list-inner .menu-list {
  display: block;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 30px;
}
.menu-list-inner .menu-list:last-child {
  margin-bottom: 0;
}
.menu-list-inner .menu-list span {
  display: block;
  font-size: 1.2rem;
  font-weight: 100;
  margin-top: 8px;
}
.menu-list-inner .menu-list.last {
  margin-bottom: 0;
}
.menu-list-inner .menu-list a {
  position: relative;
  display: inline;
  color: #fff;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.menu-list-inner .menu-list a:hover {
  color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.menu-box.open {
  opacity: 1;
  visibility: visible;
  transition: all 0.2s ease-in-out;
}

@media screen and (max-width: 768px) {
  .sp-block {
    display: block;
  }
  .pc-block {
    display: none;
  }
  .header-right {
    padding-right: 20px;
  }
  .header-logo {
    padding: 20px;
  }
  .header-logo svg {
    width: 135px;
  }
  .contact-btn-wrap {
    margin-right: 20px;
  }
  .contact-btn-wrap .button-text {
    display: none;
  }
  .contact-btn-wrap img {
    width: 36px;
  }
  .menu-btn-wrap {
    width: 45px;
    height: 45px;
  }
  .menu-btn-wrap p {
    bottom: 2px;
  }
  .menu-btn-line {
    top: 8px;
  }
  .menu-btn-line.second {
    bottom: 25px;
  }
  .header-menu-inner {
    height: 100vh;
    padding: 20px;
  }
  .menu-list-flex {
    flex-direction: column-reverse;
    align-content: flex-start;
    height: auto;
    overflow-y: scroll;
  }
  .header.open .menu-btn-line {
    top: 17px;
    right: 5px;
  }
  .header.open .menu-btn-line.second {
    bottom: 27px;
    right: 5px;
  }
  .menu-box-logo {
    width: 180px;
  }
  .menu-logo-wrap {
    padding: 0;
    padding: 40px 0;
    text-align: center;
  }
  .menu-logo-wrap p {
    margin-bottom: 0;
  }
  .copy-wrap {
    margin-top: 30px;
  }
  .menu-box-txt-wrap {
    padding: 90px 20px;
    min-height: auto;
    height: 100%;
    box-shadow: 0 6px 10px 0px rgba(32, 43, 58, 0.4);
  }
  .menu-list-wrap {
    margin-left: 0;
  }
  .menu-list-inner {
    margin-bottom: 60px;
  }
  .menu-list-inner .menu-list {
    font-size: 2rem;
    margin-bottom: 24px;
  }
  .menu-list-inner .menu-list span {
    font-size: 1.1rem;
  }
  .menu-list-title {
    font-size: 1.1rem;
  }
  .menu-list-inner-flex:first-of-type {
    margin-right: 40px;
  }
  .access-wrap .address-txt {
    font-size: 1.5rem;
  }
  .access-wrap .tel-txt {
    font-size: 1.5rem;
  }
}
.kv-wrap {
  position: relative;
  margin-top: 118px;
}
.kv-wrap:before {
  content: "";
  display: block;
  background-color: #ad9d8f;
  width: 95%;
  height: 100%;
  position: absolute;
  top: -118px;
  right: 0;
}

.kv-flex-wrap {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}
.kv-flex-wrap .sns-link-wrap {
  width: 120px;
  z-index: 1;
  margin: 0 auto 170px;
}
.kv-flex-wrap .sns-wrap {
  font-size: 1.4rem;
  writing-mode: vertical-rl;
  margin: 0 auto;
}
.kv-flex-wrap .sns-wrap a {
  display: inline-block;
  color: #fff;
  width: 18px;
}
.kv-flex-wrap .sns-wrap a img {
  margin-top: 10px;
  margin-left: 4px;
}

.kv-slide-wrap {
  position: relative;
  width: 93%;
  box-shadow: 8px 10px 30px 0px rgba(32, 43, 58, 0.35);
}

.kv-slide-wrap .swiper-slide-active .slide-img img,
.kv-slide-wrap .swiper-slide-active .slide-img img,
.kv-slide-wrap .swiper-slide-duplicate-active .slide-img img {
  transform: scale(1.04);
  transition: transform 6s ease-in-out;
}
.kv-slide-wrap .swiper-slide-prev .slide-img img,
.kv-slide-wrap .swiper-slide-next .slide-img img,
.kv-slide-wrap .swiper-slide-duplicate-prev .slide-img img,
.kv-slide-wrap .swiper-slide-duplicate-next .slide-img img {
  transform: scale(1.0);
  transition: transform 5s ease-in-out;
}
.kv-slide-wrap .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.kv-slide-wrap .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  vertical-align: middle;
}
.kv-slide-wrap .swiper-horizontal > .swiper-pagination-bullets,
.kv-slide-wrap .swiper-pagination-bullets.swiper-pagination-horizontal,
.kv-slide-wrap .swiper-pagination-custom,
.kv-slide-wrap .swiper-pagination-fraction {
  bottom: 20px;
  right: auto;
  left: 30px;
  width: 100%;
  text-align: left;
}
.kv-slide-wrap .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .kv-slide-wrap .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px;
}
.kv-slide-wrap .swiper-pagination-bullet-active {
  background-color: #fff;
  width: 8px;
  height: 8px;
}

/* ========== kv-title ========== */
.kv-title-wrap {
  width: 27.77%;
  position: absolute;
  top: 50%;
  left: 10%;
  transform: translate(0%, -50%);
  z-index: 1;
}
.kv-title-wrap svg .f {
  filter: url(#d);
}
.kv-title-wrap svg .g {
  fill: #fff;
  stroke: #fff;
  stroke-miterlimit: 10;
  stroke-width: .5px;
}

/* ========== scroll-down ========== */
.scroll-wrap {
  width: auto;
  position: absolute;
  /* right: 60px; */
  right: -50px;
  bottom: -50px;
  z-index: 20;
}

.scroll-circle-wrap {
  width: 140px;
}

.scroll-circle img {
  -webkit-animation: rotate-anime 28s linear infinite;
  animation: rotate-anime 28s linear infinite;
}

.scroll-down img {
  width: 14px;
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
}

@-webkit-keyframes rotate-anime {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-anime {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media screen and (max-width: 768px) {
  .kv-wrap {
    margin-top: 77px;
  }
  .kv-wrap:before {
    top: -77px;
  }
  .kv-flex-wrap .sns-link-wrap {
    width: 70px;
    margin: 0 auto 107px;
  }
  .kv-flex-wrap .sns-wrap {
    font-size: 1.2rem;
  }
  .kv-flex-wrap .sns-wrap a {
    width: 15px;
  }
  .kv-flex-wrap .sns-wrap a img {
    margin-left: 2px;
  }
  .kv-slide-wrap {
    width: 82%;
  }
  /* ========== pagination ========== */
  .kv-slide-wrap .swiper-horizontal > .swiper-pagination-bullets,
  .kv-slide-wrap .swiper-pagination-bullets.swiper-pagination-horizontal,
  .kv-slide-wrap .swiper-pagination-custom,
  .kv-slide-wrap .swiper-pagination-fraction {
    left: 15px;
    bottom: 15px;
  }
  .kv-slide-wrap .swiper-pagination-bullet-active {
    width: 6px;
    height: 6px;
  }
  /* ========== kv-title ========== */
  .kv-title-wrap {
    width: 63.9%;
    top: 38%;
    left: 6%;
  }
  /* ========== scroll-down ========== */
  .scroll-wrap {
    /* right: 42px; */
    right: -29px;
    bottom: -29px;
  }
  .scroll-circle-wrap {
    width: 85px;
  }
  .scroll-down img {
    width: 11px;
  }
}
.main-wrap {
  position: relative;
  width: 100%;
}
.main-wrap .loop-slide-txt {
  width: 80px;
  /* height: 200vh; */
  height: 44%;
  position: absolute;
  top: 0;
  left: -10px;
  z-index: 3;
  overflow-y: hidden;
}
/* .main-wrap .loop-slide-txt img {
  padding: 100px 0;
} */
.main-wrap .loop-slide-txt img:first-of-type {
  -webkit-animation: loop1 60s linear infinite;
          animation: loop1 60s linear infinite;
}
/* .main-wrap .loop-slide-txt img:last-of-type {
  -webkit-animation: loop2 60s linear infinite;
          animation: loop2 60s linear infinite;
} */

@-webkit-keyframes loop1 {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  to {
    -webkit-transform: translateY(200%);
    transform: translateY(200%);
  }
}
@keyframes loop1 {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  to {
    -webkit-transform: translateY(200%);
    transform: translateY(200%);
  }
}
/* @-webkit-keyframes loop2 {
  0% {
    -webkit-transform: translateY(-200%);
    transform: translateY(-200%);
  }
  to {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateY(-200%);
    transform: translateY(-200%);
  }
  to {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
} */
.sec-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding-top: 120px;
  z-index: 2;
}
.sec-inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 20px;
}
.sec-title-wrap {
  display: inline-block;
  position: relative;
  margin-bottom: 60px;
}
.sec-title-wrap span {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 14px;
}
.sec-title-wrap h2 {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1;
}
.sec-title-wrap:before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 1px;
  background-color: #ad9d8f;
  position: absolute;
  top: 40px;
  right: -80px;
  transform: rotate(-55deg);
}

.more-btn {
  position: relative;
}
.more-btn a {
  font-size: 1.4rem;
  color: #fff;
  position: relative;
  z-index: 2;
}
.more-btn a img {
  width: 11px;
  margin-left: 5px;
  margin-bottom: 3px;
  position: relative;
  z-index: 2;
}
.more-btn:after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  background-color: #ad9d8f;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: -15px;
  transform: translateY(-50%);
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: 1;
}
.more-btn:hover:after {
  width: 50px;
  height: 50px;
  right: -19px;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.more-btn.blue a {
  color: #30455d;
}
.more-btn.white-two a {
  color: #fff;
}
.more-btn.white-two:after {
  background-color: #30455d;
}

@media screen and (max-width: 768px) {
  .main-wrap .loop-slide-txt {
    display: none;
  }
  .sec-wrap {
    padding-top: 80px;
  }
  .sec-inner {
    max-width: 100%;
    padding: 0 20px;
  }
  .sec-title-wrap {
    margin-bottom: 40px;
  }
  .sec-title-wrap h2 {
    font-size: 2.5rem;
    margin-bottom: 6px;
  }
  .sec-title-wrap h2::before {
    width: 12px;
    top: 13px;
    left: -20px;
  }
  .sec-title-wrap span {
    font-size: 1.2rem;
  }
  .more-btn {
    position: relative;
  }
  .more-btn a {
    font-size: 1.3rem;
  }
  .more-btn a img {
    width: 11px;
    margin-left: 5px;
    margin-bottom: 3px;
    position: relative;
    z-index: 2;
  }
  .more-btn:after {
    width: 34px;
    height: 34px;
    right: -12px;
  }
  .more-btn:hover:after {
    width: 40px;
    height: 40px;
    right: -15px;
    transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
  }
}
#business {
  padding-bottom: 120px;
  z-index: 3;
}
#business .content-wrap {
  width: 100%;
}
#business .content-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
  margin-bottom: 80px;
}
#business .content-item:nth-of-type(even) {
  flex-direction: row-reverse;
}
#business .content-item:nth-of-type(even) .txt-wrap {
  margin-left: 0;
  margin-right: 40px;
}
#business .content-item:last-of-type {
  margin-bottom: 0;
}
#business .content-item .img-wrap {
  box-shadow: 8px 10px 25px 0px rgba(32, 43, 58, 0.4);
}
#business .content-item .txt-wrap {
  width: 40%;
  flex-shrink: 0;
  margin-left: 40px;
}
#business .content-item h3 {
  font-size: 2.4rem;
  line-height: 1;
  margin-bottom: 24px;
}
#business .content-item h3 span {
  font-size: 6rem;
  font-style: italic;
  color: #ad9d8f;
  margin-right: 10px;
}
#business .content-item p {
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  #business .content-item {
    display: block;
    margin-bottom: 60px;
  }
  #business .content-item:nth-of-type(even) .txt-wrap {
    margin-right: 0;
  }
  #business .content-item .img-wrap {
    margin-bottom: 20px;
  }
  #business .content-item h3 {
    font-size: 1.8rem;
    margin-bottom: 18px;
  }
  #business .content-item h3 span {
    font-size: 4.5rem;
  }
  #business .content-item p {
    font-size: 1.5rem;
    margin-bottom: 30px;
  }
  #business .content-item .txt-wrap {
    width: 100%;
    margin-left: 0;
  }
}
#property {
  padding-bottom: 120px;
  background-color: #fff;
  z-index: 3;
}
#property .sec-title-wrap {
  color: #30455d;
}
#property .content-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
#property .content-item {
  display: block;
  width: calc(50% - 30px);
  margin-bottom: 60px;
}
#property .content-item:first-of-type {
  margin-right: 60px;
}
#property .content-item:last-of-type {
  margin: 0 auto;
}
#property .content-item .img-wrap {
  position: relative;
  width: 100%;
  margin-bottom: 30px;
  box-shadow: 8px 10px 20px 0px rgba(32, 43, 58, 0.35);
}
#property .content-item .img-wrap h3 {
  width: 100%;
  text-align: center;
  font-size: 2.4rem;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#property .content-item .img-wrap span {
  font-size: 1.4rem;
  font-style: italic;
  color: #fff;
  background-color: #30455d;
  padding: 4px 12px;
  position: absolute;
  top: 0;
  left: 0;
}
#property .content-item .txt-wrap {
  font-size: 1.5rem;
  color: #30455d;
}
#property .content-item .txt-wrap p {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  #property .content-wrap {
    display: block;
  }
  #property .content-item {
    width: 100%;
    margin-right: 0;
  }
  #property .content-item:first-of-type {
    margin-right: 0;
  }
  #property .content-item:last-of-type {
    margin: 0 auto;
  }
  #property .content-item .img-wrap {
    margin-bottom: 20px;
  }
  #property .content-item .img-wrap h3 {
    font-size: 2rem;
    width: 100%;
    text-align: center;
  }
  #property .content-item .img-wrap span {
    font-size: 1.2rem;
  }
  #property .content-item .txt-wrap p {
    margin-bottom: 30px;
  }
}
#news {
  padding-bottom: 80px;
  background-color: #ad9d8f;
}
#news .sec-title-flex-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#news .sec-title-wrap:before {
  background-color: #30455d;
}
#news .more-btn.white-two {
  margin-bottom: 40px;
}

.news-item {
  border-top: 1px solid #fff;
}
.news-item:last-of-type {
  border-bottom: 1px solid #fff;
}
.news-item a {
  display: block;
  color: #fff;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.news-item a:hover {
  color: #30455d;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.news-item a dl {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 32px 0;
}
.news-item a .news-date {
  font-size: 1.4rem;
  margin-right: 80px;
}
.news-item a .news-title {
  font-size: 1.4rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  #news .more-btn.white-two {
    margin-bottom: 24px;
    margin-right: 10px;
  }
  .news-item a dl {
    padding: 16px 0;
  }
  .news-item a .news-date {
    font-size: 1.2rem;
    margin-right: 30px;
  }
  .news-item a .news-title {
    font-size: 1.2rem;
  }
}
#loop-slide-img {
  padding: 20px 0;
  z-index: 3;
}

.sec-loop-slide-wrap .loop-swiper {
  overflow: visible;
  margin-bottom: 20px;
}
.sec-loop-slide-wrap .loop-swiper .swiper-wrapper {
  transition-timing-function: linear;
}
.sec-loop-slide-wrap .loop-swiper2 {
  overflow: visible;
}
.sec-loop-slide-wrap .loop-swiper2 .swiper-wrapper {
  transition-timing-function: linear;
}
.sec-loop-slide-wrap .swiper-slide {
  width: 452px !important;
  height: auto !important;
  padding: 0 10px;
}
.sec-loop-slide-wrap .swiper-slide .slide-inner {
  width: 100%;
}
.sec-loop-slide-wrap .swiper-slide img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 768px) {
  .sec-loop-slide-wrap .loop-swiper {
    overflow: visible;
  }
  .sec-loop-slide-wrap .loop-swiper2 {
    overflow: visible;
  }
  .sec-loop-slide-wrap .swiper-slide {
    width: 200px !important;
    height: auto !important;
    padding: 0 10px;
  }
}
#blog {
  padding-bottom: 120px;
  background-color: #fff;
  z-index: 3;
}
#blog .sec-title-flex-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#blog .sec-title-wrap {
  color: #30455d;
}
#blog .sec-title-wrap:before {
  background-color: #ad9d8f;
}
#blog .more-btn.blue {
  margin-bottom: 40px;
}

.article-wrap {
  position: relative;
  width: 100%;
}

.article-flex {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.article-item {
  width: 33.33%;
  margin-right: 30px;
}
.article-item:last-of-type {
  margin-right: 0;
}
.article-item a {
  position: relative;
  display: block;
  background-color: #ad9d8f;
  padding: 0px 20px 30px;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.article-item a:after {
  content: "";
  display: block;
  width: 100%;
  height: 20px;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
}
.article-item a:hover .article-img {
  transform: scale(1.04);
  transition: transform 1s cubic-bezier(0.25, 1, 0.5, 1);
}
.article-item a:hover .article-txt-wrap {
  color: #30455d;
  transition: all 1s cubic-bezier(0.25, 1, 0.5, 1);
}
.article-item a:hover .article-cate {
  border-color: #30455d;
  transition: border-color 1s cubic-bezier(0.25, 1, 0.5, 1);
}

.article-img-wrap {
  overflow: hidden;
  box-shadow: 8px 10px 15px 0px rgba(32, 43, 58, 0.20);
}

.article-img {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 0;
  padding-bottom: 64.25%;
  position: relative;
  z-index: 1;
  transition: all 1s cubic-bezier(0.25, 1, 0.5, 1);
}

.article-txt-wrap {
  color: #fff;
  margin-top: 24px;
  position: relative;
  z-index: 1;
  transition: all 1s cubic-bezier(0.25, 1, 0.5, 1);
}
.info-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 10px;
}
.article-txt-wrap .info-wrap {
  margin-bottom: 12px;
}
.article-cate {
  font-size: 1.3rem;
  line-height: 1.4;
  border-right: 1px solid #fff;
  margin-right: 10px;
  padding-right: 10px;
  transition: border-color 1s cubic-bezier(0.25, 1, 0.5, 1);
}

.article-info {
  font-size: 1.3rem;
  line-height: 1.4;
}

.article-title {
  font-size: 1.5rem;
  height: 48px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  #blog {
    padding-bottom: 60px;
  }
  #blog .more-btn.blue {
    margin-bottom: 24px;
    margin-right: 10px;
  }
  .article-flex {
    display: block;
  }
  .article-item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 60px;
  }
  .article-item:last-of-type {
    margin-bottom: 0;
  }
  .article-title {
    height: auto;
  }
}
#contact {
  padding: 60px 0;
  background-image: url("../images/bg-contact-img_pc.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: 3;
}
#contact .sec-title-flex-wrap {
  text-align: center;
}
#contact .sec-title-wrap {
  margin-bottom: 36px;
}
#contact .sec-title-wrap::before {
  content: none;
}

.contact-read-txt {
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  margin-bottom: 26px;
}

.contact-info-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
.contact-info-wrap .more-btn {
  margin-right: 60px;
}

.contact-tel {
  text-align: center;
  border-right: 1px solid #fff;
  margin-right: 40px;
  padding-right: 40px;
}
.contact-tel .tel-txt {
  font-size: 2rem;
  color: #fff;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.contact-tel .tel-txt:hover {
  opacity: 0.7;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.contact-tel .tel-txt span {
  font-weight: 600;
  color: #ad9d8f;
}
.contact-tel .time-txt {
  font-size: 1.3rem;
  color: #fff;
  text-align: center;
}
.contact-tel .fax-txt {
  font-size: 2rem;
  letter-spacing: 0;
  line-height: 1;
  margin-bottom: 10px;
}
.contact-tel .fax-txt span {
  font-weight: 600;
  color: #ad9d8f;
}

@media screen and (max-width: 768px) {
  #contact .sec-title-wrap {
    margin-bottom: 30px;
  }
  .contact-read-txt {
    font-size: 1.5rem;
  }
  .contact-info-wrap {
    display: block;
    text-align: center;
  }
  .contact-info-wrap .more-btn {
    margin-right: 0;
  }
  .contact-tel {
    margin-right: 0;
    padding-right: 0;
    border-right: 0;
    margin-bottom: 36px;
  }
  .contact-tel .tel-txt {
    font-size: 1.8rem;
  }
  .contact-tel .fax-txt {
    font-size: 1.8rem;
  }
}

.page-template,
.post-template-default {
  background-color: #fff;
  color: #30455d;
}
.page-template .header-logo,
.post-template-default .header-logo {
  background-color: transparent;
}
.page-template .sec-title-wrap {
  color: #fff;
  margin-bottom: 0;
}
.page-template .sec-inner {
  max-width: 1020px;
  margin: 0 auto;
  padding: 0 30px;
}
body.page-template .header-logo svg .i {
  fill: #fff;
}

.page-header-wrap {
  background-image: url("../images/bg-page-img_pc.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 118px;
}

.page-header-inner {
  max-width: 1020px;
  margin: 0 auto;
  padding: 90px 30px 60px;
}

@media screen and (max-width: 768px) {
  .page-template .sec-inner {
    max-width: 100%;
    padding: 0 20px;
  }
  .page-header-wrap {
    background-image: url("../images/bg-page-img_sp.jpg");
    padding-top: 77px;
  }
  .page-header-inner {
    max-width: 100%;
    padding: 60px 20px 40px;
  }
}
#page-company {
  padding-bottom: 90px;
}
#page-company .about-wrap {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 90px;
}
#page-company .about-txt-wrap {
  width: 60%;
  margin-right: 60px;
}
#page-company .about-txt-wrap p {
  font-size: 1.6rem;
  margin-bottom: 24px;
}
#page-company .about-txt-wrap .name-txt span {
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: 6px;
}
#page-company .about-txt-wrap .name-txt img {
  width: 180px;
}
#page-company .about-title-wrap {
  margin-bottom: 30px;
}
#page-company .about-title-wrap span {
  font-size: 1.2rem;
}
#page-company .about-title-wrap h3 {
  font-size: 2.4rem;
}
#page-company .about-title-wrap.sub {
  margin-top: 48px;
}
#page-company .about-title-wrap h4 {
  font-size: 2rem;
}
#page-company .about-img-wrap {
  position: relative;
  width: 40%;
}
#page-company .about-img-wrap p {
  box-shadow: -8px 10px 27px 0px rgba(32, 43, 58, 0.20);
}
/* #page-company .about-img-wrap p:first-of-type {
  width: 115%;
  position: absolute;
  bottom: -150px;
  right: 60px;
} */

.company-table-inner {
  width: 100%;
  border: 1px solid #151e29;
  overflow: hidden;
}
.company-table-inner tr:last-of-type th {
  border-bottom: none;
}
.company-table-inner tr:last-of-type td {
  border-bottom: none;
}
.company-table-inner th {
  font-size: 1.6rem;
  font-weight: 600;
  text-align: left;
  width: 25%;
  padding: 20px 20px;
  background-color: #dadfe6;
  border-bottom: 1px solid #151e29;
}
.company-table-inner td {
  font-size: 1.6rem;
  text-align: left;
  padding: 20px 20px;
  border-bottom: 1px solid #151e29;
  border-left: 1px solid #151e29;
}
.company-table-inner .map-link {
  font-size: 1.2rem;
  color: #30455d;
  display: inline-block;
  vertical-align: middle;
  border: 1px solid #ad9d8f;
  margin-left: 10px;
  margin-top: -5px;
  padding: 0 6px;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.company-table-inner .map-link:hover {
  background-color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.movie-wrap {
  padding-top: 90px;
}
.movie-wrap h3 {
  font-size: 3.2rem;
  font-weight: 800;
  letter-spacing: 0;
  text-align: center;
  margin-bottom: 30px;
}

.video-wrap {
  max-width: 100%;
  width: 100%;
}
.video-wrap video {
  max-width: 100%;
  width: 100%;
  background: transparent url(../images/video-thumb.jpg) 50% 50%/cover no-repeat;
}

@media screen and (max-width: 768px) {
  #page-company {
    padding-bottom: 60px;
  }
  #page-company .about-title-wrap {
    margin-bottom: 24px;
  }
  #page-company .about-title-wrap h3 {
    font-size: 2rem;
  }
  #page-company .about-wrap {
    display: block;
    margin-bottom: 60px;
  }
  #page-company .about-txt-wrap p {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
  #page-company .about-txt-wrap {
    width: 100%;
    margin-bottom: 0;
    margin-right: 0;
  }
  #page-company .about-img-wrap {
    width: 100%;
    margin-bottom: 48px;
  }
  #page-company .about-title-wrap.sub {
    margin-top: 48px;
  }
  #page-company .about-title-wrap h4 {
    font-size: 1.6rem;
  }
  /* #page-company .about-img-wrap {
    width: 70%;
    margin-left: auto;
  }
  #page-company .about-img-wrap p:first-of-type {
    right: 70px;
  } */
  #page-company .about-txt-wrap .name-txt img {
    width: 150px;
  }
  .company-table-inner th {
    font-size: 1.3rem;
    font-weight: 600;
    width: 25%;
    padding: 10px 8px;
  }
  .company-table-inner td {
    font-size: 1.3rem;
    padding: 10px 8px;
  }
  .company-table-inner .map-link {
    font-size: 1.1rem;
    line-height: 1.5;
    padding: 0 4px;
    margin-top: -4px;
  }
  .movie-wrap {
    padding-top: 60px;
  }
  .movie-wrap h3 {
    font-size: 2.5rem;
    margin-bottom: 20px;
  }
}
.contact-read-txt {
  text-align: center;
  margin-bottom: 60px;
}
.contact-read-txt h3 {
  font-size: 1.6rem;
  font-weight: 400;
  margin-bottom: 20px;
}
.contact-read-txt p {
  font-size: 1.6rem;
  font-weight: 400;
  margin-bottom: 20px;
}

.contact-caption {
  max-width: 380px;
  margin: 0 auto;
  text-align: left;
}
.contact-caption p {
  font-size: 1.2rem;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .contact-read-txt {
    margin-bottom: 40px;
  }
  .contact-read-txt h3 {
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
  .contact-read-txt p {
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
  .contact-caption {
    max-width: 100%;
  }
  .contact-caption p {
    font-size: 1.1rem;
    margin-bottom: 0;
  }
}
#page-inter {
  padding-bottom: 90px;
}

.inter-read-txt {
  text-align: center;
  margin-bottom: 60px;
}
.inter-read-txt h3 {
  font-size: 1.6rem;
  font-weight: 400;
  margin-bottom: 12px;
}
.inter-read-txt p {
  font-size: 1.2rem;
  font-weight: 400;
}

.room-list-wrap h3 {
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  background-color: #dadfe6;
  max-width: 350px;
  margin: 0 auto 20px;
  padding: 12px 0;
}

.pdf-wrap {
  padding: 60px;
  background-color: #dadfe6;
}

.pdf-inner {
  padding: 20px;
  background-color: #fff;
}
.pdf-inner a {
  display: block;
  text-align: left;
}
.pdf-inner a:hover .pdf-title {
  color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.pdf-inner .pdf-img {
  display: inline-block;
  width: 40px;
  margin-right: 12px;
  vertical-align: bottom;
}
.pdf-inner .pdf-title {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  color: #30455d;
  text-decoration: underline;
  margin-bottom: 5px;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

@media screen and (max-width: 768px) {
  #page-inter .sec-title-wrap {
    margin-bottom: 30px;
  }
  .inter-read-txt {
    margin-bottom: 40px;
  }
  .inter-read-txt h3 {
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
  .inter-read-txt p {
    font-size: 1.1rem;
  }
  .room-list-wrap {
    text-align: center;
  }
  .room-list-wrap h3 {
    display: inline-block;
    max-width: 100%;
    font-size: 1.5rem;
    padding: 8px 30px;
  }
  .pdf-wrap {
    padding: 24px;
  }
  .pdf-inner {
    padding: 12px;
  }
  .pdf-inner .pdf-img {
    width: 36px;
  }
  .pdf-inner .pdf-title {
    font-size: 1.5rem;
  }
}
#page-blog {
  padding-bottom: 90px;
}
#page-blog .article-flex {
  flex-wrap: wrap;
}
#page-blog .article-item {
  width: calc(33.33% - 20px);
  margin-bottom: 60px;
}
#page-blog .article-item:nth-of-type(3n) {
  margin-right: 0;
}

@media screen and (max-width: 768px) {
  #page-blog .article-item {
    width: 100%;
    margin-bottom: 48px;
  }
  #page-blog .article-item:last-of-type {
    margin-bottom: 0;
  }
}
#page-property .article-wrap {
  margin-bottom: 90px;
}
#page-property .article-flex {
  flex-wrap: wrap;
}
#page-property .article-item {
  width: calc(50% - 24px);
  margin-right: 48px;
  margin-bottom: 48px;
}
#page-property .article-item:nth-of-type(2n) {
  margin-right: 0;
}
#page-property .article-item a {
  background-color: #fff;
  padding: 0;
}
#page-property .article-item a:after {
  content: none;
}
#page-property .article-item a:hover .article-img-wrap {
  box-shadow: 8px 10px 25px 0px rgba(32, 43, 58, 0.5);
  transition: box-shadow 1s cubic-bezier(0.25, 1, 0.5, 1);
}
#page-property .article-item .article-txt-wrap {
  margin-top: 30px;
}
#page-property .article-item .info-wrap {
  flex-wrap: wrap;
  margin-bottom: 0;
}
#page-property .article-item .info-wrap li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 12px;
  margin-right: 30px;
}
#page-property .article-item .info-wrap li.width-max {
  width: 100%;
}
#page-property .article-item .info-wrap li span {
  flex-shrink: 0;
  display: inline-block;
  font-size: 1.1rem;
  line-height: 1;
  color: #ad9d8f;
  padding: 5px 8px;
  margin-right: 10px;
  border: 1px solid #ad9d8f;
}
#page-property .article-item .info-wrap li p {
  font-size: 1.4rem;
  color: #30455d;
}
#page-property .article-item .info-wrap li p .mm {
  border: 0;
  padding: 0;
  margin: 0;
  color: #30455d;
}
#page-property .article-img-wrap {
  position: relative;
  transition: box-shadow 1s cubic-bezier(0.25, 1, 0.5, 1);
}
#page-property .article-img-wrap .label-sale {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
  font-style: italic;
  line-height: 1;
  padding: 8px 12px;
  background-color: #30455d;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
#page-property .article-img-wrap .label-soldout {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(48, 69, 93, 0.8196078431);
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
#page-property .article-img-wrap .label-soldout span {
  width: 100%;
  color: #fff;
  font-size: 4rem;
  font-weight: 600;
  font-style: italic;
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/* ページネーション */
.sec-wrap .wp-pagenavi {
  clear: none;
  font-size: 1.4rem;
  text-align: center;
  display: block;
  width: 100%;
  margin-top: 40px;
}
.sec-wrap .wp-pagenavi a,
.sec-wrap .wp-pagenavi span {
  color: #ad9d8f;
  text-decoration: none;
  border: 0;
  padding: 16px 21px;
  margin: 2px;
  border-radius: 50%;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.sec-wrap .wp-pagenavi a:hover,
.sec-wrap .wp-pagenavi span:hover {
  color: #30455d;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.sec-wrap .wp-pagenavi span.current {
  color: #30455d;
  font-weight: 400;
  border: 1px solid #ad9d8f;
}

@media screen and (max-width: 768px) {
  #page-property .article-item {
    width: 100%;
    margin-right: 0;
  }
  #page-property .article-item .info-wrap li {
    margin-right: 20px;
  }
  /* ページネーション */
  .sec-wrap .wp-pagenavi a,
  .sec-wrap .wp-pagenavi span {
    text-decoration: none;
    border: 0;
    padding: 6px 11px;
    margin: 2px;
    border-radius: 50%;
  }
}
#page-renovation .article-wrap {
  margin-bottom: 90px;
}
#page-renovation .article-flex {
  flex-wrap: wrap;
}
#page-renovation .article-item {
  width: calc(50% - 24px);
  margin-right: 48px;
  margin-bottom: 48px;
}
#page-renovation .article-item:nth-of-type(2n) {
  margin-right: 0;
}
#page-renovation .article-item a {
  background-color: #fff;
  padding: 0;
}
#page-renovation .article-item a:after {
  content: none;
}
#page-renovation .article-item a:hover .article-img-wrap {
  box-shadow: 8px 10px 25px 0px rgba(32, 43, 58, 0.5);
  transition: box-shadow 1s cubic-bezier(0.25, 1, 0.5, 1);
}
#page-renovation .article-item .article-txt-wrap {
  margin-top: 30px;
}
#page-renovation .article-item .info-wrap {
  flex-wrap: wrap;
  margin-bottom: 0;
}
#page-renovation .article-item .info-wrap li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 12px;
  margin-right: 30px;
}
#page-renovation .article-item .info-wrap li.width-max {
  width: 100%;
}
#page-renovation .article-item .info-wrap li span {
  flex-shrink: 0;
  display: inline-block;
  font-size: 1.1rem;
  line-height: 1;
  color: #ad9d8f;
  padding: 5px 8px;
  margin-right: 10px;
  border: 1px solid #ad9d8f;
}
#page-renovation .article-item .info-wrap li p {
  font-size: 1.4rem;
  color: #30455d;
}
#page-renovation .article-item .info-wrap li p .mm {
  border: 0;
  padding: 0;
  margin: 0;
  color: #30455d;
}
#page-renovation .article-img-wrap {
  position: relative;
  transition: box-shadow 1s cubic-bezier(0.25, 1, 0.5, 1);
}
#page-renovation .article-img-wrap .label-sale {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
  font-style: italic;
  line-height: 1;
  padding: 8px 12px;
  background-color: #30455d;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
#page-renovation .tag-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
#page-renovation .tag-wrap p {
  font-size: 1.4rem;
  color: #30455d;
  margin-right: 6px;
}
.loop-else-txt {
  text-align: center;
  width: 100%;
  margin-bottom: 60px;
}
.loop-else-txt h2 {
  font-size: 1.8rem;
}

@media screen and (max-width: 768px) {
  #page-renovation .article-item {
    width: 100%;
    margin-right: 0;
  }
  #page-renovation .article-item .info-wrap li {
    margin-right: 20px;
  }
  .loop-else-txt h2 {
    font-size: 1.4rem;
  }
  .single-post .loop-else-txt h2 {
    margin: 60px auto;
  }
}
.footer {
  background-color: #151e29;
  padding: 60px 0;
  z-index: 3;
}
.footer .menu-logo-wrap {
  padding: 0;
  max-width: 100%;
  margin: 0;
}
.footer .menu-logo-wrap p {
  color: #fff;
  margin-bottom: 0;
}
.footer .menu-logo-wrap .copyright {
  color: #ccc;
  margin-bottom: 0;
}
.footer .menu-list-inner-flex {
  margin-right: 40px;
}
.footer .menu-list-flex {
  height: auto;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 60px;
}
.footer .menu-list-wrap {
  margin-left: 0;
}
.footer .footer-logo a {
  display: inline-block;
  width: 210px;
}
.footer .menu-box-txt-wrap {
  display: block;
  width: auto;
  background-image: none;
  min-height: auto;
  box-shadow: none;
}
.footer .copy-wrap .privacy-btn a {
  color: #ccc;
}
.footer .copy-wrap .copyright {
  color: #ccc;
  font-size: 1.4rem;
  font-weight: 400;
}

.footer-inner {
  max-width: 100%;
  padding: 0 30px;
}

.footer-menu-list-flex {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-start;
  align-items: flex-start;
}
.footer-menu-list-flex .menu-list-title {
  font-size: 1.2rem;
  line-height: 1;
}
.footer-menu-list-flex .menu-list-inner {
  margin-bottom: 0;
}
.footer-menu-list-flex .menu-list-inner .menu-list {
  display: block;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 20px;
}
.footer-menu-list-flex .menu-list-inner .menu-list:last-of-type {
  margin-bottom: 0;
}
.footer-menu-list-flex .access-wrap .address-txt {
  display: block;
  font-size: 1.5rem;
}

.footer-menu-list-wrap {
  margin-left: 60px;
}
.fax-txt {
  font-size: 1.6rem;
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}

@media screen and (max-width: 800px) {
  .footer {
    padding: 60px 0;
  }
  .footer .footer-logo a {
    width: 160px;
  }
  .footer .menu-list-flex {
    flex-direction: column;
    overflow-y: hidden;
  }
  .footer .menu-list-flex .menu-logo-wrap {
    text-align: left;
  }
  .footer .menu-box-txt-wrap {
    padding: 60px 0 0;
  }
  .footer-menu-list-flex {
    display: block;
    flex-direction: unset;
    justify-content: unset;
    align-items: unset;
  }
  .footer-menu-list-flex .menu-list-inner .menu-list {
    margin-bottom: 24px;
  }
  .footer-menu-list-wrap {
    margin-left: 0;
    margin-bottom: 40px;
  }
  .fax-txt {
    font-size: 1.5rem;
  }
}
body.post-template-default.single .header-logo svg .i {
  fill: #1a1a1a;
}
body.post-template-default.single .menu-btn-line {
  background-color: #30455d;
}
body.post-template-default.single .menu-btn-inner p {
  color: #30455d;
  transition: all 0.3s ease-in-out;
}
body.post-template-default.single header[data-js-scroll=true] .header-logo svg .i {
  fill: #fff;
}
body.post-template-default.single header[data-js-scroll=true] .menu-btn-line {
  background-color: #fff;
}
body.post-template-default.single header[data-js-scroll=true] .menu-btn-inner p {
  color: #fff;
}

.single-container {
  width: 100%;
  margin-top: 112px;
}

.single-fv {
  position: relative;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}
.single-fv-img {
  position: relative;
  max-height: 640px;
  text-align: center;
}
.single-fv-img img {
  max-height: 640px;
  object-fit: contain;
}
.single-fv .label-sale {
  display: inline-block;
  color: #fff;
  font-size: 1.8rem;
  font-style: italic;
  line-height: 1;
  padding: 8px 12px;
  background-color: #30455d;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}
.single-fv .label-soldout {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(48, 69, 93, 0.8196078431);
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.single-fv .label-soldout span {
  width: 100%;
  color: #fff;
  font-size: 4rem;
  font-weight: 600;
  font-style: italic;
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.single-contents {
  width: 100%;
}
.single-contents .info-wrap {
  justify-content: flex-start;
  margin-bottom: 12px;
}
.single-contents .article-cate {
  font-size: 1.2rem;
  line-height: 1.4;
  margin-bottom: 0;
  margin-right: 12px;
  padding-right: 12px;
  border-right: 1px solid #30455d;
}
.single-contents .article-cate a {
  display: block;
  font-size: 1.3rem;
}
.single-contents p {
  font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 24px;
}
.single-contents h2 {
  font-size: 2.2rem;
  border-bottom: 2px solid #30455d;
  margin: 40px 0 20px;
}
.single-contents h3 {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1;
  margin: 40px 0 20px;
}
.single-contents p a {
  text-decoration: underline;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.single-contents p a:hover {
  color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.single-contents .comments {
  position: relative;
  font-weight: 600;
  font-style: italic;
  margin-left: 12px;
}
.single-contents .comments::before {
  display: block;
  content: "";
  background-color: #ad9d8f;
  height: 100%;
  width: 2px;
  position: absolute;
  top: 0;
  left: -10px;
}
.single-contents .wp-block-image {
  margin-bottom: 24px;
}
.single-contents .wp-block-image img {
  max-height: 640px;
  object-fit: contain;
}
.single-contents .wp-block-quote {
  background: #dadfe6;
  margin: 0;
  padding: 14px 16px;
  margin-bottom: 24px;
  border-left: 3px solid #30455d;
  background-color: #dadfe6;
}
.single-contents .wp-block-quote p {
  margin-bottom: 0;
}
.single-contents .breadcrumbs {
  font-size: 1.1rem;
  color: #30455d;
  width: 100%;
  margin: 0 auto 30px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  opacity: .8;
}
.single-contents .wp-block-embed.is-type-video .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  font-size: 0;
  z-index: 1;
  cursor: pointer;
}
.single-contents .wp-block-embed.is-type-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/* .single .wp-block-embed {
  display: block;
  width: 100%;
  border: 1px solid #dadfe6;
}
.wp-block-embed iframe {
  max-width: 100%;
  position: unset !important;
}
.wp-embed-footer,
.wp-embed-excerpt {
  display: none !important;
}
.single .wp-embed.post {
  border: 0;
  box-shadow: unset;
}
.single-post .wp-embed.post {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
}
.single-post p.wp-embed-heading {
  font-size: 16px;
  margin-bottom: 0;
}
.single-post .wp-embed-featured-image.square {
  float: none;
  margin-bottom: 0;
}
.single-post .wp-embed-featured-image.square a {
  display: block;
}
.single-post .wp-embed-heading a {
  color: #30455d;
  font-weight: 600;
  text-decoration: underline;
  transition: color 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.single-post .wp-embed-heading a:hover {
  color: #ad9d8f;
  transition: color 0.6s cubic-bezier(0.25, 1, 0.5, 1);
} */

.content-wrap {
  width: 100%;
}
.content-inner {
  max-width: 760px;
  margin: 0 auto;
  padding: 30px 20px 60px;
}
.single-title {
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 1.6;
  margin-bottom: 48px;
}
.sns-share-wrap {
  letter-spacing: 0;
  margin-top: 60px;
}
.sns-share-wrap h3 {
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  text-align: left;
  margin-top: 0;
  margin-bottom: 16px;
}
.sns-share-wrap ul {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.sns-share-wrap li {
  margin-right: 20px;
}
.sns-share-wrap li:last-of-type {
  margin-right: 0;
}
.sns-share-wrap li a {
  display: block;
  text-align: center;
  width: 32px;
  height: 32px;
  border: 1px solid #30455d;
  border-radius: 50%;
  background-color: #30455d;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.sns-share-wrap li a:hover {
  background-color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.sns-share-wrap li.fb svg {
  width: 9px;
  height: auto;
  margin-top: 6px;
  margin-right: 1px;
}
.sns-share-wrap li.tw svg {
  width: 14px;
  height: auto;
  margin-top: 9px;
}
.sns-share-wrap li.line svg {
  width: 16px;
  height: auto;
  margin-top: 7px;
}
.sns-share-wrap #fb-path .d {
  fill: #fff;
}
.sns-share-wrap #tw-path .d {
  fill: #fff;
}
.sns-share-wrap #line-path .d {
  fill: #fff;
}

.tag-box {
  margin-top: 40px;
}

.single-contents .tag-title {
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  margin-top: 0;
  margin-bottom: 16px;
}

.tag-list {
  width: 100%;
}
.tag-list ul {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
.tag-list .tag-item {
  border: 1px solid #30455d;
  margin-right: 10px;
  margin-bottom: 10px;
}
.tag-list .tag-item:last-of-type {
  margin-right: 0;
}
.tag-list .tag-item a {
  display: block;
  font-size: 1.2rem;
  line-height: 1;
  padding: 6px 12px;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.tag-list .tag-item a:hover {
  background-color: #ad9d8f;
  transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.single-house-info {
  position: relative;
  margin-bottom: 0;
}
.single-house-info table {
  width: 100%;
  border: 1px solid #151e29;
  border-bottom: 0;
  overflow: hidden;
}
.single-house-info table th {
  width: 21%;
  font-size: 1.4rem;
  font-weight: 600;
  text-align: left;
  padding: 10px 16px;
  background-color: #dadfe6;
  border-bottom: 1px solid #151e29;
  vertical-align: middle;
}
.single-house-info table th:last-of-type {
  border-left: 1px solid #151e29;
}
.single-house-info table td {
  width: 29%;
  font-size: 1.4rem;
  text-align: left;
  padding: 10px 16px;
  border-bottom: 1px solid #151e29;
  border-left: 1px solid #151e29;
  vertical-align: middle;
}

.single-contact-wrap {
  position: relative;
  background-color: #30455d;
  width: 100%;
  padding: 40px 20px;
  margin-top: 60px;
  overflow: hidden;
}
.single-contact-wrap::after {
  display: inline-block;
  content: "CONTACT";
  font-size: 8rem;
  font-weight: 900;
  font-style: italic;
  line-height: 1;
  color: #39506a;
  position: absolute;
  bottom: -15px;
  right: 5px;
  z-index: 0;
}
.single-contact-wrap h3 {
  color: #fff;
  font-size: 3rem;
  text-align: center;
  margin: 0 0 24px;
}
.single-contact-wrap .time-txt {
  margin-bottom: 0;
}

body.single .single-recom-wrap {
  max-width: 100%;
  background-color: #dadfe6;
  padding: 60px 0;
}
body.single .single-recom-wrap .article-item a {
  background-color: #dadfe6;
}
body.single .single-recom-wrap.property {
  background-color: #c4cdda;
}
body.single .single-recom-wrap.property .article-item a {
  background-color: #c4cdda;
}
body.single .single-recom-inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}
body.single .article-item {
  width: calc(50% - 24px);
  margin-right: 48px;
  margin-bottom: 0;
}
body.single .article-item:nth-of-type(2n) {
  margin-right: 0;
}
body.single .article-item a {
  background-color: #fff;
  padding: 0;
}
body.single .article-item a:after {
  content: none;
}
body.single .article-item a:hover .article-img-wrap {
  box-shadow: 8px 10px 25px 0px rgba(32, 43, 58, 0.5);
  transition: box-shadow 1s cubic-bezier(0.25, 1, 0.5, 1);
}
body.single .article-item .article-txt-wrap {
  margin-top: 30px;
}
body.single .article-item .info-wrap {
  flex-wrap: wrap;
  margin-bottom: 0;
}
body.single .article-item .info-wrap li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 12px;
  margin-right: 30px;
}
body.single .article-item .info-wrap li.width-max {
  width: 100%;
}
body.single .article-item .info-wrap li span {
  flex-shrink: 0;
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1;
  color: #97887c;
  padding: 5px 8px;
  margin-right: 10px;
  border: 1px solid #97887c;
}
body.single .article-item .info-wrap li p {
  font-size: 1.4rem;
  color: #30455d;
}
body.single .article-item .info-wrap li p .mm {
  border: 0;
  padding: 0;
  margin: 0;
  color: #30455d;
}
body.single .article-item .tag-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
body.single .article-item .tag-wrap p {
  font-size: 1.4rem;
  color: #30455d;
  margin-right: 6px;
}
body.single .article-img-wrap {
  position: relative;
  transition: box-shadow 1s cubic-bezier(0.25, 1, 0.5, 1);
}
body.single .article-img-wrap .label-sale {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
  font-style: italic;
  line-height: 1;
  padding: 8px 12px;
  background-color: #30455d;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
body.single .article-img-wrap .label-soldout {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(48, 69, 93, 0.8196078431);
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
body.single .article-img-wrap .label-soldout span {
  width: 100%;
  color: #fff;
  font-size: 4rem;
  font-weight: 600;
  font-style: italic;
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
body.single .recom-title-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body.single .recom-title-flex .more-btn {
  margin-bottom: 20px;
  margin-right: 14px;
}
body.single .recom-title {
  margin-bottom: 30px;
}
body.single .recom-title span {
  display: block;
  font-size: 1.2rem;
  line-height: 1;
  margin-bottom: 10px;
}
body.single .recom-title h3 {
  font-size: 2rem;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .single-fv .label-sale {
    font-size: 1.3rem;
    padding: 6px 8px;
  }
  .single-container {
    margin-top: 85px;
  }
  .content-inner {
    padding: 30px 20px 60px;
  }
  .single-contents .info-wrap {
    margin-bottom: 16px;
  }
  .single-contents .article-cate {
    margin-right: 10px;
    padding-right: 10px;
  }
  .single-contents .article-cate a {
    font-size: 1.2rem;
  }
  .single-contents h2 {
    font-size: 1.8rem;
  }
  .single-contents h3 {
    font-size: 1.6rem;
    margin-bottom: 20px;
  }
  .single-contents p {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
  .single-contents .tag-title {
    font-size: 2.2rem;
    margin-bottom: 12px;
    margin-top: 0;
  }
  .article-info {
    font-size: 1.2rem;
  }
  .single-title {
    font-size: 2.2rem;
    margin-bottom: 36px;
  }
  .sns-share-wrap h3 {
    font-size: 2.2rem;
    margin-bottom: 12px;
  }
  .tag-list .tag-item a {
    padding: 6px 10px;
  }
  .single-house-info {
    margin-bottom: 90px;
  }
  .single-house-info table {
    width: 100%;
  }
  .single-house-info table tr {
    display: flex;
    flex-direction: column;
  }
  .single-house-info table th {
    width: auto;
    padding: 4px 8px;
  }
  .single-house-info table th:last-of-type {
    border-left: 0;
  }
  .single-house-info table td {
    width: auto;
    padding: 4px 8px;
    border-left: 0;
  }
  .table-wrap {
    height: 300px;
    overflow: hidden;
  }
  .js-more-btn {
    font-size: 1.6rem;
    font-weight: 600;
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 30px;
    padding-top: 60px;
    text-align: center;
    line-height: 30px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 70%);
    cursor: pointer;
    transition: bottom 0.2s;
  }
  .active {
    background: none;
    bottom: -30px;
  }
  .single-contact-wrap {
    margin-top: 40px;
  }
  .single-contact-wrap h3 {
    font-size: 2rem;
  }
  body.single .article-item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 48px;
  }
  body.single .article-item:last-of-type {
    margin-bottom: 0;
  }
  body.single .article-item .info-wrap li {
    margin-right: 20px;
  }
  body.single .article-img-wrap .label-sale {
    font-size: 1.2rem;
  }
  body.single .recom-title-flex .more-btn {
    margin-bottom: 12px;
  }
  body.single .recom-title {
    margin-bottom: 24px;
  }
  body.single .recom-title span {
    font-size: 1.1rem;
  }
  body.single .recom-title h3 {
    font-size: 1.8rem;
  }
}
