@charset "UTF-8";

/* ********** サイト全体の共通モジュールのstyle ********** */
.l-main svg {
  position: absolute;
  z-index: -1;
  /* top: calc(-120 * var(--px)); */
  top: calc(-150 * 100vw / 1920);
}
/* テキスト要素 */
.c-indextitle {
  font-size: 1.5rem;
  font-weight: bold;
  /* padding-left: 24px; */
}
.c-indextitle--sub {
  font-size: 6rem;
  font-weight: 700;
  margin-bottom: 15px;
}
.c-indextitle span {
  position: relative;
  padding-left: 20px;
}
.c-indextitle span::after,
.c-indextitle span::before {
  position: absolute;
  content: "";
  top: 3px;
  width: 1px;
  height: 14px;
  transform: rotate(45deg);
}
.c-indextitle span::after {
  background: #2e5188;
  left: 0px;
}
.c-indextitle span::before {
  background: #65a9c5;
  left: 4px;
}

.c-title--large {
  font-size: 3.5rem;
  font-weight: bold;
}
.c-title--normal {
  font-size: 3rem;
  font-weight: bold;
}
.c-title--small {
  font-size: 2.5rem;
  font-weight: bold;
}
.c-text--large {
  font-size: 2.2rem;
  font-weight: bold;
}
.c-text--normal {
  font-size: 1.5rem;
  line-height: 1.8;
}
.c-text--small {
  font-size: 1.4rem;
  line-height: 1.6;
}
.c-text--bold {
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.9;
}
/* タグ要素 */
[class*="c-tag--"] {
  /*タグ要素共通のstyle*/
  display: inline-block;
  padding: 2px 7px;
  font-size: 1.3rem;
  font-weight: normal;
  width: fit-content;
  border-radius: 9999px;
  color: #fff;
}
[class*="c-tag--"] + [class*="c-tag--"] {
  /*タグ要素が横に複数並ぶ際の余白*/
  margin-left: 10px;
}
/* ----- お知らせ用 ----- */
.c-tag--new {
  background-color: #e24a46;
}
[class*="c-tag--news"] {
  border-width: 1px;
  border-style: none;
}
.c-tag--news1 {
  background-color: #65a9c5;
}
.c-tag--news2 {
  background-color: #e24a46;
}
.c-tag--news3 {
  background-color: #642789;
}
.c-tag--news4 {
  background-color: #2e5188;
}
.c-tag--news5 {
  background-color: #999;
}
.c-tag--property1 {
  background: #65a9c5;
  color: #fff;
}
.c-tag--property2 {
  background: #2e5188;
  color: #fff;
}
.c-tag--property3 {
  background: #642789;
  color: #fff;
}
/* ----- フォーム用 ----- */
.c-tag--haveto {
  background-color: red;
  color: #fff;
}
/* ----- インタビュー・クロストーク用 ----- */
.c-tag--career,
.c-tag--fresh {
  border-width: 1px;
  border-style: solid;
}
.c-tag--career {
  border-color: red;
  color: red;
}
.c-tag--fresh {
  border-color: blue;
  color: blue;
}
/* ----- 実績用 ----- */
[class*="c-tag--cate"] {
  color: #fff;
}
.c-tag--cate1 {
  background-color: #000;
}
.c-tag--cate2 {
  background-color: #333;
}
.c-tag--cate3 {
  background-color: #555;
}
.c-tag--cate4 {
  background-color: #777;
}
.c-tag--cate5 {
  background-color: #999;
}
/* テキストリンク要素 */
.c-textlink,
.wp-wysiwyg p a {
  color: #2e5188;
  text-decoration: none;
  padding: 0 1px;
}
.c-textlink[target="_blank"]:after {
  margin: 0 3px 3px;
  font-family: "Font Awesome 5 Free";
  vertical-align: middle;
  content: "\f35d";
  font-weight: 900;
  display: inline-block;
  font-size: 1.4rem;
}
.c-textlink:hover {
  text-decoration: underline;
}
/* テーブル要素 */
.c-table {
  width: 100%;
  display: table;
  border-collapse: separate;
  border-spacing: 0;
}
.c-table th,
.c-table td {
  border-bottom: 1px solid #ddd;
  font-size: 1.5rem;
  text-align: left;
}
.c-table th {
  width: 20%;
  background: #fff;
  padding: 20px 10px 20px 20px;
  border-bottom: 1px solid #2e5188;
  color: #2e5188;
}
.c-table td {
  width: 80%;
  background: #fff;
  padding: 20px 20px 20px 10px;
}
/* タブ要素 */
[class*="c-tab"].e-current {
  background: #333;
  color: #fff;
}

/* **********  サイト全体の共通パーツのstyle ********** */
/* フッタ */
.l-footer {
  background: #2e5188;
  position: relative;
  overflow: hidden;
}
.l-footer::after {
  content: "";
  position: absolute;
  bottom: -240px;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../img/l-footer-bg.png") no-repeat center top / cover;
}
.l-footer .c-container {
  z-index: 1;
}
.l-footer a:hover {
  opacity: 0.7;
}
.l-footer__menu div {
  border: 1px solid #fff;
}
.l-footer__menu div a {
  display: block;
  padding: 15px;
  font-size: 1.5rem;
}
.l-footer__menu a {
  color: #fff;
}

.l-footer__lists li {
  line-height: 2.5rem;
  border-bottom: 1px solid #fff;
}
.l-footer__lists li a {
  display: block;
  padding: 15px 0;
  position: relative;
}
.l-footer__lists li a .u-arrow-button {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background-color: white;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  display: inline-grid;
  margin-right: 0;
  margin-left: auto;
}
.l-footer__lists li a .u-arrow-icon {
  color: #2e5188;
  font-size: 14px;
  text-align: center;
}

