@charset "UTF-8";
/* line 12, footer.scss */
footer { background: rgba(234, 233, 229, 0.5); padding-bottom: 40px; }
/* line 13, footer.scss */
footer #footer { display: flex; justify-content: space-between; flex-wrap: wrap; position: relative; align-items: center; /*.snsWrap { width: 880px;*/ /*}*/ }
/* line 14, footer.scss */
footer #footer .developer { width: 590px; font-family: "FOT-筑紫明朝 Pr6N M"; display: flex; justify-content: flex-start; flex-wrap: wrap; margin-top: -.25em; margin-bottom: auto; text-align: left; }
/* line 15, footer.scss */
footer #footer .developer .developerTWrap { width: 280px; }
/* line 16, footer.scss */
footer #footer .developer .developerT { font-size: 13px; margin-bottom: 1em; }
/* line 17, footer.scss */
footer #footer .developer .logo { width: 280px; }
/* line 18, footer.scss */
footer #footer .developer .logo a { display: block; }
/* line 20, footer.scss */
footer #footer .developer small { font-size: 12px; display: block; line-height: 1.8; /*margin-top: 1em;*/ margin-left: 2em; margin-top: 3em; }
/* line 23, footer.scss */
footer #footer .linelink { width: 590px; margin-left: auto; margin-bottom: 1.25em; }
/* line 26, footer.scss */
footer #footer ul.bnrs { display: flex; justify-content: space-between; flex-wrap: wrap; width: 100%; margin-bottom: 40px; }
/* line 27, footer.scss */
footer #footer ul.bnrs li { width: calc(100% / 4 - 15px); }
/* line 28, footer.scss */
footer #footer ul.bnrs li a { /*border: 1px solid rgba(#000, .25);*/ background: #fff; }
/* line 31, footer.scss */
footer #footer ul.bnrs li.uc a { opacity: .25; pointer-events: none; }
/* line 35, footer.scss */
footer #footer .privacypolicy { font-size: 13px; font-family: "FOT-筑紫明朝 Pr6N M"; /*position: absolute;*/ /*bottom: -10px;*/ /*top: 152px; left: 0;*/ }
/* line 36, footer.scss */
footer #footer .privacypolicy a { position: relative; padding: .5em 1em; padding-right: 1.5em; color: inherit; }
/* line 37, footer.scss */
footer #footer .privacypolicy a i { line-height: 1; position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; left: 0; transition: .4s all; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }
/* line 38, footer.scss */
footer #footer .privacypolicy a i::before { content: "\f105"; font-family: "Font Awesome 6 Pro"; font-weight: 100; }
/* line 41, footer.scss */
footer #footer .privacypolicy a:hover i { left: 4px; }
/* line 45, footer.scss */
footer #footer .copyright { font-family: "OptimaNovaLTPro-Light"; font-size: 12px; letter-spacing: .075em; /*text-align: center; padding: 40px 0; width: 100%;*/ /*position: absolute; top: 28px; left: 321px;*/ }
@media only screen and (max-width: 750px) { /* line 12, footer.scss */
  footer { padding-bottom: 75px; }
  /* line 52, footer.scss */
  footer #footer { width: 90%; margin: auto; /*.snsWrap { width: 100%; margin-top: 2em;*/ /*}*/ }
  /* line 53, footer.scss */
  footer #footer .developer { width: 100%; text-align: center; justify-content: center; margin-top: 0; margin-bottom: 2em; }
  /* line 55, footer.scss */
  footer #footer .developer .developerT { font-size: 14px; margin-bottom: 1em; }
  /* line 56, footer.scss */
  footer #footer .developer .logo { width: 270px; margin: 0 auto; }
  /* line 57, footer.scss */
  footer #footer .developer .logo a { display: block; }
  /* line 59, footer.scss */
  footer #footer .developer small { font-size: 12px; display: block; line-height: 1.8; margin: 1em auto 0; }
  /* line 62, footer.scss */
  footer #footer .linelink { width: 92%; margin: 0 auto 1em; }
  /* line 65, footer.scss */
  footer #footer ul.bnrs { width: 92%; margin: 0 auto; }
  /* line 66, footer.scss */
  footer #footer ul.bnrs li { width: 100%; }
  /* line 67, footer.scss */
  footer #footer ul.bnrs li:not(:last-child) { margin-bottom: 1em; }
  /* line 75, footer.scss */
  footer #footer .privacypolicy { position: relative; top: auto; left: auto; bottom: auto; right: auto; transform: none; font-size: 13.5px; margin-top: 2em; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; width: 100%; }
  /* line 76, footer.scss */
  footer #footer .privacypolicy a { padding: .5em 1em; padding-right: 1.25em; }
  /* line 77, footer.scss */
  footer #footer .privacypolicy a i { left: 0; margin-top: .2em; }
  /* line 81, footer.scss */
  footer #footer .privacypolicy a:hover i { left: 0; }
  /* line 85, footer.scss */
  footer #footer .copyright { position: relative; top: auto; left: auto; bottom: auto; right: auto; transform: none; text-align: center; font-size: 10px; padding: 3em 0 3em; width: 100%; } }
/* line 92, footer.scss */
footer #footerMenu { background: #6589a0; color: #fff; }
/* line 93, footer.scss */
footer #footerMenu ul { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; margin-bottom: 50px; }
/* line 94, footer.scss */
footer #footerMenu ul li { position: relative; font-size: 14px; font-family: "FOT-筑紫明朝 Pr6N M"; letter-spacing: 0; }
/* line 95, footer.scss */
footer #footerMenu ul li::after { content: ""; width: 1px; height: 20px; background: rgba(255, 255, 255, 0.25); position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; left: calc(100% - 0px); }
/* line 97, footer.scss */
footer #footerMenu ul li:last-child::after { content: none; }
/* line 99, footer.scss */
footer #footerMenu ul li a { padding: 1em 1em; color: #fff; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }
/* line 100, footer.scss */
footer #footerMenu ul li a span { display: none; }
/* line 112, footer.scss */
footer #footerMenu ul li.uc a { opacity: .4; }
@media only screen and (max-width: 750px) { /* line 121, footer.scss */
  footer #footerMenu ul { margin: 0 auto 30px; width: 90%; border-bottom: none; display: flex; justify-content: space-between; flex-wrap: wrap; overflow: hidden; }
  /* line 122, footer.scss */
  footer #footerMenu ul li { width: 50%; border-bottom: 1px solid rgba(255, 255, 255, 0.25); /*&:nth-of-type(even){
&::after{ content: none;}
}*/ }
  /* line 124, footer.scss */
  footer #footerMenu ul li:last-child::after { content: ""; }
  /* line 129, footer.scss */
  footer #footerMenu ul li a { padding: .5em 10px; }
  /* line 131, footer.scss */
  footer #footerMenu ul li a em { font-size: 13px; } }

