@charset "UTF-8";
/* ***************************************
---　基本設定　ここから　---
**************************************** */
/* --------------------------------------
***　リセット　ここから　***
-------------------------------------- */
/*レスポンシブデザイン*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block;
}

ol,
ul {
  list-style: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout:fixed;
}

input,
select {
  vertical-align: middle;
}

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  font-size: inherit;
  outline: none;
  cursor: pointer;
}

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

input:focus,
textarea:focus,
select:focus {
  outline: none;
}

img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
  border: none;
  max-width: 100%;
  height: auto;
}

sup {
  vertical-align: top;
  font-size: 75.5%;
}

sub {
  vertical-align: bottom;
  font-size: 75.5%;
}

i,
address {
  font-style: normal;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/* --------------------------------------
***　//　リセット　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　サイト基本設定　ここから　***
-------------------------------------- */
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
}

body {
  color: #000;
  /* font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; */
  font-family: "Noto Sans JP", sans-serif;
  min-width: 320px;
  -webkit-font-smoothing: antialiased;
}

h2,
h3,
h4,
h5,
h6 {
  line-height: 1.3;
  margin-bottom: 0.5em;
}

.container ol:last-child,
.container ul:last-child,
.container p:last-child {
  margin-bottom: 0;
}

p {
  line-height: 1.5;
  margin-bottom: 1em;
}

