@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Shippori+Mincho&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
* { box-sizing: border-box; padding: 0; margin: 0; font-size: 16px; color: #3F220A; }
#wpadminbar {display: none;}
:root {
  --color-orange: #ED6D00;
  --color-green: #06C755;
}
main { padding-top: min(15vw, 62px); }
.bg-orange { background-color: var(--color-orange); }
.bg-green { background-color: var(--color-green); }
.container, .container-lg, .container-md {
  width: 100%;
  padding: 0 5px;
  margin: 0 auto;
}
.d-flex {
  display: flex;
  flex-wrap: wrap;
}
.d-grid { display: grid; }
.d-none { display: none; }
.btn {
  padding: .5rem 1rem;
  display: block;
  border-radius: 30px;
  text-align: center;
  font-weight: bold;
  transition: all .3s ease-out;
}
.btn.bg-orange:hover {
  background-color: #9C5D28;
}
.btn.bg-green:hover {
  background-color: #05B34D;
}
.cta-btn--form, .cta-btn--line, 
.cta-btn--form_fixed, .cta-btn--line_fixed {
  position: relative;
}
.cta-btn--form::after, .cta-btn--line::after, 
.cta-btn--form_fixed::after, .cta-btn--line_fixed::after{
  content:'';
  position:absolute;
  top: 0;
  left: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  transition: all .3s ease-out;
}
.cta-btn--form::after {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/cta-form_hover.png);
  background-size: auto 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.cta-btn--line::after {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/cta-line_hover.png);
  background-size: auto 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.cta-btn--form_fixed::after {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/cta-form_hover_fixed.png);
  background-size: auto 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.cta-btn--line_fixed::after {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/cta-line_hover_fixed.png);
  background-size: auto 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.cta-btn--form:hover::after, .cta-btn--line:hover::after, 
.cta-btn--form_fixed:hover::after, .cta-btn--line_fixed:hover::after {
  opacity: 1;
}

.header {
	height: min(16vw, 62px) !important;
}
.header-cta {
  display: grid;
  gap: 1rem;
  align-items: center;
  grid-template-areas: "a b c";
}
.header-cta .tel a {
  font-size: 1.4rem;
  font-weight: bold;
  display: block;
  font-family: "Noto Sans JP";
}
.header-cta a.btn {
  color: white;
}
.header-cta .tel {
  line-height: 1;
  grid-area: a;
}
.header-cta .tel i {
  font-size: 1.3rem;
  margin-right: .25rem;
}
.header-cta small {
  font-size: .75rem;
}
.header-cta .btn.bg-orange {
  grid-area: b;
}
.header-cta .btn.bg-green {
  grid-area: c;
}
.header__nav-item a:hover {
  opacity: 0.5;
}
.hamburger-btn__bars span {
  background-color: var(--color-orange) !important;
}
.hamburger-nav__list-container {
  position: relative;
}
.hamburger-nav__list-container::before {
  content:'';
  background: linear-gradient(180.36deg, rgba(249, 237, 209, 0) 0.38%, #FEEBDB 96.15%);
  position: absolute;
  width: 100%;
  height: min(80vh, 500px);
  top: 0;
  left: 0;
  z-index: 0;
  border-bottom-left-radius: 30px;
  border-bottom-right-radius: 30px;
}
.hamburger-nav__list {
  padding-right: 0 !important;
  margin-top: 2rem !important;
  padding-bottom: unset !important;
  position: relative;
  z-index: 1;
}
.hamburger-nav__list ul {
  margin-bottom: 3rem;
  text-align: center;
}
.hamburger-nav__item a {
  font-weight: normal;
}
.hamburger-nav__item a:hover {
  color: #70BABF;
  text-decoration: underline;
}
.hamburger-nav__list .header-cta {
  grid-template-areas: "a" "b" "c";
  gap: 1.5rem;
}
.hamburger-nav__list .header-cta .btn {
  padding: 1rem 4rem;
}
.hamburger-nav__list .header-cta .tel a {
  font-size: 1.8rem;
}
.hamburger-nav__list .header-cta .tel small {
  font-size: 1rem;
  line-height: 1.5;
}
.hamburger-nav__list .header__logo {
  margin: 0 auto;
  margin-top: 1rem;
}
.jsFixedCta {
  max-width: 330px;
}



#main {
  position: relative;
  z-index: 1;
}
#main::before {
  content:'';
  position: absolute;
  top: 30%;
  left: 0;
  width: 100%;
  height: 60%;
  background: linear-gradient(180.36deg, rgba(249, 237, 209, 0) 0.38%, #FEEBDB 96.15%);
}
#main .text-wrap, #main .image-wrap {
  position: relative;
}
#main .text-wrap {
  z-index: 1;
}
#main .text-wrap .inner img {
  width: 100%;
  max-width: 600px;
}
#main .text-wrap h1 {
  color: #3F220A;
  font-weight: bold;
  font-size: min(8vmin, 6vmax, 68px);
}
#main .image-wrap {
  z-index: 0;
  margin-bottom: 40px;
}
#main .image-wrap img {
  width: 100%;
}
#main .comment {
  background-color: #70BABF;
  width: 25vw;
  height: 25vw;
  max-width: 140px;
  max-height: 140px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  border-radius: 100px;
  margin-right: 0;
  margin-left: auto;
  position: relative;
  transform: translateY(min(5vw, 19px));
}
#main .comment::after {
  content:'';
  position: absolute;
  left: 10%;
  bottom: 0;
  border-top: 1rem solid #70BABF;
  border-left: 0.8rem solid transparent;
  border-right: 0.8rem solid transparent;
  transform: rotate(35deg);
}
#main .comment h4 {
  font-size: min(4vw, 1.4rem);
  margin-top: 5px;
  color: white;
}
#main .comment h4 span {
  display: block;
  font-size: min(8vw, 3rem);
  text-align: center;
  line-height: 1;
  color: white;
}
#main .comment h4 small {
  color: white;
}