.l-footer__inner a {
  display: block;
  font-size: 1.4rem;
  padding-left: 15px;
  position: relative;
}
.l-footer__inner a:before {
  content: "";
  width: 12px;
  height: 1px;
  top: 50%;
  left: 0;
  position: absolute;
  background: #fff;
}
.l-footer__address .c-text--normal,
.l-footer__address .c-text--bold {
  color: #fff;
}
.l-footer__copyright {
  width: 100%;
  padding: 20px 0px;
  color: #fff;
  font-size: 1.4rem;
}
/* トップページのフッターだけ */
.home .l-footer.u-mt100 {
  margin-top: calc(0 * var(--px)) !important;
}
/* 下層ページトップビジュアルメイン */
.s-pagetop > .c-container {
  /* background-color:
   #eee; */
}
/* .s-pagetop .c-container.u-ptb100 {
  padding-top: calc(50 * var(--px));
  padding-bottom: calc(100 * var(--px));
} */
.s-pagetop .c-photo {
  height: 300px;
}
.s-pagetop__maintitle {
  position: relative;
  font-size: 2rem;
}
.s-pagetop__subtitle {
  position: relative;
  font-size: 6.5rem;
  font-weight: bold;
}

.s-pagetop__maintitle span {
  position: relative;
}
.s-pagetop__maintitle span::after,
.s-pagetop__maintitle span::before {
  position: absolute;
  content: "";
  background: #65a9c5;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 1px;
}
.s-pagetop__maintitle span::after {
  right: -40px;
}
.s-pagetop__maintitle span::before {
  left: -40px;
}