a {
  color: #2e3191;
  outline: none;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }

  .container img {
    margin-bottom: 3px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  body {
    min-width: 1240px;
    font-size: 1.6rem;
  }

  .container img {
    margin-bottom: 5px;
  }

  .container a img {
    backface-visibility: hidden;
    transition: all 0.3s;
  }

  .container a:hover img {
    opacity: 0.7;
  }

  a:hover {
    text-decoration: none;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//サイト基本設定　ここまで　***
-------------------------------------- */
/* ***************************************
---//　基本設定　ここまで　---
**************************************** */
/* ***************************************
---　共通レイアウト　ここから　---
**************************************** */
/* --------------------------------------
***　header　ここから　***
-------------------------------------- */
.header {
  font-size: 16px;
}

.header-catch {
  font-weight: bold;
}

.header-business-hours {
  font-weight: bold;
}

.header-title-painted {
  margin-bottom: 0.5em;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  display: inline-block;
  border-style: solid;
  border-width: 5px 10px 5px 10px;
  color: #fff;
  border-image: url(../images/common/bg-button-painted-red.png) 10 14 10 30 fill
    repeat;
}

.social-icons,
.sp-social-icons {
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.social-icons a,
.sp-social-icons a {
  display: block;
}
.social-icons li,
.sp-social-icons li {
  max-width: 34px;
}
.social-icons li + li,
.sp-social-icons li + li {
  margin-left: 15px;
}
.social-icons img,
.sp-social-icons img {
  max-height: 30px;
}

.header-info {
  display: flex;
  align-items: center;
}


@media screen and (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}

@media screen and (min-width: 767px) {
  .sp-only {
    display: none !important; 
  }
}


/***---　スマートフォン幅小　ここから---***/
@media only screen and (max-width: 374px) {
  .header-business-hours {
    font-size: 10px;
    padding-top: 2px;
  }
}
/***---　//スマートフォン幅小　ここまで---***/
/***---　スマートフォン幅中　ここから---***/
@media only screen and (min-width: 375px) and (max-width: 449px) {
  .header-business-hours {
    font-size: 11px;
    padding-top: 3px;
  }
}
/***---　//スマートフォン幅中　ここまで---***/
/***---　スマートフォン幅大　ここから---***/
@media only screen and (min-width: 450px) and (max-width: 767px) {
  .header-business-hours {
    font-size: 11px;
    padding-top: 3px;
    margin-top: 5px;
  }
}
/***---　//スマートフォン幅大　ここまで---***/
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .header-search,
  .social-icons,
  .font-change {
    display: none;
  }

  .header {
    margin-top: 10px;
    margin-bottom: 20px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .header-catch {
    font-size: 11px;
    margin-bottom: 3px;
  }

  .header-logo-utility {
    margin-bottom: 10px;
    display: flex;
    align-items: flex-start;
  }

  .header-logo {
    width: 204px;
  }

  .header-logo img {
    max-width: 96%;
  }

  .header-tel {
    width: 48%;
    max-width: 270px;
  }

  .header-tel p.tel-time {
    font-size: 14px;
    color: #000;
    font-weight: bold;
    margin-bottom:0;
  }

  .header-tel-flex {
    display: inline-flex;
    align-items: center;
    border-bottom: 1px solid #EA5550;
    padding-bottom: 5px;
    margin-bottom:5px;
  }

  .header-tel span.tel-txt {
    font-size: 10px;
    line-height: 1.2;
    margin-right: 10px;
    font-weight: bold;
  }

  .header-business-hours {
    line-height: 1.5;
    margin-bottom: 0;
  }

  .sp-menu-wrapper {
    margin-left: auto;
    display: flex;
    align-items: center;
  }

  .header-button-beginner {
    margin-right: 10px;
    width: 40px;
  }

  .hamburger {
    width: 40px;
  }

  .header-button {
    width: 50%;
    margin-left: auto;
    max-width: 200px;
  }

  .header-button-qa img {
    width: 100%;
  }

  .sp-social-icons {
    padding: 10px;
    background-color: #fff;
  }
  .sp-social-icons img {
    width: 34px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .hamburger,
  .sp-social-icons {
    display: none;
  }

  .header {
    margin-top: 15px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    width: 1240px;
  }

  .header-catch {
    margin-bottom: 5px;
    line-height: 1;
  }

  .header-logo {
    padding-top: 15px;
  }

  .social-icons {
    position: absolute;
    left: 470px;
    top: 0;
  }
  .social-icons li {
    width: 34px;
  }

  .header-search {
    position: absolute;
    left: 700px;
    top: 0;
  }
  .header-search dl {
    display: flex;
    align-items: stretch;
  }
  .header-search dl > dt {
    position: relative;
  }
  .header-search input[type="text"] {
    height: 100% !important;
    border: 1px solid #666 !important;
    padding: 0.5em !important;
    width: 274px !important;
  }
  .header-search input[type="text"]:focus {
    background: none;
    text-indent: 0;
  }
  .header-search input[type="submit"] {
    padding: 0;
    display: block;
    width: 52px;
    height: 37px;
    background: #fff url(../images/common/button-search-submit.png) no-repeat
      center center;
  }

  .header-tel {
    position: absolute;
    left: 460px;
    top: 55px;
  }

  .header-tel p.tel-time{
    font-size: 30px;
    color: #000;
    font-weight: bold;
    margin-bottom:0;
  }

  .header-tel-flex {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #EA5550;
  }

  .header-tel span.tel-txt {
    font-size: 18px;
    line-height: 1.2;
    margin-right: 10px;
    font-weight: bold;
  }

  .header-business-hours {
    padding-top: 0.2em;
    margin-top: 0.3em;
    font-size: 18px;
    letter-spacing:0.3px;
    line-height:1.3;
  }

  .font-change {
    position: absolute;
    right: 20px;
    top: 0;
    display: flex;
    align-items: center;
  }
  .font-change dt {
    font-weight: bold;
    margin-right: 10px;
  }
  .font-change dd {
    border-top: 1px solid #666;
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
  }
  .font-change dd:last-child {
    border-right: 1px solid #666;
  }
  .font-change a {
    display: block;
  }

  .textresizer-active {
    background-color: #ccc;
  }

  .header-button {
    position: absolute;
    right: 20px;
    top: 55px;
  }
  .header-button a {
    transition: opacity 0.3s;
  }
  .header-button a:hover {
    opacity: 0.7;
  }

  .header-button-beginner {
    margin-right: 8px;
  }
  .header-button-beginner img {
    width: 62px;
  }

  .header-button-qa img {
    width: 260px;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//header　ここまで　***
-------------------------------------- */

/* --------------------------------------
*** ヘッダー検索ボックス ここから
-------------------------------------- */

.search-results {
  background-color: white !important;
}

.sp-search {
  width: 35px;
  height: 35px;
  margin-right: 0.8rem;
}

.sp-search:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f002";
  color: #4d4d4d;
  font-size: 3rem;
}

@media screen and (min-width: 768px) {
  .sp-search {
    display: none;
  }
}

.search-wrapper {
  position: absolute;
  top: 60px;
  left: 0;
  z-index: 1;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}

.search-form {
  overflow: hidden;
  margin: 0 auto;
  padding: 30px 0;
  max-width: 450px;
  text-align: center;
}

.search-form-box {
  width: 100%;
  max-width: 600px;
}

.search-wrapper input {
  float: left;
  padding: 12px;
  width: 80%;
  letter-spacing: 0.2em;
  font-size: 2rem;
  height: 50px;
  border: none;
  background: url(https://www.google.com/cse/static/images/1x/googlelogo_lightgrey_46x16dp.png)
    left center no-repeat rgb(255, 255, 255);
  background-position: 3%;
  text-indent: 48px;
}

.search-wrapper button {
  float: left;
  padding: 0 20px;
  height: 50px;
  background-color: #EA5550;
  color: white;
  font-size: 16px;
  cursor: pointer;
  border: none;
}

.search-active {
  display: block;
}

@media screen and (min-width: 768px) {
  .search-wrapper {
    display: none !important;
  }
}

@media screen and (max-width: 480px) {
  .search-form {
    padding: 30px 15px;
  }

  .search-wrapper input {
    width: 100%;
  }

  .search-wrapper input {
    height: 35px;
  }

  .search-wrapper button {
    float: none;
    margin-top: 2rem;
    height: 35px;
  }
}

/* --------------------------------------
*** ヘッダー検索ボックス ここまで
-------------------------------------- */

/* --------------------------------------
***　globalnav　ここから　***
-------------------------------------- */
.globalnav a {
  display: block;
  text-decoration: none;
}

.globalnav-secondary-main-beginner a {
  display: flex;
  align-items: center;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .globalnav {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 100;
  }
  .globalnav a {
    display: block;
    color: #fff;
  }

  .globalnav-inner {
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }

  .sp-globalnav-utility {
    background-color: white;
    display: flex;
    margin: 1rem;
    border: 1px solid #4d4d4d;
  }

  .sp-globalnav-utility input {
    font-size: 16px;
    width: 100%;
    border: none;
    background: url(https://www.google.com/cse/static/images/1x/googlelogo_lightgrey_46x16dp.png)
      left center no-repeat rgb(255, 255, 255);
    background-position: 3%;
    text-indent: 60px;
  }

  .sp-globalnav-utility button {
    width: 55px;
    height: 45px;
    background-color: #4d4d4d;
    color: white;
    line-height: 45px;
    text-align: center;
    border: 1px solid #4d4d4d;
  }

  .bg-white {
    background-color: white;
    padding: 0.5rem;
  }

  .sp-globalnav-utility a {
    padding: 15px;
  }
  .sp-globalnav-utility a.sp-globalnav-home {
    color: black;
  }

  .sp-globalnav-home {
    flex: 1 1 75%;
  }

  .sp-globalnav-close {
    flex: 1 1 25%;
    background-color: #4d4d4d;
    border-left: 1px solid #fff;
  }

  .globalnav-primary > li {
    background-color: #EA5550;
  }
  .globalnav-primary > li > a {
    padding: 15px;
    border-top: 1px solid #fff;
  }

  .globalnav-primary > li > a.sp-globalnav-home {
    border-top: none;
  }

  .globalnav-primary > li > a.down::after,
  .globalnav-primary > li > a.down.up::after {
    font-family: FontAwesome;
    float: right;
    margin-top: 3px;
  }
  .globalnav-primary > li > a.down::after {
    content: "\f196";
  }
  .globalnav-primary > li > a.down.up::after {
    content: "\f147";
  }

  .globalnav-primary-item > .globalnav-secondary {
    display: none;
    border-top: 1px dotted #fff;
  }
  .globalnav-primary-item > .globalnav-secondary a {
    padding: 10px 15px;
  }

  .globalnav-secondary-main,
  .globalnav-secondary-sub {
    background-color: #666;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .globalnav-secondary-main {
    border-bottom: 1px dotted #fff;
  }

  .globalnav-secondary-main-beginner {
    font-size: 18px;
  }
  .globalnav-secondary-main-beginner img {
    margin-right: 10px;
    width: 20px;
  }

  .sp-toggle-close {
    text-align: center;
    background-color: #4d4d4d;
    padding: 15px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .sp-globalnav-utility,
  .sp-toggle-close {
    display: none !important;
  }

  .globalnav {
    width: 1240px;
    margin-top: 70px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px;
  }

  .globalnav-primary {
    font-weight: bold;
    font-size: 22px;
    display: flex;
    justify-content: space-around;
  }
  .globalnav-primary > li {
    line-height: 1;
    text-align: center;
    flex: 1 1 auto;
  }
  .globalnav-primary > li > a {
    color: #000;
    transition: opacity 0.3s;
    padding-bottom: 30px;
  }
  .globalnav-primary > li > a:hover {
    color: #666;
  }
  .globalnav-primary > li > a:hover span {
    display: inline;
    border-bottom: 1px solid #666;
  }
  .globalnav-primary > li + li {
    background: url("/smilewp/wp-content/themes/smilenet/images/common/globalnav-divider.png")
      no-repeat left top;
  }

  .globalnav-primary-item {
    position: relative;
  }

  .globalnav-primary li:nth-child(2) .globalnav-secondary {
    width: 750px;
    left: -130px;
  }
  .globalnav-primary li:nth-child(2) .globalnav-secondary::before {
    margin-left: -20px;
  }

  .globalnav-primary-item > .globalnav-secondary {
    padding: 30px;
    border-radius: 10px;
    display: none;
    position: absolute;
    z-index: 110;
    background-color: #EA5550;
    top: 50px;
    font-size: 22px;
    width:740px;
    left:-145px;
  }
  .globalnav-primary-item > .globalnav-secondary a {
    color: #fff;
  }
  .globalnav-primary-item > .globalnav-secondary a:hover {
    color: #ffff00;
    text-decoration: underline;
  }

  .globalnav-primary-item > .globalnav-secondary::before {
    content: "";
    position: absolute;
    top: -30px;
    left: 31%;
    border: 15px solid transparent;
    border-bottom: 15px solid #EA5550;
  }

  .globalnav-secondary-main,
  .globalnav-secondary-sub {
    font-size: 20px;
    font-weight: normal;
    text-align: left;
  }

  .globalnav-secondary-main {
    float: left;
    width: 33%;
  }
  .globalnav-secondary-main li + li {
    margin-top: 1em;
  }

  .globalnav-secondary-main-beginner {
    margin-bottom: 1em;
    font-size: 23px;
    font-weight: bold;
  }
  .globalnav-secondary-main-beginner img {
    margin-right: 20px;
  }

  .globalnav-secondary-sub {
    border-left: 4px dotted #fff;
    padding-left: 50px;
    float: right;
    width: 67%;
  }
  .globalnav-secondary-sub ul + ul {
    margin-left: 40px;
  }
  .globalnav-secondary-sub ul {
    vertical-align: top;
    width: 180px;
    font-size: 20px;
  }
  .globalnav-secondary-sub li + li {
    margin-top: 1em;
  }

  .globalnav-secondary-sub-inner {
    display: flex;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//globalnav　ここまで　***
-------------------------------------- */

/* --------------------------------------
***　footer　ここから　***
-------------------------------------- */
.footer-consultation {
  background-color: #ffffe5;
}

.footer-consultation-title-painted {
  margin-bottom: 0.5em;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  display: inline-block;
  border-style: solid;
  border-width: 5px 10px 5px 10px;
  color: #fff;
  border-image: url(../images/common/bg-button-painted-red.png) 10 14 10 30 fill
    repeat;
}

.footer-consultation-title {
  text-align: center;
}

.footer-consultation-address-title {
  margin-bottom: 0.5em;
}
.footer-consultation-address-title span {
  display: block;
}
.footer-consultation-address-title span:first-child {
  font-size: 1.6rem;
  margin-bottom: 0.3em;
}
.footer-consultation-address-title span:last-child {
  font-size: 2.2rem;
}

.footer-tel {
  font-size: 30px;
  text-decoration: none;
  color: #000;
  font-weight: bold;
}

.footer-tel-others a {
  font-size: 16px;
  text-decoration: none;
  color: #000;
}

.footer-tel-others h3 {
  width: auto;
}

.google-map {
  box-sizing: border-box;
  position: relative;
  padding-bottom: 50%;
  height: 0;
  overflow: hidden;
}

.google-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.footer-links {
  color: #fff;
  background-color: #EA5550;
}
.footer-links a {
  color: #fff;
}

.copyright {
  display: block;
  text-align: center;
}

.pagetop {
  position: fixed;
  right: 10px;
  bottom: 0;
  z-index: 100;
}

#js-pagetop {
  display: none;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .footer {
    margin-top: 30px;
  }

  .footer-consultation-inner {
    padding-right: 10px;
    padding-left: 10px;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .footer-consultation-title-painted {
    margin-top: 1em;
  }

  .footer-consultation-title {
    margin-top: 2em;
  }

  .footer-links {
    padding: 10px;
  }

  .copyright {
    font-size: 12px;
  }

  .pagetop {
    width: 50px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .footer-consultation {
    font-size: 1.8rem;
    font-weight: bold;
  }

  .footer-consultation-inner {
    width: 1240px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 30px;
    padding-right: 20px;
    padding-left: 20px;
    background: url(../images/common/footer-consultation-bg.png) no-repeat left
      80px bottom 30px;
  }

  .footer-consultation-info {
    width: 700px;
    display: flex;
    justify-content: space-between;
    margin-right: auto;
    margin-left: auto;
    padding-top: 35px;
  }

  .footer-consultation-way-day {
    width: 260px;
  }

  .footer-consultation-title-painted {
    font-size: 20px;
  }

  .footer-tel {
    width: 365px;
    font-size: 33px;
  }

  .footer-tel-others {
    width: 700px;
    margin: 0 auto;
    padding-top: 20px;
  }

  .footer-tel-others a {
    font-size: 20px;
  }

  .footer-tel-others h3 {
    width: 350px;
    text-align: center;
  }

  .footer-tel-others p {
    display: inline-block;
    margin-left: 10px;
  }

  .footer-tel-others p:last-child {
    margin-bottom: 0;
  }

  .footer-map {
    background-color: #ffffe5;
  }

  .footer-map-inner {
    width: 1240px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 20px;
    padding-bottom: 35px;
  }

  .footer-links {
    margin-top: 50px;
  }

  .footer-links-inner {
    position: relative;
    width: 1240px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 50px;
    padding-bottom: 50px;
    display: flex;
    justify-content: space-between;
  }
  .footer-links-inner li {
    margin-bottom: 1em;
  }

  .footer-links-column + .footer-links-column {
    margin-left: 20px;
  }

  .footer-links-inner ul.icon-dot > li {
    margin-bottom: 0.8em;
  }
  .footer-links-inner ul.icon-dot > li::before {
    top: -0.5em;
    left: -0.4em;
    font-size: 50px;
    content: "・" !important;
  }

  .footer-social-icons {
    position: absolute;
    right: 30px;
    bottom: 20px;
    display: flex;
  }
  .footer-social-icons li {
    margin-right: 30px;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//footer　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　container　ここから　***
-------------------------------------- */
/*　パンくず　ここから　*/
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .breadcrumbs {
    display: none;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .breadcrumbs {
    width: 1240px;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
    padding-right: 20px;
    padding-left: 20px;
    font-size: 1.2rem;
  }
  .breadcrumbs li {
    margin-right: 0.5em;
    display: inline-block;
  }
  .breadcrumbs a {
    text-decoration: underline;
    margin-right: 0.5em;
  }
  .breadcrumbs a:hover {
    text-decoration: none;
  }
}
/***---　//PC　ここまで---***/
/*　//パンくず　ここまで　*/
/*　container　ここから　*/
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .container {
    padding-right: 10px;
    padding-left: 10px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .container {
    overflow: hidden;
    width: 1240px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px;
    margin-bottom: 80px;
  }
}
/***---　//PC　ここまで---***/
/*　//container　ここまで　*/
/*　main　ここから　*/
.main section:last-of-type,
.main-no-side section:last-of-type {
  margin-bottom: 0;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .main {
    margin-bottom: 50px;
  }

  .main > section,
  .main-no-side > section {
    margin-bottom: 50px;
  }

  .main > section:first-of-type,
  .main-no-side > section:first-of-type {
    margin-top: 45px;
  }

  .main > h2 + section:first-of-type,
  .main-no-side > h2 + section:first-of-type {
    margin-top: 30px;
  }

  .main > section > section,
  .main-no-side > section > section {
    margin-bottom: 40px;
  }

  .main > section > section:first-of-type,
  .main-no-side > section > section:first-of-type {
    margin-top: 30px;
  }

  .main > section > h3 + section:first-of-type,
  .main-no-side > section > h3 + section:first-of-type {
    margin-top: 20px;
  }

  .main > section > section > section,
  .main-no-side > section > section > section {
    margin-bottom: 20px;
  }

  .main > section > section > section:first-of-type,
  .main-no-side > section > section > section:first-of-type {
    margin-top: 20px;
  }

  .main > section > section > h4 + section:first-of-type,
  .main-no-side > section > section > h4 + section:first-of-type {
    margin-top: 20px;
  }

  .main > section > section > section > section,
  .main-no-side > section > section > section > section {
    margin-bottom: 10px;
  }

  .main > section > section > section > section:first-of-type,
  .main-no-side > section > section > section > section:first-of-type {
    margin-top: 10px;
  }

  .main > section > section > section > h5 + section:first-of-type,
  .main-no-side > section > section > section > h5 + section:first-of-type {
    margin-top: 10px;
  }

  .main > section > section > section > section > section,
  .main-no-side > section > section > section > section > section {
    margin-bottom: 5px;
  }

  .main > section > section > section > section > section:first-of-type,
  .main-no-side
    > section
    > section
    > section
    > section
    > section:first-of-type {
    margin-top: 5px;
  }

  .main > section > section > section > section > h6 + section:first-of-type,
  .main-no-side
    > section
    > section
    > section
    > section
    > h6
    + section:first-of-type {
    margin-top: 5px;
  }

  .post-single-inner > section,
  .post-single-content > section {
    margin-bottom: 20px;
  }

  .post-single-inner > section:first-of-type,
  .post-single-content > section:first-of-type {
    margin-top: 20px;
  }

  .post-single-inner > h4 + section:first-of-type,
  .post-single-content > h4 + section:first-of-type {
    margin-top: 20px;
  }

  .post-single-inner > section > section,
  .post-single-content > section > section {
    margin-bottom: 10px;
  }

  .post-single-inner > section > section:first-of-type,
  .post-single-content > section > section:first-of-type {
    margin-top: 10px;
  }

  .post-single-inner > section > h5 + section:first-of-type,
  .post-single-content > section > h5 + section:first-of-type {
    margin-top: 10px;
  }

  .post-single-inner > section > section > section,
  .post-single-content > section > section > section {
    margin-bottom: 5px;
  }

  .post-single-inner > section > section > section:first-of-type,
  .post-single-content > section > section > section:first-of-type {
    margin-top: 5px;
  }

  .post-single-inner > section > section > h6 + section:first-of-type,
  .post-single-content > section > section > h6 + section:first-of-type {
    margin-top: 5px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .main {
    float: left;
    width: 880px;
  }

  .main > section,
  .main-no-side > section {
    margin-bottom: 60px;
  }

  .main > section:first-of-type,
  .main-no-side > section:first-of-type {
    margin-top: 55px;
  }

  .main > h2 + section:first-of-type,
  .main-no-side > h2 + section:first-of-type {
    margin-top: 40px;
  }

  .main > section > section,
  .main-no-side > section > section {
    margin-bottom: 50px;
  }

  .main > section > section:first-of-type,
  .main-no-side > section > section:first-of-type {
    margin-top: 40px;
  }

  .main > section > h3 + section:first-of-type,
  .main-no-side > section > h3 + section:first-of-type {
    margin-top: 30px;
  }

  .main > section > section > section,
  .main-no-side > section > section > section {
    margin-bottom: 30px;
  }

  .main > section > section > section:first-of-type,
  .main-no-side > section > section > section:first-of-type {
    margin-top: 30px;
  }

  .main > section > section > h4 + section:first-of-type,
  .main-no-side > section > section > h4 + section:first-of-type {
    margin-top: 30px;
  }

  .main > section > section > section > section,
  .main-no-side > section > section > section > section {
    margin-bottom: 20px;
  }

  .main > section > section > section > section:first-of-type,
  .main-no-side > section > section > section > section:first-of-type {
    margin-top: 20px;
  }

  .main > section > section > section > h5 + section:first-of-type,
  .main-no-side > section > section > section > h5 + section:first-of-type {
    margin-top: 20px;
  }

  .main > section > section > section > section > section,
  .main-no-side > section > section > section > section > section {
    margin-bottom: 15px;
  }

  .main > section > section > section > section > section:first-of-type,
  .main-no-side
    > section
    > section
    > section
    > section
    > section:first-of-type {
    margin-top: 15px;
  }

  .main > section > section > section > section > h6 + section:first-of-type,
  .main-no-side
    > section
    > section
    > section
    > section
    > h6
    + section:first-of-type {
    margin-top: 15px;
  }

  .post-single-inner > section,
  .post-single-content > section {
    margin-bottom: 30px;
  }

  .post-single-inner > section:first-of-type,
  .post-single-content > section:first-of-type {
    margin-top: 30px;
  }

  .post-single-inner > h4 + section:first-of-type,
  .post-single-content > h4 + section:first-of-type {
    margin-top: 30px;
  }

  .post-single-inner > section > section,
  .post-single-content > section > section {
    margin-bottom: 20px;
  }

  .post-single-inner > section > section:first-of-type,
  .post-single-content > section > section:first-of-type {
    margin-top: 20px;
  }

  .post-single-inner > section > h5 + section:first-of-type,
  .post-single-content > section > h5 + section:first-of-type {
    margin-top: 20px;
  }

  .post-single-inner > section > section > section,
  .post-single-content > section > section > section {
    margin-bottom: 15px;
  }

  .post-single-inner > section > section > section:first-of-type,
  .post-single-content > section > section > section:first-of-type {
    margin-top: 15px;
  }

  .post-single-inner > section > section > h6 + section:first-of-type,
  .post-single-content > section > section > h6 + section:first-of-type {
    margin-top: 15px;
  }
}
/***---　//PC　ここまで---***/
/*　//main　ここまで　*/
/* --------------------------------------
***　//container　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　side　ここから　***
-------------------------------------- */
.menu {
  margin-bottom: 20px;
}
.menu li,
.menu a {
  margin: 0;
  padding: 0;
}
.menu a {
  text-decoration: none;
  display: block;
}
.menu .no-link > a {
  pointer-events: none;
}
.menu .no-link > a::after {
  content: "";
}
.menu > li > a {
  font-weight: bold;
  color: #fff;
  background-color: #EA5550;
  padding: 1em 1.5em 1em 1em;
  transition: all 0.3s;
  position: relative;
}
.menu > li > a:hover {
  text-decoration: none;
  /* background-color: #e96065; */
  opacity: 0.7;
}
.menu > li > a::after {
  font-family: FontAwesome;
  content: "\f101";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -10px;
}
.menu > li:last-child > ul {
  border-top: none;
}
.menu > li > ul {
  margin-bottom: 20px !important;
}
.menu > li > ul > li {
  border-bottom: 1px solid #666;
}
.menu > li > ul > li > a {
  position: relative;
  color: #000;
  padding: 0.5em 1.5em 0.5em 0.7em;
  transition: all 0.3s;
}
.menu > li > ul > li > a:hover {
  text-decoration: none;
  background-color: #fad9da;
}
.menu > li > ul > li > a::after {
  font-family: FontAwesome;
  content: "\f105";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -0.6em;
}
.menu > li > ul > li.current-menu-item > a,
.menu > li > ul > li.current-menu-parent > a {
  text-decoration: none;
  background-color: #fad9da;
}
.menu > li > ul > li > ul {
  padding-top: 0.5em;
  border-top: 1px dotted #666;
  padding-bottom: 10px;
}
.menu > li > ul > li > ul > li > a {
  color: #000;
  padding: 0.5em 0.7em 0.5em 1.5em;
  line-height: 1.2;
  position: relative;
  transition: all 0.3s;
}
.menu > li > ul > li > ul > li > a:hover {
  background-color: #f2f2f2;
}
.menu > li > ul > li > ul > li > a::before {
  content: "- ";
  position: absolute;
  top: 0.5em;
  left: 0.5em;
}
.menu > li > ul > li > ul > li.current-menu-item > a {
  background-color: #e6e6e6;
}
.menu i.external::after,
.menu i.pdf::after,
.menu i.word::after,
.menu i.excel::after {
  margin-right: 0em;
}

.side-banner li + li {
  margin-top: 10px;
}
.side-banner img {
  border: 1px solid #a6a6a6;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .menu > li > a {
    font-size: 1.6rem;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .side {
    float: right;
    width: 250px;
  }

  .menu > li > a {
    font-size: 1.8rem;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//side　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　カラム ここから　***
-------------------------------------- */
.sp-col1-pc-col2 h3,
.sp-col1-pc-col2 h4,
.sp-col1-pc-col2 h5,
.sp-col1-pc-col2 h6,
.sp-col1-pc-col2 p,
.sp-col1-pc-col2 li,
.sp-col1-pc-col3 h3,
.sp-col1-pc-col3 h4,
.sp-col1-pc-col3 h5,
.sp-col1-pc-col3 h6,
.sp-col1-pc-col3 p,
.sp-col1-pc-col3 li,
.sp-col1-pc-col4 h3,
.sp-col1-pc-col4 h4,
.sp-col1-pc-col4 h5,
.sp-col1-pc-col4 h6,
.sp-col1-pc-col4 p,
.sp-col1-pc-col4 li,
.sp-col2-pc-col2 h3,
.sp-col2-pc-col2 h4,
.sp-col2-pc-col2 h5,
.sp-col2-pc-col2 h6,
.sp-col2-pc-col2 p,
.sp-col2-pc-col2 li,
.sp-col2-pc-col2 h3,
.sp-col2-pc-col2 h4,
.sp-col2-pc-col2 h5,
.sp-col2-pc-col2 h6,
.sp-col2-pc-col2 p,
.sp-col2-pc-col2 li,
.sp-col2-pc-col3 h3,
.sp-col2-pc-col3 h4,
.sp-col2-pc-col3 h5,
.sp-col2-pc-col3 h6,
.sp-col2-pc-col3 p,
.sp-col2-pc-col3 li,
.sp-col2-pc-col4 h3,
.sp-col2-pc-col4 h4,
.sp-col2-pc-col4 h5,
.sp-col2-pc-col4 h6,
.sp-col2-pc-col4 p,
.sp-col2-pc-col4 li {
  text-align: left;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .sp-col1-pc-col2 > *,
  .sp-col1-pc-col3 > *,
  .sp-col1-pc-col4 > *,
  .sp-col2-pc-col2 > *,
  .sp-col2-pc-col2 > *,
  .sp-col2-pc-col3 > *,
  .sp-col2-pc-col4 > * {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    margin-bottom: 30px;
  }

  .sp-col2-pc-col2,
  .sp-col2-pc-col3,
  .sp-col2-pc-col4 {
    font-size: 0;
    margin-right: auto;
    margin-left: auto;
  }
  .sp-col2-pc-col2 > *,
  .sp-col2-pc-col3 > *,
  .sp-col2-pc-col4 > * {
    vertical-align: top;
    display: inline-block;
    font-size: 1.4rem;
  }

  .sp-col2-pc-col2 > *,
  .sp-col2-pc-col3 > *,
  .sp-col2-pc-col4 > * {
    width: 46%;
    margin-right: 2%;
    margin-left: 2%;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　 PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .sp-col1-pc-col2,
  .sp-col1-pc-col3,
  .sp-col1-pc-col4,
  .sp-col2-pc-col2,
  .sp-col2-pc-col3,
  .sp-col2-pc-col4 {
    font-size: 0;
  }
  .sp-col1-pc-col2 > *,
  .sp-col1-pc-col3 > *,
  .sp-col1-pc-col4 > *,
  .sp-col2-pc-col2 > *,
  .sp-col2-pc-col3 > *,
  .sp-col2-pc-col4 > * {
    text-align: center;
    vertical-align: top;
    display: inline-block;
    font-size: 1.6rem;
    margin-bottom: 40px;
  }

  .sp-col1-pc-col2 > *,
  .sp-col2-pc-col2 > * {
    width: 48.75%;
  }
  .sp-col1-pc-col2 > *:not(:nth-child(2n)),
  .sp-col2-pc-col2 > *:not(:nth-child(2n)) {
    margin-right: 2.5%;
  }

  .sp-col1-pc-col3 > *,
  .sp-col2-pc-col3 > * {
    width: 31.66667%;
  }
  .sp-col1-pc-col3 > *:not(:nth-child(3n)),
  .sp-col2-pc-col3 > *:not(:nth-child(3n)) {
    margin-right: 2.5%;
  }

  .sp-col1-pc-col4 > *,
  .sp-col2-pc-col4 > * {
    width: 23.125%;
  }
  .sp-col1-pc-col4 > *:not(:nth-child(4n)),
  .sp-col2-pc-col4 > *:not(:nth-child(4n)) {
    margin-right: 2.5%;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//カラム　ここまで　***
-------------------------------------- */
/* ***************************************
---//　共通レイアウト　ここまで　---
**************************************** */
/* ***************************************
---　汎用パーツ　ここから　---
**************************************** */
/* **********************************
---ナビゲーション　ここから---
*********************************** */
/*　アンカーリンクナビゲーション　ここから　*/
.nav-anchor {
  counter-reset: number;
}

.nav-anchor li {
  vertical-align: top;
  position: relative;
  margin-bottom: 1em;
}
.nav-anchor li a {
  height: 100%;
  color: #000;
  display: block;
  background-color: #f2f2f2;
  text-decoration: none;
  padding: 1em 0.5em 1em 2.8em;
}
.nav-anchor li a::before {
  color: #fff;
  background-color: #666;
  position: absolute;
  line-height: 3em;
  counter-increment: number;
  content: counter(number);
  height: 100%;
  text-align: center;
  width: 1.8em;
  font-size: 1.2em;
  margin-right: 3em;
  left: 0;
  top: 0;
}

/* 180911追加 */
.nav-anchor_2 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  counter-reset: number;
}
.nav-anchor_2 li {
  vertical-align: top;
  position: relative;
  margin-bottom: 1em;
}
.nav-anchor_2 a {
  height: 100%;
  color: #000;
  display: block;
  background-color: #f2f2f2;
  text-decoration: none;
  padding: 1em 0.5em 1em 0em;
}
.nav-anchor_2 a::before {
  color: #fff;
  background-color: #666;
  position: absolute;
  line-height: 3em;
  /* counter-increment: number;
  content: counter(number); */
  height: 100%;
  text-align: center;
  width: 1.8em;
  font-size: 1.2em;
  margin-right: 3em;
  left: 0;
  top: 0;
}

/* 20200318追加 */
.nav-anchor p a {
  height: 100%;
  /* color: #000; */
  /* display: block; */
  /* background-color: #f2f2f2; */
  /* text-decoration: none; */
  padding: 0em 0em 0em 0.5em;
    display: inline;
}

.nav-anchor p span{
  padding: 0em 0em 0em 2.8em;
margin: 0.5em 0 0.5em 0em;
}

.nav-anchor p span::before{
color: #EA5550;
    font-family: FontAwesome;
    content: "\f101" !important;
    left: 0.2em;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .nav-anchor {
    margin-top: 20px;
  }
  .nav-anchor li {
    width: 100%;
  }

  .nav-anchor_2 {
    margin-top: 20px;
  }
  .nav-anchor_2 li {
    width: 100%;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .nav-anchor {
    margin-top: 40px;
  }
  .nav-anchor li {
    width: 60%;
    transition: opacity 0.3s;
  }
  .nav-anchor li:hover {
    opacity: 0.7;
  }

  .nav-anchor_2 {
    margin-top: 40px;
  }
  .nav-anchor_2 li {
    width: 31.66667%;
    transition: opacity 0.3s;
  }
  .nav-anchor_2 li:hover {
    opacity: 0.7;
  }
  .nav-anchor_2 li:not(:nth-child(3n)) {
    margin-right: 2.5%;
  }
}
/***---　//PC　ここまで---***/
/*　//アンカーリンクナビゲーション　ここまで　*/
/* **********************************
---//ナビゲーション　ここまで---
*********************************** */
/* **********************************
---タイトル　ここから---
*********************************** */
/*　ページタイトル　ここから　*/
.title-page,
.title-page-takuro-book,
.title-page-fukumi-banzai {
  color: #EA5550;
  border-bottom: 1px solid #EA5550;
  margin-bottom: 1em;
  padding-bottom: 0.3em;
}

.title-page {
  background: url(../images/common/takuro-left-wing.png) no-repeat top left;
}

.title-page-takuro-book {
  background: url(../images/common/takuro-book.png) no-repeat top left;
}

.title-page-fukumi-banzai {
  background: url(../images/common/fukumi-banzai.png) no-repeat top left;
}

body.support-contents .title-page,
body.construction-contents .title-page,
body.mansion-contents .title-page,
body.vacant-contents .title-page,
body.rokyu-contents .title-page,
body.taishin-contents .title-page,
body.barrierfree-contents .title-page,
body.hojo-contents .title-page,
body.support-contents .title-page-takuro-book,
body.construction-contents .title-page-takuro-book,
body.mansion-contents .title-page-takuro-book,
body.vacant-contents .title-page-takuro-book,
body.rokyu-contents .title-page-takuro-book,
body.taishin-contents .title-page-takuro-book,
body.barrierfree-contents .title-page-takuro-book,
body.hojo-contents .title-page-takuro-book,
body.support-contents .title-page-fukumi-banzai,
body.construction-contents .title-page-fukumi-banzai,
body.mansion-contents .title-page-fukumi-banzai,
body.vacant-contents .title-page-fukumi-banzai,
body.rokyu-contents .title-page-fukumi-banzai,
body.taishin-contents .title-page-fukumi-banzai,
body.barrierfree-contents .title-page-fukumi-banzai,
body.hojo-contents .title-page-fukumi-banzai {
  background-repeat: no-repeat;
  background-position: top left, top right;
}

body.support-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-support.png);
}

body.construction-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-construction.png);
}

body.mansion-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-mansion.png);
}

body.vacant-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-vacant.png);
}

body.rokyu-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-vacant.png);
}

body.taishin-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-taishin.png);
}

body.barrierfree-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-barrierfree.png);
}

body.hojo-contents .title-page {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-hojo.png);
}

body.support-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-support.png);
}

body.construction-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-construction.png);
}

