@charset "UTF-8";

/*

不動産ページ専用STYLE

*/




/* ====== header ====== */


.header{ position: fixed; top: 0; left: 0; max-width: 1920px; width: 100%; height: 70px; 
  display: flex; justify-content: space-between; flex-wrap: no-wrap; background-color: #fff; z-index: 10;}
.header-logo{ max-width: 600px; width: 50%; padding: 0 0 0 1.56%; display: flex; align-items: center;}
.header-logo a{ width: 100%; display: flex; align-items: center;}
.logo-pc{display: none; width: 100%; line-height: 1px;}
.logo-sp{display: inline; width: 100%; line-height: 1px;}
.header-nav{ width: 62.5%; max-width: 892px; padding: 0 80px 0 20px; display: flex; justify-content: space-between; align-items: center;}
.smaller .header-nav{ display: none;}
.header-tel{ width: 37%; padding: 10px 0;}
.header-tel a{ display: block; background-color: #fff; transition: 0.5s all;}
.header-tel a:hover{ background-color: rgba(214,195,115,0.50);}
.header-contact{ width: 22%; height: 100%;}
.header-contact a{ display: block; background-color: var(--color-bu); display: flex; align-items: center; justify-content: center; height: 100%; line-height: 1; transition: 0.5s all;}
.header-contact a:hover{ background-color: rgba(159,70,53,1.00);background-color: #283580;}
.header-contact img{ width: 83%;}
.headerback{ display: block; height: 70px; width: 100%;}

.header .pconly{ display: block;}
.header .sponly{ display: none;}
@media screen and (max-width: 1600px) {
  .toptext{ transform: translateY(-30%);}
}
@media screen and (max-width: 1400px) {
  .header-nav{ width: 72.5%;}
  .toptext div{ max-width: 500px;}
  .toptext p{ margin-top: 3vw; max-width: 1000px;}
  .topbtn{ margin-top: 3vw;}
  .topimg{ padding-top: 80px;}
  .toptext div{ width: 70%;}
  .toptext p{ width: 80%;}
}
@media screen and (max-width: 1200px) {
  .header-nav{ display: none;}
  .header-logo{ width: 80%; padding: 5px 0 6px 15px;}
}
@media screen and (max-width: 1000px) {
  .topimg{ background: url("../images/header_img5sp.jpg") center center no-repeat; background-size: cover;}
  .topimgimg{ display: none;}
  .toptext{ position: relative; top: 0; transform: translateY(0); padding: 6vw 5% 20vw 5%;}
  .topbtn{ width: 60%; padding: 3% 6%;}
  .topbtn i{ right: 14px; font-size: 28px;}
  .topimg{ padding-top: 80px;}
  .toptext div{ width: 70%;}
  .toptext p{ max-width: 640px; width: 80%; margin-top: 6vw;}
}
@media screen and (max-width: 719px) {
  .header{ position: fixed; height: 50px;}
  .topimg{ padding-top: 50px;}
  .header-nav{ width: 100%; padding-bottom: 2px; display: none;}
  .header-tel{ width: 39%; padding: 0;}
  .header-contact{ width: 20%;}
  .headerback{ height: 50px;}
  .toptext div{ width: 70%;}
  .toptext p{ max-width: 500px;}
  .topbtn{ width: 70%; padding: 3% 9%;}
  .topbtn i{ right: 2.4vw; font-size: 3.6vw;}
}
@media screen and (max-width: 479px) {
  .header-logo{ max-width: 240px;}
  .header .pconly{ display: none;}
  .toptext{ padding: 9vw 5% 6vw 5%;}
  .toptext p{ width: 100%; margin-top: 20vw;}
  .topbtn{ width: 90%;}
  .header .sponly{ display: block;}
}





.scroll{ display: none;}
@media screen and (max-width: 719px) {
.scroll{ display: block; position: relative; width: 1px; height: 60px; margin: -50px 30px 0 auto; z-index: 8; background-color: #000;}
.scroll::before{ position: absolute; width: 100%; top: 0; left: 0; content: ""; background-color: #fff; z-index: 9;
-webkit-animation: 2s linear 0s infinite move_scroll;
  animation: 3s linear 0s infinite move_scroll;}
}
@-webkit-keyframes move_scroll {
  from {  height: 0%;}
  to { height: 100%;}
}
@keyframes move_scroll {
  from { height: 0%;}
  to { height: 100%;}
}
.scroll::after{ position: absolute; top: 0; left: 0; content: "SCROLL"; text-align: center; font-size: 8px; line-height: 8px; transform: rotate(90deg) translate(15px,10px); color: #fff;}






.headingimg-fudousan{
    width: 100%; height: calc(100vh - 70px); padding: 1px 0; position: relative;
    background-image: image-set(url("../images2/mv2.avif") type("image/avif"),url("../images2/mv2.jpg") type("image/jpg")); 
    background-position: center center; background-size: cover;
}
.headingimg-fudousan h1{
    max-width: 1000px; width: 90%;
    margin: 10vh 5%;
}
.catchbox1{
    max-width: 950px; width: 90%; margin: 0 5%; position: absolute; bottom: 10%;
}
.catchbox1-2{
    margin-top: 30px; width: 80%;
}
@media screen and (max-width: 640px) {
    .headingimg-fudousan{ height: 130vw; }
    .headingimg-fudousan h1{ margin: 10% 5%;}
}


a.topbtn { display: block; position: relative; overflow: hidden; max-width: 600px; 
    width: 90%; padding: 20px 50px;
    text-align: center; color: #fff; font-size: 32px; line-height: 1.8;
    background-color: var(--color-bw); border-radius: 80px;
    margin: var(--m-l) auto 0 auto; transition: background-color 0.5s;}
a.topbtn p{ font-size: 22px; color: #ffff00;}
a.topbtn i { position: absolute; top: 50%; right: 16px; transform: translateY(-50%); font-size: 32px; color: #fff;}
a.topbtn:hover{ background-color: rgba(159,70,53,1.00);}
@media screen and (max-width: 1400px) {
  .logo-pc{display: inline; width: 100%;}
  .logo-sp{display: none;}
  a.topbtn{ margin-top: 3vw;}
}
@media screen and (max-width: 640px) {
    a.topbtn{ font-size: 24px; line-height: 1.4;}
    a.topbtn p{ font-size: 18px;}
}
@media screen and (max-width: 520px) {
    a.topbtn{ font-size: 20px; line-height: 1.4; padding: 10px 24px 10px 18px;}
    a.topbtn p{ font-size: 16px;}
    a.topbtn i { right: 8px; font-size: 20px;}
}

/* ====== contact banner ----- */

.contactbanner{ background-color: var(--color-bu); width: 100%; padding: 70px 0; text-align: center;
   font-size: 3.0rem; line-height: 1.2;}
.contactbanner p{ color: #fff; margin-bottom: 1em;}
.contactbanner a{ display: flex; justify-content: center; align-items: center; padding: 1em 1.5em;
    background-color: var(--color-yw); color: #fff; border-radius: 50px;
    width: 95%; max-width: 640px; margin: 1em auto 0 auto; transition: 0.5s all;}
.contactbanner a i{ font-size: 80%; margin-left: 0.5em; vertical-align: bottom;}
.contactbanner a:hover{ background-color: #BCA236;}
.contactbanner a br.sponly{ display: none; }
.thanksbanner{ width: 100%; padding: 70px; text-align: center; font-size: 3.0rem; line-height: 1.0;}
.thanksbanner a{ display: inline-block; padding: 1em 1.5em; background-color: var(--color-yw); color: #fff; border-radius: 50px; transition: 0.5s all;}
.thanksbanner a:hover{ background-color: #BCA236; color: #fff; border-radius: 50px; }
@media screen and (max-width: 600px) {.contactbanner a br.sponly{ display: inline-block; }
  .contactbanner{ padding: 35px 20px; font-size: 2.0rem; line-height: 1.0;}
  .contactbanner p{ color: #fff; margin-bottom: 1em;}
  .contactbanner a{ line-height: 1.2; padding: 0.6em 1.0em; width: 100%; max-width: 420px;}
  .thanksbanner{ padding: 50px 2%; font-size: 2.0rem;}
  .thanksbanner a{ padding: 1em 1em; background-color: var(--color-yw); color: #fff; border-radius: 50px; transition: 0.5s all;}
}

/* ==光るボタン== */

._shiny{ overflow: hidden; position: relative;}
._shiny::before {
    position: absolute; content: ''; display: inline-block; top: -180px; left: 0;
    width: 30px; height: 100%; background-color: #fffab5; transition: 300ms;
    animation: shinyshiny 3.5s ease-in-out infinite;
}
@keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    86% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    88% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}



/*

Mainsiteから移転

*/
.wrapstd{ padding: var(--m-m) 0; }
.wrap-colorLB{ background-color: var(--color-back-yw); }
.wrapB100{ padding-bottom: 100px; }
@media screen and (max-width: 640px) {
  .wrapstd{ padding: 50px 0; }
  .wrapB100{ padding-bottom: 50px; }
}
.inner1600w88{ max-width: 1600px; width: 88%; margin-left: auto; margin-right: auto; }
.inner80per{ margin-left: 10%; margin-right: 10%; }
.inner1260{ max-width: 1260px; width: 80%; margin-left: auto; margin-right: auto; }
.inner1140{ max-width: 1140px; width: 90%; margin-left: auto; margin-right: auto; }
.inner1000{ max-width: 1000px; width: 80%; margin-left: auto; margin-right: auto; }
.innerW{ padding: 50px; background-color: #fff; }
@media screen and (max-width: 640px) {
  .inner80per{ margin-left: 0%; margin-right: 0%; }
  .inner1260{ width: 88%; }
  .innerW{ padding: 6% 6%; }
}


.mB40-24{ margin-bottom: 40px; }
.mT80-40{ margin-top: 60px; }
.mT40-24{ margin-top: 40px; }
.mB80-50{ margin-bottom: 80px; }
.mT80-50{ margin-top: 60px; }
@media screen and (max-width: 640px) {
  .mB40-24{ margin-bottom: 24px; }
  .mT80-40{ margin-top: 30px; }
  .mT40-24{ margin-top: 24px; }
.mT80-50{ margin-top: 40px; }
.mB80-50{ margin-bottom: 40px; }
}





.titlesys1{ font-size: 4.0rem; line-height: 1.5; font-weight: 900; margin-bottom: var(--m-s); text-align: center;}
@media screen and (max-width: 719px) {
  .titlesys1{ font-size: 2.4rem;}
}

.wrap1{ max-width: 1140px; width: 90%;}
.wrap2{ max-width: 1200px; width: 100%;}


.title12{ font-size: 6.0rem; line-height: 1.5; font-weight: 900; color: var(--color-bu);}
.title12 div{ font-size: 5.0rem; color: var(--color-yw); font-weight: 900;}
.title4{ font-size: 5.0rem; line-height: 1.5; font-weight: 900; color: var(--color-bu);}
@media screen and (max-width: 1100px) {
  .title12{ font-size: 4.0rem;}
  .title12 div{ font-size: 3.6rem;}
}
@media screen and (max-width: 1000px) {
  .title4{ font-size: 3.4rem;}
}
@media screen and (max-width: 719px) {
  .title12{ font-size: 3.0rem;}
  .title12 div{ font-size: 2.8rem;}
  .title4{ font-size: 3.0rem;}
}
@media screen and (max-width: 460px) {
  .title12{ font-size: 2.2rem;}
  .title12 div{ font-size: 2.0rem;}
  .title4{ font-size: 2.2rem;}
}




.title30BoC-noM{ font-size: 3.0rem; font-weight: 700; line-height: 1.6; text-align: center; }
.ttl-c1{ text-align: center; }
.ttl-c1-mark{ width: 60px; margin: 0 auto 12px auto; }
.ttl-c1-markYT{ width: 108px; margin: 0 auto 12px auto; }
.ttl-c1-ttl{ font-size: 3.0rem; line-height: 1.4; font-weight: 700; margin-bottom: 12px; }
.ttl-c1-subttl{ font-size: 1.8rem; line-height: 1.4; }
@media screen and (max-width: 640px) {
  .titlebox30BoC{ font-size: 1.8rem; }
  .title30BoC-noM{ font-size: 1.8rem; }
  .ttl-c1-mark{ width: 45px; }
  .ttl-c1-ttl{ font-size: 2.0rem; margin-bottom: 8px; }
  .ttl-c1-subttl{ font-size: 1.3rem; }
}

/* =============== 文章だけある時 ===================== */


.textbox1 p,.textbox1 ul,.textbox1 ol{ margin-bottom: 24px; }
.textbox1 figure{ margin-bottom: 0.73%; }
.textbox2{ text-align: center; font-size: 2.0rem; }
.textbox2 p{ margin-bottom: 3.2rem; }
@media screen and (max-width: 560px) {
  .textbox2{ text-align: left; font-size: 1.6rem; }
  .textbox2 p{ margin-bottom: 2.8rem; }
}
.textbox3{ text-align: center; font-size: 2.4rem; }
@media screen and (max-width: 560px) {
  .textbox3{ font-size: 1.8rem; }
}
.textboxmx1000{ max-width: 1000px; margin-left: auto; margin-right: auto; }


/* =============== fudousan ===================== */

.fudousanpost2{ position: relative; background-color: #fff; padding: 72px 50px 50px 50px; margin-top: 75px; border: 3px solid var(--color-bu);}
.fudousanpost2-title1{ position: absolute; top: 0; left: 50%; transform: translate(-50% , -50%); width: 80%; background-color: var(--color-bu); color: #fff;
  font-size: 4.0rem; font-weight: 900; line-height: 1.4; text-align: center; padding: 20px 5px; }
@media screen and (max-width: 1140px) {
  .fudousanpost2-title1{ font-size: 3.0rem;}
}
@media screen and (max-width: 840px) {
  .fudousanpost2-title1{font-size: 2.6rem; padding: 15px 5px; }
}
@media screen and (max-width: 640px) {
  .fudousanpost2{ padding: 52px 6% 40px 6%; margin-top: 65px; }
}
@media screen and (max-width: 480px) {
  .fudousanpost2-title1{ font-size: 2.0rem; padding: 12px 5px; }
}
.newsline2wrap{ border-bottom: 1px solid #000;}
.newsline2wrap a{ display: block; padding: 15px 0; background-color: rgba(243,251,255,0.00); transition: all 0.6s;}
.newsline2wrap a:hover{ background-color: rgba(243,251,255,1.00);}
.newsline2wraptopline li.newsline2wrap:first-child{ border-top: 1px solid #000;}
.newsline2{ display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}
.newsline2img{ width: 150px; background-position: center center;}
.newsline2box{ display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: nowrap; flex-wrap: nowrap;
  -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: calc(100% - 180px); }
.newsline2date{ font-size: 1.4rem; margin-right: 2.5%; white-space: nowrap;}
.newsline2cat{ font-size: 1.4rem; margin-right: 2.5%; white-space: nowrap; padding: 5px 10px;}
.newsline2title2{ display: none;}
.newscatcolor1{ border: 1px solid #982626; color: #982626;}
@media screen and (max-width: 1200px) {
  .newsboxhome{ margin: 40px auto 0 auto; padding: 8% 8% 8% 8%;}
  .newsbox{ margin: 40px auto 0 auto; padding: 0px 35px 35px 35px; }
  .newsline2{ -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start;}
  .newsline2img{ width: 110px;}
  .newsline2box{ -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; width: calc(100% - 125px);  padding: 0px 0;}
  .newsline2date{ letter-spacing: 0;}
  .newsline2cat{ letter-spacing: 0; padding: 2px 5px; margin-right: 0;}
  .newsline2title{ width: 100%; margin-top: 10px;}
}
@media screen and (max-width: 640px) {
  .newsline2box{ display: block; }
  .newsline2date{ display: block; }
  .newsline2cat{ display: inline-block;}
  .newsline2title2{ display: block; width: 100%; padding-top: 10px;}
  .newsline2title{ display: none;}
}
.tochihannbai { border: 1px solid #982626;}

.search-list__pagination-items { display: flex; justify-content: center; margin-top: 40px; column-gap: 8px;}
.search-list__pagination-items li.active a { background-color: #000; color: #fff;}
.search-list__pagination-items li a { display: block; padding: 5px; text-align: center;
     font-size: 14px; line-height: 1.0; border: 1px solid #000; color: #000;}


/* ====== Appropriate ====== */

.appropriatebox1{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 50px;}
.appropriate1{ width: 50%; padding: 3.5%; line-height: 1.8;}
.appropriate1:nth-child(2){ border-left: 3px solid #000;}
.appropriate1:nth-child(3){ border-top: 3px solid #000;}
.appropriate1:nth-child(4){ border-top: 3px solid #000; border-left: 3px solid #000;}
.appropriate1icon{ max-width: 240px; width: 60%; margin: 0 auto;}
.appropriate1ttl{ text-align: center; font-size: 3.2rem; font-weight: 900; line-height: 1.1; color: var(--color-bu); margin: 20px 0;}
.appropriate1 p{ margin-top: 1em;}
@media screen and (max-width: 680px) {
  .appropriate1{ width: 100%; padding: 30px;}
  .appropriate1:nth-child(2){ border-top: 2px solid var(--color-bu); border-left: none;}
  .appropriate1:nth-child(3){ border-top: 2px solid var(--color-bu);}
  .appropriate1:nth-child(4){ border-top: 2px solid var(--color-bu); border-left: none;}
  .appropriate1icon{ width: 40%; min-width: 120px; margin: 0 auto;}
  .appropriate1ttl{ font-size: 2.2rem; margin: 20px 0;}
}

.titleFudosan1{ position: relative; font-size: 3.0rem; font-weight: 700; line-height: 1.4;
   text-align: center; background-color: var(--color-bu); color: #fff; padding: 40px; margin-bottom: 80px;}
.titleFudosan1::after { content: ''; position: absolute; bottom: -28px; left: 50%;
   transform: translateX(-50%); width: 0; height: 0; border: none; border-top: 30px solid var(--color-bu);
    border-right: 30px solid transparent; border-left: 30px solid transparent;}
.titleFudosan2{ position: relative; font-size: 3.0rem; font-weight: 700; line-height: 1.4; 
  /*background-color: var(--color-bu); color: #fff;*/ padding: 20px 0;}
.titleFudosan3{ font-size: 2.4rem; font-weight: 700; line-height: 1.4; text-align: left;
   border-left: 10px solid var(--color-bu); color: var(--color-bu); padding: 20px 30px; margin-bottom: 30px;}
@media screen and (max-width: 640px) {
  .titleFudosan1{ font-size: 3.0rem; padding: 30px; margin-bottom: 50px;}
  .titleFudosan1::after { bottom: -19px; border-top: 20px solid var(--color-bu); border-right: 20px solid transparent; border-left: 20px solid transparent;}
  .titleFudosan2{ font-size: 1.8rem; padding: 10px 0; margin-bottom: 20px;}
  .titleFudosan3{ font-size: 2.0rem; border-left: 7px solid var(--color-bu); padding: 10px 0 10px 15px; margin-bottom: 20px;}
}
/*.fudosaninnerborder{ padding: 50px; border-radius: 5px; background-color: #fff;}*/
.fudosaninnerborder hr{ border: 0; border-bottom: 2px solid var(--color-bu); margin: 50px 0;}
@media screen and (max-width: 640px) {
  /*.fudosaninnerborder{ padding: 20px;}*/
  .fudosaninnerborder hr{ border: 0; border-bottom: 2px solid var(--color-bu); margin: 20px 0;}
}
.fudosanvoicewrap1-photo1{ display: flex; flex-wrap: wrap; justify-content: space-between;}
.fudosanvoicewrap1-photo1 div{ width: 49%; margin-bottom: 2%;}
.fudosanvoicewrap1 p{ margin-bottom: 15px;}
.fudosanvoicewrap1 a{ color: #3E91C4;}
.fudosanvoicewrap1 a:hover{ color: #56A7D8; border-bottom: 1px solid #56A7D8;}
@media screen and (max-width: 1100px) {
  .fudosanvoicewrap1-photo1 div{ width: 100%; margin-bottom: 2%;}
}



.feature1{ display: flex; justify-content: space-between; align-items: flex-start; max-width: 1260px;
   margin-left: auto; margin-right: auto; background-color: #fff; padding: 50px;}
.feature1-l{ width: 50%; border-radius: 20px; overflow: hidden;}
.feature1-r{ width: 50%; padding-left: 3%;}
@media screen and (max-width: 1200px) {
  .feature1{ display: block; width: 90%; margin-left: auto; margin-right: auto; padding: 6%;}
  .feature1-l{ width: 100%; border-radius: 20px; overflow: hidden; max-width: 480px; margin: 0 auto var(--m-s);}
  .feature1-r{ width: 100%; padding: 0 0 20px 0;}
}





/* ===== Voice ===== */


.voice1{ border: 3px solid var(--color-bu); padding: 36px; border-radius: 20px; margin-top: var(--m-m);}
.voice1 h3{ font-size: 3.0rem; line-height: 1.4; font-weight: 900; color: var(--color-bw); text-align: center;}
.voiceimg{ display: flex; justify-content: space-between;}
.voiceimg div{ width: 32%;}
.voiceimg div img{ object-fit: cover; aspect-ratio: 640 / 457;}
.voice1 h4{ position: relative; font-size: 2.5rem; line-height: 1.4; font-weight: 900; color: var(--color-bu); margin: var(--m-s) 0; padding-bottom: 10px; border-bottom: 3px solid var(--color-yw);}
.voice1 p span.color-bw{ font-weight: 900;}
.fl-r{ float: right; width: 32.5%; margin: 0 0 5px 5px;}
@media screen and (max-width: 480px) {
  .voice1{ border: 2px solid var(--color-bu); padding: 20px; border-radius: 20px;}
  .voice1 h3{ font-size: 2.0rem;}
  .voiceimg div{ width: 49%;}
  .voiceimg_pconly{display: none;}
  .voiceperson{ font-size: 1.6rem;}
  .voiceimg{ display: flex; justify-content: space-between;}
  .voiceimg div img{ object-fit: cover; aspect-ratio: 340 / 280;}
  .voice1 h4{ font-size: 1.8rem; margin: var(--m-m) 0 var(--m-s) 0; padding-bottom: 8px; border-bottom: 2px solid var(--color-yw);}
  .voice1 h4::after{ top: calc(100% - 3px); width: 60px;}
  .fl-r{ width: 50%; margin: 0 0 5px 5px;}
}



/*=========================================================
accordion faq
=========================================================*/



/* ===== Q&A ===== */
 
.accordion_one .ac_header{ font-size: 2.5rem; line-height: 1.5; border: 3px solid var(--color-bw); padding: 2em 4em 2em 1em; position: relative; z-index: +1; cursor: pointer; transition: .2s ease-in-out; margin-top: var(--m-s); list-style: none;}
.accordion_one .ac_header:not(.open):hover{ background-color: var(--color-back-yw);}
.accordion_one .ac_header:not(.open):active{ background-color: var(--color-back-yw);}
.accordion_one .ac_header i { position: absolute; display: block; top: 40%; right: 20px; content: '\f14a'; font-size: 3rem; font-family: "Font Awesome 5 Free"; font-weight: 900; color: var(--color-bw); transition: 0.2s ease-in-out;}
.accordion_one .ac_header.ac_open i{ transform: rotate(180deg);}
.accordion_one .ac_inner{ display: none; padding: 30px;}
.narrow{ letter-spacing: -1px;}
@media screen and (max-width: 719px) {
  .accordion_one .ac_header{ font-size: 2.0rem; border: 2px solid var(--color-bw); padding: 1.5em 3em 1.5em 1em;}
  .accordion_one .ac_header i { font-size: 2.4rem;}
}
@media screen and (max-width: 480px) {
  .accordion_one .ac_header{ font-size: 1.8rem; padding: 1.3em 2.4em 1.3em 1em;}
  .accordion_one .ac_header i { right: 16px;}
  .accordion_one .ac_inner{ padding: 24px 16px;}
  .narrow{ font-size: 90%;}
}






.accordion_two .ac_header { position: relative; z-index: +1; cursor: pointer; transition: .2s;}
.accordion_two .ac_header .i_box { position: relative; width: 100%; padding: 15px; margin-top: 20px;}
.accordion_two .ac_header .i_box::after { position: absolute; top: 0; left: 0; content: "続きを読む";
   box-sizing: border-box; width: 100%; font-size: 14px; list-style: 14px; text-align: center;
    border: 1px solid #b3b3b3;}
.accordion_two .ac_header.ac_open .i_box::after { content: "続きを閉じる";}
.accordion_two .ac_inner { position: relative; display: none; padding: 10px 10px 50px 10px;
   box-sizing: border-box; line-height: 1.6;}
@media screen and (max-width: 460px) {
  .accordion_two .ac_header .i_box::after { font-size: 12px; list-style: 12px;}
}



/* ===== MailForm ===== */


.radio label,
.checkbox label { position: relative; padding-left: 1.8em; line-height: 1.4; display: inline-block; margin-bottom: 15px; margin-right: 2em;}
.radio label::before { content: ""; display: block; position: absolute; top: 3px; left: 0; 
  width: 20px; height: 20px; border: 1px solid var(--color-base); border-radius: 50%; background: #fff;}
.checkbox label::before { content: ""; display: block; position: absolute; top: 3px; left: 0; 
  width: 20px; height: 20px; border: 1px solid var(--color-base); background: #fff;}
.radio input:checked + label::after{ content: ""; display: block; position: absolute; top: 6px; left: 3px; 
  width: 14px; height: 14px; background: var(--color-base); border-radius: 50%;}
.checkbox input:checked + label::after{ content: ""; display: block; position: absolute; top: 7px; left: 4px; 
  width: 12px; height: 12px; background: var(--color-base);}



/* ===== Contact ===== */

.contact1-telttl{ font-size: 3.0rem; line-height: 1.5; font-weight: 900; color: #fff; text-align: center;}
.contact1-telbox{ display: flex; justify-content: space-around;}
.contacttel1{ max-width: 48%;}
.contacttel1 h3{ font-size: 4.0rem; line-height: 1.0; font-weight: 900; color: #fff; text-align: center; margin-bottom: 20px;}
.contacttel1 a{ display: block; font-size: 6.0rem; line-height: 1.0; font-weight: 900; color: var(--color-yw); text-align: center; transition: 0.5s all; border: 1px solid #fff; padding: 20px; border-radius: 10px;}
.contacttel1 a:hover{ background-color: rgba(255,255,255,0.10);}
.contacttel1text{ font-size: 2.0rem; text-align: center; color: #fff; padding: 10px 0;}
.contact1-line{ display:flex; justify-content: center; align-items: center; padding: 10px; font-size: 3.0rem; color: #fff; background-color: #00B901; text-align: center; line-height: 1.2; max-width: 640px; width: 80%; margin: 40px auto 40px auto; border: none; border-radius: 20px; transition: 0.5s all; position: relative;}
.contact1-line > img{ width: 60px; margin-right: 10px;}
.contact1-line i{ width: 1em; margin-left: 10px;}
.contact1-line:hover{ background-color: #1D924D;}
@media screen and (max-width: 1100px) {
  .contacttel1 h3{ font-size: 3.0rem;}
  .contacttel1 a{ font-size: 4.0rem; padding-top: 14px;}
}
@media screen and (max-width: 719px) {
  .contacttel1 h3{ font-size: 1.8rem;}
  .contacttel1 a{ font-size: 2.8rem; padding: 14px 5px;}
  .contact1-telttl{ font-size: 2.2rem; line-height: 1.5; font-weight: 900; color: #fff; text-align: center;}
  .contact1-line{ font-size: 1.8rem; padding: 15px 10px; margin: 30px auto; border-radius: 10px;}
  .contact1-line > img{ width: 30px; margin-right: 5px;}
}
@media screen and (max-width: 480px) {
  .contact1-telbox{ justify-content: space-between;}
  .contacttel1{ width: 48%;}
  .contacttel1 a{ font-size: 2.2rem; padding: 10px 3px;}
  .contacttel1text{ font-size: 1.4rem;}
}


/* iOSでのデフォルトスタイルをリセット */

input[type="submit"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer;}
input[type="submit"]::-webkit-search-decoration { display: none;}
input[type="submit"]::focus { outline-offset: -2px;}

.contactform{ max-width: 959px; width: 100%; background-color: #fff; padding: var(--m-m) var(--m-s);}
.contact1-formttl{ font-size: 4.0rem; line-height: 1.4; font-weight: 900; text-align: center; color: var(--color-bu);}

table.formTable{ width:100%; border-collapse:collapse; overflow: hidden; font-size: 2.0rem;}
table.formTable td{	border-left: 20px solid #fff; padding:20px 0 20px 15px; vertical-align: top;}
table.formTable td.tablespace{ border: none; padding:10px 0 20px 0;}
table.formTable th{ width: 24%;	font-weight: normal; background-color: var(--color-yw); border-bottom:10px solid #fff; font-size: 2.0rem; padding:20px;	text-align: left; vertical-align: middle; white-space: nowrap; color: #fff;}
table.formTable th span.color-red{ font-size: 70%; color: #f00;}
table.formTable td input[type="text"]{ width:100%; display:block;	padding: 15px; border-radius: 5px; background-color: #E8E8E8;}
table.formTable td select, table.formTable td input[type="date"] { vertical-align:middle; position:relative; margin: 0 4px 2px 0; background-color: #E8E8E8;	padding: 15px; border-radius: 5px;}
table.formTable td input[type="date"]{ display:inline-block; width: 200px;}
table.formTable td span.select{ display:inline-block; position: relative;}
table.formTable td span.select select{ display:inline-block;}
table.formTable td span.select::after{ position: absolute; right: 15px; top: 50%; transform: translateY(-50%); content: '\f078'; font-size: 1em; font-family: "Font Awesome 5 Free"; font-weight: 900; line-height: 1; color: var(--color-bw);}
table.formTable td label{margin-left: 0px;}
table.formTable td input[type="radio"]{ padding-left: 30px;}
table.formTable td textarea { box-sizing: border-box; width: 100%; display:block;	padding: 10px; border:1px solid #475F80;}
button.formTablesubmit[type="submit"] { display:block; font-size: 3.0rem; color: #fff; background-color: var(--color-bw); text-align: center; line-height: 1.2; padding: 30px 10px; max-width: 570px; width: 80%; margin: 40px auto 0 auto; border: none; border-radius: 60px;}
button.formTablesubmit[type="submit"]:hover { opacity: 0.8;}
button.formTablesubmit[type="submit"] i img{ width: 30px; margin-left: 10px;}
::placeholder {color: #BBB;}
@media screen and (max-width:719px) {
  .contact1-formttl{ font-size: 2.8rem;}
	table.formTable th, table.formTable td { width:100%; display:block;	}
	table.formTable th { margin-top:5px; border-bottom:0; padding:10px;	}
	table.formTable td input[type="text"], textarea { width:100%; display:block;}
  table.formTable td select, table.formTable td input[type="date"] { padding: 10px;}
  table.formTable td input[type="date"]{ font-size: 13px; margin-bottom: 5px; width: 140px; }
  table.formTable td select{ font-size: 13px; margin-bottom: 5px;}
  button.formTablesubmit[type="submit"]{ font-size: 1.8rem; padding: 15px 10px; margin: 0 auto; max-width: 400px;}
  button.formTablesubmit[type="submit"] i img{ width: 18px; margin-left: 10px;}
}
@media screen and (max-width: 480px) {
  .contact1-formttl{ font-size: 2.4rem;}
  table.formTable td{	border-left:none; padding:5px 0 25px 0px;}
  /*table.formTable td input[type="text"]{ padding: 10px 15px;}*/
  button.formTablesubmit[type="submit"] { width: 90%;}
  table.formTable td select, table.formTable td input[type="date"] {margin: 0 4px 2px 0;	padding: 10px 15px;}
}
@media screen and (max-width: 380px) {
  input.formTablesubmit[type="submit"] { width: 95%;}
  table.formTable td input[type="date"]{ width: 120px; }
  table.formTable td select{ font-size: 13px; margin-bottom: 5px;}
}








/* ===== Produce ===== */

.producebox1{ width: 100%; padding: 60px 0; background-image: image-set(url("../images2/president1.avif") type("image/avif"),url("../images2/president1.jpg") type("image/jpg")); 
background-position: right top; background-size: cover; color: #fff;}
.signature{font-size: 2.6rem; line-height: 1.1; text-align: right; margin: 1em 1em 0 0;}
.signature span{ display: inline-block; width: 220px; margin-left: 1em;}
 .producebox2{ background-color: rgba(255,255,255,0.20); padding: 20px; margin: 1em 0;}
@media screen and (max-width: 719px){
  .producebox1{ padding: 24px 0;}
  .signature{font-size: 1.8rem; margin: 1em 0 0 0;}
  .signature span{ width: 150px; margin-left: 0.6em;}
}

.producebox22{ background-color: rgba(255,255,255,0.20); padding: 20px 0; margin: 1em 0 2em 0;}
.producetitle{ position: relative; border-bottom: 3px solid var(--color-yw); text-align: center;}
.producetitlebefore{ display: flex; align-items: center; width: 100%; font-size: 3.0rem; line-height: 1.0; color: var(--color-yw); font-weight: 900; font-family: 'Noto Serif JP', serif; padding: 0 0; letter-spacing: 0.1em; }
.producetitlebefore::before,
.producetitlebefore::after{ background-color: var(--color-yw); content: ""; flex-grow: 1; height: 3px; }
.producetitlebefore::before{ margin-right: 15px;}
.producetitlebefore::after{ margin-left: 15px;}
.producetitle h2{ font-size: 4.0rem; line-height: 1.5; font-weight: 900; font-family: 'Noto Serif JP', serif; color: #fff; padding: 40px 0 50px 0;}

@media screen and (max-width: 719px) {
  .producetitle{ border-bottom: 2px solid var(--color-yw);}
  .producetitlebefore::before,.producetitlebefore::after{ height: 2px; }
  .producetitle h2{ font-size: 2.8rem; padding: 20px 0 30px 0;}
  .producetitlebefore{ font-size: 2.0rem;}
}
@media screen and (max-width: 460px) {
  .producetitle h2{ font-size: 2.2rem; padding: 10px 0 16px 0;}
  .producetitlebefore{ font-size: 1.6rem;}
}



/* ===== Company ===== */

table.companybox1{ width: 100%;}
table.companybox1 th{ width: 31%; padding: 30px 2%; background-color: var(--color-yw); color: #fff; border-bottom: 40px solid var(--color-back-yw);}
table.companybox1 td{ width: 69%; padding: 30px 5%; background-color: #fff; border-bottom: 40px solid var(--color-back-yw);}
@media screen and (max-width: 480px) {
  table.companybox1 th{ width: 26%; padding: 20px 8px; border-bottom: 10px solid var(--color-back-yw);}
  table.companybox1 td{ width: 74%; padding: 20px 8px; border-bottom: 10px solid var(--color-back-yw);}
}

.companybox2 h3{ font-size: 3.0rem; line-height: 1.4; border-bottom: 3px solid var(--color-bu); padding-bottom: 10px; margin-bottom: var(--m-s);}
.company2-img{ display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; grid-auto-rows: auto auto; column-gap: 10px; row-gap: 10px;}
.company2-img div.company2-img1{grid-row: 1 / 3;}
.company2-img div img{ width: 100%; height: 100%; object-fit: cover;}
.company2-address{ display: flex; justify-content: space-between; margin-top: var(--m-s); line-height: 1.5;}
.company2-address1{ width: 15%; height: 80px; padding: 10px; display: flex; align-items: center; justify-content: center; background-color: var(--color-yw); color: #fff;}
.company2-address2{ width: 35%; height: 80px; padding: 10px; display: flex; align-items: center; background-color: #fff;}
.company2-map{ margin-top: var(--m-s);}
.company2-map iframe{ width: 100%; height: 424px;}
@media screen and (max-width: 640px) {
  .companybox2 h3{ font-size: 2.4rem; border-bottom: 2px solid var(--color-bu); padding-bottom: 6px;}
  .company2-img{ column-gap: 5px; row-gap: 5px;}
  .company2-address{ flex-wrap: wrap;}
  .company2-address1{ width: 30%; height: auto;}
  .company2-address2{ width: 70%; height: auto; padding: 10px; display: flex; align-items: center; background-color: #fff;}
  .company2-address div:nth-of-type(1),.company2-address div:nth-of-type(2){ margin-bottom: 10px;}
}
@media screen and (max-width: 480px) {
  .companybox2 h3{ font-size: 2.0rem;}
  .company2-img{ display: grid; grid-template-columns: 1fr 1fr 1fr; grid-auto-rows: auto auto; column-gap: 10px; row-gap: 10px;}
  .company2-img div.company2-img1{grid-row: 1 / 3; grid-column: 1 / 3;}
  .company2-img div:last-child{ display: none;}
}



/* ===== footer ===== */

.footer{ position: relative; text-align: center; padding: 12px; background-color: var(--color-bu); color: #fff; pointer-events: none;}
.footernav{ position: absolute; right: 5%; top: 12px; pointer-events: auto;}
.footernav a{ display: block; transition: 0.5s all; color: #fff;}
.footernav a:hover{ color: var(--color-yw);}
.foot_contact{ display: none; position: fixed; bottom: 0; width: 100%; background-color: var(--color-bw);}
.foot_contact ul{ display: grid; grid-template-columns: 1fr 1fr 1fr; }
.foot_contact ul li{ list-style: none;}
.foot_contact ul li:nth-child(2),.foot_contact ul li:nth-child(3){ border-left: 1px solid #fff;}
.foot_contact ul li a{display: block; padding: 10px 10px 8px 10px; background-color: var(--color-bw); text-align: center; color: #fff; font-size: 10px; font-weight: 300;}
.foot_contact ul li a i{ display: block; font-size: 12px; padding-bottom: 3px;}
@media screen and (max-width: 520px) {
  .footer{ font-size: 1.2rem; text-align: left;}
}
@media screen and (max-width: 460px) {
  .footer{ padding-bottom: 63px;}
  .foot_contact{display: block;}
}



/* ======================================

           続き表示 お客様の声

=======================================*/


.cp_box3 *, .cp_box3 *:before, .cp_box3 *:after {
	box-sizing: border-box;
}
.cp_box3 {
	position: relative;
}
.cp_box3 label {
	position: absolute;
	z-index: 1;
	/*bottom: -15px;*/
	width: 100%;
	/*height: 30px;*/ /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
	/* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
	/*background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 0.95) 90%);*/
}
.cp_box3 label.b10{ bottom: 30px; height: auto;}
.cp_box3 input:checked + label {
	background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box3 label:after {
	line-height: 2.5rem;
  font-size: 1.4rem;
	position: absolute;
	z-index: 3;
	bottom: 0px;
	left: 50%;
	/*width: 16rem;*/ width: 80%; max-width: 200px;
	font-family: "Font Awesome 5 Free"; font-weight: 900;
	content: '\f13a'' 続きをよむ';
	transform: translate(-50%, 0);
	letter-spacing: 0.05em;
	color: #FFF;
	border-radius: 4px;
  border: 5px solid #FFF;
	background-color: var(--color-bw);
  padding: 5px 0;
}
.cp_box3 input {
	display: none;
}
.cp_box3 .cp_container {
	overflow: hidden;
	height: 280px;/*height: 68px;*/ /* 開く前に見えている部分の高さ */
 	transition: all 0.5s;
}
.cp_box3 input:checked + label {
	/* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box3 input:checked + label:after {
	font-family: "Font Awesome 5 Free"; font-weight: 900;
	content: '\f139'' 閉じる';
}
.cp_box3 input:checked + label.b10:after{ bottom: -40px;}
.cp_box3 input:checked ~ .cp_container {
	height: auto;
	padding-bottom: 50px; /* 閉じるボタンのbottomからの位置 */
	transition: all 0.5s;
}



/* ----------------------------------  不動産  ----------------------------------- */


.wrap-fudousan1{ padding-top: 80px;}
@media screen and (max-width: 640px) {
  .wrap-fudousan1{ padding-top: 40px; }
}

.fudousanwrap2{ display: -webkit-box; display: -ms-flexbox; display: flex;
  -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between;}
.fudousanwrap2 iframe{ width: 50%; height: 40vw; max-height: 400px;}
@media screen and (max-width: 640px) {
  .fudousanwrap2 iframe{ width: 100%; height: 300px; margin-bottom: 10px; }
}

/*.fudousanpostwrap{ margin: 70px 0;}
@media screen and (max-width: 640px) {
  .fudousanpostwrap{ margin: 20px 0 0 0;}
}*/


.fudousanpost2{ position: relative; background-color: #fff; padding: 72px 50px 50px 50px; margin-top: 75px; border: 3px solid #1E314B;}
@media screen and (max-width: 640px) {
  .fudousanpost2{ padding: 52px 6% 40px 6%; margin-top: 65px; }
}

.fudousanpost2-title1{ position: absolute; top: 0; left: 50%; transform: translate(-50% , -50%); width: 80%; background-color: #1E314B; color: #fff;
  font-size: 2.0rem; font-weight: 700; line-height: 1.0; text-align: center; padding: 25px 5px; }
.fudousanpost2-text{ width: 100%; }
.fudousanpost2-text p{ font-size: 1.8rem; }
@media screen and (max-width: 640px) {
  .fudousanpost2-title1{ min-width: inherit; width: 88%; font-size: 1.8rem; padding: 20px 5px; }
  .fudousanpost2-text p{ font-size: 1.5rem; }
}

.fudousanlistpostimage{ max-width: 800px; width: 100%; text-align: center; margin: 0 auto 20px auto; }


/* ------------------- 記事詳細 ------------------- */

.kiji-detail-title{ font-size: 3.0rem; line-height: 1.6; color: #3E91C4; font-weight: 700; margin-bottom: 10px;}
.kiji-detail-img{ position: relative; width: 100%; aspect-ratio: 2 / 1;}
@media screen and (max-width: 640px) {
  .kiji-detail-title{ font-size: 1.8rem; }
}
.kiji-detail-date{ margin-bottom: 17px; font-weight: 700;}
.kiji-detail-excerpt{ margin-bottom: 20px;}

/* -------------------  記事本文  -------------------- */
.post{ margin-top: 0px;}
.post h2{ font-size: 2.0rem; font-weight: 700; line-height: 1.3; padding: 12px 20px; color: #fff; background-color: #3E91C4; margin: 50px 0 20px 0;}
.post h3{ position: relative; font-size: 2.0rem; font-weight: 700; line-height: 1.3; padding: 12px 0; color: #3E91C4; margin: 50px 0 20px 0;}
.post h3::before{ position: absolute; content: ""; bottom: 0; left: 0; width: 100%; height: 5px; background-color: #E2E2E2;}
.post h3::after{ position: absolute; content: ""; bottom: 0; left: 0; width: 100px; height: 5px; background-color: #3E91C4;}
.post h4{ position: relative; font-size: 2.0rem; font-weight: 700; line-height: 1.3; padding: 12px 0 12px 20px; color: #3E91C4;
  border-left: 5px solid #3E91C4; margin: 50px 0 20px 0;}
.post p{ margin-bottom: 2.4rem;}
.post ul,.post ol{ margin-bottom: 2.4rem;}
.post ul li{ margin-left: 3.0rem; list-style: disc;}
.post ol li{ margin-left: 3.4rem; list-style: decimal;}
.post iframe{ max-width: 100%!important;}

/* 202109 追加 */

.post table{ width: 100%; border-collapse: collapse;}
.post table th,.post table td{ text-align: left; vertical-align: top; border: 1px solid #ccc; padding: 10px;}
.post th{ background-color: #E1E1E1; white-space: nowrap;}

/* //202109 追加 */


@media screen and (max-width: 640px) {
  .post h2{ font-size: 1.8rem;}
.post h3{ font-size: 1.8rem;}
.post h4{ font-size: 1.8rem;}
}
.fudousanpost img{ width: 48%; margin: 1%;}
@media screen and (max-width: 640px) {
  .fudousanpost img{ width: 100%; margin: 1% 0; }
}

.voiceexcerpt{ margin-top: 2.4rem;}


/* ----------------------------------------------------- 

            ボタン  

------------------------------------------------ */

.btn-wrap2{ margin-top: 56px; }
@media screen and (max-width: 640px) {
  .btn-wrap2{ margin-top: 20px; }
}

a.btn-y1{ display: block; background-color: #BFBF30; color: #fff; font-size: 2.0rem; letter-spacing: 1; text-align: center;
  max-width: 420px; width: 80%; padding: 15px 5px; margin: 0 auto; transition: 0.5s;}
a.btn-y1:hover{ background-color: #DDDD00;}
@media screen and (max-width: 640px) {
  a.btn-y1{ width: 100%; padding: 10px; font-size: 1.6rem; }
}


/* 記事お問い合わせ */

.wrap65p{ width: 80%; max-width: 720px; margin: 0 auto;}
@media screen and (max-width: 1100px) {
  .wrap65p{ width: 100%; }
}

.kiji-contact{ background-color: var(--color-bu); padding: 30px; text-align: center;}
.kiji-contact-ttl{ display: inline-block; font-size: 2.0rem; font-weight: 700; line-height: 2.4rem; padding: 8px 6% 20px 6%;
  background-color: #fff; border-radius: 20px; margin-bottom: 30px;}
.kiji-contact-ttl img{ max-width: 280px; width: 75%; margin: 0 auto; padding-bottom: 10px; vertical-align: bottom;}
.kiji-contact-box{ display: -webkit-box; display: -ms-flexbox;
  display: flex; -ms-flex-wrap: wrap;
  flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center;
  justify-content: center; max-width: 700px; margin: 0 auto;}
.kiji-contact-boxtel{ width: 47%; display: -webkit-box; display: -ms-flexbox;
  display: flex; -ms-flex-wrap: wrap;
  flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center;
  justify-content: center; -webkit-box-align: center; -ms-flex-align: center;
  align-items: center;}
.kiji-contact-boxtel p{ display: block; width: 100px; font-size: 1.8rem; line-height: 1.0; 
  font-weight: 700; text-align: center; letter-spacing: 0; color: #fff; background-color: #3E5E89; 
  padding: 8px 5px 7px 5px; border-radius: 20px; margin-right: 5px;}
.kiji-contact-boxtel a{ display: block; font-size: 3.0rem; font-weight: 700; line-height: 1.2; 
  letter-spacing: 0; color: #E5E549;}
a.kiji-contact-btn-y{ display: inline-block; font-size: 2.0rem; font-weight: 700; line-height: 1.2; 
  padding: 15px 6%; color: #fff; background-color: #BFBF30; margin: 30px auto 0 auto; transition: 0.5s;}
a.kiji-contact-btn-y:hover{ background-color: #DDDD00;}
@media screen and (max-width: 640px) {
  .kiji-contact-ttl{ font-size: 1.8rem; margin-bottom: 5px;}
  .kiji-contact-boxtel p{ font-size: 1.5rem;}
  .kiji-contact-boxtel a{ font-size: 2.4rem;}
  a.kiji-contact-btn-y{ display: block; font-size: 1.6rem;  margin: 20px auto 0 auto;}
  .kiji-contact-boxtel{ width: 100%; margin-top: 15px; }
}