.s-pagetop .c-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
/* 下層ページトップビジュアルサブ */
.s-pagetop--sub > .c-container {
  background-color: #000;
}
.s-pagetop--sub__maintitle {
  position: relative;
  font-size: 3.5rem;
  color: #fff;
}
.s-pagetop--sub__subtitle {
  position: relative;
  font-size: 2.5rem;
  color: #fff;
  font-weight: 700;
}
.s-pagetop--sub .c-wrap {
  display: flex;
  flex-direction: column;
  padding: 30px 0;
}
/* パンくず */
.s-breadcrumb .c-rowlists {
  padding: 10px 20px;
  display: block;
  text-align: right;
}
.s-breadcrumb .c-rowlists li {
  font-size: 1.4rem;
  color: #999;
  display: inline;
}
.s-breadcrumb .c-rowlists li a {
  color: #000;
  text-decoration: underline;
}
.s-breadcrumb .c-rowlists li:after {
  content: "";
  background: url(../img/arrow--right.svg) center center/contain no-repeat;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 6px 0 12px;
}
.s-breadcrumb .c-rowlists li:last-of-type:after {
  content: none;
}
.s-breadcrumb .c-rowlists li a:hover {
  color: #999;
}
/* フォトギャラリー/表示に影響するのでclass名は変更不可*/
.s-photogallery .c-item {
  position: relative;
  cursor: pointer;
}
.s-photogallery .c-item:before {
  content: "";
  display: block;
  padding-top: 66.66%;
}
.s-photogallery .c-photo {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
}
#lg-counter span {
  color: #999;
}
@media screen and (max-width: 810px) {
  .lg-outer .lg-image {
    padding: 60px !important;
  }
}
/* 物件情報スイッチングスライダー/表示に影響するためclass名は変更不可 */
.s-slickswitching__main {
  max-width: 80%;
  margin: 0 auto;
}
.s-slickswitching__main .c-photo {
  display: flex !important;
  justify-content: center;
  align-items: center;
  background: transparent;
  padding: 0px 0;
  height: 450px;
}
.s-slickswitching__main .c-photo img {
  margin: auto;
  object-fit: contain;
  font-family: "object-fit: contain;, object-position: center;";
  max-width: 100%;
  height: 100%;
  object-position: center;
}
.s-slickswitching__main .slick-prev,
.s-slickswitching__main .slick-next {
  z-index: 1;
  display: block;
  position: absolute;
  width: 60px;
  height: 100px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
}
.s-slickswitching__main .slick-prev {
  background-image: url("../img/property-prev.png");
  left: -5%;
}
.s-slickswitching__main .slick-next {
  background-image: url("../img/property-next.png");
  left: auto;
  right: -5%;
  background-position: center right;
}
.s-slickswitching__sub {
  margin-top: 20px;
}
.s-slickswitching__sub .c-photo.slick-current img {
  opacity: 1;
}
.s-slickswitching__sub li {
  padding: 5px;
}
.s-slickswitching__sub .c-photo {
  width: 180px;
  height: 120px;
  padding: 15px 10px;
  cursor: pointer;
}
.s-slickswitching__sub .slick-prev,
.s-slickswitching__sub .slick-next {
  z-index: 1;
  display: block;
  position: absolute;
  width: 30px;
  height: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
}
.s-slickswitching__sub .slick-prev {
  background-image: url("../img/property-sub-prev.png");
  left: 0;
}
.s-slickswitching__sub .slick-next {
  background-image: url("../img/property-sub-next.png");
  left: auto;
  right: 0;
  background-position: center right;
}
@media screen and (max-width: 810px) {
  .s-slickswitching__main .c-photo {
    height: 250px;
  }
  .s-slickswitching__main .slick-prev {
    left: -15%;
    width: 30px;
    height: 50px;
  }
  .s-slickswitching__main .slick-next {
    right: -15%;
    width: 30px;
    height: 50px;
  }
}
/* お知らせ詳細右カラム/WPに影響するためclass名は変更不可 */
.s-rightcol {
  border: 1px solid #000;
  align-self: flex-start;
}
.s-rightcol .c-text-bold {
  background-color: #000;
  padding: 10px;
  color: #fff;
}
.s-rightcol ul {
  padding: 10px;
}
.s-rightcol li {
  padding: 10px;
  border-top: 1px solid #000;
}
.s-rightcol li:first-of-type {
  border-top: 0;
}
.s-rightcol a:hover {
  color: #999;
}
.s-rightcol__archive li:nth-of-type(n + 6) {
  display: none;
}
@media screen and (max-width: 810px) {
  .s-rightcol {
    margin-top: 60px;
  }
}
/* ページネーション/WPに影響するためclass名は変更不可 */
.s-pagenation {
  /*  padding: 50px 0; */
  display: flex;
  justify-content: center;
  align-items: center;
}
.s-pagenation a,
.s-pagenation span {
  width: inherit;
  height: 50px;
  margin: 5px;
  line-height: 50px;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 700;
  background-color: #fff;
  color: #000;
  border: 1px solid #000;
  padding: 0 10px;
  display: inline-block;
}
.s-pagenation a:hover {
  background-color: #000;
  color: #fff;
}
.s-pagenation .current {
  background-color: #000;
  color: #fff;
}
/* c-tab/js連動のためclass名は変更不可 */
[class*="c-tab"]:not(.c-table) {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
[class*="c-tab"]:not(.c-table) li {
  background-color: #fff;
  color: #333;
  border: 1px solid #777;
}
[class*="c-tab"]:not(.c-table) li.e-current {
  background-color: #000;
  color: #fff;
}
/* ページトップへ戻る */
.s-backtotop {
  background: linear-gradient(to right, #fffbc4, #d3edf9);
  width: 70px;
  height: 70px;
  border-radius: 50%;
  position: fixed;
  z-index: 99;
  bottom: 80px;
  right: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transition: 0.5s;
}
.s-backtotop.e-active {
  opacity: 1;
  pointer-events: auto;
}
.s-backtotop span::after {
  content: "";
  background-color: #333;
  height: 1px;
  width: 14px;
  position: absolute;
  top: 50%;
  left: 23px;
  transform: rotate(135deg) translateY(-50%);
}
.s-backtotop span::before {
  content: "";
  background-color: #333;
  height: 1px;
  width: 14px;
  position: absolute;
  top: 50%;
  right: 23px;
  transform: rotate(-135deg) translateY(-50%);
}
.s-backtotop:hover {
  transform: translateY(-5%);
  background: linear-gradient(to left, #fffbc4, #d3edf9);
}

/* ********** ページごと・セクションごとの個別style（★） ********** */
/*  **********　トップページ  ********** */
#p-top *[class^="slickimg"] {
  height: calc(600 * var(--px));
  background-position: center;
  background-size: cover;
}
/* トッページメインビジュアル */
#p-top .s-topmainvisual .c-container .c-wrap {
  position: absolute;
  left: 0;
  bottom: 0px;
  z-index: 1;
  background: #fff;
  padding: 40px 40px 0 0;
  border-radius: 0 20px 0 0;
}
#p-top .s-topmainvisual .c-container .c-wrap .c-title--large {
  font-weight: normal;
  font-size: calc(6 * var(--rem));
	letter-spacing: 6px;
	opacity:0;
}
#p-top .s-topmainvisual .c-container .c-wrap .c-title--large span {
  color: #17b1e8;
}
#p-top .s-topmainvisual .c-container.c-col1 .c-text--normal {
  font-size: 1.8rem;
}
#p-top .s-topmainvisual .c-container .c-photo {
  border-radius: 15px;
}

/* ベイダー・ホームについて */
#p-top .s-topbusiness .c-col2 {
  align-items: end;
}

#p-top .s-topbusiness .c-col2 .c-wrap:first-of-type .c-text--normal {
  font-size: 2.2rem;
  color: #17b1e8;
}
#p-top .s-topbusiness .c-col2 .c-wrap:last-of-type .c-text--normal {
  line-height: 4.2rem;
}
/* お知らせ一覧 */
#p-top .s-newslist {
  background: #dfecf3;
}
#p-top .s-newslist .c-table {
  background: none;
}
#p-top .s-newslist .c-table th {
  width: 15%;
  font-weight: bold;
}
#p-top .s-newslist .c-table th,
#p-top .s-newslist .c-table td {
  background: none;
  padding: 15px 10px 15px 0px;
  border-bottom: none;
  white-space: nowrap;
}
#p-top .s-newslist .c-col2 > div:nth-of-type(2) {
  text-align: right;
}
#p-top .s-newslist [class*="c-tag--news"] {
  margin-right: 10px;
}

/* 物件情報 */
#p-top .s-topproperty {
  position: relative;
}
#p-top .s-topproperty svg {
  position: absolute;
  z-index: -1;
  /* top: calc(-300 * var(--px)); */
  top: calc(-450 * 100vw / 1920);
}