body.mansion-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-mansion.png);
}

body.vacant-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-vacant.png);
}

body.rokyu-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-vacant.png);
}

body.taishin-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-taishin.png);
}

body.barrierfree-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-barrierfree.png);
}

body.hojo-contents .title-page-takuro-book {
  background-image: url(../images/common/takuro-book.png),
    url(../images/common/icon-hojo.png);
}

body.support-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-support.png);
}

body.construction-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-construction.png);
}

body.mansion-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-mansion.png);
}

body.vacant-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-vacant.png);
}

body.rokyu-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-vacant.png);
}

body.taishin-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-taishin.png);
}

body.barrierfree-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-barrierfree.png);
}

body.hojo-contents .title-page-fukumi-banzai {
  background-image: url(../images/common/fukumi-banzai.png),
    url(../images/common/icon-hojo.png);
}


.p-icon-search {
  background-image: url(../images/common/takuro-left-wing.png),
    url(../images/common/icon-support.png)!important;
    background-size: 80px, 60px!important;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .title-page,
  .title-page-takuro-book,
  .title-page-fukumi-banzai {
    font-size: 2.2rem;
    padding-left: 50px;
  }

  .title-page,
  .title-page-fukumi-banzai {
    background-size: 40px;
  }

  .title-page-takuro-book {
    background-size: 30px;
    background-position: left 5px top;
  }

  body.support-contents .title-page,
  body.construction-contents .title-page,
  body.mansion-contents .title-page,
  body.vacant-contents .title-page,
  body.rokyu-contents .title-page,
  body.taishin-contents .title-page,
  body.barrierfree-contents .title-page,
  body.hojo-contents .title-page,
  body.support-contents .title-page-takuro-book,
  body.construction-contents .title-page-takuro-book,
  body.mansion-contents .title-page-takuro-book,
  body.vacant-contents .title-page-takuro-book,
  body.rokyu-contents .title-page-takuro-book,
  body.taishin-contents .title-page-takuro-book,
  body.barrierfree-contents .title-page-takuro-book,
  body.hojo-contents .title-page-takuro-book,
  body.support-contents .title-page-fukumi-banzai,
  body.construction-contents .title-page-fukumi-banzai,
  body.mansion-contents .title-page-fukumi-banzai,
  body.vacant-contents .title-page-fukumi-banzai,
  body.rokyu-contents .title-page-fukumi-banzai,
  body.taishin-contents .title-page-fukumi-banzai,
  body.barrierfree-contents .title-page-fukumi-banzai,
  body.hojo-contents .title-page-fukumi-banzai {
    padding-right: 50px;
  }

  body.support-contents .title-page {
    background-size: 40px, 30px;
  }

  body.construction-contents .title-page {
    background-size: 40px, 35px;
  }

  body.mansion-contents .title-page {
    background-size: 40px, 25px;
  }

  body.vacant-contents .title-page {
    background-size: 40px, 40px;
  }

  body.rokyu-contents .title-page {
    background-size: 40px, 40px;
  }

  body.taishin-contents .title-page {
    background-size: 40px, 40px;
  }

  body.barrierfree-contents .title-page {
    background-size: 40px, 35px;
  }

  body.hojo-contents .title-page {
    background-size: 40px, 30px;
  }

  body.support-contents .title-page-takuro-book,
  body.construction-contents .title-page-takuro-book,
  body.mansion-contents .title-page-takuro-book,
  body.vacant-contents .title-page-takuro-book,
  body.rokyu-contents .title-page-takuro-book,
  body.taishin-contents .title-page-takuro-book,
  body.barrierfree-contents .title-page-takuro-book,
  body.hojo-contents .title-page-takuro-book {
    background-position: left 5px top, right top;
  }

  body.support-contents .title-page-takuro-book {
    background-size: 30px, 30px;
  }

  body.construction-contents .title-page-takuro-book {
    background-size: 30px, 35px;
  }

  body.mansion-contents .title-page-takuro-book {
    background-size: 30px, 25px;
  }

  body.vacant-contents .title-page-takuro-book {
    background-size: 30px, 40px;
  }

  body.rokyu-contents .title-page-takuro-book {
    background-size: 30px, 40px;
  }

  body.taishin-contents .title-page-takuro-book {
    background-size: 30px, 40px;
  }

  body.barrierfree-contents .title-page-takuro-book {
    background-size: 30px, 35px;
  }

  body.hojo-contents .title-page-takuro-book {
    background-size: 30px, 30px;
  }

  body.support-contents .title-page-fukumi-banzai {
    background-size: 40px, 30px;
  }

  body.construction-contents .title-page-fukumi-banzai {
    background-size: 40px, 35px;
  }

  body.mansion-contents .title-page-fukumi-banzai {
    background-size: 40px, 25px;
  }

  body.vacant-contents .title-page-fukumi-banzai {
    background-size: 40px, 40px;
  }

  body.rokyu-contents .title-page-fukumi-banzai {
    background-size: 40px, 40px;
  }

  body.taishin-contents .title-page-fukumi-banzai {
    background-size: 40px, 40px;
  }

  body.barrierfree-contents .title-page-fukumi-banzai {
    background-size: 40px, 35px;
  }

  body.hojo-contents .title-page-fukumi-banzai {
    background-size: 40px, 30px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .title-page,
  .title-page-takuro-book,
  .title-page-fukumi-banzai {
    font-size: 3.3rem;
    padding: 0.3em 0;
    padding-left: 100px;
  }

  .title-page,
  .title-page-fukumi-banzai {
    background-size: 80px;
  }

  .title-page-takuro-book {
    background-size: 60px;
    background-position: left 15px top;
  }

  body.support-contents .title-page,
  body.construction-contents .title-page,
  body.mansion-contents .title-page,
  body.vacant-contents .title-page,
  body.rokyu-contents .title-page,
  body.taishin-contents .title-page,
  body.barrierfree-contents .title-page,
  body.hojo-contents .title-page,
  body.support-contents .title-page-takuro-book,
  body.construction-contents .title-page-takuro-book,
  body.mansion-contents .title-page-takuro-book,
  body.vacant-contents .title-page-takuro-book,
  body.rokyu-contents .title-page-takuro-book,
  body.taishin-contents .title-page-takuro-book,
  body.barrierfree-contents .title-page-takuro-book,
  body.hojo-contents .title-page-takuro-book,
  body.support-contents .title-page-fukumi-banzai,
  body.construction-contents .title-page-fukumi-banzai,
  body.mansion-contents .title-page-fukumi-banzai,
  body.vacant-contents .title-page-fukumi-banzai,
  body.rokyu-contents .title-page-fukumi-banzai,
  body.taishin-contents .title-page-fukumi-banzai,
  body.barrierfree-contents .title-page-fukumi-banzai,
  body.hojo-contents .title-page-fukumi-banzai {
    padding-right: 100px;
  }

  body.support-contents .title-page {
    background-size: 80px, 60px;
  }

  body.construction-contents .title-page {
    background-size: 80px, 70px;
  }

  body.mansion-contents .title-page {
    background-size: 80px, 45px;
  }

  body.vacant-contents .title-page {
    background-size: 80px, 70px;
  }

  body.rokyu-contents .title-page {
    background-size: 80px, 70px;
  }

  body.taishin-contents .title-page {
    background-size: 80px, 80px;
  }

  body.barrierfree-contents .title-page {
    background-size: 80px, 70px;
  }

  body.hojo-contents .title-page {
    background-size: 80px, 55px;
  }

  body.support-contents .title-page-takuro-book,
  body.construction-contents .title-page-takuro-book,
  body.mansion-contents .title-page-takuro-book,
  body.vacant-contents .title-page-takuro-book,
  body.rokyu-contents .title-page-takuro-book,
  body.taishin-contents .title-page-takuro-book,
  body.barrierfree-contents .title-page-takuro-book,
  body.hojo-contents .title-page-takuro-book {
    background-position: left 15px top, right top;
  }

  body.support-contents .title-page-takuro-book {
    background-size: 60px, 60px;
  }

  body.construction-contents .title-page-takuro-book {
    background-size: 60px, 70px;
  }

  body.mansion-contents .title-page-takuro-book {
    background-size: 60px, 45px;
  }

  body.vacant-contents .title-page-takuro-book {
    background-size: 60px, 70px;
  }

  body.rokyu-contents .title-page-takuro-book {
    background-size: 60px, 70px;
  }

  body.taishin-contents .title-page-takuro-book {
    background-size: 60px, 80px;
  }

  body.barrierfree-contents .title-page-takuro-book {
    background-size: 60px, 70px;
  }

  body.hojo-contents .title-page-takuro-book {
    background-size: 60px, 55px;
  }

  body.support-contents .title-page-fukumi-banzai {
    background-size: 80px, 60px;
  }

  body.construction-contents .title-page-fukumi-banzai {
    background-size: 80px, 70px;
  }

  body.mansion-contents .title-page-fukumi-banzai {
    background-size: 80px, 45px;
  }

  body.vacant-contents .title-page-fukumi-banzai {
    background-size: 80px, 70px;
  }

  body.rokyu-contents .title-page-fukumi-banzai {
    background-size: 80px, 70px;
  }

  body.taishin-contents .title-page-fukumi-banzai {
    background-size: 80px, 80px;
  }

  body.barrierfree-contents .title-page-fukumi-banzai {
    background-size: 80px, 70px;
  }

  body.hojo-contents .title-page-fukumi-banzai {
    background-size: 80px, 55px;
  }
}
/***---　//PC　ここまで---***/
/*　//ページタイトル　ここまで　*/
/*　見出し　ここから　*/
.title-a-01,
.title-a-02,
.title-a-03,
.title-a-04 {
  color: #fff;
  background-color: #EA5550;
  padding: 0.3em 0.5em;
  margin-bottom: 1em;
  position: relative;
}
.title-a-01 .number,
.title-a-02 .number,
.title-a-03 .number,
.title-a-04 .number {
  color: #fff;
  height: 100%;
  width: 1.8em;
  text-align: center;
  background-color: #666;
  position: absolute;
  left: 0;
  top: 0;
  padding-top: 0.3em;
}

.title-b-01,
.title-b-02,
.title-b-03,
.title-b-04 {
  color: #EA5550;
  font-weight: bold;
  border-left: 3px solid #EA5550;
  padding: 0.3em 0 0.3em 0.5em;
  margin-bottom: 1em;
  background-color: #f2f2f2;
}

.title-c-01,
.title-c-02,
.title-c-03,
.title-c-04 {
  color: #EA5550;
  background: url(../images/common/icon-house.png) no-repeat left top 0.1em;
  margin-bottom: 0.5em;
}

.title-d-01,
.title-d-02,
.title-d-03,
.title-d-04 {
  border-bottom: 1px solid #666;
  margin-bottom: 0.5em;
  padding-bottom: 0.3em;
}

/* 180911追加 */
.title-a-01 .gray_number {
  color: #fff;
  height: 100%;
  width: 2.8em;
  text-align: center;
  background-color: #666;
  position: absolute;
  left: 0;
  top: 0;
  padding-top: 0.3em;
}

.title-a-01.gray {
  color: #fff;
  background-color: #EA5550;
  padding: 0.3em 3.2em;
  margin-bottom: 1em;
  position: relative;
}

.number_link {
  color: #fff;
  background-color: #666;
  padding: 1.1em 0.7em;
  margin-bottom: 1em;
  position: relative;
  font-size: 1.2em;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .title-a-01,
  .title-b-01,
  .title-c-01,
  .title-d-01 {
    font-size: 1.8rem;
  }

  .title-a-02,
  .title-b-02,
  .title-c-02,
  .title-d-02 {
    font-size: 1.7rem;
  }

  .title-a-03,
  .title-b-03,
  .title-c-03,
  .title-d-03 {
    font-size: 1.6rem;
  }

  .title-a-04,
  .title-b-04,
  .title-c-04,
  .title-d-04 {
    font-size: 1.5rem;
  }

  .title-c-01 {
    background-size: 20px;
    padding-left: 30px;
  }

  .title-c-02 {
    background-size: 18px;
    padding-left: 28px;
  }

  .title-c-03 {
    background-size: 16px;
    padding-left: 26px;
  }

  .title-c-04 {
    background-size: 14px;
    padding-left: 24px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .title-a-01,
  .title-b-01,
  .title-c-01,
  .title-d-01 {
    font-size: 2.5rem;
    letter-spacing: 2px;
  }

  .title-a-02,
  .title-b-02,
  .title-c-02,
  .title-d-02 {
    font-size: 2.2rem;
  }

  .title-a-03,
  .title-b-03,
  .title-c-03,
  .title-d-03 {
    font-size: 2rem;
  }

  .title-a-04,
  .title-b-04,
  .title-c-04,
  .title-d-04 {
    font-size: 1.8rem;
  }

  .title-c-01 {
    padding-left: 34px;
  }

  .title-c-02 {
    background-size: 22px;
    padding-left: 32px;
  }

  .title-c-03 {
    background-size: 20px;
    padding-left: 30px;
  }

  .title-c-04 {
    background-size: 18px;
    padding-left: 28px;
  }
}
/***---　//PC　ここまで---***/
/*　//見出し　ここまで　*/
/* **********************************
---//タイトル　ここまで---
*********************************** */
/* **********************************
---リスト&アイコン　ここから---
*********************************** */
/*　前アイコン　ここから　*/
p.icon-dot,
p.icon-arrow,
p.icon-asterisk {
  line-height: 1.5;
  padding-left: 1em;
  position: relative;
}

p.icon-dot::before,
p.icon-arrow::before,
p.icon-asterisk::before {
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  left: 0;
  top: 0;
}

.align-center p.icon-dot::before,
.align-center p.icon-arrow::before,
.align-center p.icon-asterisk::before {
  position: relative;
  display: inline-block;
}

p.icon-dot::before {
  content: "・";
}

p.icon-arrow::before {
  color: #EA5550;
  font-family: FontAwesome;
  content: "\f101" !important;
  left: 0.2em;
}

p.icon-asterisk::before {
  content: "※" !important;
}

ol.icon-none li,
ul.icon-none li {
  text-indent: 0;
  margin-left: 0;
}
ol.icon-none li::before,
ul.icon-none li::before {
  content: "" !important;
}

ul.horizontal,
ol.horizontal {
  overflow: hidden;
}
ul.horizontal > li,
ol.horizontal > li {
  float: left;
}

ul.horizontal > li,
ol.horizontal > li {
  margin-right: 1em;
}

ol.horizontal {
  text-indent: 0;
  margin-left: 0;
}

ul.icon-dot,
ul.icon-arrow,
ul.icon-asterisk {
  margin-bottom: 1em;
}
ul.icon-dot > li,
ul.icon-arrow > li,
ul.icon-asterisk > li {
  padding-left: 1em;
  position: relative;
  margin-bottom: 0.3em;
}
ul.icon-dot > li::before,
ul.icon-arrow > li::before,
ul.icon-asterisk > li::before {
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  left: 0;
  top: 0;
}

.align-center ul.icon-dot > li::before,
.align-center ul.icon-arrow > li::before,
.align-center ul.icon-asterisk > li::before {
  position: relative;
  display: inline-block;
  margin-right: 0.5em;
  top: 0;
}

ul.icon-dot > li::before {
  content: "・" !important;
}

ul.icon-arrow > li::before {
  color: #EA5550;
  font-family: FontAwesome;
  content: "\f101" !important;
  left: 0.2em;
  top: 0.2em;
}

ul.icon-asterisk > li::before {
  content: "※" !important;
}

ol.icon-number {
  margin-bottom: 1em;
}
ol.icon-number > li {
  position: static;
  margin-bottom: 0.3em;
}
ol.icon-number > li::before {
  display: inline;
  position: static;
  margin-right: 0.5em;
}
ol.icon-number > li a::after {
  display: inline;
}

ol.icon-number {
  text-indent: -1.5em;
  margin-left: 1.5em;
}

/* ol配下 dl内ではインデント0*/
ol.icon-number dl,
ol.icon-number ul,
ol.icon-number p {
  text-indent: 0;
  margin-left: 0;
}

/* table、dl内ではmargin-bottom0*/
th ol.icon-number,
td ol.icon-number,
dt ol.icon-number,
dd ol.icon-number {
  margin-bottom: 0;
}

ol.icon-number {
  counter-reset: number;
}
ol.icon-number > li::before {
  counter-increment: number;
  content: counter(number) ".";
}

/*　//前アイコン　ここまで　*/
/*　後アイコン　（書類、別ウィンドウ）　ここから　*/
a.external::after,
a.pdf::after,
a.word::after,
a.excel::after {
  line-height: 1;
  font-family: FontAwesome;
  margin-left: 0.5em;
  margin-right: 0.5em;
  display: inline-block;
  color: #EA5550;
}

a.external::after {
  content: "\f08e";
}

a.pdf::after {
  content: "\f1c1";
}

a.word::after {
  content: "\f1c2";
}

a.excel::after {
  content: "\f1c3";
}

i.external::after,
i.pdf::after,
i.word::after,
i.excel::after {
  line-height: 1;
  font-family: FontAwesome;
  margin-left: 0.5em;
  margin-right: 0.5em;
  display: inline-block;
  color: #EA5550;
}

i.external::after {
  content: "\f08e";
}

i.pdf::after {
  content: "\f1c1";
}

i.word::after {
  content: "\f1c2";
}

i.excel::after {
  content: "\f1c3";
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  a.external::after,
  a.pdf::after,
  a.word::after,
  a.excel::after {
    font-size: 1.6rem;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  a.external::after,
  a.pdf::after,
  a.word::after,
  a.excel::after {
    font-size: 2rem;
  }
}
/***---　//PC　ここまで---***/
/*　//後アイコン　（書類、別ウィンドウ）　ここまで　*/
/* **********************************
---//リスト&アイコン　ここまで---
*********************************** */
/* --------------------------------------
***　ボタン　ここから　***
-------------------------------------- */
/*　基本ボタン　ここから　*/
.button {
  margin-bottom: 1em;
  color: #000;
  min-width: 5em;
  display: inline-block;
  border-radius: 3px;
  padding: 0.5em 1em 0.5em 1.5em;
  transition: all 0.25s;
  text-decoration: none;
  border: 1px solid #a6a6a6;
  margin-right: 0.5em;
  position: relative;
  background: #e6e6e6;
}

.button::before {
  display: block;
  position: absolute;
  font-family: FontAwesome;
  content: "\00bb";
  margin-right: 0.5em;
  left: 0.5em;
  top: 0.6em;
}

.button.font-red {
  color: #EA5550;
}

/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .button:hover {
    background: #f2f2f2;
  }
}
/***---　//PC　ここまで---***/
/*　//基本ボタン　ここまで　*/
/*　ボタン（ギザギザのラフなボタン）　ここから　*/
.button-painted-red,
.button-painted-blue,
.button-painted-yellow {
  color: #fff;
  padding: 0.3em;
  font-weight: bold;
  text-decoration: none;
  position: relative;
  display: inline-block;
  border-style: solid;
  border-width: 5px 7px;
}
.button-painted-red::after,
.button-painted-blue::after,
.button-painted-yellow::after {
  color: #fff !important;
  font-weight: normal;
}

.button-painted-red {
  border-image: url(../images/common/bg-button-painted-red.png) 10 14 10 14 fill
    repeat;
}

.button-painted-blue {
  border-image: url(../images/common/bg-button-painted-blue.png) 10 14 10 14
    fill repeat;
}

.button-painted-yellow {
  border-image: url(../images/common/bg-button-painted-yellow.png) 10 14 10 14
    fill repeat;
}

/* akiya-bank用ボタン設定 */
.akiya-bank[class*="button-painted-"] {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 170px;
	height: 80px;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
}

/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .button-painted-red,
  .button-painted-blue,
  .button-painted-yellow {
    transition: opacity 0.3s;
  }
  .button-painted-red:hover,
  .button-painted-blue:hover,
  .button-painted-yellow:hover {
    opacity: 0.8;
  }

  .button-painted-red:hover {
    border-image: url(../images/common/bg-button-painted-red.png) 10 14 10 14
      fill repeat;
  }

  .button-painted-blue:hover {
    border-image: url(../images/common/bg-button-painted-blue.png) 10 14 10 14
      fill repeat;
  }

  .button-painted-yellow:hover {
    border-image: url(../images/common/bg-button-painted-yellow.png) 10 14 10 14
      fill repeat;
  }
	
	.akiya-bank[class*="button-painted-"] {
		width: 240px;
		height: 105px;
	}
}
/***---　//PC　ここまで---***/
/*　//ボタン（ギザギザのラフなボタン）　ここまで　*/
/* --------------------------------------
***　//ボタン　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　タブ　ここから　***
-------------------------------------- */
/*　基本タブ　ここから　*/
.tab-wrapper {
  border-bottom: 3px solid #EA5550;
  margin-bottom: 1.5em;
  display: flex;
}

.tab {
  color: #000;
  min-width: 5em;
  display: inline-block;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  padding: 0.5em 1em;
  transition: all 0.25s;
  text-decoration: none;
  border-top: 1px solid #a6a6a6;
  border-right: 1px solid #a6a6a6;
  border-left: 1px solid #a6a6a6;
  border-bottom: none;
  margin-right: 0.5em;
  position: relative;
  background: #e6e6e6;
}

.tab.current-menu-item {
  background-color: #f2a3a6;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .tab-wrapper {
    justify-content: center;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .tab:hover {
    background: #f9d0d1;
  }
}
/***---　//PC　ここまで---***/
/*　//基本タブ　ここまで　*/
/* --------------------------------------
***　//タブ　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　テーブル　ここから　***
-------------------------------------- */
.table {
  margin-bottom: 1em;
  border: 1px solid #a6a6a6;
  table-layout:fixed;
}
.table tr + tr {
  border-top: 1px solid #a6a6a6;
}
.table th {
  white-space: nowrap;
  background-color: #f2f2f2;
  font-weight: normal;
  border-left: 1px solid #a6a6a6;
}
.table th,
.table td {
  vertical-align: middle;
  padding: 0.5em 0.8em;
}
.table td + td {
  border-left: 1px solid #a6a6a6;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .sp-table-col1 th,
  .table.sp-table-col1 th {
    border-right: none;
    border-left: none;
  }
  .sp-table-col1 th,
  .sp-table-col1 td,
  .table.sp-table-col1 th,
  .table.sp-table-col1 td {
    display: block;
  }
}
/***---　//スマートフォン　ここまで---***/
/* --------------------------------------
***　//テーブル　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　枠　ここから　***
-------------------------------------- */
.frame {
  border: 3px solid #a6a6a6;
  padding: 1em;
}

/*　画像フレーム　ここから　*/
.photo-frame {
  padding: 10px;
  border: 1px solid #a6a6a6;
  box-shadow: 3px 3px 5px #cccccc;
}

/*　//画像フレーム　ここまで　*/
/* --------------------------------------
***　//枠　ここまで　***
-------------------------------------- */
/* **********************************
---その他汎用パーツ　ここから---
*********************************** */
/*　リード　ここから　*/
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .lead {
    font-size: 1.6rem;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .lead {
    font-size: 1.8rem;
  }
}
/***---　//PC　ここまで---***/
/*　//リード　ここまで　*/
/*　長文用クラス　ここから　*/
.sentence {
  line-height: 1.8;
  letter-spacing: 0.07em;
}

/*　//長文用クラス　ここまで　*/
/*　区切り線　ここから　*/
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px dotted #666;
  margin: 1em 0;
  padding: 0;
}