#lead1 {
  position: relative;
  background-image: url(/wp-content/themes/ihome/assets/images/rental/lead1-bg.png);
  background-size: cover;
}
#lead1::before, #lead1::after {
  content:'';
  width: 100%;
  position: absolute;
  left: 0;
  z-index: 0;
}
#lead1::before {
  background-color: #EFF6FF;
  top: 0;
  height: 35%;
}
#lead1::after {
  background-color: white;
  bottom: 0;
  height: 100px;
}
#lead1 section {
  position: relative;
  z-index: 1;
}
#lead1 .head {
  z-index: 2;
  transform: translateY(20px);
}
#lead1 .head .list {
  margin: 0 auto;
  margin-top: 20px;
  max-width: 80%;
}
#lead1 .lead1-h5 {
  text-align: center;
  font-size: min(5.5vw, 32px);
  padding: min(5vw, 50px) 0 0;
  line-height: 1.2;
}
#lead1 .lead1-h5 span {
  font-size: min(12vw, 60px);
  color: #EF8440;
}
#lead1 .sec1 {
  clip-path: polygon(0 0, 100% 0, 100% 75%, 50% 100%, 0 75%);
  background-image: url(/wp-content/themes/ihome/assets/images/rental/lead1-image.webp);
  background-size: 200% auto;
  background-repeat: no-repeat;
  position: relative;
  z-index: 1;
  padding: 120px 0 150px;
  min-height: 420px;
}
#lead1 .list {
  background-color: white;
  border-radius: 20px;
  padding: 20px min(5vw, 25px);
  margin-left: auto;
  margin-right: 40px;
  max-width: 400px;
}
#lead1 .list p, #lead1 .list ul li {
  font-size: min(4vw, 1.4rem);
  font-weight: 600;
}
#lead1 .list p {
  margin-bottom: 5px;
}
#lead1 .list ul {
  list-style: none;
}
#lead1 .list ul li {
  position: relative;
  display: flex;
  align-items: center;
}
#lead1 .list ul li::before {
  content: '';
  display: inline-block;
  position: relative;
  width: 24px;
  height: 24px;
  background-image: url(/wp-content/themes/ihome/assets/images/rental/icon-check.webp);
  background-repeat: no-repeat;
  background-size: 24px;
  background-position: left center;
}
#lead1 .sec2 {
  text-align: center;
  padding: 30px 0;
}
#lead1 .sec2 h4 {
  font-size: 24px;
  line-height: 1.8;
}
#lead1 .sec2 .inner {
  position: relative;
  margin: 10px auto;
  width: 100%;
}
#lead1 .sec2 .inner h3 {
  background: #EF8440;
  color: white;
  font-size: min(5vw, 40px);
  width: 87%;
  margin: 0 auto;
  border-radius: 10px;
  padding: 10px 0;
}
#lead1 .sec2 .inner img {
  position: absolute;
  bottom: 0;
}
#lead1 .sec2 .inner img.left {
  width: 15%;
  max-width: 110px;
  left: 0;
}
#lead1 .sec2 .inner img.right {
  width: 10%;
  max-width: 65px;
  right: 2%;
}
#lead1 .sec3 {
  gap: 1.5rem;
  justify-content: center;
}
#lead1 .sec3 .inner {
  background-color: white;
  border-radius: 20px;
  box-shadow: 0px 0px 14.37px 0px #0000001A;
  padding: 20px 15px;
  text-align: center;
}
#lead1 .sec3 h5 {
  font-size: min(68px, 10vw);
  font-weight: 600;
  color: #EF8440;
  font-family: "Open Sans";
  line-height: 1;
  margin-bottom: 10px;
}
#lead1 .sec3 p span {
  color: #EF8440;
}