#p-top .s-topproperty .c-title--normal {
  color: #65a9c5;
  font-size: 3rem;
  font-weight: normal;
  position: relative;
  line-height: 3rem;
}
#p-top .s-topproperty .c-text--large {
  font-size: 4rem;
}
#p-top .s-topproperty .c-title--normal span {
  border: 1px solid #17b1e8;
  border-radius: 5px;
  margin-right: 1rem;
  font-size: 1.8rem;
  padding: 9px 15px 8px 15px;
  vertical-align: bottom;
}
#p-top .s-topproperty .c-title--normal::after,
#p-top .s-topproperty .c-title--normal::before {
  position: absolute;
  bottom: -30px;
  left: 0;
  content: "";
  height: 1px;
}

#p-top .s-topproperty .c-title--normal::after {
  width: 10%;
  background: #e24a46;
}
#p-top .s-topproperty .c-title--normal::before {
  width: 100%;
  background: #ddd;
}

#p-top .s-topproperty .c-photo {
  aspect-ratio: 5 / 4;
}
#p-top .s-topproperty a:hover {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
#p-top .s-topproperty .c-col4--panel .c-item {
  padding: 10px;
}
/* 採用情報 */
#p-top .s-toprecruit {
  background: #dfecf3;
}
#p-top .s-toprecruit a:hover {
  opacity: 0.7;
}
/*  **********　トップページ  ここまで　********** */

/*  **********　会社情報  ********** */

#p-company .c-indextitle {
  font-size: 4rem;
  font-weight: bold;
  margin-bottom: 15px;
}
#p-company .c-indextitle--sub {
  font-size: 1.3rem;
  font-weight: bold;
  padding-left: 40px;
}
#p-company .c-indextitle--sub span {
  position: relative;
}
#p-company .c-indextitle--sub span::after,
#p-company .c-indextitle--sub span::before {
  position: absolute;
  content: "";
  background: #65a9c5;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 1px;
}
#p-company .c-indextitle--sub span::after {
  right: -40px;
}
#p-company .c-indextitle--sub span::before {
  left: -40px;
}

/* 会社概要  */
#p-company .s-companyoutline {
}
/* SDGsへの取り組み */
#p-company .s-companysdgs {
  background: url(../img/s-companysdgs-bg.jpg);
  background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  background-attachment: fixed;
}
#p-company .s-companysdgs::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  content: "";
  opacity: 0.3;
}
#p-company .s-companysdgs .c-indextitle,
#p-company .s-companysdgs .c-indextitle--sub,
#p-company .s-companysdgs .c-text--normal {
  color: #fff;
}

#p-company .s-companysdgs .c-indextitle--sub span::before,
#p-company .s-companysdgs .c-indextitle--sub span::after {
  background-color: #fff;
}
#p-company .s-companysdgs .c-col2 li {
  border-bottom: 1px #ddd dashed;
  padding: 10px 0;
}
#p-company .s-companysdgs .c-col2 .c-photo {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  width: 100%;
  overflow: hidden;
}
#p-company .s-companysdgs .c-col2 .c-photo img {
  width: calc(50% - 5px);
  max-width: 100%;
  height: auto;
}
/* 沿革 */
#p-company .s-companyhistory {
}
/* アクセス */
#p-company .s-companyaccess .c-container {
  border-radius: 10px;
}
#p-company .s-companyaccess .c-container .c-text--bold span {
  color: #fff;
  background: #2e5188;
  border-radius: 9999px;
  padding: 4px 15px;
  font-size: 1.3rem;
}
/*  **********　会社情報　ここまで  ********** */

/*  **********　設備仕様  ********** */

#p-equipment .s-anchorlink .c-col5--panel > .c-item:nth-of-type(n + 6) {
  margin-top: calc(20 * var(--px));
}
#p-equipment .s-anchorlink .c-btn {
  /* border: 1px solid #65a9c5;
  padding: 10px 10px 10px 15px;
  display: inline-block;
  color: #65a9c5;
  font-size: calc(1.65 * var(--rem));*/
  background: #fff;
}
#p-equipment .s-anchorlink .c-btn__text {
  font-size: calc(1.65 * var(--rem));
  width: 100%;
  text-align: left;
}
/* #p-equipment .s-anchorlink .c-item span.u-arrow {
  position: relative;
}
#p-equipment .s-anchorlink .c-item span.u-arrow::before,
#p-equipment .s-anchorlink .c-item span.u-arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 7px;
  height: 1px;
  background: #65a9c5;
}
#p-equipment .s-anchorlink .c-item span.u-arrow::before {
  left: 10px;
  transform: rotate(60deg) translateY(-50%);
}
#p-equipment .s-anchorlink .c-item span.u-arrow::after {
  left: 14px;
  transform: rotate(-60deg) translateY(-50%);
} */
/* 設備仕様 */
#p-equipment .s-spec .c-text--bold {
  font-size: 2.4rem;
  color: #2e5188;
  border-bottom: 1px solid #2e5188;
}
#p-equipment .s-spec .c-sectiontitle .c-photo {
  height: calc(360 * var(--px));
}
#p-equipment .s-spec .c-col2 {
  background: #2e5188;
  display: flex;
  align-items: center;
}
#p-equipment .s-spec .c-col2 .c-title--normal {
  color: #fff;
  text-align: center;
}
#p-equipment .s-spec .c-col3--panel .c-photo {
  aspect-ratio: 5 / 4;
  border: 1px solid #ccc;
  padding: 10px;
}
#p-equipment .s-spec .c-col3--panel .c-photo img {
  object-fit: contain;
}
#p-equipment .s-spec .c-col1--panel .c-photo {
  aspect-ratio: 16 / 9;
  border: 1px solid #ccc;
  padding: 10px;
}
#p-equipment .s-spec .c-col1--panel .c-photo img {
  object-fit: contain;
}
#p-equipment .s-spec .c-text--large {
  color: #65a9c5;
  font-size: 1.7rem;
}
#p-equipment .s-spec__achievements .c-title--small {
  text-align: center;
  position: relative;
}
#p-equipment .s-spec__achievements .c-title--small::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #e24a46;
  width: 100px;
  height: 1px;
}
#p-equipment .s-spec__achievements .c-col3--panel .c-photo {
  border: none;
}
#p-equipment .s-spec__achievements .c-col3--panel .c-photo img {
  object-fit: cover;
}
#p-equipment .s-spec__achievements .c-col3--panel .c-item {
  width: 33.3%;
  cursor: pointer;
  transition: 0.5s;
}
#p-equipment .s-spec__achievements .c-col3--panel .c-item:hover {
  opacity: 0.7;
}
#p-equipment .s-spec__achievements .c-col3--panel .c-item:nth-of-type(3n + 2) {
  margin: 0 calc((100% - (33.3% * 3)) / 2);
}
#p-equipment .s-spec__achievements .c-col3--panel > .c-item:nth-of-type(n + 4) {
  margin-top: calc(1 * var(--px));
}

