/*
Theme Name:GRAVITY child
Theme URI:https://tcd-theme.com/tcd111
Description:WordPressテーマ「GRAVITY」の子テーマ
Template:gravity_tcd111
Author:TCD
Author URI:https://tcd-theme.com/
Version:1.0
*/

/*
  ここから下にCSSを追記してください。
*/

/* 訳あり不動産とは？ */

.wakeari-about {
  width: 800px;
  margin: 0 auto;
  border: 1px solid #ddd;
  padding: 30px 20px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}

.wakeari-about h2 {
  border-left: 5px solid #1F6C9F;
  font-size: 30px;
  line-height: 40px;
  padding-left: 15px;
  margin-bottom: 35px;
}

.wakeari-about img {
  box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
  margin-bottom: 35px;
}

.wakeari-about .wakeari-about-midashi {
  margin-top: 35px;
}

.wakeari-about p {
  font-size: 18px;
  line-height: 26px;
  margin-bottom: 20px;
}

.wakeari-about ul {
  background-color: #F5F8FA;
  padding: 15px;
  margin-bottom: 35px;
}

.wakeari-about ul li {
  margin-bottom: 15px;
  list-style-type: disc;
  margin-left: 25px;
}

.wakeari-about ul li:nth-last-child(1){
  margin-bottom: 0;
}

.wakeari-about h3 {
  color: #1F6C9F;
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 30px;
}

.wa-ab-link {
  display: flex;
  justify-content: space-between;
  margin: 45px 0;
}

.wa-ab-link a {
  width:45%;
  color: #1F6C9F;
  border: 1px solid #1F6C9f;
  padding: 15px;
  text-align: center;
}

.wa-ab-link a:hover {
  background-color: #1F6C9F;
  color: #fff;
}





/* 訳あり不動産を売りたい方へLP */

.marker_yellow {
  font-weight: bold;
  background: linear-gradient(transparent 60%, #ffff66 60%);
}

.red_font {
  color: #ff0000;
  font-weight: bold;
}

.scroll-down {
  padding-top: 80px;
  top: 20px;
  position: relative;
  z-index: 2;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none;
}

.scroll-down span {
  position: absolute;
 top: 0px;
 left: 50%;
 width: 24px;
 height: 24px;
 margin-left: -12px;
 border-left: 1px solid #333;
 border-bottom: 1px solid #333;
 -webkit-transform: rotate(-45deg);
 transform: rotate(-45deg);
 -webkit-animation: sdb 2s infinite;
 animation: sdb 2s infinite;
 opacity: 0;
 box-sizing: border-box;
}

.scroll-down span:nth-of-type(1) {
 -webkit-animation-delay: 0s;
 animation-delay: 0s;
}

.scroll-down span:nth-of-type(2) {
 top: 16px;
 -webkit-animation-delay: .15s;
 animation-delay: .15s;
}

.scroll-down span:nth-of-type(3) {
 top: 32px;
 -webkit-animation-delay: .3s;
 animation-delay: .3s;
}

.container-child {
  max-width: 1050px;
  margin: 0 auto;
}

.front-page_main-index {
  display: flex;
}

.front-page-main-inner-left {
  padding: 50px;
  width: 60%;
  background-color: #fff;
}

.front-page-main-inner-right {
  width: 40%;
}

.front-page-main-inner-right-child {
  width: 80%;
  margin: auto;
  padding-top: 65px;
}

.front-page-main-inner-right img {
  filter: drop-shadow(3px 3px 3px rgba(160, 160, 160, 0.8));
}

.front-page-main-title h2 {
  color: #333;
  font-size: 40px;
  line-height: 85px;
}

.front-page-main-title h2 span{
  color: #ff0000;
  font-size: 80px;
}

.frontmain-title-ap {
  width: 50px;
  position: absolute;
  z-index: 2;
  top: -100px;
  right: 280px;
}

.front-page-main-inner p {
  font-size: 40px;
  line-height: 50px;
  color: #fff;
  text-align: center;
  margin-bottom: 20px;
}


.front-main-in-ca {
  width: 100%;
  position: relative;
  display: inline-block;
  margin-top: 20px;
  padding: 20px;
  border: 2px solid #000000;
  border-radius: 9999px;
  background-color: #ffffff;
  text-align: left;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
}

.front-main-in-ca p {
  text-align: center;
  font-size: 35px;
  line-height: 45px;
  font-weight: bold;
  color: #0070C0;
  margin-bottom: 0;
}

.front-main-in-ca::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  border-style: solid;
  border-width: 0 10px 20px 10px;
  border-color: transparent transparent #000000;
  translate: -50% -100%;
}

.front-main-in-ca::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  border-style: solid;
  border-width: 0 7.8px 15.5px 7.8px;
  border-color: transparent transparent #ffffff;
  translate: -50% -100%;
}

.front-main-img img {
  max-width: 100%;
}

.front-main-sp-img {
  display: none;
}

.section01 {
  padding: 50px 0 0 0;
  text-align: center;
  background: #fff;
}

.section01 h2 {
  font-size: 35px;
  line-height: 45px;
  margin-bottom: 35px;
}

.section01 .kyoukan-block {
  display: flex;
  justify-content: space-between;
  margin-bottom: 45px;
}

.section01 .kyoukan-block .kyokan-block-left {
  width: 40%;
}

.section01 .kyoukan-block .kyokan-block-left img {
   box-shadow: 6px 6px 6px 0px rgba(0, 0, 0, 0.45);
}