#solution .container {
  margin: 80px auto;
  text-align: center;
}
#solution h2 {
  font-size: min(10vw, 40px);
  position: relative;
  text-align: center;
  line-height: 1.2;
  margin: 0 auto;
}
#solution h2.bar {
  display: inline-block;
}
#solution h2.bar::before {
  content:'';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 15px;
  background-color: #FAD7C0;
  border-radius: 20px;
  z-index: -1;
}
#solution h2.bar span {
  color: var(--color-orange);
  font-size: min(15vw, 53px);
}
#solution .wrap {
  gap: 15px;
  justify-content: center;
  margin: 0 auto;
  margin-top: 60px;
  max-width: 90vw;
}
#solution .wrap .comment-wrap {
  display: flex;
  text-align: center;
  justify-content: center;
  padding: 80px 0;
  position: relative;
}
#solution .comment-wrap img {
  position: absolute;
  bottom: 1.5rem;
  width: auto;
  max-height: 90px;
}
#solution .inner {
  padding-left: 0;
  padding-right: 0;
}
#solution .inner:nth-child(odd) .comment-wrap img {
  left: 0;
}
#solution .inner:nth-child(even) .comment-wrap img {
  right: 0;
}
#solution .wrap .text-wrap {
  background-color: #EFF6FF;
  padding: 15px;
  font-weight: 600;
  text-align: center;
}
#solution .wrap .text-wrap span {
  color: var(--color-orange);
}
#solution .inner:nth-of-type(even) .comment-wrap {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/solution-left.webp);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}
#solution .inner:nth-of-type(odd) .comment-wrap {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/solution-right.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

#lead2 {
  background: linear-gradient(95.99deg, #FDDFB6 0%, #F7B470 99.67%);
  padding: 80px 0;
  position: relative;
}
#lead2::before {
  content:'';
  position: absolute;
  z-index: 0;
  top: -2rem;
  left: 0;
  width: 45%;
  min-width: 320px;
  max-width: 600px;
  height: auto;
  aspect-ratio: 3 / 2;
  background-image: url(/wp-content/themes/ihome/assets/images/rental/lead2.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top left;
  border-top-right-radius: 40px;
  border-bottom-right-radius: 40px;
}
#lead2 section {
  position: relative;
  z-index: 1;
}
#lead2 .d-grid {
  gap: 1rem;
  justify-content: center;
  position: relative;
  max-width: 85vw;
}
#lead2 .inner {
  background-color: white;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  aspect-ratio: 1/1;
  border-radius: 200px;
  padding: 2rem;
}
#lead2 .inner p {
  text-align: center;
  margin-top: 2rem;
}
#lead2 .inner p span {
  color: var(--color-orange);
}
#lead2 .inner img {
  max-width: 100px;
}
#lead2 img {
  position: relative;
  z-index: 2;
}
#lead2 img.head {
  margin: 0 auto;
  margin-bottom: 1.5rem;
  max-width: 90%;
}
#lead2 img.message {
  margin: 0 auto;
  margin-top: -2rem;
  max-width: 90%;
}
#lead2 img.img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 10%;
  min-width: 90px;
}