#p-equipment .s-spec__achievements .c-col3--panel .c-photo {
  aspect-ratio: 1 / 1;
  border: 1px solid #eee;
  padding: 0px;
}
/* #p-equipment .s-spec .c-container:last-of-type .c-photo {
  aspect-ratio: initial;
} */
#p-equipment .s-spec .c-container.c-afterservice table {
  margin-top: 30px;
}
#p-equipment .s-spec .c-container .c-col1--panel th {
  width: calc(25% - 40px);
  text-align: center;
  padding: 10px;
}
#p-equipment .s-spec .c-container .c-col1--panel td {
  width: calc(75% - 40px);
  text-align: center;
  padding: 10px;
}
#p-equipment .s-spec .c-container .c-col1--panel a {
  margin-top: 10px;
  display: inline-block;
}
/*  **********　設備仕様　ここまで  ********** */

/*  **********　採用情報  ********** */
#p-recruit {
}
#p-recruit .c-indextitle {
  font-size: 4rem;
  font-weight: bold;
  margin-bottom: 15px;
}
#p-recruit .c-indextitle--sub {
  font-size: 1.3rem;
  font-weight: bold;
  padding-left: 40px;
}
#p-recruit .c-indextitle--sub span {
  position: relative;
}
#p-recruit .c-indextitle--sub span::after,
#p-recruit .c-indextitle--sub span::before {
  position: absolute;
  content: "";
  background: #65a9c5;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 1px;
}
#p-recruit .c-indextitle--sub span::after {
  right: -40px;
}
#p-recruit .c-indextitle--sub span::before {
  left: -40px;
}

/* メッセージ */
#p-recruit .s-recruitmessage {
}
#p-recruit .s-recruitmessage .c-col2 > .c-wrap {
  order: 1;
}
#p-recruit .s-recruitmessage .c-col2 .c-text--normal {
  order: 2;
}
/* キーワード */
#p-recruit .s-recruitkeyword {
}

#p-recruit .s-recruitkeyword .c-col3--panel .c-item {
  background: #fff;
  border-radius: 5px;
  padding: 40px 20px 20px 20px;
  position: relative;
}
#p-recruit .s-recruitkeyword .c-col3--panel .c-item .c-photo {
  width: 30%;
}
#p-recruit .s-recruitkeyword .c-col3--panel .c-item .c-text--bold {
  position: absolute;
  top: calc(-1rem - 5px);
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
#p-recruit .s-recruitkeyword .c-col3--panel .c-item .c-text--bold span {
  background: #2e5188;
  color: #fff;
  text-align: center;
  padding: 5px 15px;
  border-radius: 999px;
}

/* 業務紹介 */
#p-recruit .s-recruitaboutjob .c-indextitle,
#p-recruit .s-recruitaboutjob .c-indextitle--sub {
  color: #fff;
}
#p-recruit .s-recruitaboutjob .c-indextitle--sub span::before,
#p-recruit .s-recruitaboutjob .c-indextitle--sub span::after {
  background-color: #fff;
}

#p-recruit .s-recruitaboutjob {
  background: url(../img/p-recruit_s-recruitaboutjob01.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  position: relative;
}
#p-recruit .s-recruitaboutjob::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  content: "";
  opacity: 0.6;
}
#p-recruit .s-recruitaboutjob .c-col2--panel {
}
#p-recruit .s-recruitaboutjob .c-col2--panel .c-item {
  background: #fff;
  padding: 30px;
  border-radius: 5px;
  position: relative;
}
#p-recruit .s-recruitaboutjob .c-col2--panel .c-item:first-of-type:after {
  left: 14.5%;
}
#p-recruit .s-recruitaboutjob .c-col2--panel .c-item:last-of-type:after {
  right: 14.5%;
}
#p-recruit .s-recruitaboutjob .c-col2--panel .c-item::after {
  content: "";
  position: absolute;
  top: -10px;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #fff;
}

#p-recruit .s-recruitaboutjob .c-col2--panel .c-item .c-title--small span {
  color: #fff;
  background: #17b1e8;
  padding: 8px 20px;
  border-radius: 999px;
  font-size: 1.8rem;
}
#p-recruit .s-recruitaboutjob .c-col2--panel .c-item .c-title--small,
#p-recruit .s-recruitaboutjob .c-col2--panel .c-item .c-text--bold {
  text-align: center;
}
#p-recruit .s-recruitaboutjob .c-col2 .c-item .c-title--small {
  font-size: 2rem;
}