.section01 .kyoukan-block .kyokan-block-right {
  width: 55%;
}

.section01 .kyoukan-block .kyokan-block-right p {
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 20px;
  text-align: left;
}

.section01 p span {
  color: #ff0000;
  font-weight: bold;
  font-size: 45px;
}

.cta-section h2 {
  font-size: 25px;
  line-height: 35px;
  text-align: center;
}

.cta-btn {
  margin-bottom: 30px;
  display: flex;
  justify-content: space-between;
}

.cta-section.buy-about-cta .cta-btn {
  display: block;
}

.cta-btn p {
  font-size: 18px;
  margin-top: 25px;
}


.cta-btn .cta-line {
  width: 45%;
  background-color: #06C755;
  padding: 15px 20px;
  color: #fff;
  font-size: 20px;
  line-height: 30px;
  border-radius: 10px;
   box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.35);
}

.cta-btn .cta-line:hover, .cta-btn .cta-tel:hover {
  opacity: .5;
}


.cta-btn .cta-tel {
  pointer-events: auto;
  cursor: pointer;
  display: block;
  width: 45%;
  background-color: #0070C0;
  padding: 15px 20px;
  color: #fff;
  font-size: 20px;
  line-height: 30px;
  border-radius: 10px;
   box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.35);
}

.cta-section p {
  font-size: 20px;
  line-height: 30px;
  text-align: center;
}

.cta-pr {
  color: #ff0000;
  font-size: 16px;
  line-height: 24px;
}


.taioubukken {
  margin-top: 80px;
  background-color: #0070C0;
  padding: 45px;
}

.taioubukken h2 {
  color: #fff;
  font-size: 30px;
  line-height: 40px;
  margin-bottom: 15px;
  text-align: center;
}

.taioubukken p {
  color: #fff;
  font-size: 20px;
  line-height: 30px;
  text-align: center;
  margin-bottom: 35px;
}

.taioubukken .taioubukken-list {
  width: 800px;
  margin: 0 auto 30px auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.taioubukken .taioubukken-list li {
  width: 30%;
  padding: 15px;
  background-color: #F9F9F9;
  margin-bottom: 25px;
  border-radius: 10px;
  box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
}

.taioubukken .taioubukken-list li img {
  display: block;
  width: 150px;
  margin: 0 auto 20px auto;
}

.taioubukken .taioubukken-list li h3 {
  font-size: 18px;
  line-height: 30px;
  text-align: center;
}

.erabareru-riyuu {
  text-align: center;
}

.erabareru-riyuu-title {
  display: inline-block;
  padding: 30px;
  min-width: 120px;
  color: #555;
  font-size: 16px;
  background: #E6D28B;
  box-sizing: border-box;
  border-radius: 15px;
  margin-bottom: 30px;
}

.erabareru-riyuu-title p {
  color: #000;
  font-weight: bold;
  font-size: 30px;
  line-height: 40px;
  margin-bottom: 0;
}

.erabareru-riyuu ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.erabareru-riyuu ul li {
  width: 46%;
  background-color: #fff;
  padding: 15px;
  border-radius: 10px;
  box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
  margin-bottom: 35px;
}

.erabareru-riyuu ul li h3 {
  font-size: 20px;
  line-height: 30px;
}

.erabareru-riyuu ul li img {
  width: 200px;
}

.erabareru-riyuu ul li p {
  font-size: 16px;
  line-height: 24px;
  color: #333;
}

.erabareru-riyuu ul li p:nth-last-child(1) {
  margin-bottom: 0;
}

.contact-section {
  background-color: #433F3F;
  padding: 50px;
}

.contact-section .cta-section h2 {
  color: #fff;
  font-size: 30px;
  line-height: 40px;
  margin-bottom: 10px;
}

.contact-section .cta-section p {
  color: #fff;
  font-size: 20px;
  text-align: center;
}

.contact-section .cta-section .cta-pr {
  color: #FAEA01;
  font-size: 18px;
  line-height: 26px;
}

.contact-section .cta-section .cta-btn {
  margin: 25px auto;
}

.contact-section .cta-section .cta-btn a {
  width: 400px;
  display: block;
  text-align: center;
  margin: 0 auto;
}

.cs-google-link {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.cs-google-link a {
  display: block;
  color: #fff;
  font-size: 20px;
  text-decoration: underline;
}

.cs-google-link a:hover {
  text-decoration: none;
}


.cs-google-link a i {
  margin-left: 5px;
}


.section2 {
  padding: 50px 0 150px 0;
}

.section2 h2 {
  font-size: 30px;
  line-height: 40px;
  margin-bottom: 15px;
  text-align: center;
}

.section2 p {
  font-size: 18px;
  line-height: 28px;
  text-align: center;
}

.jirei-card-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 50px;
}

.jirei-card {
  width: 30%;
  border: 1px solid #0070C0;
}

.jirei-info {
  padding: 15px;
  background-color: #0070C0;
}

.jirei-info h3 {
  color: #fff;
  font-size: 20px;
  line-height: 30px;
  text-align: center;
}

.jirei-price {
  border-bottom: 1px solid #0070C0;
  padding: 10px;
}

.jirei-price p {
  font-size: 20px;
  line-height: 28px;
  font-weight: bold;
}

.jirei-chukaizero {
  display: flex;
  justify-content: space-between;
  background-color: #E93691;
}

.jirei-chukaiimg {
  width: 30%;
}

.jirei-chukaitxt {
  width: 70%;
  padding-top: 20px;
  margin-left: 15px;
}

.jirei-chukaitxt p {
  text-align: left;
  font-weight: bold;
  color: #fff;
  font-size: 20px;
}

.jirei-chukaitxt p span {
  font-size: 30px;

}

.use-saving {
  text-align: center;
  margin: 60px auto;
  max-width: 1000px;
  padding: 0 20px;
}

.use-saving h2 {
  font-size: 45px;
  line-height: 55px;
  margin-bottom: 15px;
}

.use-saving .intro {
  font-size: 25px;
  line-height: 30px;
  margin-bottom: 30px;
}

.use-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 30px;
}