#feature {
  padding: 80px 0 0;
}
#feature h4 {
  text-align: center;
  font-size: 1.4rem;
  margin: 0 auto;
  margin-bottom: 1rem;
  position: relative;
  display: inline-block;
}
#feature h4 span {
  display: inline-block;
  position: relative;
  font-size: inherit;
}
#feature h4 span::before {
  content:'';
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 20px;
  bottom: 0;
  background-color: #DDF1F2;
  border-radius: 20px;
}
#feature h4 .icon {
  display: block;
  width: 80px;
}
#feature h2 {
  font-size: min(7vw, 24px);
  font-weight: 600;
  text-align: center;
  display: inline-block;
  margin-bottom: .5rem;
}
#feature h2 span {
  display: inline-block;
  background-color: var(--color-orange);
  color: white;
  font-size: min(7vw, 30px);
  line-height: 1;
  padding: .5rem;
  border-radius: 10px;
  margin: 0 .25rem;
}
#feature .container-lg {
  text-align: center;
}
#feature .wrap {
  padding: 60px 0;
  gap: 2rem 1rem;
}
#feature .wrap .inner {
  border-radius: 10px;
  box-shadow: 0px 0px 20px 0px #00000033;
  overflow: hidden;
  padding: 0;
}
#feature .wrap .inner img {
  width: 100%;
  display: block;
  margin-bottom: 20px;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}
#feature .wrap .inner h3 {
  text-align: center;
}
#feature .wrap .inner p {
  padding: 20px 15px;
  text-align: center;
}
#feature .message {
  border: 5px solid #EF8440;
  border-radius: 20px;
  padding: 20px;
  justify-content: center;
}
#feature .message p {
  margin-bottom: 20px;
  font-size: min(5vw, 20px);
}
#feature .message span {
  color: var(--color-orange);
  font-size: min(5.5vw,30px);
  font-weight: 600;
}
#feature .message .img-wrap {
  width: 20%;
  position: relative;
}
#feature .message .img-wrap img {
  width: auto;
  max-width: 100%;
  max-height: 120%;
  top: 0;
  left: 0;
}

.title-eng {
  font-family:"Open Sans";
  font-size: 100px;
  font-weight: 1000;
  line-height: 1;
  text-align: center;
  padding-top: 50px;
}
.title-eng.orange {
  background: -webkit-linear-gradient(90deg, #FCF1E6 9.01%, #FFC685 104.63%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.title-eng.blue {
  background: -webkit-linear-gradient(90deg, #DCF4F9 2.42%, #85DCE2 94.78%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.title {
  font-size: 40px;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  margin-top: -20px;
  margin-bottom: 50px;
}
#area {
  position: relative;
}
#area::before {
  content: '';
  width: 95%;
  height: 100%;
  max-height: 560px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 0;
  border-top-left-radius: 300px;
  border-bottom-left-radius: 300px;
  background: linear-gradient(180deg, rgba(249, 237, 209, 0) 0.38%, #FEEBDB 96.15%);
}
#area .container-md {
  margin: 50px auto 0;
  position: relative;
  z-index: 1;
}
#area .wrap {
  align-items: center;
  padding: 1rem 1rem 50px 1rem;
}
#area .wrap h5 {
  margin-bottom: 50px;
}
#area .wrap h5 span {
  position: relative;
  font-size: 22px;
}
#area .wrap h5 span::before {
  content:'';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 10px;
  background-color: #FAD7C0;
  border-radius: 20px;
  z-index: -1;
}
#area .inner img {
  width: 100%;
}

#plan .d-lg-grid {
  gap: 2rem;
}
#plan .inner {
  box-shadow: 0px 0px 20px 0px #00000033;
  padding: 1rem;
  margin-bottom: 1rem;
  position: relative;
}
#plan .inner .icon {
  position: absolute;
  top: -1rem;
  left: -1rem;
  width: 28%;
  max-width: 100px;
}
#plan .inner .pic {
  width: 100%;
}
#plan .inner h2 {
  text-align: center;
  font-size: 1.5rem;
  margin-bottom: 1rem;
}
#plan .inner h3 {
  font-size: 1.2rem;
  text-align: center;
  margin-bottom: 1rem;
}
#plan .inner h3 span {
  color: var(--color-orange);
  font-size: 1.8rem;
}
#plan .inner h3 small {
  color: var(--color-orange);
  font-size: 1rem;
}
#plan .inner p {
  margin-bottom: 1rem;
}
#plan .inner p span {
  display: inline-block;
  color: white;
  background-color: #3CA5AD;
  padding: .2rem;
  font-size: 0.85rem;
  line-height: 1;
  margin-bottom: .2rem;
}