#p-recruit .s-recruitaboutjob .c-col2--panel .c-item li {
  font-size: 1.5rem;
  list-style: square;
  list-style-position: inside;
  line-height: 3;
  border-bottom: 1px solid #17b1e8;
  color: #65a9c5;
  line-height: 1.8;
}
#p-recruit .s-recruitaboutjob .c-wrap:last-of-type {
  border: 1px solid #fff;
  position: relative;
}
#p-recruit .s-recruitaboutjob .c-wrap .c-col2 .c-item {
  background: none;
  padding: 40px;
  color: #fff;
  width: 50%;
}

#p-recruit .s-recruitaboutjob .c-wrap:last-of-type::after {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 100%;
  background: #fff;
  content: "";
}
#p-recruit .s-recruitaboutjob .c-col2 .c-item .c-title--small {
  position: relative;
  padding-left: 30px;
}

#p-recruit .s-recruitaboutjob .c-col2 .c-item .c-title--small::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  height: 3px;
  width: 20px;
  content: "";
  background: #17b1e8;
}

/* メリット */
#p-recruit .s-recruitmerit {
}
#p-recruit .s-recruitmerit .c-col3--panel .c-item .c-title--small {
}
#p-recruit .s-recruitmerit .c-col3--panel .c-item span {
  background: #000;
  color: #fff;
  border-radius: 999px;
  padding: 5px 20px;
  font-size: 1.8rem;
  position: relative;
}
#p-recruit .s-recruitmerit .c-col3--panel .c-item span::after {
  content: url(../img/p-recruit_s-recruitmerit01.png);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0px;
  width: 10px;
  /* z-index: -1; */
}

#p-recruit .s-recruitmerit .c-container {
  border-radius: 10px;
}
#p-recruit .s-recruitmerit .c-col3--panel .c-item {
  background: #fff;
  border-radius: 5px;
  padding: 20px;
}

/* 募集職種一覧 */
#p-recruit .s-recruitjoblist {
  position: relative;
}
#p-recruit .s-recruitjoblist::after {
  content: "";
  position: absolute;
  bottom: -100px;
  right: 10%;
  width: 200px; /* 画像の幅を指定 */
  aspect-ratio: 16 / 9; /* 画像の縦横比を指定（適宜変更） */

  background-image: url(../img/p-recruit_s-recruitjoblist01.png);
  background-size: contain; /* 画像を要素内に収める */
  background-repeat: no-repeat;
  z-index: 2;
}

#p-recruit .s-recruitjoblist svg {
  position: absolute;
  z-index: -1;
  top: initial;
  bottom: -350px;
}
#p-recruit .s-recruitjoblist .c-title--normal span {
  position: relative;
}
#p-recruit .s-recruitjoblist .c-title--normal span::after,
#p-recruit .s-recruitjoblist .c-title--normal span::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 30px;
  height: 3px;
  background: #2e5188;
}
#p-recruit .s-recruitjoblist .c-title--normal span::after {
  left: -40px;
}
#p-recruit .s-recruitjoblist .c-title--normal span::before {
  right: -40px;
}
#p-recruit .s-recruitjoblist .c-wrap {
  margin-bottom: 20px;
}
#p-recruit .s-recruitjoblist .c-btn {
  width: 100%;
}
#p-recruit .s-recruitjoblist .c-wrap:last-of-type {
  margin-bottom: none;
}
#p-recruit .c-btn .c-btn__text {
  display: block;
}
#p-recruit .c-btn .c-btn__text:after,
#p-jobinfo .c-btn .c-btn__text:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  display: inline-block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #65a9c5;
  border-right: 1px solid #65a9c5;
  transform: rotate(45deg) translateY(-50%);
  transition: 0.3s ease;
}
#p-recruit .c-btn:hover .c-btn__text:after,
#p-jobinfo .c-btn:hover .c-btn__text:after {
  right: 25px;
}

/*  **********　採用情報　ここまで  ********** */

/*  **********　お問い合わせ  ********** */
.s-form .c-table {
  margin: 100px 0;
}
.s-form .c-btn__text:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  width: 1px;
  height: 100%;
  border-top: none;
  border-right: none;
  transform: initial;
}
.s-form .c-btn__text {
  padding: 18px 40px 18px 40px;
}
/*  **********　お問い合わせ　ここまで  ********** */

/*  **********　募集要項  ********** */
#p-jobinfo {
}
/* 募集要項 */
#p-jobinfo .s-jobinfo {
}
/* ボタン */
#p-jobinfo .s-jobinfobtn {
}
/*  **********　募集要項　ここまで  ********** */

/*  **********　応募フォーム  ********** */
#p-entry {
}
/*  **********　応募フォーム　ここまで  ********** */

/*  **********　お知らせ  ********** */
#p-newslist_archive {
}
/* 一覧 */
#p-newslist_archive .s-newslist .c-table {
  box-shadow: 0px 4px 30px -2px #eee;
  background: #fff;
  padding: 20px 40px 40px;
}
#p-newslist_archive .s-newslist .c-table th {
  font-weight: bold;
}
#p-newslist_archive .s-newslist .c-table th,
#p-newslist_archive .s-newslist .c-table td {
  padding: 40px 10px 40px 20px;
}
/* ページネーション */
#p-newslist_archive .s-pagenation {
}
/*  **********　お知らせ　ここまで  ********** */