/*　//区切り線　ここまで　*/
/*--- ページ送り ここから---*/
.wp-pagenavi {
  font-size: 0;
  text-align: center;
}
.wp-pagenavi span,
.wp-pagenavi a {
  font-size: 14px;
  color: #EA5550;
  border: 1px solid #EA5550;
  display: inline-block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  margin: 0 3px;
  text-decoration: none;
}
.wp-pagenavi a:hover {
  background: #f9d0d1;
  text-decoration: none;
}

.wp-pagenavi span.current {
  color: #fff;
  background: #EA5550;
}

/*--- //ページ送り ここまで---*/
/* **********************************
---//その他汎用パーツ　ここまで---
*********************************** */
/* ***************************************
---//　汎用パーツ　ここまで　---
**************************************** */
/* ***************************************
----　ページ個別スタイル　ここから　---
**************************************** */
/* --------------------------------------
***　topページ　ここから　***
-------------------------------------- */
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .home-keyvisual {
    text-align: center;
    margin-bottom: 20px;
  }
  .home-keyvisual .keyvisual {
    margin-top: -30px;
    width: 70%;
  }

  .home-keyvisual-bubbles .bubble01,
  .home-keyvisual-bubbles .bubble02,
  .home-keyvisual-bubbles .bubble03,
  .home-keyvisual-bubbles .bubble04 {
    width: 53%;
    position: relative;
  }
  .home-keyvisual-bubbles .bubble01,
  .home-keyvisual-bubbles .bubble03 {
    margin-right: -3%;
    float: left;
  }
  .home-keyvisual-bubbles .bubble02,
  .home-keyvisual-bubbles .bubble04 {
    margin-left: -3%;
    float: right;
  }
  .home-keyvisual-bubbles .bubble01 {
    z-index: 5;
  }
  .home-keyvisual-bubbles .bubble02 {
    z-index: 4;
  }
  .home-keyvisual-bubbles .bubble03 {
    margin-top: -15px;
    z-index: 3;
  }
  .home-keyvisual-bubbles .bubble04 {
    margin-top: -20px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .home-keyvisual {
    margin: 30px auto 40px;
    width: 1240px;
    height: 750px;
    background: url(../images/home/keyimg2.png) no-repeat left top;
  }
  .home-keyvisual .keyvisual {
    display: none;
  }

  .home-keyvisual-bubbles a {
    display: block;
  }
  .home-keyvisual-bubbles img {
    display: none;
  }
  .home-keyvisual-bubbles .bubble01,
  .home-keyvisual-bubbles .bubble02,
  .home-keyvisual-bubbles .bubble03,
  .home-keyvisual-bubbles .bubble04 {
    transition: opacity 0.3s;
  }
  .home-keyvisual-bubbles .bubble01:hover,
  .home-keyvisual-bubbles .bubble02:hover,
  .home-keyvisual-bubbles .bubble03:hover,
  .home-keyvisual-bubbles .bubble04:hover {
    opacity: 0.8;
  }
  .home-keyvisual-bubbles .bubble01 {
    float: left;
    width: 413px;
    height: 305px;
    background: url(../images/home/bubble01.png) no-repeat left top;
  }
  .home-keyvisual-bubbles .bubble02 {
    float: right;
    width: 402px;
    height: 290px;
    background: url(../images/home/bubble02.png) no-repeat right top;
  }
  .home-keyvisual-bubbles .bubble03 {
    margin-top: 40px;
    clear: both;
    float: left;
    width: 404px;
    height: 303px;
    background: url(../images/home/bubble03.png) no-repeat left top;
  }
  .home-keyvisual-bubbles .bubble04 {
    margin-top: 30px;
    float: right;
    width: 394px;
    height: 310px;
    background: url(../images/home/bubble04.png) no-repeat right top;
  }
}
/***---　//PC　ここまで---***/
/*　//キービジュアル　ここまで　*/
/*　赤中央ナビゲーション　ここから　*/
.home-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
.home-nav li.beginner a {
  background: #EA5550 url(../images/home/nav-title.png) no-repeat center center;
  background-size: contain;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  font-size: 0;
}
.home-nav li.beginner a:hover {
  padding: 20px;
  background: #EA5550 url(../images/home/nav-beginner.png) no-repeat center
    center;
  background-size: contain;
}
.home-nav li {
  position: relative;
}
.home-nav a {
  height: 100%;
  position: relative;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  border-radius: 10px;
  border: 1px solid #EA5550;
  display: block;
}
.home-nav span {
  display: block;
}

.home-nav-number {
  z-index: 5;
  position: absolute;
  color: #fff;
  left: 0;
  top: 0;
  background-color: #EA5550;
  width: 2em;
  height: 2em;
  line-height: 2em;
  border-top-left-radius: 10px;
}

.home-nav-image {
  padding: 20px;
  margin-bottom: 40px;
}

.home-nav-text {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
  padding: 0.5em;
  color: #fff;
  background-color: #EA5550;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .home-nav {
    margin-bottom: 30px;
  }
  .home-nav li {
    width: 49%;
    margin-bottom: 10px;
  }
  .home-nav li:nth-child(2n + 1) {
    margin-right: 2%;
  }
  .home-nav a {
    font-size: 16px;
  }

  .home-nav-number {
    font-size: 20px;
  }

  .home-nav-text {
    font-size: 14px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .home-nav {
    margin-bottom: 50px;
  }
  .home-nav li {
    width: 280px;
    margin-right: 26px;
    margin-bottom: 22px;
  }
  .home-nav li:nth-child(4n) {
    margin-right: 0;
  }
  .home-nav li.beginner a:hover img {
    opacity: 1;
  }
  .home-nav a {
    font-size: 2rem;
  }

  .home-nav-number {
    font-size: 2.6rem;
  }

  .home-nav-text {
    min-height: 50px;
  }
}
/***---　//PC　ここまで---***/
/*　//赤ナビゲーション　ここまで　*/
/*　ニュース　ここから　*/
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .home-news-inner {
    padding: 1em;
    border: 1px solid #a6a6a6;
    border-radius: 10px;
  }

  .home-news-title {
    margin-bottom: 0;
  }
  .home-news-title a {
    pointer-events: none;
  }
  .home-news-title img {
    width: 150px;
    margin-left: 30px;
    margin-bottom: 0;
  }

  .home-news-button {
    margin-top: 1em;
    text-align: center;
    width: 100%;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .home-news-button {
    display: none;
  }

  .home-news {
    overflow: hidden;
    padding: 2em;
    border: 1px solid #a6a6a6;
    border-radius: 10px;
  }

  .home-news-title a {
    display: block;
    background: url(../images/home/title-news.png) no-repeat left top;
    width: 154px;
    height: 150px;
    float: left;
    transition: opacity 0.3s;
  }
  .home-news-title a:hover {
    opacity: 0.8;
  }
  .home-news-title img {
    display: none;
  }

  .home-news-inner {
    float: right;
    width: 930px;
  }
}
/***---　//PC　ここまで---***/
/*　//ニュース　ここまで　*/
/*　イベント　ここから　*/
.home-event-title {
  margin-bottom: 0;
  text-align: center;
}
.home-event-title img {
  margin-bottom: 0;
}

.home-event-inner {
  background-color: #f2f2f2;
  padding-top: 20px;
  padding-bottom: 20px;
  position: relative;
}
.home-event-inner a {
  margin-right: 10px;
  margin-left: 10px;
}

.home-event-button-wrapper {
  text-align: center;
  padding-right: 20px;
  padding-left: 0;
}

.home-post-event-list a {
  text-decoration: none;
  color: #000;
  display: block;
  padding: 10px;
  transition: all 0.3s;
  background-color: #fff;
  border: 1px solid #a6a6a6;
}
.home-post-event-list li {
  width: 372px;
  margin-bottom: 23px;
}
.home-post-event-list img {
  margin-top: 10px;
  margin-right: auto;
  margin-left: auto;
}