#lead3 {
  position: relative;
  padding: 50px 0;
  margin: 80px auto;
}
#lead3::before {
  content: '';
  width: 95%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 0;
  border-top-right-radius: 300px;
  border-bottom-right-radius: 300px;
  background: linear-gradient(180deg, #FDDFB6 0%, #F7B470 99.67%);
}
#lead3 .container {
  padding: 0 min(5vw, 3rem);
  text-align: center;
}
#lead3 .container-md {
  position: relative;
  z-index: 1;
  background-color: white;
  border-radius: 30px;
  padding: 2rem 1.5rem;
  width: auto;
  display: inline-block;
  text-align: center;
  margin-bottom: 50px;
}
#lead3 .container-md h3 {
  color: var(--color-orange);
  font-size: min(7vw,2rem);
}
#lead3 .container-md h4 {
  margin: min(7vw,2rem) auto;
  font-size: 1.5rem;
}
#lead3 .container-md img {
  position: relative;
  bottom:0;
}
#lead3 .container .message {
  position: relative;
  z-index: 1;
  /*width: 100%;*/
  max-width: 800px;
  margin: 0 auto;
}

#comparison {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/comparison-bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  padding: 50px 0;
}
#comparison::before {
  content:'';
  width: 100%;
  height: 100%;
  background: linear-gradient(125deg, rgba(244,249,255,1) 30%, rgba(255,255,255,0.7) 90%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
#comparison .title-eng {
  padding-top: 0;
}
#comparison .container {
  position: relative;
  z-index: 1;
  border-radius: 20px;
  background-color: white;
  padding: 2rem min(5vw, 1.5rem);
  max-width: 90vw;
}
#comparison p {
  text-align: center;
}
#comparison .message {
  width: 100%;
}
#comparison img {
  width: 100%;
  margin-top: 1rem;
}

#flow {
  position: relative;
  padding: 0 0 40px 0;
  background: linear-gradient(180.36deg, rgba(249, 237, 209, 0) 0.38%, #FEEBDB 96.15%);
}
#flow section {
  position: relative;
  z-index: 1;
}
#flow::before, #flow::after {
  content:'';
  position: absolute;
  background-size: 100%;
  width: 50vw;
  height: 56vw;
  z-index: 0;
}
#flow::before {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/flow-bg-left.png);
  top: 40%;
  left: 0;
}
#flow::after {
  background-image: url(/wp-content/themes/ihome/assets/images/rental/flow-bg-right.png);
  top: 0;
  right: 0;
}
#flow .inner {
  border: 4px solid #F8CDB1;
  background-color: white;
  border-radius: 20px;
  padding: 2rem;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  margin-bottom: 40px;
  position: relative;
  max-width: 90vw;
  justify-content: center;
}
#flow .inner h3 {
  font-size: 1.4rem;
}
#flow .inner h3, #flow .inner h3 i {
  color: var(--color-orange);
}
#flow .inner h3 i {
  font-size: 2rem;
  font-style: italic;
}
#flow .inner h4 {
  margin: 1.5rem 0;
  font-size: 1.3rem;
}
#flow .inner img {
  width: auto;
  height: 12rem;
  max-height: 100%;
  display: block;
  margin: 0 auto;
}
#flow .inner:not(:last-of-type)::after {
  content:'';
  display: block;
  position: absolute;
  bottom: -4rem;
  left: 50%;
  transform: translateX(-50%);
  border-top: 15px solid #EF8440;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  margin-bottom: 2rem;
}
#flow h5 {
  width: 100%;
  text-align: center;
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
}
#flow .bottom {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 0;
}

#faq ul {
  list-style: none;
  margin: 0 auto;
  margin-bottom: 80px;
  max-width: 90vw;
}
#faq ul li {
  box-shadow: 0px 0px 10px 0px #00000029;
  border-radius: 20px;
  margin-bottom: 1rem;
  overflow: hidden;
}
#faq ul li div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#faq ul li div span, #faq ul li div i {
  padding: 0 1rem;
  width: 10%;
  min-width: 60px;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 600;
}
#faq ul li div {
  transition: all 0.5s ease-out;
}
#faq ul li .question {
  cursor: pointer;
}
#faq ul li div.question:hover, 
#faq ul li div.question.active {
  background-color: var(--color-orange);
}
#faq ul li div.question:hover > *, 
#faq ul li div.question.active > * {
  color: white;
}
#faq ul li div.answer:not(.active) {
  display: none;
  opacity: 0;
  height: 0;
  transition: all 0.5s ease-out;
}
#faq ul li div.answer.active {
  display: flex !important;
  height: auto;
  opacity: 1;
}
#faq ul li div.question p {
  width: 80%;
  max-width: calc(100% - 120px);
}
#faq ul li div.answer p {
  width: 90%;
  max-width: calc(100% - 60px);
}
#faq ul li div p {
  width: 70%;
  padding: 1rem 1rem 1rem 0;
}