/*  **********　物件情報（詳細）  ********** */
#p-property {
}
#p-property .s-propertyoutline {
}
.s-propertyoutline .c-title--normal {
  font-size: 5rem;
}
.s-propertyoutline .c-tag--property1 {
  font-size: 1.6rem;
}
.s-propertyoutline .c-rowlists li {
  border: 1px #eee solid;
  margin-right: 5px;
  padding: 12px 10px 10px;
  background: #fff;
  font-size: 2rem;
  line-height: 2rem;
}
.s-propertyoutline .c-rowlists li span {
  font-size: 2.5rem;
  color: #e24a46;
  font-weight: bold;
}
.s-propertydetail th,
.s-propertydetail td {
  padding: 30px 10px;
}
.s-propertydetail th {
  border-bottom: 1px solid #65a9c5;
  width: 15%;
  font-weight: bold;
  color: #2e5188;
}
.s-propertydetail td {
  border-bottom: 1px solid #eee;
}
.s-slickswitching__sub .slick-list {
  background: #eee;
}

#p-property .s-propertyvisual {
}
#p-property .s-propertydetail {
}
/*  **********　物件情報（詳細）　ここまで  ********** */

/*  **********　個人情報保護方針  ********** */
.s-privacy--inc .c-title--normal {
  font-size: 2.2rem;
  color: #2e5188;
}
.s-privacy--inc .c-title--small {
  font-size: 2rem;
  color: #2e5188;
  margin-top: 20px;
}

/*  **********　個人情報保護方針　ここまで  ********** */

/* **************************************************************** */
/* ********************** スマートフォン対応 ************************* */
/* **************************************************************** */