.use-item {
  background: #f9f9f9;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  transition: transform 0.3s ease;
}

.use-item:hover {
  transform: translateY(-5px);
}

.use-item img {
  max-height: 100px;
  margin-bottom: 15px;
}

.use-item h3 {
  font-size: 20px;
  margin-bottom: 8px;
  color: #2a9d8f;
}

.use-item p {
  font-size: 18px;
  color: #555;
}


.syokihiyou-zero-merit {
  height: 1250px;
  background-position: center;
  background-size: cover;
  padding: 100px 0;
}

.zero-merit-baloon {
  width: 450px;
  background-color: #ff0000;
  padding: 25px;
  margin: 0 auto 30px auto;
}

.zero-merit-baloon p {
  color: #fff;
  font-size: 30px;
  text-align: center;
  font-weight: bold;
}

.syokihiyou-zero-merit h2 {
  padding: 20px;
  font-weight: bolder;
  color: #fff;
  font-size: 60px;
  line-height: 70px;
  background-color: #ff0000;
  margin-bottom: 80px;
}

.syokihiyou-zero-merit ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 50px;
}

.syokihiyou-zero-merit ul li {
  width: 33%;
  margin-bottom: 50px;
}

.syokihiyou-zero-merit-bottom {
  margin-bottom: 180px;
}

.syokihiyou-zero-merit-bottom img {
  display: block;
  width: 70%;
  margin: -300px auto 0 auto;
}

.syuzerome-bo-title {
  width: 70%;
  background-color: #ff0000;
  padding: 30px;
  margin: -150px auto 0 auto;
  z-index: 10:
}

.syuzerome-bo-title p {
  text-align: center;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
}

.cs-rv-section {
  background-color: #0070C0;
  position: relative;
  padding: 50px 0;
}

.cs-rv-baloon {
  width: 60%;
  display: block;
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0 auto 0 auto;
  padding: 15px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 35px;
  background: #E6D28B;
  box-sizing: border-box;
  border: 4px solid #333;

}

.cs-rv-baloon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -22px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #E6D28B;
  z-index: 2;
}

.cs-rv-baloon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #333;
  z-index: 1;
}

.cs-rv-baloon h2 {
  text-align: center;
}

/* スリック */

.slider-1 .slick-slide {
  margin: 10px 60px 30px 60px;
  position: relative;
}

.cs-rv-section .slick-slider {
  border: none;
}

.slider-1 .slick-arrow {
  margin: 0 20px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #000;
  cursor: pointer;
  border: none;
  outline: none;
  font-size: 0;
  position: absolute;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
}

.slider-1 .slick-arrow:hover {
  background-color: #000;
  color: inherit;
}
.slider-1 .slick-arrow::before {
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border: 1px solid #fff;
  border-width: 3px 3px 0 0;
  position: absolute;
  top: 24px;
  transform: rotate(45deg);

}
.slider-1 .slick-next {
  right: 0;
}
.slider-1 .slick-prev {
  left: 0;
}
.slider-1 .slick-next::before {
  left: 20px;
}
.slider-1 .slick-prev::before {
  border-width: 0 0 3px 3px;
  right: 22px;
}

.dots-3 .slick-dots {
  position: sticky;
  text-align: center;
  bottom: 0;
}

.dots-3 .slick-dots li {
  display: inline-block;
}

.dots-3 .slick-dots button {
  display: block;
  width: 10px;
  height: 10px;
  margin: 6px;
  font-size: 0;
  padding: 0;
  border: 0;
  outline: none;
  cursor: pointer;
  background: #bcbcbc;
  border-radius: 50%;
}
.dots-3 .slick-dots .slick-active button {
  background: #0a467d;
}

.slick-dotted.slick-slider {
  margin-bottom: 0;
}

.slick-dots li button:before {
  display: none;
}

.slider-1 li {
  position: relative;
  width: 500px;
  height: 450px;
  padding: 30px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
  overflow: hidden;
  transition: all 0.6s ease 0.4s;
  border: 1px solid #eee;
  background-color: #fff;
}

.slider-1 li .cs-rv-head {
  display: flex;
  margin-bottom: 10px;
}

.slider-1 li .cs-rv-head .cs-rv-head-img {
  width: 50px;
  margin-right: 5px;
}

.slider-1 li .cs-rv-head .cs-rv-head-img img {
  border-radius: 50%;
}

.slider-1 li .cs-rv-head .cs-rv-head-title {
  margin-top: 15px;
}

.slider-1 li .cs-rv-head .cs-rv-head-title h2 {
  font-size: 16px;
  line-height: 18px;
  text-align: left;
  margin-bottom: 0;
}

.slider-1 li .cs-rv-star-section {
  display: flex;
  margin-bottom: 15px;
}