@media only screen and (max-width: 750px) { /* line 149, footer.scss */
  #home #footerMenu .home, #concept #footerMenu .concept, #location #footerMenu .location, #landplan #footerMenu .landplan, #design #footerMenu .design, #innerspace #footerMenu .innerspace, #equipment #footerMenu .equipment, #afterservice #footerMenu .afterservice, #map #footerMenu .map, #outline #footerMenu .outline { display: none; } }
/* line 163, footer.scss */
#page-top { position: fixed; /*bottom: 52px;*/ bottom: 20px; right: 20px; z-index: 10; width: 60px; height: 60px; border-radius: 50%; overflow: hidden; text-indent: 100%; white-space: nowrap; }
/* line 164, footer.scss */
#page-top a { display: block; width: 100%; height: 100%; background: #255a74; }
/* line 165, footer.scss */
#page-top a:hover { opacity: 0.7; }
/* line 166, footer.scss */
#page-top a:after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 10; top: calc(50% - 4px); width: 12px; height: 12px; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: rotate(-45deg); }

@media only screen and (max-width: 750px) { /* line 175, footer.scss */
  #page-top { bottom: 65px; right: 5px; width: 40px; height: 40px; } }
/* line 180, footer.scss */
#scrollTopBtn { width: 65px; height: 65px; position: fixed; bottom: -20px; right: 20px; border-radius: 50px; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; cursor: pointer; opacity: 0; transition: all .4s; z-index: 99; background: #6589a0; }
/* line 181, footer.scss */
#scrollTopBtn .arrow { line-height: 0; position: relative; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; width: 100%; height: 100%; text-align: center; }
/* line 182, footer.scss */
#scrollTopBtn .arrow::before { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 10; color: #fff; width: 10px; height: 10px; border-top: solid 2px #fff; border-right: solid 2px #fff; transform: translate(-50%, -50%) rotate(-45deg); margin-top: .15em; }
/* line 185, footer.scss */
#scrollTopBtn svg { width: 100%; height: 100%; position: absolute; top: 0; left: 0; transform: rotate(-90deg); }
/* line 186, footer.scss */
#scrollTopBtn .progress-ring__circle-bg { fill: none; stroke: rgba(255, 255, 255, 0.25); stroke-width: 4; }
/* line 187, footer.scss */
#scrollTopBtn .progress-ring__circle { fill: none; stroke: rgba(255, 255, 255, 0.35); stroke-width: 4; transition: stroke-dashoffset 0.2s; }

/* line 189, footer.scss */
#scrollTopBtn.show { opacity: 1; /*visibility: visible;*/ bottom: 20px; }

@media only screen and (max-width: 750px) { /*#page-top { bottom: 50px; right: 5px; width:40px; height:40px;}*/
  /* line 197, footer.scss */
  #scrollTopBtn { width: 50px; height: 50px; bottom: -4px; right: 5px; }
  /* line 198, footer.scss */
  #scrollTopBtn .arrow { /*&::before{ font-size: 16px;}*/ }
  /* line 200, footer.scss */
  #scrollTopBtn .arrow::before { width: 8px; height: 8px; margin-top: .15em; }
  /* line 203, footer.scss */
  #scrollTopBtn .progress-ring__circle-bg { stroke-width: 3; }
  /* line 204, footer.scss */
  #scrollTopBtn .progress-ring__circle { stroke-width: 3; transition: stroke-dashoffset 0.2s; }
  /* line 206, footer.scss */
  #scrollTopBtn.show { bottom: 70px; } }