@media screen and (max-width: 810px) {
  /* ********** サイト全体の共通モジュールのstyle ********** */
  .l-main svg {
    position: absolute;
    z-index: -1;
    top: 0px;
  }
  /* テキスト要素 */
  .c-title--large {
    padding: 3px 10px;
    font-size: 2.3rem;
  }
  .c-title--normal {
    font-size: 2rem;
  }
  .c-title--small {
    font-size: 1.8rem;
  }
  /* ボタン要素 */
  .c-btn {
    width: 90%;
    margin: 0 auto;
  }
  /* テーブル要素 */
  .c-table th,
  .c-table td {
    width: 100%; /* 固定 */
    display: block; /* 固定 */
  }
  .c-table th {
    padding: 20px 10px 0; /* 固定 */
    border-bottom: 0; /* 固定 */
  }
  .c-table td {
    padding: 10px 10px 20px; /* 固定 */
    border-bottom: 1px solid #2e5188;
  }
  /* **********  サイト全体の共通パーツのstyle（★） ********** */
  /* フッタ */
  .l-footer .l-footer__address {
    order: 2;
    margin-top: 50px;
  }
  .l-footer .c-col2.u-ptb80 {
    padding-bottom: 10px;
  }
  .l-footer .c-text--bold.u-mb30 {
    margin-bottom: 10px;
  }
  .l-footer .l-footer__menu.u-w30 {
    width: 100%;
  }
  /* お知らせ右カラム/WPに影響するためclass名は変更不可 */
  .s-rightcol {
    margin-top: 60px;
  }
  /* 下層ページトップビジュアルメイン */
  .s-pagetop .c-col2 .c-wrap {
    margin: 0 auto 10px;
  }
  .s-pagetop .u-ptb100 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  /* ********** ページごと・セクションごとの個別style（★） ********** */
  #p-top *[class^="slickimg"] {
    height: calc(900 * var(--px));
  }
  #p-top .s-topmainvisual .c-container .c-wrap {
    padding: 20px 20px 0 0;
  }
  #p-top .s-topmainvisual .c-photo.slider {
    /*	height: calc(100vh - 340px); */
    height: calc(1400 * var(--px));
  }
  #p-top .s-topmainvisual .c-container .c-wrap .c-title--large {
    font-weight: normal;
    font-size: calc(4 * var(--rem));
  }
  #p-top .s-topmainvisual .c-container.c-col1 .c-text--normal {
    font-size: 1.7rem;
  }
  #p-top .s-topmainvisual.u-ptb100 {
    padding-top: 20px;
  }
  #p-top .s-topbusiness .c-btn {
    width: 100%;
  }
  #p-top .s-topbusiness .c-col2 .u-mb50 {
    margin-bottom: 20px;
  }
  #p-top .s-topbusiness .c-col2 .c-wrap:last-of-type .c-text--normal {
    line-height: 1.8;
  }
  /* お知らせ一覧 */
  #p-top .s-newslist .u-w30 {
    width: 100%;
  }
  #p-top .s-newslist .c-btn {
    display: block;
  }
  #p-top .s-newslist .u-mb30 {
    margin-bottom: 60px;
  }

  #p-top .s-newslist .c-table th {
    display: block;
    width: 100%;
    padding: 15px 10px 0;
  }
  #p-top .s-newslist .c-table td {
    border-bottom: 1px solid #2e5188;
    padding: 10px 10px 15px;
  }
  #p-top .s-newslist [class*="c-tag--news"] {
    margin-right: 0;
    display: block;
    margin-bottom: 5px;
  }
  #p-top .s-newslist .c-table th,
  #p-top .s-newslist .c-table td {
    white-space: wrap;
  }

  /* 物件情報 */
  #p-top .s-topproperty .c-title--normal span {
    display: table;
  }
  #p-top .s-topproperty .c-title--normal::after,
  #p-top .s-topproperty .c-title--normal::before {
    bottom: -20px;
  }
  #p-top .s-topproperty .c-title--normal {
    font-size: 2.4rem;
  }
  #p-top .s-topproperty .c-title--normal span {
    font-size: 1.4rem;
    padding: 5px 10px 4px 10px;
    margin-bottom: 10px;
  }
  /* 採用情報 */
  /* #p-top .s-toprecruit .c-photo.u-w60 {
    width: 90%;
  } */
  /*  **********　トップページ  ここまで　********** */

  /*  **********　会社情報  ********** */

  #p-company .c-indextitle {
    font-size: 3rem;
    text-align: center;
  }
  #p-company .c-indextitle--sub {
    font-size: 1.3rem;
    padding-left: 0px;
    text-align: center;
  }
  #p-company .s-companysdgs .u-w30 {
    width: 60%;
    margin-bottom: 15px;
  }

  /*  **********　会社情報　ここまで  ********** */

  /*  **********　設備仕様  ********** */
  #p-equipment .s-spec .c-col2 > .c-wrap {
    margin: 10px auto 10px;
  }
  #p-equipment .s-spec .c-col3--panel .c-item {
    margin: 0px auto 40px auto !important;
  }
  #p-equipment .s-spec .c-col3--panel .c-item:last-of-type {
    margin: 0px auto 0px auto !important;
  }
  #p-equipment .s-spec .c-col3--panel .c-item {
    margin: 0px auto 40px auto !important;
  }
  #p-equipment .s-spec .c-table th,
  #p-equipment .s-spec .c-table td {
    display: table-cell;
  }
  #p-equipment .s-spec .c-container .c-col1--panel .c-photo img {
    width: 100%;
  }
  #p-equipment .s-spec__achievements .c-col3--panel {
    flex-direction: row;
  }
  #p-equipment .s-spec .s-spec__achievements .c-col3--panel .c-item {
    /*  width: 60%;*/
    margin: 0px auto 2px auto !important;
  }
  #p-equipment .s-spec .c-sectiontitle .c-photo {
    height: calc(600 * var(--px));
  }
  #p-equipment .s-spec .c-text--bold {
    font-size: 2.1rem;
    line-height: 1.4;
  }
  #p-equipment .s-spec .u-mb20 {
    margin-bottom: 10px;
  }
  #p-equipment .s-spec .c-col1--panel .c-wrap.u-w50--r {
    margin-top: 10px;
    width: 100%;
  }

  #p-equipment .s-spec .c-col1--panel th {
    font-size: 1.4rem;
    font-weight: bold;
  }

  /*  **********　物件情報（詳細）  ********** */
  .s-propertyoutline .c-title--normal {
    font-size: 3rem;
    line-height: 1.2;
    margin-top: 10px;
  }
  #p-property .s-slickswitching__sub {
    display: flex;
    overflow: hidden;
    width: 100%;
  }
  #p-property .c-rowlists {
    flex-direction: column;
  }
  #p-property .c-rowlists li {
    margin-bottom: 10px;
  }
  .s-propertydetail table td,
  .s-propertydetail table th {
    display: block;
    width: 100%;
  }
  .s-propertydetail th {
    border-bottom: 0;
    padding: 20px 10px 0;
  }
  .s-propertydetail td {
    border-bottom: 1px solid #65a9c5;
    padding: 15px 10px 20px;
  }

  /*  **********　採用情報  ********** */
  #p-recruit .u-wrap.u-mb40 {
    margin-bottom: 60px;
  }
  #p-recruit .c-indextitle {
    font-size: 3rem;
    text-align: center;
  }
  #p-recruit .c-indextitle--sub {
    font-size: 1.3rem;
    padding-left: 0px;
    text-align: center;
  }
  #p-recruit .s-recruitkeyword .c-col3--panel .c-item {
    width: 70%;
    margin-bottom: 20px !important;
  }
  #p-recruit .s-recruitaboutjob .c-col2--panel .c-item {
    width: 90%;
  }
  #p-recruit .s-recruitaboutjob .c-col2--panel .c-item::after {
    content: none;
  }
  #p-recruit .s-recruitaboutjob .c-wrap .c-col2 .c-item {
    padding: 20px;
    width: 100%;
  }
  #p-recruit .s-recruitaboutjob .c-wrap::after {
    content: none;
  }
  #p-recruit .s-recruitaboutjob .c-wrap:last-of-type::after {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateX(0%) translateY(-50%);
    width: 100%;
    height: 1px;
    background: #fff;
    content: "";
  }
  #p-recruit .s-recruitmerit .c-wrap.u-w90 {
    width: 90%;
  }
  #p-recruit .s-recruitmerit .c-col3--panel.u-w80 {
    width: 90%;
  }
  #p-jobinfo .c-btn .c-btn__text {
    display: block;
  }
  /*  **********　お知らせ一覧  ********** */
  #p-newslist_archive .s-newslist .c-table {
    padding: 20px;
  }
  #p-newslist_archive .s-newslist .c-table th {
    padding: 20px 10px 0;
  }
  #p-newslist_archive .s-newslist .c-table td {
    padding: 15px 10px 20px;
  }
  /*  **********　お問い合わせ  ********** */
  /*  **********　お問い合わせ  ********** */
  /* .s-form .c-table {
} */

  .s-form .c-table {
    margin: 30px 0;

    padding: 20px;
  }
  .s-form .c-btn__text {
    width: 100%;
  }
  /*  **********　個人情報保護方針  ********** */
  .lity-container {
    height: 80vh;
  }
  .lity-content {
    height: 100%;
  }
  .lity-iframe-container {
    height: 100% !important;
    max-height: 100% !important;
  }
}