.slider-1 li .cs-rv-star-section .cs-rv-star {
  display: flex;
  padding-top: 4px;
  margin-right: 5px;
}

.slider-1 li .cs-rv-star-section .cs-rv-star img {
  width: 14px;
  height: 13px;
}

.slider-1 li .cs-rv-icon {
  position: absolute;
  bottom: 30px;
  display: flex;
  margin-top: auto;

}

.slider-1 li .cs-rv-icon img {
  width: 30px;
  margin-right: 30px;
}

/* スリックここまで */

.gonyuukyo-step {
  background-color: #fff;
  padding-bottom: 80px;
}

.gonyuukyo-step-title {
  width: 700px;
  background-color: #fff;
  border-radius: 10px;
  padding: 25px;
  margin: 0 auto 50px auto;
}

.gonyuukyo-step-title h2 {
  font-size: 35px;
  text-align: center;
}

.sec03-flow {
  margin-bottom: 80px;
}

.sec03-flowbox {
  display: flex;
  justify-content: space-between;
  padding: 35px;
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
  margin-bottom: 30px;
}

.sec03-flowboximg {
  width: 18%;
  position: relative;
}

.sec03-flowboximg img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sec03-flowboxtxt {
  width: 77%;
}

.sec03-flowboxtxt h3 {
  font-size: 25px;
  text-align: left;
  margin-bottom: 20px;
}

.sec03-flowboxtxt p {
  font-size: 18px;
  line-height: 26px;
}

.sec03-flowboxtxt a {
  text-align: center;
  font-size: 18px;
  display: block;
  padding: 25px 15px;
  background-color: #0070C0;
  color: #fff;
  margin: 20px auto 0 0;
  width: 50%;
}

.sec03-flowboxtxt a:hover {
  opacity: .5;
}


.gonyuukyo-step .scroll-down span {
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
}

.sec03-flowboxtxt span {
  color: #ff0000;
}

.cta-end {
  background-color: #0070C0;
  padding-bottom: 50px;
}

.cta-end h2 {
  color: #fff;
  font-size: 30px;
  line-height: 40px;
  margin-bottom: 25px;
  text-align: center;
}

.cta-end p {
  font-size: 20px;
  line-height: 30px;
  color: #fff;
  text-align: center;
  margin-bottom: 25px;
}

.cta-end .cta-btn {
  text-align: center;
}

.cta-end .cta-tel {
  background-color: #fff;
  color: #333;
}

.line-merit {
  margin: 50px auto;
  padding: 25px;
  border: 1px solid #ddd;
  box-shadow: 6px 6px 6px 0px rgba(0, 0, 0, 0.45);
}

.line-merit h2 {
  font-size: 30px;
  text-align: center;
  margin-bottom: 55px;
}

.line-merit h3 {
  font-size: 20px;
  color: #0070c0;
  border-left: solid 3px #0070c0;
  padding-left: 10px;
  margin-bottom: 25px;
}

.line-merit .line-merit-lastmidashi {
  margin-top: 55px;
}


.line-merit p {
  font-size: 18px;
  line-height: 26px;
  margin-bottom: 15px;
}

.line-merit img {
  width: 40%;
  margin-bottom: 25px;
}


.p-header-mypage-link-history:before {
  -webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M510-492.15V-650q0-12.75-8.63-21.38-8.63-8.62-21.38-8.62-12.76 0-21.37 8.62Q450-662.75 450-650v167.08q0 7.06 2.62 13.68 2.61 6.62 8.23 12.24l137 137q8.3 8.31 20.88 8.5 12.58.19 21.27-8.5t8.69-21.08q0-12.38-8.69-21.07l-130-130ZM480.07-100q-78.84 0-148.21-29.92t-120.68-81.21q-51.31-51.29-81.25-120.63Q100-401.1 100-479.93q0-78.84 29.92-148.21t81.21-120.68q51.29-51.31 120.63-81.25Q401.1-860 479.93-860q78.84 0 148.21 29.92t120.68 81.21q51.31 51.29 81.25 120.63Q860-558.9 860-480.07q0 78.84-29.92 148.21t-81.21 120.68q-51.29 51.31-120.63 81.25Q558.9-100 480.07-100Z"/></svg>');
}

.p-header-mypage-link-favorite:before {
  -webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M479.62-171.62q-12.85 0-25.81-4.61-12.96-4.62-22.81-14.46l-57.46-52.23q-106.38-97-189.96-190.58Q100-527.08 100-634q0-85.15 57.42-142.58Q214.85-834 300-834q48.38 0 95.58 22.31 47.19 22.31 84.42 72.46 37.23-50.15 84.42-72.46Q611.62-834 660-834q85.15 0 142.58 57.42Q860-719.15 860-634q0 108.08-85 202.73-85 94.65-189.54 188.96l-56.85 51.62q-9.84 9.84-22.99 14.46-13.16 4.61-26 4.61Z"/></svg>');
}