.home-post-event-title {
  height: 4.5em;
  display: block;
  overflow: hidden;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .home-event-title img {
    width: 80%;
  }

  .home-event-button {
    text-align: center;
    width: 100%;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .home-event-inner {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .home-event-button {
    text-align: center;
    width: 40%;
  }

  .home-event-inner::before,
  .home-event-inner::after {
    position: absolute;
    display: block;
    width: 50px;
    height: 100%;
    z-index: 10;
    content: "";
    top: 0;
  }

  .home-event-inner::before {
    left: 0;
  }

  .home-event-inner::after {
    right: 0;
  }
}
/***---　//PC　ここまで---***/
/*　//イベント　ここまで　*/
/*　Facebook & バナーエリア　ここから　*/
.home-banner-area a {
  display: block;
}
.home-banner-area img {
  border: 1px solid #EA5550;
  margin: 0;
  padding: 0;
}

.home-banners-small {
  font-size: 0;
}

.home-facebook {
  text-align: center;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .home-banners-small li {
    display: inline-block;
    width: 49%;
    margin-bottom: 10px;
  }
  .home-banners-small li:nth-child(2n + 1) {
    text-align: right;
    margin-right: 2%;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .home-facebook-banner-area-wrapper {
    display: flex;
    justify-content: space-between;
  }

  .home-facebook {
    order: 1;
    margin-right: 30px;
  }

  .home-banner-area {
    order: 2;
  }

  .home-facebook,
  .home-banner-area {
    flex: 1 1 50%;
  }

  .home-banners-small li {
    display: inline-block;
    width: 285px;
    margin-bottom: 15px;
  }
  .home-banners-small li:nth-child(2n + 1) {
    text-align: right;
    margin-right: 15px;
  }
}
/***---　//PC　ここまで---***/
/*　Facebook & バナーエリア　ここまで　*/
/*　関連リンクエリア　ここから　*/
.home-related-links {
  font-size: 0;
}
.home-related-links img {
  border: 1px solid #a6a6a6;
}
.home-related-links li {
  display: inline-block;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .home-related-links li {
    display: inline-block;
    width: 49%;
    margin-bottom: 5px;
  }
  .home-related-links li:nth-child(2n + 1) {
    text-align: right;
    margin-right: 2%;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .home-related-links li {
    width: 294px;
    margin-right: 8px;
    margin-bottom: 22px;
  }
  .home-related-links li:nth-child(4n) {
    margin-right: 0;
  }
}
/***---　//PC　ここまで---***/
/*　関連リンクエリア　ここまで　*/
/* --------------------------------------
***　//topページ　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　すまいを探す（support）　ここから　***
-------------------------------------- */
.support-smilenavi-submit {
  border: 0px;
  background: url(../images/support/bn_top_h_search.png) left top no-repeat;
  background-size: contain;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .support-smilenavi-submit {
    width: 280px;
    height: 40px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .support-smilenavi-submit {
    width: 450px;
    height: 62px;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//すまいを探す（support）　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　新築・リノベーション　ここから　***
-------------------------------------- */
.construction-partner-agree {
  border-top: 1px dotted #666;
  border-bottom: 1px dotted #666;
  margin-top: 2em;
  margin-bottom: 1em;
  padding-top: 1em;
  padding-bottom: 1em;
  display: flex;
  align-items: center;
  font-weight: bold;
}
.construction-partner-agree label {
  margin-left: 1em;
  padding: 1em 1.5em 1em 1em;
  background-color: #f5babc;
}
.construction-partner-agree input {
  margin-right: 1em;
  width: 20px;
  height: 20px;
}

.construction-partner-area select {
  width: 10em;
  padding-right: 0.5em;
  padding-left: 0.5em;
  font-size: 1.6rem;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .construction-partner-agree {
    font-size: 1.6rem;
  }

  .construction-partner-area select {
    display: block;
    font-size: 1.6rem;
    margin-top: 0.5em;
    height: 40px;
    line-height: 40px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .construction-partner-agree {
    font-size: 2rem;
  }

  .construction-partner-area select {
    font-size: 2rem;
    height: 50px;
    line-height: 50px;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//新築・リノベーション　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　投稿ページ　ここから　***
-------------------------------------- */
/***　TinyMCE用指定　ここから　***/
.post-single-inner p,
.post-single-inner ul {
  clear: both;
  margin-bottom: 1em;
}

.post-single-inner img {
  clear: both;
  display: block;
}

.post-single-inner img.aligncenter {
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
}

.post-single-inner img.alignright {
  margin-top: 0;
  margin-right: 0;
  margin-left: auto;
}

.post-single-inner ul:not([class]) > li {
  padding-left: 1em;
  position: relative;
}

.post-single-inner ul:not([class]) > li::before {
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  left: 0;
  top: 0;
  content: "・";
}

.post-single-inner table:not([class]) {
  max-width: 100% !important;
  margin-bottom: 1em;
  border: 1px solid #b3b3b3;
}

.post-single-inner table:not([class]) tr + tr {
  border-top: 1px solid #b3b3b3;
}

.post-single-inner table:not([class]) th {
  font-weight: normal;
  border-left: 1px solid #b3b3b3;
  border-right: 1px solid #b3b3b3;
}

.post-single-inner table:not([class]) th,
.post-single-inner table:not([class]) td {
  vertical-align: middle;
  padding: 0.5em 0.8em;
}

.post-single-inner table:not([class]) td + td {
  border-left: 1px solid #b3b3b3;
}

.post-single-inner caption {
  text-align: left;
  padding: 5px 0;
  font-weight: bold;
}

.post-single-inner hr {
  border-width: 1px 0 0 0;
  border-style: dotted;
  border-color: #b3b3b3;
  height: 1px;
  clear: both;
  margin-bottom: 10px;
}

.post-single-inner p.wp-caption-text {
  margin: 5px 0 0;
  font-size: 14px;
  max-width: 100%;
  line-height: 1.3;
}

.post-single-inner .wp-caption img {
  margin-bottom: 0 !important;
  max-width: 100% !important;
}

.post-single-inner .wp-caption {
  clear: both;
  margin-bottom: 20px;
  border: 1px solid #ccc;
  padding: 10px 10px 5px;
}

.post-single-inner .wp-caption.aligncenter {
  margin-right: auto;
  margin-left: auto;
}

.post-single-inner .wp-caption.alignright {
  margin-right: 0;
  margin-left: auto;
}

/***　//TinyMCE用指定　ここまで　***/
.post-list li {
  margin-bottom: 1em;
  border-bottom: 1px dotted #666;
  padding-bottom: 0.5em;
}

.post-time {
  color: #EA5550;
  margin-right: 1em;
}

.post-category a,
.post-accept,
.post-close,
.post-end {
  display: inline-block;
  color: #000;
  text-decoration: none;
  padding: 0.1em 0.5em;
  border-radius: 3px;
}

.post-category a,
.post-accept {
  background-color: #f5babc;
}

.post-accept,
.post-close,
.post-end {
  width: 5em;
  text-align: center;
  margin-right: 1em;
}

.post-close {
  background-color: #aedff4;
}

.post-end {
  background-color: #cccccc;
}

.post-title {
  display: block;
  margin-top: 0.3em;
}

.post-single-inner {
  padding-bottom: 2em;
  border-bottom: 1px dotted #666;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .post-list {
    margin-bottom: 30px;
  }

  .post-category a {
    font-size: 1.3rem;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .post-list {
    margin-bottom: 40px;
  }

  .post-category a {
    font-size: 1.5rem;
    transition: all 0.3s;
  }
  .post-category a:hover {
    background-color: #f9d0d1;
  }
}
/***---　//PC　ここまで---***/
/*　詳細　ここから　*/
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .post-single-image {
    margin-right: auto;
    margin-left: auto;
  }

  .post-single-content {
    margin-top: 30px;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .post-single-image {
    float: left;
    width: 250px;
    padding-bottom: 10px;
  }

  .post-single-content {
    float: right;
    width: 600px;
  }
}
/***---　//PC　ここまで---***/
/*　//詳細　ここまで　*/
/*　イベント一覧　ここから　*/
.post-event-list a {
  text-decoration: none;
  color: #000;
  display: block;
  padding: 10px;
  transition: all 0.3s;
  background-color: #fff;
  border: 1px solid #a6a6a6;
}
.post-event-list li {
  max-width: 372px;
  margin-bottom: 23px;
}
.post-event-list img {
  margin-top: 10px;
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.post-event-date {
  display: block;
  margin-top: 0.7em;
  margin-bottom: 0.5em;
  padding-bottom: 0.2em;
  border-bottom: 1px dotted #a6a6a6;
}

/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .post-event-list {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
  }
  .post-event-list li {
    width: 31.66667%;
  }
  .post-event-list li:not(:nth-child(3n)) {
    margin-right: 2.5%;
  }
  .post-event-list a {
    height: 100%;
    font-size: 1.6rem;
  }
  .post-event-list a:hover {
    background-color: #fce6e7;
  }
  .post-event-list a:hover img {
    opacity: 1;
  }
}
/***---　//PC　ここまで---***/
/*　//イベント一覧　ここまで　*/
/* --------------------------------------
***　//投稿ページ　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　FAQページ　ここから　***
-------------------------------------- */
.faq-item {
  overflow: hidden;
  margin-bottom: 1em;
}

.faq-item-q {
  margin-bottom: 1em;
}

.faq-item-a {
  margin-bottom: 1em;
  padding-bottom: 0.5em;
}

.faq-q {
  color: #1e9cd1;
  margin-top: 0.1em;
  margin-right: 0.5em;
}

.faq-a {
  color: #EA5550;
  display: block;
  margin-bottom: 0.3em;
}

.faq-q,
.faq-a {
  line-height: 1.3;
}

.faq-q-title {
  font-weight: bold;
  display: block;
  color: #1e9cd1;
  line-height: 1.3;
  padding-top: 0.5em;
}

.faq-q-wrapper {
  display: flex;
  border-top: 2px dotted #6bc4ea;
  border-bottom: 2px dotted #6bc4ea;
  padding-bottom: 0.3em;
  margin-bottom: 1em;
}

.faq-a-wrapper {
  padding: 1em 0 0.5em;
  border-top: 2px dotted #EA5550;
  border-bottom: 2px dotted #EA5550;
}

.faq-categories {
  margin-top: 1em;
  padding-top: 0.5em;
  border-top: 1px dotted #666;
}
.faq-categories p {
  white-space: nowrap;
  margin-bottom: 0.5em;
}

.faq-button,
.faq-button-close {
  text-align: center;
  width: 12em;
  float: right;
  margin-bottom: 1em;
  color: #000;
  min-width: 5em;
  display: inline-block;
  border-radius: 3px;
  padding: 0.5em 1em 0.5em 1.5em;
  transition: all 0.25s;
  text-decoration: none;
  border: 1px solid #a6a6a6;
  margin-right: 0.5em;
  position: relative;
  background: #e6e6e6;
}

.faq-button::before,
.faq-button-close::before {
  display: block;
  position: absolute;
  font-family: FontAwesome;
  margin-right: 0.5em;
  left: 0.5em;
  top: 0.7em;
}

.faq-button::before {
  content: "\f103";
}

.faq-button-close::before {
  content: "\f102";
}

.faq-search-form {
  margin-bottom: 2em;
  width: 100%;
  padding: 1em;
  background-color: #f9d0d1;
}
.faq-search-form input[type="text"] {
  height: 32px;
  padding-right: 0.5em;
  padding-left: 0.5em;
  margin-right: 2px;
  width: 80%;
}
.faq-search-form input[type="submit"] {
  color: #fff;
  height: 30px;
  background-color: #666;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .faq-q,
  .faq-a {
    font-size: 2rem;
    position: relative;
    top: 0.3em;
  }

  .faq-q-title {
    font-size: 1.8rem;
  }

  .faq-categories {
    font-size: 1.2rem;
  }

  .faq-search-form {
    font-size: 1.6rem;
    text-align: center;
  }
  .faq-search-form .screen-reader-text {
    display: block;
    margin-bottom: 0.5em;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .faq-q,
  .faq-a {
    font-size: 3rem;
  }

  .faq-q-title {
    font-size: 2.2rem;
  }

  .faq-categories {
    font-size: 1.4rem;
    display: flex;
  }
  .faq-categories p {
    margin-right: 1em;
  }

  .faq-button:hover,
  .faq-button-close:hover {
    background: #f2f2f2;
  }

  .searchform {
    text-align: center;
  }

  .faq-search-form .screen-reader-text {
    font-size: 1.8rem;
    margin-right: 0.5em;
  }
  .faq-search-form input[type="text"] {
    margin-right: 2px;
    width: 25em;
    font-size: 1.6rem;
  }
  .faq-search-form input[type="submit"] {
    font-size: 1.6rem;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//FAQページ　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　用語集　ここから　***
-------------------------------------- */
.glossary-nav-kenchiku,
.glossary-nav-yushi,
.glossary-nav-shohi {
  overflow: hidden;
  padding: 1.5em 1.5em 0.5em;
}
.glossary-nav-kenchiku li,
.glossary-nav-yushi li,
.glossary-nav-shohi li {
  float: left;
  margin-right: 0.5em;
  margin-bottom: 0.5em;
}
.glossary-nav-kenchiku a,
.glossary-nav-yushi a,
.glossary-nav-shohi a {
  color: #000;
  display: block;
  padding: 0.3em 1em;
  background-color: #eee;
  text-decoration: none;
}
.glossary-nav-kenchiku a:hover,
.glossary-nav-yushi a:hover,
.glossary-nav-shohi a:hover {
  color: #fff;
}

.glossary-nav-title {
  color: #000;
  padding-bottom: 0.3em;
  margin-bottom: 0.8em;
  background-repeat: no-repeat;
}

.glossary-nav-kenchiku {
  border: 1px solid #7aba25;
}
.glossary-nav-kenchiku .glossary-nav-title {
  border-bottom: 3px solid #7aba25;
  background-image: url(../images/common/icon-house-green.png);
}
.glossary-nav-kenchiku a:hover {
  background-color: #7aba25;
}

.glossary-nav-yushi {
  border: 1px solid #2c9ae7;
}
.glossary-nav-yushi .glossary-nav-title {
  border-bottom: 3px solid #2c9ae7;
  background-image: url(../images/common/icon-house-blue.png);
}
.glossary-nav-yushi a:hover {
  background-color: #2c9ae7;
}

.glossary-nav-shohi {
  border: 1px solid #fe9e14;
}
.glossary-nav-shohi .glossary-nav-title {
  border-bottom: 3px solid #fe9e14;
  background-image: url(../images/common/icon-house-orange.png);
}
.glossary-nav-shohi a:hover {
  background-color: #fe9e14;
}

.glossary-title {
  margin-bottom: 1em;
  color: #fff;
  padding: 0.5em 1.5em 0.3em 2.5em;
  background-image: url(../images/common/icon-house-white.png);
  background-repeat: no-repeat;
  background-position: center left 1em;
}

.glossary-kenchiku .glossary-title {
  background-color: #7aba25;
}
.glossary-kenchiku .glossary-bubble-title {
  color: #6ca521;
}

.glossary-yushi .glossary-title {
  background-color: #2c9ae7;
}
.glossary-yushi .glossary-bubble-title {
  color: #2c9ae7;
}

.glossary-shohi .glossary-title {
  background-color: #fe9e14;
}
.glossary-shohi .glossary-bubble-title {
  color: #fe9e14;
}

.glossary-bubble {
  min-height: 10em;
  border-radius: 20px;
  padding: 2.5em;
  background-color: #eee;
  position: relative;
}
.glossary-bubble .member {
  position: absolute;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .glossary-nav-wrapper {
    background: url(../images/glossary/members.jpg) no-repeat bottom center;
    padding-bottom: 300px;
    background-size: 300px;
  }

  .glossary-bubble {
    margin-top: 40px;
  }
  .glossary-bubble .member {
    right: 0;
    left: 0;
    margin-right: auto;
    margin-left: auto;
    top: -240px;
  }

  .glossary-bubble::after {
/*
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    border-bottom-color: #eee;
    border-width: 30px;
    margin-left: -30px;
*/
  }

  .glossary-bubble-title {
    font-size: 2rem;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .glossary-nav-wrapper {
    background: url(../images/glossary/members.jpg) no-repeat right center;
  }
  .glossary-nav-wrapper .glossary-nav-yushi,
  .glossary-nav-wrapper .glossary-nav-shohi {
    width: 380px;
  }

  .glossary-bubble {
    margin-bottom: 3em;
    /* width: 630px; */
  }
  .glossary-bubble .member {
    right: -240px;
    top: 0;
  }

  .glossary-bubble::after {
/*
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    border-top-width: 10px;
    border-bottom-width: 10px;
    border-left-width: 30px;
    border-right-width: 30px;
    margin-top: -10px;
    border-left-color: #eee;
    left: 99%;
    top: 90px;
*/
  }

  .glossary-bubble-title {
    font-size: 2.5rem;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//用語集　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　バリアフリー　ここから　***
-------------------------------------- */
.barrierfree-nav > li {
  border: 1px solid #666;
}
.barrierfree-nav ul {
  padding: 2em;
}

.barrierfree-title-subsidy-house,
.barrierfree-title-subsidy-joint {
  text-align: center;
  display: block;
}

.barrierfree-title-subsidy-house {
  background-color: #7aba25;
}

.barrierfree-title-subsidy-joint {
  background-color: #2c9ae7;
}

/***---　スマートフォン　ここから---***/
/***---　//スマートフォン　ここまで---***/
/* --------------------------------------
***　//バリアフリー　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　すまいるネットねっと通信　ここから　　***
-------------------------------------- */
.magazine-cover {
  text-align: center;
}


/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .magazine-block {
    overflow: hidden;
  }

  .magazine-contents {
    float: left;
    width: 600px;
  }

  .magazine-cover {
    float: right;
    width: 250px;
  }
}

@media print, screen and (max-width: 767px) {
  .magazine-main {
    overflow: hidden;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//すまいるネットねっと通信　ここまで　　***
-------------------------------------- */
/* --------------------------------------
***　まちづくり支援ページ　ここから　***
-------------------------------------- */
.town-development-list img {
  margin-bottom: 0;
}
.town-development-list a {
  color: #fff;
  text-decoration: none;
  font-weight: bold;
}
.town-development-list span {
  height: 4em;
  background-color: #EA5550;
  display: flex;
  align-items: center;
  padding: 0.7em 1em;
  transition: 0.3s;
}

/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .town-development-list span:hover {
    /* background-color: #e96065; */
    opacity: 0.7;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//まちづくり支援ページ　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　フォーム　ここから（MW Form）　　***
-------------------------------------- */
dl.form {
  background-color: #fdf4f4;
}
dl.form dt {
  font-weight: bold;
  margin-bottom: 1em;
  border-bottom: 1px dotted #666;
  padding-bottom: 0.3em;
}
dl.form dd {
  margin-bottom: 2.5em;
}
dl.form dd:last-child {
  margin-bottom: 0;
}
dl.form input[type="text"],
dl.form input[type="tel"],
dl.form input[type="email"],
dl.form textarea {
  padding-right: 0.5em;
  padding-left: 0.5em;
  border: 1px solid #a6a6a6;
  font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
dl.form textarea {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
dl.form input[type="checkbox"],
dl.form input[type="radio"] {
  margin-right: 0.5em;
}
dl.form .mwform-zip-field input[type="text"],
dl.form .mwform-tel-field input[type="text"] {
  width: 5em;
}
dl.form label {
  display: flex;
  align-items: flex-start;
  margin-bottom: 0.5em;
  margin-right: 1em;
}
dl.form .width-3em {
  width: 3em !important;
}
dl.form .width-10em {
  width: 10em !important;
}
dl.form .error {
  margin-top: 0.3em;
  color: #EA5550;
}
dl.form .horizontal-item {
  display: inline-block;
  margin-left: 0 !important;
  margin-bottom: 0.5em;
}

.submit-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.submit-buttons li {
  margin: 0 0.5em;
}

.form-submit {
  font-weight: bold;
  background-color: #EA5550;
  color: #fff;
  margin-top: 2em;
  margin-right: auto;
  margin-left: auto;
  display: block;
  padding: 0.8em 0 0.8em 0.5em;
  letter-spacing: 0.5em;
}

.form-submit-back {
  background-color: #666;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  dl.form {
    margin-top: 30px;
    padding: 10px;
  }
  dl.form input[type="checkbox"],
  dl.form input[type="radio"] {
    width: 14px;
    height: 14px;
  }
  dl.form input[type="text"],
  dl.form input[type="tel"],
  dl.form input[type="email"],
  dl.form textarea {
    width: 100%;
    font-size: 1.4rem;
  }
  dl.form input[type="text"],
  dl.form input[type="tel"],
  dl.form input[type="email"],
  dl.form select {
    height: 2.5em;
  }
  dl.form select {
    font-size: 1.4rem;
  }

  .form-submit {
    width: 250px;
    font-size: 1.8rem;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  dl.form {
    margin-top: 50px;
    padding: 20px;
  }
  dl.form input[type="checkbox"],
  dl.form input[type="radio"] {
    width: 16px;
    height: 16px;
  }
  dl.form input[type="text"],
  dl.form input[type="tel"],
  dl.form input[type="email"] {
    width: 40em;
    font-size: 1.6rem;
  }
  dl.form textarea {
    width: 80%;
    font-size: 1.6rem;
  }
  dl.form input[type="text"],
  dl.form input[type="tel"],
  dl.form input[type="email"],
  dl.form select {
    height: 2em;
  }
  dl.form select {
    font-size: 1.6rem;
  }

  .form-submit {
    width: 10em;
    font-size: 2rem;
    transition: opacity 0.3s;
  }
  .form-submit:hover {
    opacity: 0.7;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//フォーム（MW Form）　ここまで　***
-------------------------------------- */
/* ***************************************
----//　ページ個別スタイル　ここまで　---
**************************************** */
/* ***************************************
----　汎用クラス　ここから　---
**************************************** */
/* --------------------------------------
***　主な汎用CSS　ここから　***
-------------------------------------- */
.display-block {
  display: block !important;
}

.display-inline {
  display: inline !important;
}

.align-center {
  text-align: center !important;
}

.align-right {
  text-align: right !important;
}

.align-left {
  text-align: left !important;
}

.font-bold {
  font-weight: bold !important;
}

.font-normal {
  font-weight: normal !important;
}

.nowrap {
  white-space: nowrap !important;
}

.float-right {
  float: right !important;
}

.float-left {
  float: left !important;
}

.clear {
  clear: both;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.image-center {
  margin-right: auto !important;
  margin-left: auto !important;
  display: block !important;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .sp-display-block {
    display: block !important;
  }

  .sp-display-inline {
    display: inline !important;
  }

  .sp-align-center {
    text-align: center !important;
  }

  .sp-align-right {
    text-align: right !important;
  }

  .sp-align-left {
    text-align: left !important;
  }

  .sp-font-bold {
    font-weight: bold !important;
  }

  .sp-font-normal {
    font-weight: normal !important;
  }

  .sp-nowrap {
    white-space: nowrap !important;
  }

  .sp-float-right {
    float: right !important;
  }

  .sp-float-left {
    float: left !important;
  }

  .sp-clear {
    clear: both;
  }

  .sp-clearfix::after {
    content: "";
    display: block;
    clear: both;
  }

  .sp-image-center {
    margin-right: auto !important;
    margin-left: auto !important;
    display: block !important;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .pc-display-block {
    display: block !important;
  }

  .pc-display-inline {
    display: inline !important;
  }

  .pc-align-center {
    text-align: center !important;
  }

  .pc-align-right {
    text-align: right !important;
  }

  .pc-align-left {
    text-align: left !important;
  }

  .pc-font-bold {
    font-weight: bold !important;
  }

  .pc-font-normal {
    font-weight: normal !important;
  }

  .pc-nowrap {
    white-space: nowrap !important;
  }

  .pc-float-right {
    float: right !important;
  }

  .pc-float-left {
    float: left !important;
  }

  .pc-clear {
    clear: both;
  }

  .pc-clearfix::after {
    content: "";
    display: block;
    clear: both;
  }

  .pc-image-center {
    margin-right: auto !important;
    margin-left: auto !important;
    display: block !important;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//主な汎用CSS　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　表示制御　ここから　***
-------------------------------------- */
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .sp-hidden {
    display: none !important;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .pc-hidden {
    display: none !important;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//表示制御　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　上下マージン制御　ここから　***
-------------------------------------- */
.mt0 {
  margin-top: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.pt0 {
  padding-top: 0 !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

.m-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.mb-05em {
  margin-bottom: 0.5em !important;
}

/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .mt-small {
    margin-top: 10px !important;
  }

  .mt-medium {
    margin-top: 30px !important;
  }

  .mt-large {
    margin-top: 40px !important;
  }

  .mr-small {
    margin-right: 10px !important;
  }

  .mr-medium {
    margin-right: 30px !important;
  }

  .mr-large {
    margin-right: 40px !important;
  }

  .mb-small {
    margin-bottom: 10px !important;
  }

  .mb-medium {
    margin-bottom: 30px !important;
  }

  .mb-large {
    margin-bottom: 40px !important;
  }

  .ml-small {
    margin-left: 10px !important;
  }

  .ml-medium {
    margin-left: 30px !important;
  }

  .ml-large {
    margin-left: 40px !important;
  }

  .sp-mt-small {
    margin-top: 10px !important;
  }

  .sp-mt-medium {
    margin-top: 30px !important;
  }

  .sp-mt-large {
    margin-top: 40px !important;
  }

  .sp-mr-small {
    margin-right: 10px !important;
  }

  .sp-mr-medium {
    margin-right: 30px !important;
  }

  .sp-mr-large {
    margin-right: 40px !important;
  }

  .sp-ml-small {
    margin-left: 10px !important;
  }

  .sp-ml-medium {
    margin-left: 30px !important;
  }

  .sp-ml-large {
    margin-left: 40px !important;
  }

  .sp-mb-small {
    margin-bottom: 10px !important;
  }

  .sp-mb-medium {
    margin-bottom: 30px !important;
  }

  .sp-mb-large {
    margin-bottom: 40px !important;
  }

  .sp-mt0 {
    margin-top: 0 !important;
  }

  .sp-mb0 {
    margin-bottom: 0 !important;
  }

  .sp-pt0 {
    padding-top: 0 !important;
  }

  .sp-pb0 {
    padding-bottom: 0 !important;
  }

  .sp-m-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .mt-small {
    margin-top: 20px !important;
  }

  .mt-medium {
    margin-top: 40px !important;
  }

  .mt-large {
    margin-top: 80px !important;
  }

  .mr-small {
    margin-right: 20px !important;
  }

  .mr-medium {
    margin-right: 40px !important;
  }

  .mr-large {
    margin-right: 80px !important;
  }

  .mb-small {
    margin-bottom: 20px !important;
  }

  .mb-medium {
    margin-bottom: 40px !important;
  }

  .mb-large {
    margin-bottom: 80px !important;
  }

  .ml-small {
    margin-left: 20px !important;
  }

  .ml-medium {
    margin-left: 40px !important;
  }

  .ml-large {
    margin-left: 80px !important;
  }

  .pc-mt-small {
    margin-top: 20px !important;
  }

  .pc-mt-medium {
    margin-top: 40px !important;
  }

  .pc-mt-large {
    margin-top: 80px !important;
  }

  .pc-mr-small {
    margin-right: 20px !important;
  }

  .pc-mr-medium {
    margin-right: 40px !important;
  }

  .pc-mr-large {
    margin-right: 80px !important;
  }

  .pc-mb-small {
    margin-bottom: 20px !important;
  }

  .pc-mb-medium {
    margin-bottom: 40px !important;
  }

  .pc-mb-large {
    margin-bottom: 80px !important;
  }

  .pc-ml-small {
    margin-left: 20px !important;
  }

  .pc-ml-medium {
    margin-left: 40px !important;
  }

  .pc-ml-large {
    margin-left: 80px !important;
  }

  .pc-mt0 {
    margin-top: 0 !important;
  }

  .pc-mb0 {
    margin-bottom: 0 !important;
  }

  .pc-pt0 {
    padding-top: 0 !important;
  }

  .pc-pb0 {
    padding-bottom: 0 !important;
  }

  .pc-m-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//上下マージン制御　ここまで　***
-------------------------------------- */
/* --------------------------------------
***　幅指定　ここから　***
-------------------------------------- */
.width-25per {
  width: 25%;
}

.width-50per {
  width: 50%;
}

.width-70per {
  width: 70%;
}




/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .sp-width-25per {
    width: 25%;
  }

  .sp-width-50per {
    width: 50%;
  }

  .sp-width-70per {
    width: 70%;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .pc-width-25per {
    width: 25%;
  }

  .pc-width-50per {
    width: 50%;
  }

  .pc-width-70per {
    width: 70%;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//幅指定　ここから　***
-------------------------------------- */
/* --------------------------------------
***　フォントサイズ　ここから　***
-------------------------------------- */
/***---　スマートフォン　ここから---***/
@media only screen and (max-width: 767px) {
  .font-xsmall {
    font-size: 10px !important;
  }

  .font-small {
    font-size: 12px !important;
  }

  .font-medium {
    font-size: 14px !important;
  }

  .font-large {
    font-size: 16px !important;
  }

  .font-xlarge {
    font-size: 18px !important;
  }

  .font-xxlarge {
    font-size: 21px !important;
  }
}
/***---　//スマートフォン　ここまで---***/
/***---　PC　ここから---***/
@media print, screen and (min-width: 768px) {
  .font-xsmall {
    font-size: 12px !important;
  }

  .font-small {
    font-size: 14px !important;
  }

  .font-medium {
    font-size: 16px !important;
  }

  .font-large {
    font-size: 19px !important;
  }

  .font-xlarge {
    font-size: 22px !important;
  }

  .font-xxlarge {
    font-size: 30px !important;
  }
}
/***---　//PC　ここまで---***/
/* --------------------------------------
***　//フォントサイズ　ここから　***
-------------------------------------- */
/* --------------------------------------
***　文字色　ここから　***
-------------------------------------- */
.font-red {
  color: #EA5550;
}

.font-blue {
  color: #6bc4ea;
}

.font-gray {
  color: #666;
}

/* --------------------------------------
***　//文字色　ここから　***
-------------------------------------- */
/* --------------------------------------
***　背景カラー　ここから　***
-------------------------------------- */
.background-red {
  color: #fff !important;
  background-color: #EA5550 !important;
}

/* --------------------------------------
***　//背景カラー　ここから　***
-------------------------------------- */
/* --------------------------------------
***　YOUTUBE　ここから　***
-------------------------------------- */
    .youtube {
        position: relative;
        width: 100%;
        height: 0;
        padding-top: 56.25%;
    }

    .youtube iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
    }
/* --------------------------------------
***　//YOUTUBE　ここまで　***
-------------------------------------- */
/* ***************************************
----//　汎用クラス　ここまで　---
**************************************** */



/* --------------------------------------
***　//アコーディオンjs　追加css　***
-------------------------------------- */
.ac-ttl {
  position: relative;
  cursor: pointer;
}
.ac-ttl .fa-chevron-down {
  position: absolute;
  top: 10px;
  right: 10px;
  transition: 0.3s;
}
.ac-ttl.active .fa-chevron-down {
  transform: rotate(180deg);
}
.ac-cnt {
  display: none;
}
.ac-ttl.active + .ac-cnt {
  display: block;
}

/* --------------------------------------
***　//緊急お知らせボックス　追加css　***
-------------------------------------- */
.news-box {
  padding: 15px;
  width: 900px;
  margin: 30px auto 60px;
  text-align: center;
  border: #EA5550 solid 5px;
}
@media only screen and (max-width: 767px) {
  .news-box {
    width: 90%;
    margin-bottom: 30px;
  }
}

/* --------------------------------------
***　//2024 ヘッダー・フッター改修　***
-------------------------------------- */

:root{
  --color-main: #ea5550;
  --color-main-light:#FFE6E6;
  --color-accent: #0079b5;
  --color-accent-light: #eff9ff;
  --color-bg: #fffbe2;

  --ff-montserrat: "Montserrat", sans-serif;
}

@media only screen and (min-width: 768px) {
  body.is-active{
    overflow: scroll;
    position: fixed;
    left: 0;
    width: 100%;
  }
}

main{
  z-index: 1;
}

body{
  min-width:1280px !important;
  width: 100% !important;
}

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

  html{
    scroll-padding-top: 100px;
  }

  main{
    margin-top:100px;
  }

  .home-main{
    margin-top: 79px;
  }

  body{
    min-width: auto !important;
  }

  body.is-active{
    overflow: hidden;
    position:static;
  }
  
}

.shadow{
  position: absolute;
  top: 270px;
  width: 100%;
  height: 200vh;
  max-height: 1500px;
  z-index: 3;
  background-color: rgba(51, 51, 51, 18%);
  pointer-events: none;
  opacity: 0;
  transition:all 0.2s;
}

@media only screen and (max-width: 767px) {
  .shadow{
    top: 150px;
  }
}

.shadow.is-active{
  opacity: 1;
}



/* ヘッダー
---------------------------------------------- */

.header{
  width:100%;
  margin: 0;
  padding: 0;
}

.header-logo{
  transition: opacity 0.2s;
}

.header-logo:hover{
  opacity: 0.7;
}

.header-upper{
  border-bottom: solid 2px #DEDEDE;
}

.header-upper-inner{
  width: 1280px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding:20px 60px 15px 50px;
  margin: 0 auto;
}

.header-info{
  display: flex;
  gap:15px;
  align-items: flex-end;
}

.header-info-tel{
  display: flex !important;
  align-items: center;
  gap: 5px;
}

.header-info-tel-heading{
  display: inline-block;
  background-color: var(--color-main);
  color: #fff;
  line-height: 1.15;
  padding:12px 15px;
  border-radius: 50%;
  font-family: "Zen Kaku Gothic New", sans-serif; 
  font-weight: 900;
}

.header-info-tel-num{
  margin-bottom: 0;
}

.header-info-tel-num a{
  font-size:41px;
  font-family: var(--ff-montserrat);
  font-weight: bold;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #333 !important;
  text-decoration: none !important; 
  display: flex;
  gap: 2px;
}

.header-info-tel-num a::before{
  content: "";
  display: block;
  width: 40px;
  height: 40px;  
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><g transform="translate(-90.916 -3.459)"><path d="M15.993,1.236A1.234,1.234,0,0,1,17.227,0a12.353,12.353,0,0,1,12.34,12.34,1.234,1.234,0,0,1-2.468,0A9.883,9.883,0,0,0,17.227,2.47a1.234,1.234,0,0,1-1.234-1.234Zm1.234,6.17a4.936,4.936,0,0,1,4.936,4.936,1.234,1.234,0,1,0,2.468,0,7.411,7.411,0,0,0-7.4-7.4,1.234,1.234,0,1,0,0,2.468Zm11.22,13.252a3.825,3.825,0,0,1,0,5.4l-1.123,1.294C17.219,37.029-7.374,12.443,2.152,2.3L3.571,1.071A3.8,3.8,0,0,1,8.91,1.12c.038.038,2.325,3.008,2.325,3.008a3.825,3.825,0,0,1-.009,5.284L9.8,11.209a15.771,15.771,0,0,0,8.553,8.57l1.808-1.438a3.825,3.825,0,0,1,5.283-.007S28.409,20.619,28.448,20.657Z" transform="translate(103.411 3.459) rotate(25)" fill="%23333333" opacity="0.996"/></g></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  rotate: -10deg;
}

.header-info-tel-time{
  font-size:16px;
  font-weight: bold;
  font-family: "Zen Kaku Gothic New", sans-serif; 
}

.header-info-setting-font-change{
  display: flex;
  margin-bottom:8px;
  gap:10px;
}

.header-info-setting-font-change dt{
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.03em;
}

.header-info-setting-font-change-buttons{
  display: flex;
}

.header-info-setting-font-button{
  background-color:#F4F4F4;
  border: none;
  font-weight: bold;
  font-family: "Zen Kaku Gothic New", sans-serif; 
  padding: 0 10px;
}

.header-info-setting-font-medium{
  font-size:12px;
}

.header-info-setting-font-large{
  font-size:14px;
}

.header-info-setting-font-button.textresizer-active{
  background-color: var(--color-accent);
  color: #fff;
}

.header-info-setting-buttons{
  display: flex;
  gap:7px;
  position: relative;
}

.header-info-setting-buttons::before{
  content: "";
  background-image: url(../images/common/header-info-setting-deco.png);
  width: 116px;
  height: 50px;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  right: 0;
  top: -50px;
}

.header-info-access-button-wrap{
  text-align: center;
  min-width:224px;
}

.header-info-access-button-link{
  padding:15px 12px 15px 15px ;
  background-color: var(--color-main);
  color: #fff;
  border-radius: 5px;
  font-size: 21px;
  font-weight: bold;
  font-family: "Zen Kaku Gothic New", sans-serif; 
  text-decoration: none;
  display: flex;
  gap: 5px;
  align-items: center;
  transition:opacity 0.2s;
}

.header-info-access-button-link:hover{
  opacity: 0.7;
}

.header-info-access-button-link::after{
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 22 22"><g transform="translate(-10085 -9805.375)"><path d="M11,0A11,11,0,1,1,0,11,11,11,0,0,1,11,0Z" transform="translate(10085 9805.375)" fill="%23fff"/><path d="M12641.914-3898.155a1,1,0,0,1-.679-.266,1,1,0,0,1-.056-1.413l2.414-2.608-2.423-2.69a1,1,0,0,1,.074-1.412,1,1,0,0,1,1.412.074l3.033,3.368a1,1,0,0,1-.009,1.348l-3.033,3.278A1,1,0,0,1,12641.914-3898.155Z" transform="translate(-2546.713 13718.602)" fill="%23333"/></g></svg>');
  width: 22px;
  height: 22px;
  margin-top: 2px;
}


.header-info-search-button-link{
  text-align: center;
  border-radius: 5px;
  cursor: pointer;
  transition:opacity 0.2s;
  background-color:var(--color-accent);
  border: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  font-size: 14px;
  letter-spacing: 0.08em;
  font-weight: 600;
  text-decoration: none;
  padding: 5px 15px;
  height: 100%;
  line-height: 1.2;
}


.header-info-search-button-link:hover{
  opacity: 0.7;
}

.header-info-search-button-link::before{
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="28" viewBox="0 0 25 28"><g transform="translate(-10251 -9738)"><path d="M10.449,3A7.38,7.38,0,0,0,3,10.292a7.38,7.38,0,0,0,7.449,7.292A7.38,7.38,0,0,0,17.9,10.292,7.38,7.38,0,0,0,10.449,3m0-3A10.371,10.371,0,0,1,20.9,10.292,10.371,10.371,0,0,1,10.449,20.584,10.371,10.371,0,0,1,0,10.292,10.371,10.371,0,0,1,10.449,0Z" transform="translate(10251.783 9738.866)" fill="%23fff"/><path d="M0,2.641,3.226,0,8.4,6.164,5.227,8.815Z" transform="matrix(0.999, 0.035, -0.035, 0.999, 10266.392, 9755.764)" fill="%23fff"/><path d="M3.225-.5a.5.5,0,0,1,.383.179L8.779,5.843a.5.5,0,0,1-.062.7L5.548,9.2a.5.5,0,0,1-.7-.06L-.382,2.965A.5.5,0,0,1-.5,2.6a.5.5,0,0,1,.181-.341L2.909-.387A.5.5,0,0,1,3.225-.5ZM7.691,6.1,3.16.7.71,2.706,5.287,8.113Z" transform="matrix(0.999, 0.035, -0.035, 0.999, 10266.392, 9755.764)" fill="%23fff"/><rect width="25" height="28" transform="translate(10251 9738)" fill="none"/></g></svg>');
  width: 25px;
  height: 28px;
}

.header-gnav-upper{
  width:1280px;
  margin: 0 auto;
}

.header-gnav-upper-inner{
  width:1000px;
  margin: 0 auto;
}

.header-gnav-upper-list{
  display: flex;
  justify-content:center;
  height: 100%;
}

.header-gnav-upper-list-item{
  display: flex;
  align-items: center;
}

.header-gnav-upper-list-item-link{
  color: var(--color-accent);
  font-size: 16px;
  font-weight: 600;
  text-decoration: none !important;
  line-height: 2;
  transition:color 0.2s;
  display: flex;
  align-items: center;
  padding: 9px 38px;
  position: relative;
}

.header-gnav-upper-list-item-link::after{
  content: "";
  position: absolute;
  right: 0;
  width: 1px;
  height: 20px;
  background-color: var(--color-accent);
}

.header-gnav-upper-list-item-link.--no-line::after{
  content: none;
}


.header-gnav-upper-list-item.is-active .header-gnav-upper-list-item-link{
  color: #333;
  background-color: var(--color-accent-light);
}

.header-gnav-upper-list-item a:hover{
  color: #333;
}

.header-gnav-parent > a{
  cursor: default;
}


/* ヘッダー上部メガメニュー */
.header-gnav-child{
  z-index: 5;
  display: none;
  width: 100%;
  height:auto;
  min-width: 1280px;
}

.header-gnav-parent .header-gnav-upper-child{
  position: absolute;
  top:181px;
  left: 0;
}

.header-gnav-upper-child-inner{
  width: 100%;
  min-width: 1280px;
  margin: 0 auto;
  padding: 57px 71px 53px;
  background-color: var(--color-accent-light);
}

.header-gnav-upper-child-list-item a{
  transition: all 0s !important;
  text-decoration: none;
}

.header-gnav-upper-child-list-item a:hover{
  color: var(--color-accent) !important;
}

/* すまいの情報一覧 メガメニュー */

.header-gnav-upper-child-inner--info{
  display: flex;
  gap: 50px;
}

.header-gnav-upper-child-list-wrap{
  width: 1260px;
  margin: 0 auto;
  display: flex;
}

.header-gnav-upper-child-inner--info .header-gnav-upper-child-list{
  width: calc(100% / 3 - 25px);
  flex-direction: column;
}

.header-gnav-upper-child-inner--info .header-gnav-upper-child-list-item{
  width: 100%;
  padding: 10px 25px;
  background-color: #fff;
  border-radius: 9px;
  max-height:none;
  text-align: left;
}

.header-gnav-upper-child-inner--info .header-gnav-upper-child-list-item a{
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  align-items: center;
  line-height: 1.47;
  color: #333;
  font-size: 17px;
  font-weight: 700;
  padding: 0;
}

.header-gnav-upper-child-inner--info .header-gnav-upper-child-list-item a::after{
  content: "";
  width: 10px;
  height: 24px;
  background-color:#707070;
  mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.778 12.391"><path id="パス_18395" data-name="パス 18395" d="M12641.914-3905.8l4.365,4.847-4.365,4.718" transform="translate(-12640.501 3907.213)" fill="none" stroke="%230079B5" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>') no-repeat center center / contain;
  -webkit-mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.778 12.391"><path id="パス_18395" data-name="パス 18395" d="M12641.914-3905.8l4.365,4.847-4.365,4.718" transform="translate(-12640.501 3907.213)" fill="none" stroke="%230079B5" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>') no-repeat center center / contain;
  transition: 0.3s;
  transition-property: transform;
  display: block;
  flex-shrink: 0;
}

.header-gnav-upper-child-inner--info .header-gnav-upper-child-list-item-icon{
  position: relative;
  max-height: 50px;
  top: auto;
  left: auto;
  -webkit-transform:none;
}

.header-gnav-upper-child-inner--info .header-gnav-upper-child-list-item-flex{
  display: flex;
  align-items: center;
  gap: 10px;
}

/* 住まいの情報一覧以外 メガメニュー */

.header-gnav-upper-child-list{
  display: flex;
  gap: 20px;
  justify-content: flex-start;
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.header-gnav-upper-child-list-item{
  position: relative;
  width: calc(100% / 5 - 10px);
  max-height: 164px;
  background-color: #fff;
  border-radius: 4px;
  text-align: center;
  z-index: 10;
}

.header-gnav-upper-child-list-item a{
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  color: #333;
  padding: 70px 0;
  width: 100%;
  height: 100%;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
}

.header-gnav-upper-child-list-item span{
  font-size: 16px;
  font-weight: 600;
}

.header-gnav-upper-child-list-item-icon{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  max-height: 100px;
  z-index: -1;
}



.header-gnav-lower{
  border-top: solid 2px #DEDEDE;
  border-bottom: solid 2px #DEDEDE;
}

.header-gnav-lower-inner{
  width:1280px;
  margin: 0 auto;
}

.header-gnav-lower-list{
  width: 100%;
  display: flex;
}

.header-gnav-lower-list-item{
  background-color: var(--color-main-light);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.05;
  border-right: solid 4px #fff;
  flex-grow: 1; 
  transition: background-color 0.2s;
}

.header-gnav-lower-list-item:hover{
  background-color: #FFF4F4;
}

.header-gnav-lower-list-item a{
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  color: #333;
  transition: color 0.2s;
  padding: 13px 0;
  width: 100%;
  height: 100%;
  font-size: 19px;
  font-weight: 700;
  color: #333;
  text-decoration: none;
}

.header-gnav-lower-list-item>a{
  font-size: 19px;
}

.header-gnav-lower-list-item:hover a{
  color:var(--color-main);
}


.header-gnav-lower-list-item:last-child{
 border: none; 
}


.header-gnav-lower-list-item-main{
  background-color: #fff;
}

.header-gnav-lower-list-item-main:hover{
  background-color: #fff !important;
}

.header-gnav-lower-list-item-main a span{
  display: flex;
  align-items: center;
  gap:12px;
  font-size:30px !important;
  justify-content: center;
}

.header-gnav-lower-list-item-main span::before{
  content: "";
  background-image: url(../images/common/icon-header-consultation.png);
  width: 43px;
  height: 43px;
  background-size: contain;
  background-repeat: no-repeat;
  margin-top: 5px;
}


.header-gnav-lower-list-item span{
  font-size: 15px;
}


.header-gnav-lower-list-item:last-child::after{
  content: none;
}


/* ヘッダー下部メガメニュー */
.header-gnav-lower-child{
  display: none;
}

.header-gnav-lower-list-item.is-active a{
  color: var(--color-main);
  background-color:#FFF4F4;
}

.header-gnav-parent .header-gnav-lower-child{
  display: none;
  position: absolute;
  top:257px;
  left: 0;
  z-index: 5;
  min-width: 1280px;
}

.header-gnav-lower-child-wrap{
  width: 100%;
  min-width:1280px;
  background-color:#FFF4F4;
}

.header-gnav-lower-child-inner{
  width:1280px;
  margin: 0 auto;
  display: flex;
  align-items:flex-start;
  gap: 48px;
  padding: 57px 71px 53px;
}

.header-gnav-lower-child-heading{
  width:320px;
  height: 200px;
  background-color: #fff;
  color: var(--color-main);
  font-size: 28px;
  font-weight: 700;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 20px 0;
  border-radius: 10px;
  flex-shrink: 0;
  line-height: 1.3;
  transition: opacity 0.5s;
}

.header-gnav-lower-child-heading:hover{
  opacity: 0.7;
}

.header-gnav-lower-child-heading img{
  margin-bottom: 10px;
}

.header-gnav-lower-child-heading span{
  font-size: 16px;
}


.header-gnav-lower-child-heading a{
  background-color: transparent !important;
  font-size:26px;
}

.header-gnav-lower-child-list{
  display: flex;
  flex-wrap: wrap;
  gap:50px 30px;
  width: 100%;
  align-items: flex-start;
}

.header-gnav-lower-child-list-item{
  width: calc(98% / 3 - 15px);
  display: flex;
  gap: 20px;
  align-items: center;
  font-size: 21px !important;
  text-align: left;
}


.header-gnav-lower-child-list-item a{
  color: #333 !important;
  align-items: center;
  line-height: 1.5;
  justify-content:flex-start;
  gap: 20px;
  flex-direction: row;
  padding: 0;
  transition: all 0s !important;
}

.header-gnav-lower-child-list-item::before{
  content: "";
  width: 8px;
  height: 18px;
  background-color:var(--color-main);
  mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.778 12.391"><path id="パス_18395" data-name="パス 18395" d="M12641.914-3905.8l4.365,4.847-4.365,4.718" transform="translate(-12640.501 3907.213)" fill="none" stroke="%230079B5" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>') no-repeat center center / contain;
  -webkit-mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.778 12.391"><path id="パス_18395" data-name="パス 18395" d="M12641.914-3905.8l4.365,4.847-4.365,4.718" transform="translate(-12640.501 3907.213)" fill="none" stroke="%230079B5" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>') no-repeat center center / contain;
  transition: 0.3s;
  transition-property: transform;
  display: block;
  flex-shrink: 0;
}

.header-gnav-lower-child-list-item a[target="_blank"]::after{
  content: "";
  display: inline-block;
  background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15.998" height="16" viewBox="0 0 15.998 16"><path d="M11.706,13.707,18,7.414V11h2V4H13V6h3.586l-6.293,6.293Z" transform="translate(-4.001 -4)" fill="%23EA5550"/><path d="M19,18V14H17v4H6V7h4V5H6A2,2,0,0,0,4,7V18a2,2,0,0,0,2,2H17A2,2,0,0,0,19,18Z" transform="translate(-4.001 -4)" fill="%23EA5550"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  width: 16px;
  height: 16px;
}



.header-gnav-lower-child-list-item a:hover{
  color: var(--color-main) !important;
  text-decoration: underline;
}



/* 検索モーダル
---------------------------------------------- */

.modal-search-box{
  display: none;
}

.modal-search-box.is-active{
  display: block;
  position:absolute;
  top:128px;
  left: 0;
  width: 100%;
  min-width:1280px;
  height:100vh;
  z-index: 999;
  background-color: rgba(51, 51, 51, 18%);
}

.modal-search-box-inner{
  left: 0;
  width: 100%;
  background-color:#EFF9FF;
  padding: 45px 0;
}

.search-box-wrap{
  position: relative;
  width: 850px;
  margin: 0 auto;

}


.search-box-form{
  display: flex;
  justify-content: center;
  position: relative;
}

.search-box{
  padding: 20px 25px;
  border: none;
  border-radius: 12px 0px 0px 12px;
  width: 680px;
  font-size: 19px;
}

.search-box::placeholder{
  font-size: 19px;
  font-weight: bold;
  font-family: "Zen Kaku Gothic New", sans-serif; 
  color:#DEDEDE;
  display: inline-block;
  line-height: 1;
}

.search-box-button{
  border: none;
  color: #fff;
  background-color: var(--color-accent);
  border-radius: 0px 12px 12px 0px;
  padding: 0 20px;
  font-size: 20px;
  font-weight: 600;
  gap: 4px;
  letter-spacing: 0.08em;
}

.search-box-close-button{
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  gap: 5px;
  right: -130px;
  top: -15px;
  font-size:14px;
  font-weight: bold;
  text-decoration: none;
  color: var(--color-accent);
  cursor: pointer;
}

.follow-menu{
  display: none;
}

@media print, screen and (min-width: 768px) {
  .drawer{
    display: none !important;
  }

  .hamburger-button{
    display: none !important;
  }
}

/* sp */
@media print, screen and (max-width: 767px) {

  .header{
    width: 100%;
    position: fixed;
    top: 0;
    z-index: 9999;
    background-color: #fff;
  }

  .header-lower{
    display: none;
  }

  .header-gnav-child{
    min-width: auto;
  }

  .header-upper-inner{
    width: 100%;
    padding:13px 10px;
  }

  .header-gnav-upper-child-inner{
    min-width:100%;
  }

  .header-logo{
    min-width: 216px;
  }

  .header-info-setting{
    display: flex;
    align-items: center;
    gap:14px;
  }

  .header-info-setting-buttons::before{
    content: none;
  }

  .header-info-search-button-wrap{
    background-color: transparent !important;
  }

  .header-info-search-button-link{
    color: #333 !important;
    padding: 0;
    background-color: transparent;
  }

  .header-info-search-button-link::before{
    display: block !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="28" viewBox="0 0 25 28"><g transform="translate(-10251 -9738)"><path d="M10.449,3A7.38,7.38,0,0,0,3,10.292a7.38,7.38,0,0,0,7.449,7.292A7.38,7.38,0,0,0,17.9,10.292,7.38,7.38,0,0,0,10.449,3m0-3A10.371,10.371,0,0,1,20.9,10.292,10.371,10.371,0,0,1,10.449,20.584,10.371,10.371,0,0,1,0,10.292,10.371,10.371,0,0,1,10.449,0Z" transform="translate(10251.783 9738.866)" fill="%230079B5"/><path d="M0,2.641,3.226,0,8.4,6.164,5.227,8.815Z" transform="matrix(0.999, 0.035, -0.035, 0.999, 10266.392, 9755.764)" fill="%230079B5"/><path d="M3.225-.5a.5.5,0,0,1,.383.179L8.779,5.843a.5.5,0,0,1-.062.7L5.548,9.2a.5.5,0,0,1-.7-.06L-.382,2.965A.5.5,0,0,1-.5,2.6a.5.5,0,0,1,.181-.341L2.909-.387A.5.5,0,0,1,3.225-.5ZM7.691,6.1,3.16.7.71,2.706,5.287,8.113Z" transform="matrix(0.999, 0.035, -0.035, 0.999, 10266.392, 9755.764)" fill="%230079B5"/><rect width="25" height="28" transform="translate(10251 9738)" fill="none"/></g></svg>') !important;
  }

  .header-info-tel{
    display: none !important;
  }

  .header-info-setting-font-change{
    display: none;
  }

  /* 検索 */

  .modal-search-box.is-active{
    position: fixed;
    top: 79px;
    min-width: auto !important;
    background-color: rgba(51, 51, 51, 52%);
  }

  .search-box-wrap{
    width: 90%;
  }

  .search-box{
    width: 100%;
    padding:15px 20px;
    font-size: 14px;
  }

  .search-box-close-button{
    display: none;
  }

  .search-box::placeholder{
    font-size: 14px;
  }

  .search-box-button{
    font-size: 17px;
    padding: 0;
    min-width:60px;
  }


  /* ハンバーガー */
  .hamburger-button{
    background-color: var(--color-main);
    border-radius: 50%;
    border: none;
    display: flex;
    justify-content: center;
    width: 51px;
    height: 51px;
    position: relative;
    cursor: pointer;
  }

  .hamburger-button-inner{
    position: relative;
    justify-content: center;
    /* display: flex; */
    flex-direction: column;
    align-items: center;
    margin:25px auto 0;
  }
  
  .hamburger-button-line{
    display: block;
    width: 17px;
    height: 2px;
    background-color:#fff;
    border-radius: 2px;
    transition: 0.3s ease;
    transition:height 0.1s;
  }

  .hamburger-button-line::before,
  .hamburger-button-line::after{
    position: absolute;
    content: "";
    width: 17px;
    height: 2px;
    left: 0;
    background-color:#fff;
    border-radius: 2px;
    transition: 0.3s ease;
  }

  .hamburger-button-line::before{
    top: -7px;
  }

  .hamburger-button-line::after{
    top: 7px;
  }

  /* ハンバーガーメニュークリック後 */

  .hamburger-button.is-active{
    background-color: var(--color-accent);
  }

  .hamburger-button.is-active .hamburger-button-line::before{
    opacity: 1;
    top:0;
    transform: rotate(45deg);
    width: 25px;
    left:-4px;
  }

  .hamburger-button.is-active .hamburger-button-line{
    height: 0;
  }

  .hamburger-button.is-active .hamburger-button-line::after{
    opacity: 1;
    top:0px;
    transform: rotate(-45deg);
    width: 25px;
    left:-4px;
  }

  /* ハンバーガーメニュードロワー */

  .drawer{
    display: none;
    top: 79px;
    position:fixed;
    left: 0;
    height:100vh;
    width: 100%; 
    z-index: 999;
    overflow: scroll;
    padding-bottom: 200px !important;
    -webkit-overflow-scrolling: touch;
    background-color:rgba(51, 51, 51, 52%);
  }

  .drawer-inner{
    -webkit-overflow-scrolling: touch;
  }

  .drawer-list-item-primary{
    padding-bottom: 200px !important;
    -webkit-overflow-scrolling: touch;
  }

  .drawer-list-item{
    background-color:var(--color-accent-light);
    cursor: pointer;
  }

  .drawer-list-item a{
    text-decoration: none;
  }

  .drawer-list-item a.down::after{
    content:"" !important;
    display: block;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><g transform="translate(-11840 -9759)"><g transform="translate(1 0.023)"><path d="M17.22,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H17.22A1.5,1.5,0,0,1,18.72,0,1.5,1.5,0,0,1,17.22,1.5Z" transform="translate(11843 9771.396)" fill="%230079b5"/><path d="M18.841,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H18.841a1.5,1.5,0,0,1,1.5,1.5A1.5,1.5,0,0,1,18.841,1.5Z" transform="translate(11851.611 9761.977) rotate(90)" fill="%230079b5"/></g><rect width="25" height="25" transform="translate(11840 9759)" fill="none"/></g></svg>');
    width: 25px;
    height: 25px;
    margin-top: 0 !important;
  }

  .drawer-list-item a.up::after{
    background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><g transform="translate(-11872 -9759)"><rect width="25" height="25" transform="translate(11872 9759)" fill="none"/><path d="M17.22,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H17.22A1.5,1.5,0,0,1,18.72,0,1.5,1.5,0,0,1,17.22,1.5Z" transform="translate(11875.89 9771.5)" fill="%230079b5"/></g></svg>');
  }

  .drawer-list-item a{
    color: #333 !important;
    font-size: 17px;
    letter-spacing: 0.08em;
    font-weight: 700;
    border-top: 4px solid #fff !important;
    padding: 16px 25px !important;
    display: flex;
    justify-content: space-between;
  }

  .drawer-list-item:first-child a{
    border-top: none !important;
  }

  .drawer-list-secondary {
    display: none;
    border-top: 1px dotted #fff;
  }
  .drawer-list-secondary a {
    padding: 10px 15px;
  }

  .drawer-list-secondary-list{
    display: flex;
    flex-wrap: wrap;
    background-color: #fff;
    padding:0 20px;
    justify-content: space-between;
    align-items: center;
    column-gap: 20px;
  }

  .drawer-list-secondary-list-item{
      width: calc(100% / 2 - 10px);
    }

  .drawer-list-secondary-list-item a{
    font-size: 14px;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    letter-spacing: 0.03em;
  }

  .drawer-list-secondary-list-item a{
    padding:20px 0 !important;
  }

  .drawer-list-secondary-list-item a::after{
    content: "";
    width: 6px;
    height: 12px;
    background-color:#707070;
    mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.778 12.391"><path id="パス_18395" data-name="パス 18395" d="M12641.914-3905.8l4.365,4.847-4.365,4.718" transform="translate(-12640.501 3907.213)" fill="none" stroke="%230079B5" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>') no-repeat center center / contain;
    -webkit-mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.778 12.391"><path id="パス_18395" data-name="パス 18395" d="M12641.914-3905.8l4.365,4.847-4.365,4.718" transform="translate(-12640.501 3907.213)" fill="none" stroke="%230079B5" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>') no-repeat center center / contain;
    transition: 0.3s;
    transition-property: transform;
    display: block;
    flex-shrink: 0;
  }

  /* ドロワー　すまいの相談メニュー */

  .drawer-consultation .drawer-list-item-title a{
    background-color: #fff !important;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
    padding: 20px 0;
    justify-content: center;
  }

  .drawer-consultation .drawer-list-item{
    background-color:#FFF4F4;
  }

  .drawer-consultation .drawer-list-item a.down::after{
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><g transform="translate(-11840 -9759)"><g transform="translate(1 0.023)"><path d="M17.22,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H17.22A1.5,1.5,0,0,1,18.72,0,1.5,1.5,0,0,1,17.22,1.5Z" transform="translate(11843 9771.396)" fill="%23EA5550"/><path d="M18.841,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H18.841a1.5,1.5,0,0,1,1.5,1.5A1.5,1.5,0,0,1,18.841,1.5Z" transform="translate(11851.611 9761.977) rotate(90)" fill="%23EA5550"/></g><rect width="25" height="25" transform="translate(11840 9759)" fill="none"/></g></svg>');
  }

  .drawer-consultation .drawer-list-item a.up::after{
    background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><g transform="translate(-11872 -9759)"><rect width="25" height="25" transform="translate(11872 9759)" fill="none"/><path d="M17.22,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H17.22A1.5,1.5,0,0,1,18.72,0,1.5,1.5,0,0,1,17.22,1.5Z" transform="translate(11875.89 9771.5)" fill="%23EA5550"/></g></svg>');
  }

  .drawer-list-item-fz-sm{
    font-size:14px;
    margin-left: 5px;
  }

  /* ドロワー電話相談メニュー */
  .drawer-tel{
    padding-bottom: 400px !important;
  }

  .drawer-tel .drawer-inner{
    background-color: #fff;
  }

  .drawer-tel-heading{
    font-size:25px;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding:26px 0 22px;
    line-height: 1;
    text-align: center;
    display: flex;
    gap:14px;
    align-items: center;
    justify-content: center;
  }

  .drawer-tel-heading span{
    font-size:18px;
    letter-spacing: 0.02em;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    background-color: var(--color-main);
    padding: 4px 7px 6px;
    border-radius:8px;
  }

  .drawer-tel-body{
    background-color: var(--color-main-light);
    padding-top: 21px;
  }

  .drawer-tel-inner{
    padding:0 16px;
    align-items: center;
    display: flex;
    flex-direction: column;
    gap:9px;
  }

  .drawer-tel-item-wrap{
    text-decoration: none;
    display: block;
    width: 100%;
    color: #333;
  }

  .drawer-tel-item{
    width: 100%;
    background-color: #fff;
    display: flex;
    justify-content: space-between;
    padding: 22px 11px;
    border-radius: 15px;
  }

  .drawer-tel-item-heading{
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.01em;
    display: flex;
    gap:3px;
    align-items: center;
  }


  .drawer-tel-item-heading::before {
    content: "";
    display: block;
    width: 18px;
    height: 22px;  
    background-image:url('data:image/svg+xml,<svg width="18" height="22" viewBox="0 0 18 22" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_129_2)"><mask id="mask0_129_2" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="18" height="22"><path d="M18 0H0V22H18V0Z" fill="white"/></mask><g mask="url(%23mask0_129_2)"><path opacity="0.996" d="M11.3378 5.22756C11.4209 5.08095 11.5556 4.97049 11.7157 4.91766C11.8757 4.86483 12.0497 4.87342 12.2037 4.94174C12.9567 5.22628 13.6421 5.66478 14.216 6.22922C14.7899 6.79367 15.2398 7.47163 15.5368 8.21979C15.8338 8.96796 15.9715 9.76985 15.941 10.5742C15.9105 11.3786 15.7126 12.1678 15.3598 12.8914C15.2772 13.039 15.1425 13.1505 14.982 13.2041C14.8215 13.2576 14.6468 13.2493 14.4922 13.1808C14.4168 13.1524 14.3482 13.1086 14.2908 13.0522C14.2333 12.9958 14.1883 12.928 14.1586 12.8532C14.1288 12.7783 14.1151 12.6981 14.1182 12.6177C14.1213 12.5372 14.1411 12.4583 14.1765 12.3859C14.4594 11.8071 14.6183 11.1755 14.643 10.5317C14.6678 9.88793 14.5579 9.24605 14.3204 8.64716C14.0828 8.04827 13.7229 7.50556 13.2636 7.05375C12.8043 6.60194 12.2558 6.25098 11.653 6.02334C11.5776 5.99495 11.5089 5.95109 11.4514 5.89459C11.394 5.83808 11.3489 5.77018 11.3192 5.69524C11.2896 5.6203 11.2759 5.53998 11.2791 5.45944C11.2823 5.37889 11.3023 5.29991 11.3378 5.22756ZM10.5504 8.19149C10.8521 8.30503 11.1267 8.48039 11.3566 8.70632C11.5865 8.93225 11.7667 9.20376 11.8854 9.50342C12.0042 9.80308 12.059 10.1243 12.0463 10.4463C12.0336 10.7684 11.9537 11.0843 11.8117 11.3737C11.7764 11.446 11.7565 11.525 11.7534 11.6054C11.7503 11.6859 11.7641 11.7661 11.7938 11.8409C11.8235 11.9158 11.8685 11.9836 11.926 12.04C11.9834 12.0964 12.052 12.1402 12.1274 12.1686C12.2821 12.2371 12.4568 12.2454 12.6172 12.1918C12.7777 12.1383 12.9124 12.0268 12.995 11.8791C13.2066 11.445 13.3253 10.9715 13.3436 10.4889C13.3618 10.0063 13.2792 9.52526 13.1009 9.07641C12.9227 8.62757 12.6528 8.22085 12.3084 7.88224C11.9641 7.54363 11.5529 7.28057 11.1011 7.10989C10.9464 7.04138 10.7718 7.03308 10.6113 7.08662C10.4508 7.14016 10.3161 7.25168 10.2335 7.39934C10.1981 7.47168 10.1783 7.5506 10.1752 7.63106C10.1721 7.71153 10.1858 7.79174 10.2156 7.86658C10.2453 7.94142 10.2903 8.00922 10.3478 8.06564C10.4052 8.12206 10.4738 8.16585 10.5492 8.19421L10.5504 8.19149ZM12.9667 16.3125C13.053 16.5471 13.0899 16.797 13.0751 17.0465C13.0603 17.296 12.9942 17.5397 12.8809 17.7625C12.7676 17.9853 12.6096 18.1822 12.4166 18.3411C12.2237 18.5 12 18.6173 11.7597 18.6858L10.9319 19.0247C3.92378 21.2074 -2.36835 5.36717 4.46323 2.86487L5.41912 2.61328C5.90648 2.44782 6.43809 2.47051 6.90958 2.67689C7.38107 2.88328 7.75839 3.25845 7.96746 3.72876C7.97707 3.7531 8.40803 5.52638 8.40803 5.52638C8.48584 5.75609 8.51683 5.99906 8.49916 6.24095C8.48149 6.48284 8.41552 6.71873 8.30514 6.93469C8.19477 7.15065 8.04223 7.3423 7.85655 7.49832C7.67086 7.65434 7.45578 7.77156 7.22403 7.84305L6.13748 8.33936C6.09295 9.36161 6.26442 10.3818 6.6407 11.3333C7.01697 12.2848 7.58961 13.1463 8.32126 13.8617L9.50907 13.6001C9.99028 13.4405 10.5132 13.462 10.9797 13.6606C11.4462 13.8592 11.8241 14.2213 12.0425 14.6789C12.0425 14.6789 12.9549 16.2905 12.9654 16.3153L12.9667 16.3125Z" fill="%23EA5550"/></g></g><defs><clipPath id="clip0_129_2"><rect width="18" height="22" fill="white"/></clipPath></defs></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
  }

  .drawer-tel-item-num{
    font-size: 21px;
    font-weight: bold;
    letter-spacing: 0.01em;
    color: var(--color-main);
    font-family: var(--ff-montserrat);
    text-decoration: none;
  }

  .drawer-tel-item-info{
    margin-top:22px;
    background-color: #fff;
    padding: 23px;
  }

  .drawer-tel-item-info-time{
    font-size:18px;
    letter-spacing: 0.03em;
    line-height: 1.16;
    font-weight: 700;
  }

  .drawer-tel-info-notes{
    font-size: 13px;
    letter-spacing: 0;
    line-height: 1.6;
    margin-top:12px;
  }

  /* ドロワー閉じるボタン */

  .drawer-close-button a{
    justify-content: center;
    background-color: var(--color-accent-light);
  }

  .drawer-consultation  .drawer-close-button a,
  .drawer-tel  .drawer-close-button a{
    background-color: var(--color-main-light);
  }

  /* 下部追従メニュー */
  .follow-menu{
    display: block;
    position: fixed;
    bottom: 0;
    z-index: 999999;
    width: 100%;
    border-top:solid 2px #DEDEDE;
  }

  .follow-menu-list{
    display: flex;
    
  }

  .follow-menu-list-item{
    width: 100%;
    background-color:var(--color-main);
    padding: 10px;
  }

  .follow-menu-list-item a{
    text-decoration: none;
    font-size: 18px;
    font-weight: 800;
    display: flex;
    gap:8px;
    align-items: center;
    justify-content: center;
  }

  .follow-menu-list-item a::before{
    content: "";
    width:43px;
    height: 43px;
    background-size: contain;
  }

  .follow-menu-list-item--consultation-menu{
    background-color: #fff;
  }


  .follow-menu-list-item--consultation-menu.is-active a{
    color: var(--color-main);
  }

  .follow-menu-list-item--consultation-menu a{
    color: #333 ;
  }

  .follow-menu-list-item--consultation-menu a::before{
    background-image: url(../images/common/icon-header-consultation.png);
  }

  .follow-menu-list-item--tel{
    background-color: var(--color-main);
  }

  .follow-menu-list-item--tel a{
    color: #fff;
  }

  .follow-menu-list-item--tel a::before{
    background-image: url(../images/common/icon-header-consulation-tel.png);
  }
}

/* フッター
---------------------------------------------- */


.footer{
  width: 100%;
  min-width: 1280px;
  padding-top: 40px;
  background-color: var(--color-bg);
  margin-top: 0;
}

/* footer-info */
.footer-info-inner{
  width:1140px;
  box-sizing: content-box;
  margin: 0 auto;
}

.footer-info-intro{
  padding: 0;
  background: transparent;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 35px;
  border-bottom:solid 2px #C3C3C3;
  margin-bottom: 40px;
}

.footer-info-intro-logo img{
  width: 728px !important;
}

.footer-info-intro-button-wrap{
  min-width: 382px;
  text-align: center;
}

.footer-info-intro-button-link{
  display: inline-block;
  height: 100%;
  width: 100%;
  color: #fff;
  text-decoration: none;
  font-size: 2.5rem;
  padding: 20px 10px;
  background-color:var(--color-main);
  border-radius: 50px;
  font-weight: 600;
  transition:opacity 0.2s;
}

.footer-info-intro-button-link:hover{
  opacity: 0.7;
}

.footer-info-body{
  display: flex;
  gap:30px 55px;
  margin-bottom: 60px;
}

/* footer-info-address */
.footer-info-address-wrap{
  width:600px;
}

.footer-info-address{
  max-width: 600px;
  margin-bottom:23px;
}

.footer-info-address-name{
  font-size: 22px;
}

.footer-info-address-name{
  font-size:2.4rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  margin-bottom: 10px;
}

.footer-info-address{
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
  margin-bottom: 15px;
}

/* footer-map */
.footer-map-inner{
  padding: 0;
  width: 100%;
}


.google-map iframe{
  width: 604px !important;
}

/* footer-info-tel */
.footer-info-tel-main-wrap{
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 15px;
}

.footer-info-tel-main-heading{
  font-size: 25px;
  background-color:var(--color-main);
  border-radius: 8px;
  padding: 7px 10px 7px 13px;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.142em;
  line-height: 1;
}


.footer-info-tel-main-num{
  font-size:46px;
  letter-spacing: 0.04em;
  font-weight: bold;
  text-decoration: none !important; 
  color: #333;
  font-family: "Montserrat", sans-serif;
  display: flex;
  align-items: center;
}

.footer-info-tel-main-num::before{
  content: "";
  display: block;
  width: 40px;
  height: 40px;  
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><g transform="translate(-90.916 -3.459)"><path d="M15.993,1.236A1.234,1.234,0,0,1,17.227,0a12.353,12.353,0,0,1,12.34,12.34,1.234,1.234,0,0,1-2.468,0A9.883,9.883,0,0,0,17.227,2.47a1.234,1.234,0,0,1-1.234-1.234Zm1.234,6.17a4.936,4.936,0,0,1,4.936,4.936,1.234,1.234,0,1,0,2.468,0,7.411,7.411,0,0,0-7.4-7.4,1.234,1.234,0,1,0,0,2.468Zm11.22,13.252a3.825,3.825,0,0,1,0,5.4l-1.123,1.294C17.219,37.029-7.374,12.443,2.152,2.3L3.571,1.071A3.8,3.8,0,0,1,8.91,1.12c.038.038,2.325,3.008,2.325,3.008a3.825,3.825,0,0,1-.009,5.284L9.8,11.209a15.771,15.771,0,0,0,8.553,8.57l1.808-1.438a3.825,3.825,0,0,1,5.283-.007S28.409,20.619,28.448,20.657Z" transform="translate(103.411 3.459) rotate(25)" fill="%23ea5550" opacity="0.996"/></g></svg>');
  background-size: contain;
  background-repeat: no-repeat;
}

.footer-info-tel-sub-wrap{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: stretch;
  margin-bottom: 35px;
}

.footer-info-tel-sub-item{
  background-color: #fff;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  align-items: center;
  padding: 15px 25px;
  flex: 1;
  min-width: 234px;
}

.footer-info-tel-sub-heading{
  color: var(--color-main);
  font-size: 14px;
  font-weight: 600;
}

.footer-info-tel-sub-num{
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.04em;
  font-family: "Montserrat", sans-serif;
}

.footer-info-tel-sub-num a{
  color: #333;
  text-decoration: none;
}

/* footer-info-tel-time */
.footer-info-tel-time{
  font-size: 1.9rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}

.footer-info-tel-time-notes{
  font-size: 1.4rem;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap:0.2em;
}

.footer-info-tel-time-notes-item{
  display: flex;
}

/* footer-links */
.footer-links{
  margin-top: 0 !important;
}

.footer-links-inner{
  width: 1180px;
  padding: 15px 0 30px;

}

.footer-links-content-wrap{
  display: flex;
  flex-direction: column;
  gap:10px;
  justify-content: space-between;
}

.footer-links-content-wrap--other{
  align-items: flex-end !important;
}

.footer-links{
  background-color: var(--color-main);
}

.footer-links-list{
  display: flex;
  align-items: center;
  gap:20px 40px;
  letter-spacing: 0.13em;
}

.footer-links-list--gap-lg{
  gap:20px 50px;
}

.footer-links-list{
  font-size: 16px;
  font-weight: 700;
}

.footer-links-list li{
  margin-bottom: 0 !important;
}

.footer-links-list a{
  text-decoration: none !important;
  transition: opacity 0.2s;
}

.footer-links-list a:hover{
  opacity: 0.7;
}

.footer-links-list-heading{
  font-size: 22px;
  display: flex;
  align-items: center;
  position: relative;
}

.footer-links-list-heading::after{
  content: "";
  display: inline-block;
  position: absolute;
  right: -20px;
  width: 1px;
  height: 70%;
  background-color: #fff;
  margin-left: 15px;
}

.footer-links-social-icon-wrap{
  display: flex;
  gap: 20px;
}

.footer-links-social-icon{
  margin-bottom: 0 !important;
  transition: opacity 0.2s;
}

.footer-links-social-icon:hover{
  opacity: 0.7;
}

.footer-copyright{
  color: #fff;
  font-size: 13px;
  font-weight: 600;
}

/* sp */
@media print, screen and (max-width: 767px) {

  .footer{
    min-width:auto;
  }

  /* footer-info */
  .footer-info-inner{
    box-sizing: border-box;
    width: 100%;
    padding:0;
  }

  .footer-info-intro{
    flex-direction: column;
    gap: 17px;
    margin-bottom: 30px;
    padding-left:0px;
    padding-right:0px;
    margin-left:15px;
    margin-right:15px;
  }

  .footer-info-intro-logo img{
    width: 300px !important;
  }

  .footer-info-intro-button-wrap{
    width: 100%;
    max-width:315px;
    min-width: auto;
  }

  .footer-info-intro-button-link{
    font-size: 23px;
    padding:12px 30px;
  }

  .footer-info-body{
    flex-direction: column;
    margin-bottom:25px;
  }

  /* footer-info-address */
  .footer-info-address-wrap{
    width: 100%;
    padding-left:15px;
    padding-right:15px;
  }

  .footer-info-address-name{
    font-size: 2.2rem;
    margin-bottom: 15px;
  }

  .footer-info-address{
    margin-bottom:20px;
  }

  /* footer-map */
  .footer-map-inner iframe{
    width: 100% !important;
    height: 155px;
  }

  /* footer-info-tel */

  .footer-info-tel-main-wrap{
    padding-left:15px;
    padding-right:15px;
    max-width: 405px;
    margin:0 auto 10px;
  }

  .footer-info-tel-main-heading{
    font-size: 19px;
    padding: 5px 6px 5px 9px;
  }

  .footer-info-tel-main-num{
    font-size: 32px;
  }

  .footer-info-tel-main-num::before{
    width: 32px;
    height: 32px;
    background-size: contain;
  }

  /* footer-info-tel-sub-wrap */
  .footer-info-tel-sub-wrap{
    gap:4px;
    width: 100%;
    max-width: 375px;
    margin: 0 auto;
    margin-bottom:25px;
  }

  .footer-info-tel-sub-item{
    gap:0;
    flex:none;
    width: calc(100% /2 - 2px);
    min-width:0;
    padding: 15px 20px;
  }

  .footer-info-tel-sub-heading{
    font-size: 15px;
  }

  .footer-info-tel-sub-num{
    font-size: 19px;
  }

  .footer-info-tel-time-wrap{
    padding-left:15px;
    padding-right:15px;
  }

  .footer-info-tel-time{
    font-size: 1.6rem;
    margin-bottom: 5px;
  }

  .footer-info-tel-time-notes-item{
    font-size: 1.3rem;
  }

  /* footer-links */
  .footer-links{
    padding: 30px 0 100px;
  }

  .footer-links-inner{
    width: 100%;
    max-width:375px;
    padding: 0 15px;
    margin: 0 auto;
  }

  .footer-links-content-wrap{
    flex-direction: row;
  }

  .footer-links-list{
    letter-spacing: 0em;
  }

  .footer-links-list-heading{
    font-size: 19px !important;
    letter-spacing: 0.04em;
  }

  .footer-links-list-heading::after{
    content: none;
  }

  .footer-links-list{
    flex-direction: column;
    align-items: flex-start;
  }

  .footer-links-list--gap-lg li:first-child{
   margin-top: 5px;
  }

  .footer-links-list li{
    font-size: 15px;
  }

  .footer-links-content-wrap--main{
    margin-bottom:40px;
  }

  .footer-links-content-wrap--other{
    flex-direction: column;
    align-items: center !important;
  }

  .footer-links-social-icon-wrap{
    gap: 30px;
  }

  .footer-links-social-icon svg{
    width: 43px;
    height: 43px;
  }
}



/* TOPへボタン */
.pagetop{
  right: 20px;
  box-shadow:0px 3px 16px rgba(0,0,0,0.08);
  border-radius: 50%;
  bottom:80px;
  transition: opacity 0.2s;
  width: 90px; 
  height: 90px;
}

.pagetop:hover{
  opacity: 0.7;
}

@media print, screen and (max-width: 767px) {
  .pagetop{
    width: 89px; 
    height: 89px;
    bottom: 80px;
    right: 10px;
  }
}


/* 電話番号リンクスマホ時のみ */
@media only screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none; 
    cursor: default;
    text-decoration: none;
    }
  }

  @media only screen and (max-width: 767px) {
    a[href*="tel:"] {
      pointer-events:auto !important; 
      }
  }

 

/* ===========================================
 * すまいの相談ページ
 * ======================================== */

 .consultation-flow-repletion{
  display: flex;
  gap:0 20px;
  margin-top:30px;
  align-items: center;
}

.consultation-flow-repletion figure img{
  min-width:250px;
}

.consultation-caution{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.consultation-caution a{
  width: 362px;
  margin-bottom: 0 !important;
}


.consultation-caution-list{
  display: flex;
  flex-direction: column;
  gap:10px;
  margin-bottom:25px;
  font-size:1.3rem;
  font-weight: 500;
  line-height: 1.6;
}

@media print, screen and (max-width: 767px) {
  .consultation-flow-repletion{
    flex-direction: column;
    align-items: center;
  }

  .consultation-flow-repletion figure img{
    min-width:250px;
  }

  .consultation-caution-list{
    padding: 24px;
    background-color: #fff;
    border: solid 2px #FFF4F4;
  }

  .consultation-caution a{
    width:auto;
    flex:0;
  }

  .consultation-caution{
    margin-top:-67px;
    align-items: center;
  }


}

@media print, screen and (max-width: 767px) {
  .page-404-message{
    margin-top: 150px !important;
  }
}