#cta {
  background: linear-gradient(354.78deg, #70BABF 4.35%, rgba(232, 244, 245, 0.7) 83.52%);
  padding: 80px 0;
  text-align: cere;
}
#cta .d-grid {
  max-width: 90vw;
  margin: 0 auto;
  gap: 1rem;
}
#cta img.message {
  margin: 0 auto;
  margin-bottom: 1rem;
  max-width: 780px;
  width: 90%;
}
#cta a img {
  width: 100%;
}

footer {
  background-color: #43210B;
  padding: 80px 0;
}
footer h1, footer h4, footer p, footer a, footer small, footer span, footer i {
  color: white;
  text-decoration: none;
}
footer p {
  font-size: 0.85rem;
}
footer .company-info h1 {
  font-size: 2rem;
}
footer .company-info h4 {
  margin: 2rem 0;
  font-size: min(3.6vw, 1rem);
}
footer .site-info ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  max-width: 500px;
}
footer .site-info ul li a {
  font-weight: 600;
  display: block;
  padding: .25rem 1.8rem;
}
footer .header-cta {
  grid-template-areas: "a" "b" "c";
}


@media screen and (max-width:768px) {
  .jsFixedCta {
    display: block !important;
    position: fixed !important;
    left: 0;
    bottom: 0;
    z-index: 99 !important;
    padding: 1rem;
  }
  .d-lg-block { display: none; }
  .container-lg {
    padding: 0 25px;
  }
  .title-eng { font-size: 12vw; }
  .title { font-size: 8vw; }
  #main::before {
    border-radius: 22px;
  }
  #main .text-wrap br {
    display: none;
  }
  #main .image-wrap img {
    margin-top: -40px;
  }
  #lead1 {
    background-image: url(/wp-content/themes/ihome/assets/images/rental/lead1-bg_sp.png);
  }
  #lead1 .sec1 {
    background-size: cover;
  }
  #lead1 .sec3 .inner {
    width: 100%;
  }
  #solution .wrap .inner {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
  #solution .wrap .comment-wrap {
    padding: 20px 0;
    background-image: none !important;
    background-color: #fafafa;
  }
  #solution .inner:nth-child(odd) .comment-wrap img {
    left: -1rem;
    bottom: 0;
  }
  #solution .inner:nth-child(even) .comment-wrap img {
    right: -1rem;
    bottom: 0;
  }
  #lead2::before {
    aspect-ratio: 4/3;
  }
  #feature .wrap .inner {
    width: 100%;
  }
  #feature .container-md {
    padding: 0 1.5rem;
  }
  #feature .message {
    align-items: flex-end;
  }
  #feature .message .img-wrap img {
    position: relative;
  }
  #area::before {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    width: 100%;
  }
  #area .inner img {
    margin-top: 2rem;
  }
  #lead3::before {
    width: 100%;
    border-radius: 0;
  }
  #lead3 .container-md .sp {
    width: 80%;
    margin: 0 auto;
    margin-top: 2rem;
  }
  #flow .inner .txt-wrap {
    margin-bottom: 1rem;
  }
  footer .site-info ul {
    margin: 2rem 0;
  }
  footer .site-info ul li {
    min-width: 100%;
    text-align: center;
  }
  footer .site-info ul li a {
    padding: .5rem;
    margin-bottom: .5rem;
    text-align: left;
    position: relative;
  }
  footer .site-info ul li a::before {
    display: inline-block;
    content: '\F285';
    font-family: "bootstrap-icons";
    padding-right: 1rem;
  }
}
@media screen and (min-width:768px) {
  .d-lg-flex { display: flex; }
  .d-lg-block { display: block; }
  .d-lg-none { display: none; }
  .d-lg-grid { display: grid; }
  .container {
    max-width: 780px;
  }
  .container-md {
    max-width: 800px;
  }
  .container-lg {
    padding: 0 35px;
    max-width: 860px;
  }
  #main::before {
    border-radius: 50px;
  }
  #main .comment {
    top: 40px;
    right: 1rem;
  }
  #main .text-wrap {
    position: relative;
    max-width: 760px;
  }
  #main .text-wrap .inner {
    position: absolute;
    top: 80px;
    left: 0;
  }
  #main .image-wrap {
    width: calc(100% - 190px);
    margin-left: auto;
    margin-right: 0;
    max-width: 1000px;
  }
  #lead1 .sec1 {
    background-size: 120% auto;
  }
  #lead1 .sec3 .inner {
    width: calc((100% - 2rem) /2);
  }
  #solution .wrap .inner {
    width: calc(50% - 15px);
    margin: 0;
  }
  #lead2 .d-grid {
    grid-template-columns: 300px 300px;
  }
  #lead2 img.img {
    right: calc(50% - 350px);
  }
  #feature h4 img {
    position: absolute;
    left: -120px;
    top: -20px;
  }
  #feature .wrap .inner {
    width: calc((100%/2) - 1rem);
  }
  #feature .message .text-wrap {
    width: 70%;
    margin-top: 30px;
  }
  #feature .message .img-wrap img {
    position: absolute;
  }
  #area .inner {
    width: 50%;
  }
  #area .inner img {
    transform: scale(1.1);
  }
  #lead3 .container-md {
    padding: 2rem 1.5rem 2rem 3rem;
  }
  #lead3 .container-md img {
    position: absolute;
  }
  #lead3 .container-md .left {
    width: 20%;
    left: -3rem;
    bottom: 0;
  }
  #lead3 .container-md .right {
    width: 10%;
    right: -2rem;
    bottom: -1rem;
  }
  #flow .inner .txt-wrap {
    width: 70%;
  }
  #flow .inner .img-wrap {
    width: 30%;
    text-align: center;
  }
  #cta .d-grid {
    grid-template-columns: 1fr 1fr;
    align-items: end;
  }
  footer .d-flex {
    justify-content: space-between;
  }
  footer .site-info ul {
    margin-left: -1.8rem;
    margin-bottom: 2rem;
  }
  .header-cta {
    grid-tempate-areas: "a" "b" "c";
  }
}
@media screen and (min-width:768px) and (max-width:1079px) {
  #main .image-wrap {
    margin-top: 100px;
  }
  #plan .inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  #plan .inner .img-wrap {
    width: 40%;
  }
  #plan .inner .text-wrap {
    width: 60%;
  }
  #plan .inner h2 br {
    display: none;
  }
  footer .header-cta {
    grid-template-areas: "a b c";
  }
}
@media screen and (max-width:1079px) {
  footer .copyright {
    margin: 2rem 0 4rem 0;
  }
}
@media screen and (min-width:1080px) {
  .container {
    max-width: 1040px;
  }
  .container-lg {
    padding: 0 75px;
    max-width: 1280px;
  }
  #lead1 .sec3 .inner {
    width: calc((100% - 4rem) /3);
  }
  #solution .wrap .inner {
    width: calc((100%/3) - 15px);
    margin: 0;
  }
  #solution .comment-wrap img.left {
    left: 0 !important;
    right: auto !important;
  }
  #solution .comment-wrap img.right {
    right: 0 !important;
    left: auto !important;
  }
  #feature .wrap .inner {
    width: calc((100%/3) - 2rem);
  }
  #plan .d-lg-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
  footer .company-info {
    width: 50%;
    max-width: 500px;
  }
  footer .site-info {
    width: calc(100% - 500px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  footer .header-cta {
    grid-template-rows: 1fr 1fr;
    grid-template-areas: "a a" "b c";
  }
}
@media screen and (max-width:1279px) {
  .header__grid {
    grid-template-areas: "a b" "c c" !important;
  }
}
@media screen and (min-width:1280px) {
  .header__grid {
    grid-template-areas: "a c b" !important;
  }
  footer .header-cta {
    grid-template-areas: "a b c";
  }
}


.header__nav-item:not(:first-child) a {
    border-left: none !important;
  padding: 0 10px !important;
}
@media screen and (min-width: 768px) {
    .header__logo {
        width: min(31.34765625vw, 180px) !important;
        margin-top: 12px !important;
    }
      .header__nav {
        margin-left: 0 !important;
    }
}