.p-header-mypage-link-conditon:before {
  -webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M212.31-140Q182-140 161-161q-21-21-21-51.31v-535.38Q140-778 161-799q21-21 51.31-21h535.38Q778-820 799-799q21 21 21 51.31v535.38Q820-182 799-161q-21 21-51.31 21H212.31ZM320-290h200q12.75 0 21.37-8.63 8.63-8.63 8.63-21.38 0-12.76-8.63-21.37Q532.75-350 520-350H320q-12.75 0-21.37 8.63-8.63 8.63-8.63 21.38 0 12.76 8.63 21.37Q307.25-290 320-290Zm0-160h320q12.75 0 21.37-8.63 8.63-8.63 8.63-21.38 0-12.76-8.63-21.37Q652.75-510 640-510H320q-12.75 0-21.37 8.63-8.63 8.63-8.63 21.38 0 12.76 8.63 21.37Q307.25-450 320-450Zm0-160h320q12.75 0 21.37-8.63 8.63-8.63 8.63-21.38 0-12.76-8.63-21.37Q652.75-670 640-670H320q-12.75 0-21.37 8.63-8.63 8.63-8.63 21.38 0 12.76 8.63 21.37Q307.25-610 320-610Z"/></svg>');
}

.c-tel:before {
  content: '';
  -webkit-mask: var(--tcd-icon--tel) no-repeat center / 1em;
  background: currentColor;
}

.c-realty-area:before {
  -webkit-mask: var(--tcd-realty-icon-area);
}

.c-date--publish:before {
  -webkit-mask: var(--tcd-icon--publish) no-repeat center / 1.2em;
}

.c-date--updated:before {
  -webkit-mask: var(--tcd-icon--updated) no-repeat center / 1.2em;
}

/* 会社概要 */

.large_headline{
  font-size: 50px;
  margin-bottom: 15px;
}

#company_message .post_row {
  display: flex;
  justify-content: space-between;
}

#company_message .post_row .post_company {
  width: 48%;
}

#company_message .post_col-2 {
  width: 48%;
}

.sub_title {
  color: #1F6C9F;
}

.design_header {
  margin-bottom: 35px;
}

.catch-title {
  font-size: 30px;
  line-height: 40px;
  margin-bottom: 30px;
}

.post_company p {
  font-size: 18px;
  line-height: 26px;
  margin-bottom: 20px;
}

.post_company .name {
  text-align: right;
  font-weight: bold;
}

.ceo-img img {
  display: block;
  width: 80%;
  margin: 0 auto;
}

.company-img {
  display: flex;
  justify-content: space-between;
  margin-bottom: 35px;
}

.company-img .company-img-child {
  width: 33%;
}

.company_data {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.company_data-info, .company_data-career {
  width: 48%;
}

.company_data-info h4, .company_data-career h4 {
  color: #1F6C9F;
  font-size: 18px;
  margin-bottom: 25px;
}

.company_data th {
  width: 110px;
  text-align: left;
  padding-bottom: 20px;
}

.company_data td {
  padding-bottom: 20px;
  line-height: 28px;
}

.company_data td ul li {
  list-style: disc;
}


.company_data-career th {
  width: 200px;
  text-align: left;
  padding-bottom: 20px;
}

.company_access iframe {
  width: 100%;
  margin-bottom: 30px;
}

.company_access-info {
  display: flex;
  justify-content: space-between;
}

.company_access-info-child {
  width: 48%;
}

.company_access-info-child p {
  font-size: 18px;
  line-height: 26px;
}

/* 非公開リスト */

.in-pr_list h2 {
  font-size: 30px;
  line-height: 40px;
  border-left: 5px solid #1F6C9F;
  padding-left: 10px;
  margin-bottom: 35px;
}

.in-pr_list p {
  font-size: 18px;
  line-height: 26px;
}

.in-pr-line {
  display: block;
  color: #1e73be;
  font-weight: bold;
  margin-top: 20px;
}

.in-pr-line:hover {
  text-decoration: underline;
}


.in-pr_list-content {
  margin-top: 35px;
}

/* ===============================
   テーブル基本設定
================================ */
.in-pr_list-content table{
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

/* ===============================
   thead（ヘッダー）
================================ */
.in-pr_list-content thead {
  border: 1px solid #dcdfe6;
}

.in-pr_list-content thead th{
  background: #f4f6f9;
  border: 1px solid #dcdfe6;
  padding: 8px 6px;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
}

.in-pr_list-content thead + tbody::before{
  content: "";
  display: table-row;
  border-top: 18px solid #fff;
}

/* ===============================
   tbody間のスペース（重要）
================================ */
.in-pr_list-content tbody + tbody::before{
  content: "";
  display: table-row;
  border-top: 18px solid #fff; /* ← 背景色に合わせる */
}

/* ===============================
   カード本体（tbody内）
================================ */
.in-pr_list-content tbody td{
  border: 1px solid #e2e6ee;
  padding: 8px 10px;
  background: #ffffff;
  font-size: 13px;
  vertical-align: middle;
}

/* 上端 */
.in-pr_list-content tbody tr:first-child td{
  border-top: 1px solid #e2e6ee;
}

/* 下端（重要） */
.in-pr_list-content tbody tr:last-child td{
  border-bottom: 1px solid #e2e6ee;
}

/* 左右 */
.in-pr_list-content tbody td:first-child{
  border-left: 1px solid #e2e6ee;
}

.in-pr_list-content tbody td:last-child{
  border-right: 1px solid #e2e6ee;
}

/* 行の区切りを少し薄く */
.in-pr_list-content tbody tr + tr td{
  border: 1px solid #dcdfe6;
}

/* ===============================
   No.列（左の縦セル）
================================ */
.in-pr_list-content tbody td[rowspan]{
  font-weight: 700;
  text-align: center;
  background: #fafbff;
}


/* いまの collapse のままでOK */
.in-pr_list-content table{
  border-collapse: collapse;
}

/* カードの下線を「影」で描く（collapseに潰されない） */
.in-pr_list-content tbody tr:last-child td{
  border-bottom: 0; /* ←念のため消す（消さなくてもOKなことが多い） */
  box-shadow: inset 0 -1px 0 #e2e6ee;
}

/* まず：下線は「最終行」と「rowspan(No)」で描く（色は統一） */
.in-pr_list-content tbody tr:last-child td{
  box-shadow: inset 0 -1px 0 #e2e6ee;
}
.in-pr_list-content tbody td[rowspan]{
  box-shadow: inset 0 -1px 0 #e2e6ee;
}

/* ✅ 濃くなる原因を「最後のカードだけ」消す（border-bottomの重なり対策） */
.in-pr_list-content tbody:last-child tr:last-child td{
  border-bottom: 0 !important;
}

/* ✅ Noセル（rowspan）も最後だけ border-bottom を消す（ここが肝） */
.in-pr_list-content tbody:last-child td[rowspan]{
  border-bottom: 0 !important;
  /* 薄くしない！同じ線を1本だけにする */
  box-shadow: inset 0 -1px 0 #e2e6ee !important;
}

/* ただしカードの最終行に属するNoだけ入れる */
.in-pr_list-content tbody:last-of-type td[rowspan],
.in-pr_list-content tbody td[rowspan]{
  box-shadow: inset 0 -1px 0 #e2e6ee;
}

/* theadの一番下だけ線を入れる */
.in-pr_list-content thead tr:last-child th{
  box-shadow: inset 0 -1px 0 #e2e6ee;
}

/* thead最下段に下線（今のやつ） */
.in-pr_list-content thead tr:last-child th{
  box-shadow: inset 0 -1px 0 #e2e6ee;
}

/* ✅ No.（rowspan=5）のthにも下線 */
.in-pr_list-content thead th[rowspan]{
  box-shadow: inset 0 -1px 0 #e2e6ee;
}

/* thead の No.（rowspan th）を縦横中央 */
.in-pr_list-content thead th[rowspan]{
  vertical-align: middle;
  text-align: center;
}

/* colgroup設計を確実に効かせる */
.in-pr_list-content .pr-table{
  width: 80%;
  table-layout: fixed;
  border-collapse: collapse;
}

/* 8列の幅設計（PC基準） */
.in-pr_list-content .pr-table col.c-no    { width: 56px; }   /* No */
.in-pr_list-content .pr-table col.c-code  { width: 150px; }  /* 物件番号 */
.in-pr_list-content .pr-table col.c-type1 { width: 100px; }  /* 物件種目(左) */
.in-pr_list-content .pr-table col.c-type2 { width: 90px; }   /* 物件種目(右/予備) */
.in-pr_list-content .pr-table col.c-area  { width: 80px; }  /* 面積 */
.in-pr_list-content .pr-table col.c-main  { width: 250px; }   /* メイン（所在地/沿線） */
.in-pr_list-content .pr-table col.c-sub   { width: 65px; }   /* サブ（交通など） */

/* 交通（徒歩○分）は折り返しさせない＆右寄せ */
.in-pr_list-content .pr-table tbody tr:nth-child(3) td[colspan="2"]{
  white-space: nowrap;
  text-align: right;}


  /* 全セル 横中央 */
  .in-pr_list-content table th,
  .in-pr_list-content table td{
    text-align: center;
  }

  /* 全セル 縦中央 */
  .in-pr_list-content table th,
  .in-pr_list-content table td{
    vertical-align: middle;
  }

  /* 物件番号セルだけ（各tbodyの先頭行の2つ目のtd） */
  .in-pr_list-content .pr-table tbody tr:first-child td:nth-child(2){
    color: #1e73be;
    cursor: pointer;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
  }

  .in-pr_list-content .pr-table tbody tr:first-child td:nth-child(2):hover{
    text-decoration: underline;
  }



@media screen and (max-width: 1080px) {


.front-page-main-inner {
  width: 80%;
}

.front-page-main-title h2 {
  font-size: 50px;
}

.front-page-main-inner h2 span {
  font-size: 100px;
}

.frontmain-title-ap {
  right: 150px;
  top: -80px;
}

.front-main-in-ca {
  width: 80%;
}

.front-page-main-inner p {
  font-size: 30px;
}

.front-main-in-ca p {
  font-size: 25px;
}

.syokihiyou-hikaku img {
  width: 90%;
  margin: 50px auto 0 auto;
}

.umaihanashi-clear-title {
  padding: 70px 45px;
}

.umaihanashi-clear-title h3 {
  font-size: 30px;
}

.container {
  width: 95%;
}

.syuzerome-bo-title {
  width: 90%;
  margin: -120px auto 0 auto;
}

.contact-offer h2 {
  font-size: 30px;
  line-height: 40px;
}

.contact-offer-txt-img {
  display: flex;
  align-items: center;
}

}


@media screen and (max-width: 600px) {

.wakeari-about {
  width: 100%;
}

.wakeari-about h2 {
  font-size: 20px;
  line-height: 28px;
  padding-left: 10px;
}

.wakeari-about p {
  font-size: 16px;
  line-height: 24px;
}

.wa-ab-link {
  display: block;
}

.wa-ab-link a {
  width: 100%;
  display: block;
  margin-bottom: 15px;
}

.front-page-main-inner {
  width: 100%;
  padding: 30px 35px 0 35px;
}

.front-page_main-index {
  padding: 0;
  display: block;
}

.front-page-main-inner-left {
  width: 95%;
  margin: 0 auto;
  padding: 0;
}

.front-main-sp-img {
  display: block;
  height: 180px;
  background-position: center;
  background-size: cover;
}

.front-page-main-title h2 {
  font-size: 20px;
  text-align: center;
  line-height: 45px;
}

.front-page-main-title h2 span {
  font-size: 40px;
}

.front-main-in-ca {
  width: 100%;
  margin: 20px auto 20px auto;
  padding: 15px;
}

.front-main-in-ca p {
  font-size: 18px;
  line-height: 28px;
}

.front-page-main-inner-right {
  width: 100%;
}

.front-page-main-inner-right-child {
  width: 100%;
  padding-top: 20px;
}

.section01 {
  padding: 30px 0;
}

.section01 h2 {
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 25px;
}

.section01 p {
  text-align: left;
  font-size: 20px;
  line-height: 28px;
}

.section01 .kyoukan-block {
  display: block;
  margin-bottom: 45px;
}

.section01 .kyoukan-block .kyokan-block-left {
  width: 70%;
  margin: 0 auto 30px auto;
}

.section01 .kyoukan-block .kyokan-block-right {
  width: 100%;
}

.section01 .kyoukan-block .kyokan-block-right p {
  font-size: 16px;
  line-height: 24px;
}

.line-merit p {
  font-size: 16px;
  line-height: 24px;
}

.contact-section .cta-section .cta-pr {
  font-size: 16px;
  line-height: 24px;
}

.cta-btn {
  display: block;
}

.cta-btn .cta-line, .cta-btn .cta-tel {
  display: block;
  width: 100%;
  margin-bottom: 15px;
}

.contact-section .cta-section .cta-btn a {
  width: 100%;
  margin-bottom: 10px;
}

.contact-section .cta-section p {
  font-size: 16px;
  line-height: 26px;
}

.taioubukken {
  margin-top: 30px;
  padding: 20px 0;
}

.taioubukken h2 {
  font-size: 20px;
  line-height: 30px;
}

.taioubukken p {
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 20px;
}

.taioubukken .taioubukken-list {
  width: 100%;
  margin: 0 auto;
  padding: 10px;
}

.taioubukken .taioubukken-list li {
  width: 48%;
  padding: 5px;
}

.taioubukken .taioubukken-list li img {
  width: 70%;
  margin: 0 auto;
}

.taioubukken .taioubukken-list li h3 {
  font-size: 12px;
}

.erabareru-riyuu {
  padding: 10px;
}

.erabareru-riyuu-title {
  width: 100%;
  padding: 10px;
}

.erabareru-riyuu-title p {
  font-size: 18px;
  line-height: 30px;
  margin-bottom: 0;
}

.erabareru-riyuu ul li {
  width: 100%;
}

.erabareru-riyuu ul li h3 {
  font-size: 18px;
  line-height: 28px;
}

.erabareru-riyuu ul li img {
  width: 30%;
}

.erabareru-riyuu ul li p {
  text-align: left;
}

.contact-section {
  padding: 15px;
}

.contact-section .cta-section h2 {
  font-size: 18px;
  line-height: 28px;
}

.section2 {
  padding: 25px 0;
}

.section2 h2 {
  font-size: 20px;
  line-height: 30px;
}

.section2 p {
  text-align: left;
  font-size: 16px;
  line-height: 26px;
}

.jirei-card-list {
  margin-top: 25px;
}

.jirei-chukaizero {
  padding: 10px;
}

.jirei-card {
  width: 100%;
  margin-bottom: 25px;
}

.jirei-chukaitxt p {
  font-size: 18px;
  text-align: center;
  margin-bottom: 10px;
}

.jirei-price p {
  font-size: 20px;
  text-align: center;
}

.gonyuukyo-step {
  padding: 0;
}

.gonyuukyo-step-title {
  width: 100%;
  padding: 15px;
  margin: 0 auto 25px auto;
}

.gonyuukyo-step-title h2 {
  font-size: 20px;
  line-height: 30px;
}

.sec03-flow {
  margin-bottom: 150px;
}


.cs-rv-baloon {
  width: 80%;
}

.cs-rv-baloon h2 {
  font-size: 20px;
  line-height: 28px;
}

.cs-rv-section {
  padding: 30px 10px;
}

.cs-rv-section ul {
  margin-top: 30px;
}

.cs-rv-section .dots-3 .slick-dots {
  margin-top: 0;
}

.cs-google-link a {
  font-size: 18px;
  line-height: 26px;
}

.slider-1 li {
  width: 350px;
  height: 550px;
  padding: 20px;
}

.slider-1 .slick-arrow {
  display: none !important;
}

.slider-1 li .cs-rv-head .cs-rv-head-title p {
  font-size: 14px;
}

.container-child {
  padding: 10px;
}

.cta-end {
  padding-bottom: 20px;
}

.cta-end h2 {
  font-size: 20px;
  line-height: 30px;
}

.cta-end p {
  font-size: 16px;
  line-height: 26px;
  text-align: left;
}

.title_area .large_headline {
  font-size: 35px;
}

.catch-title {
  font-size: 25px;
  line-height: 35px;
}

#company_message .post_row {
  display: block;
}

#company_message .post_row .post_company, #company_message .post_col-2 {
  width: 100%;
}

.post_company p {
  font-size: 16px;
  line-height: 24px;
}

.ceo-img {
  margin-bottom: 45px;
}


.company-profile {
  width: 95%;
  margin: 0 auto;
  padding: 30px 0;
}

.company-profile h2 {
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 20px;
}

.company-profile p {
  font-size: 18px;
  line-height: 28px;
  text-align: left;
  margin-bottom: 25px;
}

.company_table dl {
  width: 100%;
}

.company_table dt {
  width: 100px;
  padding: 5px;
  line-height: 1.6;
  font-size: 12px;
}

.company_table {
  margin-bottom: 35px;
}

.company_table dd {
    width: calc(100% - 100px);
    padding: 5px;
    line-height: 1.6;
    font-size: 12px;
}

.company_license-img-sp {
  width: 90%;
  margin: 0 auto;
}

.company-img {
  display: block;
}

.company-img .company-img-child {
  width: 100%;
  margin-bottom: 15px;
}

.company_data {
  display: block;
}

.company_data-info, .company_data-career {
  width: 100%;
}

.company_data-info {
  margin-bottom: 45px;
}

.company_data th {
  width: 90px;
  font-size: 14px;
}

.company_data td {
  font-size: 14px;
  padding-bottom: 10px;
}

.company_data-career th {
  width: 150px;
}

.company_access-info {
  display: block;
}

.company_access-info-child {
  width: 100%;
  margin-bottom: 20px;
}

.company_access-info-child p {
  font-size: 14px;
  line-height: 22px;
}

.contact-btn {
  width: 150px;
  right: 10px;
}

.scroll-down {
  padding-top: 55px;
  top: 5px;
}

.scroll-down span {
  width: 10px;
  height: 10px;
}

.sec03-flowbox {
  display: block;
  padding: 15px;
}

.sec03-flowboximg {
  position: static;
  width: 30%;
  margin: 0 auto;
}

.sec03-flowboximg img {
  position: static;
  transform: none;
}

.sec03-flowboxtxt {
  width: 100%;
}

.sec03-flowboxtxt h3 {
  font-size: 18px;
  line-height: 28px;
  text-align: center;
  margin-bottom: 15px;
}

.sec03-flowboxtxt p {
  font-size: 16px;
  line-height: 26px;
}

.sec03-flowboxtxt a {
  width: 100%;
}

.contact-section .cta-section .cta-btn {
  width: 100%;
}

.company-map {
  width: 100%;
}

.airi-main {
  padding: 25px 0;
  width: 95%;
}

.line-merit {
  margin: 20px auto;
  padding: 10px;
}

.line-merit h2 {
  font-size: 20px;
  line-height: 26px;
  margin-bottom: 20px;
}

.line-merit h3 {
  font-size: 18px;
}

.line-merit img {
  width: 100%;
}

.in-pr_list h2 {
  font-size: 20px;
  line-height: 28px;
  margin-bottom: 20px;
}

.in-pr_list p {
  font-size: 16px;
  line-height: 24px;
}

.in-pr-scroll {
  margin-top: 15px;
}

/* テーブルを横スクロール可能にする */
.in-pr_list-content{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* テーブル本体 */
.in-pr_list-content .pr-table{
  min-width: 500px; /* 必要に応じて 900〜1100px で調整 */
}

/* 全体の文字を少し小さく */
.in-pr_list-content .pr-table th,
.in-pr_list-content .pr-table td{
  font-size: 11px !important;
  padding: 6px 4px !important;
  line-height: 1.4;
}

/* ヘッダーも少し詰める */
.in-pr_list-content thead th{
  font-size: 11px !important;
  padding: 6px 4px !important;
}

/* 価格は少し目立たせる */
.in-pr_list-content tbody tr:nth-child(2) td.font-weight-bold{
  font-size: 12px !important;
}

/* 物件番号は折り返さない */
.in-pr_list-content .pr-table tbody tr:first-child td:nth-child(2){
  white-space: nowrap;
  font-size: 11px !important;
}

/* 交通は折り返さない */
.in-pr_list-content .pr-table tbody tr:nth-child(3) td[colspan="2"]{
  white-space: nowrap;
}

/* 間取りは少し確保 */
.in-pr_list-content .pr-table tbody tr:nth-child(2) td:last-child{
  white-space: nowrap;
  font-size: 12px !important;
  font-weight: 600;
}

/* No列は少しだけ狭く */
.in-pr_list-content .pr-table col.c-no{
  width: 42px;
}

/* 物件番号 */
.in-pr_list-content .pr-table col.c-code{
  width: 120px;
}

/* 種目 */
.in-pr_list-content .pr-table col.c-type1{
  width: 80px;
}

.in-pr_list-content .pr-table col.c-type2{
  width: 60px;
}

/* 面積 */
.in-pr_list-content .pr-table col.c-area{
  width: 78px;
}

/* 交通 */
.in-pr_list-content .pr-table col.c-sub{
  width: 62px;
}

/* 間取り */
.in-pr_list-content .pr-table col.c-layout{
  width: 72px;
}










}


/* アニメーション */

/* フェードイン */
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

/* ヘッダーにゅるっとアニメーション */

.clone-nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9998;
  width: 100%;
  transition: .3s;
  transform: translateY(-100%);
}
.is-show {
  box-shadow: 0 0 15px 5px rgba(0,0,0,0.1);
  transform: translateY(0);
}

/* 下にダウンする矢印 */

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}

/* PCとスマホの改行をわけるスタイル */

@media screen and (min-width: 800px){
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 800px){
  .br-pc { display:none; }
  .br-sp { display:block; }
}
