@charset "UTF-8";
/* #####################################################
 * common.css
 * - Core
 * - Layout
 * - Modules
 * - Pages
 * ################################################## */
/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/* =====================================================
 * Base
 * ================================================== */
/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
@import url(//fonts.googleapis.com/css?family=Roboto:400,700,900);
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  -webkit-print-color-adjust: exact;
}

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td,
th {
  padding: 0;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/* -----------------------------------------------------
 * Font
 * -------------------------------------------------- */
@font-face {
  font-family: "MyYuGothicM";
  font-weight: normal;
  src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular");
}
@font-face {
  font-family: "MyYuGothicM";
  font-weight: bold;
  src: local("YuGothic-Bold"), local("Yu Gothic");
}
/* -----------------------------------------------------
 * Init
 * -------------------------------------------------- */
*,
*:before,
*:after {
  box-sizing: border-box;
}

/* normalize overwrite */
html {
  position: relative;
  min-height: 100%;
  font-size: 62.5%;
  font-family: "UD Shin Go Regular", Meiryo, sans-serif;
}

body {
  min-width: 980px;
  height: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
  color: #000;
  font-size: 1.4rem;
  line-height: 1.2;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
}
body.edge, body.ie, body.win.firefox {
  line-height: 1.26;
}
@media screen and (max-width: 768px) {
  body {
    min-width: inherit;
  }
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}
a {
  color: #000;
}
a:visited {
  color: #000;
}
a:hover {
  color: #006D38;
}
@media screen and (max-width: 768px) {
  a:hover {
    color: #000;
  }
}
a:active, a:focus {
  color: #006D38;
}
@media screen and (max-width: 768px) {
  a:active, a:focus {
    color: #000;
  }
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ol,
ul,
li,
figure,
figcaption,
small {
  margin: 0;
  font-size: 100%;
  font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
}

img {
  vertical-align: bottom;
}

ul {
  list-style-type: none;
  padding: 0;
}

ol {
  padding: 0;
}

th {
  font-weight: normal;
  text-align: left;
}

em {
  color: #fe0000;
  font-style: normal;
}

/* =====================================================
 * Layout
 * ================================================== */
/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/**
 * Header module
 */
.l-header {
  border-bottom: 1px #ccc solid;
}

.l-header-border {
  position: relative;
  z-index: 50;
}

.l-header-border-orange-2 {
  height: 2px;
  background: #006D38;
}

.l-header-border-white {
  height: 1px;
  background: #fff;
}

.l-header-border-orange-1 {
  height: 1px;
  background: #006D38;
}

.l-header-inner {
  background: #fff url(/wp-content/themes/public_housing2026_shinjuku/assets/img/common/bg_header_01.png) repeat-x left bottom;
  border-bottom: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .l-header-inner {
    position: relative;
    z-index: 50;
    background: #fff url(/wp-content/themes/public_housing2026_shinjuku/assets/img/common/bg_header_02.png) repeat-x left bottom/228px 31px;
  }
}

.l-header-content {
  display: flex;
  align-items: center;
  width: 960px;
  margin: 0 auto;
  padding: 20px 0;
}
@media screen and (max-width: 768px) {
  .l-header-content {
    width: auto;
    padding: 25px 20px;
  }
}

.l-header-logo {
  margin: 0 20px 0 0;
  padding: 0 20px 0 0;
  border-right: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .l-header-logo {
    margin: 0;
    padding: 0;
    border-right: none;
  }
}
.l-header-logo a {
  display: block;
  width: 350px;
}
@media screen and (max-width: 768px) {
  .l-header-logo a {
    width: 240px;
  }
}
.l-header-logo img {
  width: 100%;
  height: auto;
}

.l-header-description {
  line-height: 1.5;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .l-header-description {
    display: none;
  }
}

.l-header-link-pc {
  margin: 0 0 0 auto;
}
@media screen and (max-width: 768px) {
  .l-header-link-pc {
    display: none;
  }
}

.l-header-nav {
  width: 960px;
  margin: 0 auto;
  font-size: 1.3rem;
}
@media screen and (max-width: 768px) {
  .l-header-nav {
    position: absolute;
    z-index: 5;
    width: 100%;
    transition: all 0.5s ease;
    transform: translateY(-800px);
  }
}
@media screen and (max-width: 768px) {
  .is-open + .l-header-nav {
    transform: translateY(0);
  }
}
.l-header-nav > ul {
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul {
    display: block;
  }
}
.l-header-nav > ul > li {
  flex-grow: 1;
  position: relative;
  padding: 1px 2px 2px 1px;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li {
    padding: 0;
    border-bottom: 1px #006D38 solid;
  }
}
.l-header-nav > ul > li.l-header-link-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.l-header-link-sp {
    display: block;
  }
}
.l-header-nav > ul > li.is-active > a {
  background: #F5EDCA;
  color: #000;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi {
    background: #F5EDCA;
  }
}
.l-header-nav > ul > li.is-multi:after {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 20px;
  right: 15px;
  content: "\f078";
  margin: -1px 0 0;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi:after {
    right: 17px;
  }
}
.l-header-nav > ul > li.is-multi > span,
.l-header-nav > ul > li.is-multi > a {
  padding: 20px 10px 20px 0;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi > span,
.l-header-nav > ul > li.is-multi > a {
    padding: 20px;
    width: 85%;
  }
}
.l-header-nav > ul > li.is-multi > span:after,
.l-header-nav > ul > li.is-multi > a:after {
  display: none;
}
.l-header-nav > ul > li.is-multi > ul {
  display: none;
  position: absolute;
  right: 1px;
  left: 0;
  z-index: 5;
  padding: 2px 0 0;
  border-bottom: 1px #006D38 solid;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi > ul {
    display: block;
    position: static;
    padding: 0;
    border-bottom: none;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out, opacity;
  }
}
.l-header-nav > ul > li.is-multi > ul li {
  border: 1px #006D38 solid;
  border-bottom: none;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi > ul li {
    position: relative;
    border: none;
    background: #F5EDCA;
  }
  .l-header-nav > ul > li.is-multi > ul li:first-child {
    border-top: 1px #006D38 solid;
  }
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi > ul li:not(:last-child):after {
    content: "";
    position: absolute;
    right: 20px;
    left: 20px;
    z-index: 10;
    border-bottom: 1px #006D38 solid;
  }
}
.l-header-nav > ul > li.is-multi > ul li a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  min-height: 60px;
  padding: 10px;
  text-align: left;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi > ul li a {
    padding: 20px;
    height: auto;
    line-height: 1;
    background: #F8FDFF;
  }
}
.l-header-nav > ul > li.is-multi > ul li a:after {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 50%;
  right: 17px;
  transform: translateY(-50%);
  content: "\f054";
  margin: -1px 0 0;
  color: #006D38;
}
.l-header-nav > ul > li.is-multi > ul li a:hover:after {
  color: #006D38;
}
@media screen and (min-width: 769px) {
  .l-header-nav > ul > li.is-multi:hover > a, .l-header-nav > ul > li.is-multi:hover span {
    background: #F5EDCA;
    color: #000;
  }
  .l-header-nav > ul > li.is-multi:hover > ul {
    display: block;
  }
  .l-header-nav > ul > li.is-multi:hover:after {
    content: "\f077";
    color: #006D38;
  }
}
.l-header-nav > ul > li.is-multi.is-active > a, .l-header-nav > ul > li.is-multi.is-active span {
  color: #000;
  background: #F5EDCA;
}
.l-header-nav > ul > li.is-multi.is-active > a:after, .l-header-nav > ul > li.is-multi.is-active span:after {
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi.is-open > a:after, .l-header-nav > ul > li.is-multi.is-open span:after {
    content: "\f077";
  }
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li.is-multi.is-open > ul {
    max-height: 1000px;
  }
}
.l-header-nav > ul > li:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 20px;
  margin: auto;
  border-right: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li:before {
    content: none;
  }
}
.l-header-nav > ul > li:first-child {
  padding: 1px 2px;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li:first-child {
    padding: 0;
  }
}
.l-header-nav > ul > li:first-child:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0;
  height: 20px;
  margin: auto;
  border-right: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li:first-child:after {
    content: none;
  }
}
.l-header-nav > ul > li a,
.l-header-nav > ul > li span {
  display: block;
  line-height: 1;
  padding: 20px 0;
  color: #000;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li a,
.l-header-nav > ul > li span {
    padding: 20px;
    background: #F5EDCA;
    color: #000;
    text-align: left;
  }
  .l-header-nav > ul > li a:focus,
.l-header-nav > ul > li span:focus {
    outline: none;
  }
}
@media screen and (max-width: 768px) {
  .l-header-nav > ul > li a:after,
.l-header-nav > ul > li span:after {
    font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 17px;
    content: "\f054";
    color: #006D38;
    margin: -1px 0 0;
  }
}
.l-header-nav > ul > li a:hover,
.l-header-nav > ul > li span:hover {
  background: #F5EDCA;
  color: #000;
}

.l-header-button {
  display: none;
  position: absolute;
  z-index: 100;
  top: 20px;
  right: 20px;
  overflow: hidden;
  width: 34px;
  height: 0;
  padding-top: 40px;
  line-height: 1.5;
  white-space: nowrap;
  margin: 0;
  border: none;
  background: none;
  -webkit-appearance: none;
}
@media screen and (max-width: 768px) {
  .l-header-button {
    display: block;
  }
}
.l-header-button span {
  content: "";
  display: block;
  position: absolute;
  right: 2px;
  width: 30px;
  height: 4px;
  background: #006D38;
}
.l-header-button span:nth-child(1) {
  top: 0;
  transition: 0.2s ease-in;
}
.l-header-button span:nth-child(2) {
  top: 9px;
  transition: 0.2s ease-in;
}
.l-header-button span:nth-child(3) {
  top: 18px;
  transition: 0.2s ease-in;
}
.l-header-button:after {
  content: "MENU";
  position: absolute;
  right: 0;
  bottom: 5px;
  left: 0;
  line-height: 1;
  color: #006D38;
  font-size: 1rem;
  text-align: center;
}
.l-header-button.is-open span:nth-child(1) {
  top: 9px;
  height: 10px;
  transform: rotate(45deg);
}
.l-header-button.is-open span:nth-child(2) {
  display: none;
}
.l-header-button.is-open span:nth-child(3) {
  top: 9px;
  height: 10px;
  transform: rotate(-45deg);
}
.l-header-button.is-open:after {
  content: "CLOSE";
  bottom: -1px;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/**
 * Footer module
 */
.l-footer {
  border-top: 1px #666 solid;
}

.l-footer-inner {
  border-bottom: 1px #666 solid;
  background: url(/wp-content/themes/public_housing2026_shinjuku/assets/img/common/bg_footer_01.png) repeat-x left bottom;
}

.l-footer-content {
  position: relative;
  width: 960px;
  margin: 0 auto;
  padding: 40px 0 0;
}
@media screen and (max-width: 768px) {
  .l-footer-content {
    width: auto;
    padding: 35px 20px 0;
  }
}

.l-footer-heading {
  margin: 0 0 20px;
  font-size: 1.8rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
.l-footer-heading:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f3c5";
  margin: 0 10px 0 0;
  color: #006D38;
  vertical-align: -3px;
  font-size: 2.8rem;
}

.l-footer-information {
  justify-content: space-between;
  margin: 0 0 30px;
}
@media screen and (max-width: 768px) {
  .l-footer-information {
    display: block;
    margin: 0 0 30px;
  }
}
.l-footer-information li {
  position: relative;
  width: auto;
}
@media screen and (max-width: 768px) {
  .l-footer-information li:first-child {
    margin: 0 0 20px;
  }
}
.l-footer-information .l-footer-information-target {
  line-height: 30px;
  margin: 0 0 5px;
  padding: 0 10px;
  background: #666;
  color: #fff;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .l-footer-information .l-footer-information-target {
    font-weight: normal;
  }
}
.l-footer-information th {
  line-height: 1.4;
  padding: 5px 0;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  text-align: justify;
  text-align-last: justify;
  vertical-align: top;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .l-footer-information th {
    font-weight: normal;
  }
}
.l-footer-information td {
  line-height: 1.5;
  padding: 5px 10px 5px 5px;
  vertical-align: top;
}
@media screen and (max-width: 768px) {
  .l-footer-information td {
    padding: 5px 0 5px 5px;
  }
}
.l-footer-information .l-footer-information-tel {
  line-height: 1;
  font-size: 1.8rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}

.l-footer-pagetop-pc {
  position: absolute;
  top: -29px;
  right: 0;
  width: 180px;
}
@media screen and (max-width: 768px) {
  .l-footer-pagetop-pc {
    display: none;
  }
}
.l-footer-pagetop-pc a {
  display: block;
  line-height: 28px;
  background: #F5EDCA;
  border-bottom: none;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  color: #000;
  font-size: 1.2rem;
  text-align: center;
  text-decoration: none;
}
.l-footer-pagetop-pc a:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f102";
  margin: 0 6px 0 0;
  color: #006D38;
}
.l-footer-pagetop-pc a:hover {
  background: #DBCC68;
}

.l-footer-pagetop-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .l-footer-pagetop-sp {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .l-footer-pagetop-sp a {
    display: block;
    line-height: 50px;
    background: #006D38;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .l-footer-pagetop-sp a:before {
    font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f102";
    margin: 0 15px 0 0;
  }
}

.l-footer-nav ul {
  width: 960px;
  margin: 0 auto;
  padding: 15px 0;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .l-footer-nav ul {
    display: block;
    width: auto;
    padding: 0;
  }
}
.l-footer-nav ul li {
  padding: 0 0 0 15px;
  text-indent: -15px;
}
@media screen and (max-width: 768px) {
  .l-footer-nav ul li {
    padding: 0;
    text-indent: 0;
  }
}
.l-footer-nav ul li:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f138";
  margin: 0 5px 0 0;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .l-footer-nav ul li:before {
    content: none;
  }
}
@media screen and (max-width: 768px) {
  .l-footer-nav ul a {
    display: block;
    position: relative;
    line-height: 50px;
    padding: 0 20px;
    border-bottom: 1px #666 solid;
    text-decoration: none;
  }
}
@media screen and (max-width: 768px) {
  .l-footer-nav ul a:after {
    font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f054";
    position: absolute;
    top: 19px;
    right: 20px;
    color: #006D38;
  }
}
.l-footer-nav .l-footer-nav-inner {
  background: #ededed;
}
@media screen and (max-width: 768px) {
  .l-footer-nav .l-footer-nav-inner {
    background: #fff;
  }
}
.l-footer-nav .l-footer-nav-inner ul {
  justify-content: center;
}
.l-footer-nav .l-footer-nav-inner ul li {
  margin: 0 10px;
}
@media screen and (max-width: 768px) {
  .l-footer-nav .l-footer-nav-inner ul li {
    margin: 0;
  }
}

.l-footer-company {
  background: #006D38;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .l-footer-company {
    padding: 40px 0;
    border-top: 1px #fff solid;
  }
}
.l-footer-company .l-footer-company-inner {
  display: flex;
  justify-content: space-between;
  width: 960px;
  line-height: 30px;
  margin: 0 auto;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .l-footer-company .l-footer-company-inner {
    display: block;
    width: auto;
    line-height: 1;
    font-size: 1.1rem;
  }
}
.l-footer-company .l-footer-company-inner.copyright {
  display: block;
}
.l-footer-company .l-footer-company-name {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .l-footer-company .l-footer-company-name {
    margin: 0 0 10px;
    text-align: center;
    line-height: 1.8;
  }
}
.l-footer-company .l-footer-company-name a {
  color: #fff;
}
@media screen and (max-width: 768px) {
  .l-footer-company .mod-link {
    text-align: center;
  }
}
.l-footer-company .mod-link a {
  color: #fff;
}
.l-footer-company .mod-link a:hover {
  color: #fff;
}
.l-footer-company .mod-link:before {
  color: #fff;
}
.l-footer-company .mod-link-external:after {
  color: #fff;
}
.l-footer-company .l-footer-copyright {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .l-footer-company .l-footer-copyright {
    text-align: center;
    padding: 10px 0 0 0;
  }
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/**
 * Sidebar module
 */
.l-sidebar {
  width: 250px;
}
@media screen and (max-width: 768px) {
  .l-sidebar {
    width: auto;
    margin: 25px 0 0;
  }
}

.l-sidebar-block {
  background: #fff;
  border: 1px #666 solid;
}
.l-sidebar-block:not(:last-child) {
  margin: 0 0 20px;
}

.l-sidebar-heading {
  margin: 1px 1px 20px 1px;
  padding: 10px 15px;
  background: #F5EDCA;
  font-size: 1.4rem;
  color: #000;
}
@media screen and (max-width: 768px) {
  .l-sidebar-heading {
    line-height: 1.5;
    font-size: 1.8rem;
  }
}

.l-sidebar-area {
  margin: 0 20px 20px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .l-sidebar-area {
    margin: 0 15px 20px;
  }
}
.l-sidebar-area img {
  width: 206px;
}
@media screen and (max-width: 768px) {
  .l-sidebar-area img {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .l-sideber-btn {
    margin: 0 15px;
  }
}
.l-sideber-btn a {
  position: relative;
  display: block;
  width: 210px;
  margin: 0 auto 20px;
  line-height: 26px;
  border-radius: 5px;
  background: #F5EDCA;
  box-shadow: 0px 4px 1px -1px #DBCC68;
  color: #000;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .l-sideber-btn a {
    width: 100%;
    line-height: 38px;
  }
}
.l-sideber-btn a:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f00e";
  position: absolute;
  top: 4px;
  left: 6px;
  font-size: 18px;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .l-sideber-btn a:before {
    top: 12px;
    left: 15px;
  }
}
.l-sideber-btn a:hover {
  background: #DBCC68;
}

.modal-area-image {
  display: none;
}

.featherlight .featherlight-content {
  background: transparent;
}
@media screen and (max-width: 768px) {
  .featherlight .featherlight-content {
    padding: 30px 10px 0;
  }
}
.featherlight .featherlight-content .featherlight-close-icon {
  background: transparent;
  color: #fff;
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  .featherlight .featherlight-content .featherlight-close-icon {
    right: 6px;
  }
}
.featherlight .featherlight-content .featherlight-inner {
  padding: 20px;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .featherlight .featherlight-content .featherlight-inner {
    padding: 10px;
  }
}
.featherlight .featherlight-content .featherlight-inner img {
  border: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .featherlight .featherlight-content .featherlight-inner img {
    width: 100%;
  }
}

.l-sidebar-link {
  margin: 0 20px 20px;
}
@media screen and (max-width: 768px) {
  .l-sidebar-link {
    margin: 0 15px 20px;
  }
}
.l-sidebar-link li {
  line-height: 1.5;
  margin: 0 0 10px;
}

.l-sidebar-list {
  margin: 0 0 30px;
}
.l-sidebar-list li {
  margin: 0 0 10px;
}
.l-sidebar-list li a {
  position: relative;
  display: block;
  height: 70px;
  background: #fff;
  border: 3px #999 solid;
  border-radius: 10px;
  box-shadow: 0px 9px 4px -4px rgba(0, 0, 0, 0.2);
  color: #000;
  text-align: center;
  text-decoration: none;
}
.l-sidebar-list li a:hover {
  border-color: #006D38;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .l-sidebar-list li a:hover {
    border-color: #999;
  }
}
.l-sidebar-list li a:not([href$=pdf]):after {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f054";
  position: absolute;
  top: 25px;
  right: 10px;
  color: #006D38;
}
.l-sidebar-list li a[href$=pdf] {
  line-height: 1.4;
  font-size: 1.2rem;
}
.l-sidebar-list li a[href$=pdf]:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%);
  display: block;
  width: 30px;
  height: 30px;
  background: url(/wp-content/themes/public_housing2026_shinjuku/assets/img/common/ico_pdf_01.png) no-repeat 50% 50%;
}
.l-sidebar-list li a[href$=pdf] span {
  padding: 0 0 0 30px;
}
.l-sidebar-list li a span {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
.l-wrapper {
  position: relative;
  min-height: 100vh;
}

.l-breadcrumbs {
  margin: 0 0 40px;
  background: #ededed;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .l-breadcrumbs {
    margin: 0;
  }
}
.l-breadcrumbs ol {
  list-style: none;
  width: 960px;
  line-height: 1;
  margin: 0 auto;
  padding: 10px 0;
}
.l-breadcrumbs ol:after {
  display: block;
  clear: both;
  content: "";
}
@media screen and (max-width: 768px) {
  .l-breadcrumbs ol {
    width: auto;
    padding: 8px 20px;
    font-size: 1rem;
  }
}
.l-breadcrumbs li {
  float: left;
}
@media screen and (max-width: 768px) {
  .l-breadcrumbs li {
    line-height: 1.8;
  }
}
.l-breadcrumbs li:after {
  content: ">";
  display: inline-block;
  margin: 0 13px;
}
@media screen and (max-width: 768px) {
  .l-breadcrumbs li:after {
    margin: 0 10px;
  }
}
.l-breadcrumbs li:last-child:after {
  display: none;
}

.l-contents {
  display: flex;
  justify-content: space-between;
  width: 960px;
  margin: 0 auto 125px;
}
@media screen and (max-width: 768px) {
  .l-contents {
    display: block;
    width: auto;
    margin: 0 20px 40px;
  }
}

.l-main {
  width: 690px;
}
@media screen and (max-width: 768px) {
  .l-main {
    width: auto;
  }
}
.l-main img {
  max-width: 100%;
  height: auto;
}

/*
#styleguide
flex grid layout

```
<div class="l-grid">

<div class="l-grid-column1">
column1
</div>

<div class="l-grid-column11">
column11
</div>

<div class="l-grid-column10">
column10
</div>

<div class="l-grid-column2">
column2
</div>

<div class="l-grid-column9">
column9
</div>

<div class="l-grid-column3">
column3
</div>

<div class="l-grid-column8">
column8
</div>

<div class="l-grid-column4">
column4
</div>

<div class="l-grid-column7">
column7
</div>

<div class="l-grid-column5">
column5
</div>

<div class="l-grid-column6">
column6
</div>

<div class="l-grid-column6">
column6
</div>

<!-- /.l-grid --></div>
```
*/
.l-grid {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: -10px;
  margin-right: -10px;
}
.l-grid > div {
  background: #eee;
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 10px;
}
.l-grid-column1 {
  flex-basis: calc(8.33333% - 20px);
  max-width: calc(8.33333% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column2 {
  flex-basis: calc(16.66667% - 20px);
  max-width: calc(16.66667% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column3 {
  flex-basis: calc(25% - 20px);
  max-width: calc(25% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column4 {
  flex-basis: calc(33.33333% - 20px);
  max-width: calc(33.33333% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column5 {
  flex-basis: calc(41.66667% - 20px);
  max-width: calc(41.66667% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column6 {
  flex-basis: calc(50% - 20px);
  max-width: calc(50% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column7 {
  flex-basis: calc(58.33333% - 20px);
  max-width: calc(58.33333% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column8 {
  flex-basis: calc(66.66667% - 20px);
  max-width: calc(66.66667% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column9 {
  flex-basis: calc(75% - 20px);
  max-width: calc(75% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column10 {
  flex-basis: calc(83.33333% - 20px);
  max-width: calc(83.33333% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column11 {
  flex-basis: calc(91.66667% - 20px);
  max-width: calc(91.66667% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}
.l-grid-column12 {
  flex-basis: calc(100% - 20px);
  max-width: calc(100% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}

/* =====================================================
 * Module
 * ================================================== */
/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/*
#styleguide
Section

```
<div class="mod-section">
<h1 class="mod-heading1">Heading1</h1>
<p class="mod-p">Lorem ipsum dolor sit amet, <a href="#">test link</a> adipiscing elit. Nullam
dignissim convallis
est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at,
tincidunt nec, gravida vehicula, nisl. Praesent mattis, massa quis luctus fermentum, turpis mi volutpat justo, eu
volutpat enim diam eget metus. Maecenas ornare tortor. Donec sed tellus eget sapien fringilla nonummy. Mauris a ante.
Suspendisse quam sem, consequat at, commodo vitae, feugiat in, nunc. Morbi imperdiet augue quis tellus.</p>
</div>
```
*/
.mod-section:not(:last-child) {
  margin: 0 0 35px;
}
@media screen and (max-width: 768px) {
  .mod-section:not(:last-child) {
    margin: 0 0 25px;
  }
}

.mod-lead {
  line-height: 1.7;
  margin: 0 0 30px;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/*
#styleguide
Headings

```
<h1 class="mod-heading1">Heading1</h1>
<h2 class="mod-heading2">Heading2</h2>
<h3 class="mod-heading3">Heading3</h3>
<h4 class="mod-heading4">Heading4</h4>
```
*/
.mod-heading1 {
  margin: 0 0 40px;
  padding: 25px 20px;
  border-top: 2px #006D38 solid;
  border-bottom: 2px #006D38 solid;
  font-size: 2.8rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-heading1 {
    margin: 0 -20px 30px;
    padding: 17px 20px;
    font-size: 2rem;
  }
}

.mod-heading2 {
  margin: 0 0 25px;
  padding: 6px 15px;
  border-left: 5px #006D38 solid;
  font-size: 2.4rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-heading2 {
    margin: 0 0 20px;
    padding: 6px 11px;
    font-size: 1.8rem;
  }
}
table + .mod-heading2 {
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  table + .mod-heading2 {
    margin-top: 20px;
  }
}

.mod-heading3 {
  margin: 0 0 25px;
  padding: 7px 20px;
  background: #F5EDCA;
  font-size: 1.6rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-heading3 {
    margin: 0 0 20px;
    padding: 6px 15px;
    font-size: 1.5rem;
  }
}

.mod-heading4 {
  margin: 0 0 20px;
  padding: 0 0 6px;
  font-size: 1.6rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  border-bottom: 1px solid #006D38;
}
@media screen and (max-width: 768px) {
  .mod-heading4 {
    margin: 0 0 15px;
    font-size: 1.5rem;
  }
}

.mod-heading5 {
  margin: 25px 0 15px;
  font-size: 1.4rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-heading5 {
    margin: 15px 0;
  }
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/*
#styleguide
Paragraph

```
<p class="mod-p">Lorem ipsum dolor sit amet, <a href="#">test link</a> adipiscing elit. Nullam
dignissim convallis
est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at,
tincidunt nec, gravida vehicula, nisl. Praesent mattis, massa quis luctus fermentum, turpis mi volutpat justo, eu
volutpat enim diam eget metus. Maecenas ornare tortor. Donec sed tellus eget sapien fringilla nonummy. Mauris a ante.
Suspendisse quam sem, consequat at, commodo vitae, feugiat in, nunc. Morbi imperdiet augue quis tellus.</p>
```
*/
.mod-p {
  line-height: 1.7;
  margin: 0 0 25px;
}
@media screen and (max-width: 768px) {
  .mod-p {
    margin: 0 0 20px;
  }
}
.mod-p.mb-15 {
  margin: 25px 0 15px;
}
@media screen and (max-width: 768px) {
  .mod-p.mb-15 {
    margin: 20px 0 10px;
  }
}

.mod-data {
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  margin: 0 0 10px;
}
@media screen and (max-width: 768px) {
  .mod-data {
    margin: 10px 0 5px;
  }
}

.mod-cl-red {
  color: #f00;
}

.mod-box {
  padding: 20px;
  background-color: #ededed;
}
.mod-box p {
  margin: 0 0 15px;
}
.mod-box p:last-child {
  margin: 0;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/*
#styleguide
Link

```
<p class="mod-link"><a href="#">Link</a></p>
<p class="mod-link-external"><a href="#" target="_blank">Link External</a></p>
<p class="mod-link-pdf"><a href="#">PDF Link</a></p>
```
*/
.mod-link {
  margin: 15px 0;
  padding: 0 0 0 15px;
  text-indent: -15px;
}
.mod-link:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f138";
  margin: 0 5px 0 0;
  color: #006D38;
}
.mod-link.m-25 {
  margin: 25px 0;
}

.mod-link-external:after {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Regular";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f2d2";
  margin: 0 0 0 3px;
  color: #006D38;
}

.mod-link-pdf {
  position: relative;
  margin: 25px 0;
  padding: 0 0 0 33px;
}
.mod-link-pdf:before {
  content: url(/wp-content/themes/public_housing2026_shinjuku/assets/img/common/ico_pdf_01.png);
  position: absolute;
  top: -4px;
  left: 0;
}

.mod-link-xlsx {
  position: relative;
  margin: 25px 0;
  padding: 0 0 0 33px;
}
.mod-link-xlsx:before {
  content: url(/wp-content/themes/public_housing2026_shinjuku/assets/img/common/ico_xlsx_01.png);
  position: absolute;
  top: -4px;
  left: 0;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
.mod-btn {
  margin: 10px 0 30px;
}
.mod-btn a {
  position: relative;
  display: block;
  width: 165px;
  margin: 0 auto;
  line-height: 36px;
  border: 2px #006D38 solid;
  border-radius: 5px;
  background: #006D38;
  box-shadow: 0px 4px 1px -1px #005495;
  color: #fff;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .mod-btn a {
    width: 100%;
  }
}
.mod-btn a:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f138";
  position: absolute;
  top: 13px;
  left: 10px;
  vertical-align: -1px;
}
@media screen and (max-width: 768px) {
  .mod-btn a:before {
    position: absolute;
    top: 12px;
    left: 15px;
  }
}
.mod-btn a:hover {
  background: #fff;
  color: #DBCC68;
}
@media screen and (max-width: 768px) {
  .mod-btn a:hover {
    background: #006D38;
    color: #fff;
  }
}
.mod-btn a:hover:before {
  color: #DBCC68;
}
@media screen and (max-width: 768px) {
  .mod-btn a:hover:before {
    color: #fff;
  }
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/*
#styleguide
Unordered List

```
<ul class="mod-ul">
<li>List Item 1</li>
<li>List Item 2</li>
<li>List Item 3</li>
</ul>
```
*/
.mod-ul {
  margin: 20px 0;
}
.mod-ul > li {
  position: relative;
  line-height: 1.5;
  padding: 0 0 0 17px;
  margin: 0 0 10px;
}
.mod-ul > li:last-child {
  margin: 0;
}
.mod-ul > li:before {
  content: "•";
  position: absolute;
  top: -5px;
  left: 3px;
  color: #006D38;
  font-size: 1.8rem;
  font-weight: bold;
}

/*
#styleguide
Ordered List

```
<ol class="mod-ol">
<li>List Item 1</li>
<li>List Item 2</li>
<li>List Item 3</li>
</ol>
```
*/
.mod-ol {
  margin: 20px 0 20px 21px;
}
.mod-ol > li {
  line-height: 1.5;
  list-style-type: decimal;
}
.mod-ol > li:not(:last-child) {
  margin: 0 0 10px;
}

/*
#styleguide
Link List

```
<ul class="mod-link-list">
<li><a href="#">Link List Item 1</a></li>
<li><a href="#">Link List Item 2</a></li>
<li><a href="#">Link List Item 3</a></li>
</ul>
```
*/
.mod-link-list {
  margin: 20px 0;
}
.mod-link-list > li {
  line-height: 1.5;
  padding: 0 0 0 15px;
  text-indent: -15px;
}
.mod-link-list > li:not(:last-child) {
  margin: 0 0 15px;
}
.mod-link-list > li:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f138";
  margin: 0 5px 0 0;
  color: #DBCC68;
}

/*
#styleguide
Infomation List

```
<dl class="mod-info-list">
<dt>2018.01.10</dt>
<dd><a href="#">ホームページをリニューアルしました</a></dd>
<dt>2018.01.01</dt>
<dd>ホームページをリニューアルしました</dd>
```
*/
.mod-info-list:after {
  display: block;
  clear: both;
  content: "";
}
.mod-info-list dt {
  float: left;
  width: 130px;
}
@media screen and (max-width: 768px) {
  .mod-info-list dt {
    float: none;
    width: auto;
  }
}
.mod-info-list dt:not(:last-of-type) {
  margin: 0 0 25px;
}
@media screen and (max-width: 768px) {
  .mod-info-list dt:not(:last-of-type) {
    margin: 0 0 5px;
  }
}
.mod-info-list dd {
  overflow: hidden;
}
.mod-info-list dd:not(:last-of-type) {
  margin: 0 0 25px;
}
@media screen and (max-width: 768px) {
  .mod-info-list dd:not(:last-of-type) {
    margin: 0 0 20px;
  }
}

.mod-bg-gray {
  padding: 10px;
  margin: 10px 0 0;
  background-color: #ededed;
}
.mod-bg-gray li {
  margin: 0 0 5px;
}
.mod-bg-gray li:last-of-type {
  margin: 0;
}
.mod-bg-gray span {
  display: inline-block;
  margin: 0 15px 0 0;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-bg-gray span {
    display: block;
    margin: 0 0 5px;
  }
}

.mod-ul-list {
  margin: 20px 0;
}
.mod-ul-list > li {
  position: relative;
  line-height: 1.5;
  padding: 0 0 0 17px;
}
.mod-ul-list > li:not(:last-child) {
  margin: 0 0 10px;
}

.mod-ul-katakana {
  margin: 20px 0 20px 30px;
}
.mod-ul-katakana > li {
  line-height: 1.5;
  list-style-type: katakana;
}
.mod-ul-katakana > li:not(:last-child) {
  margin: 0 0 10px;
}

.mod-ul-lower-alpha {
  margin: 20px 0 20px 21px;
}
.mod-ul-lower-alpha > li {
  line-height: 1.5;
  list-style-type: lower-alpha;
}
.mod-ul-lower-alpha > li:not(:last-child) {
  margin: 0 0 10px;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/*
#styleguide
Table

```
<table class="mod-table">
<thead>
<tr>
<th>thead1</th>
<th>thead2</th>
</tr>
</thead>
<tbody>
<tr>
<th>row1</th>
<td>column</td>
</tr>
<tr>
<th>row2</th>
<td>column</td>
</tr>
<tr>
<th>row3</th>
<td>column</td>
</tr>
</tbody>
</table>

```
*/
.mod-p-table {
  color: #fe0000;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  margin: 0 0 10px 0;
}
.mod-p-table:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f362";
  margin: 0 4px 0 0;
  font-size: 1.8rem;
}

.mod-table {
  width: 100%;
  border-top: 1px #666 solid;
  border-left: 1px #666 solid;
}
.mod-table caption {
  text-align: left;
}
.mod-table thead {
  background: #666;
  color: #fff;
}
.mod-table thead th {
  padding: 7px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .mod-table thead th {
    font-weight: normal;
  }
}
.mod-table thead th:last-child {
  border-right: 1px #666 solid;
}
.mod-table thead th:not(:last-child) {
  border-right: 1px #fff solid;
}
.mod-table tbody th,
.mod-table tbody td {
  padding: 12px;
  border-right: 1px #666 solid;
  border-bottom: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .mod-table tbody th,
.mod-table tbody td {
    padding: 10px;
  }
}
.mod-table tbody th {
  background: #ccc;
  text-align: center;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
/*
#styleguide
Alignment

```
<p class="mod-left">left</p>
<p class="mod-center">center</p>
<p class="mod-right">right</p>
```
*/
.mod-left {
  text-align: left !important;
}

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

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

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
@media screen and (min-width: 769px) {
  .is-pc-hide {
    display: none !important;
  }
}

@media screen and (min-width: 769px) {
  .is-pc-show {
    display: block !important;
  }
}

@media screen and (max-width: 768px) {
  .is-sp-show {
    display: block !important;
  }
}

@media screen and (max-width: 768px) {
  .is-sp-hide {
    display: none !important;
  }
}

/* =====================================================
 * Page
 * ================================================== */
.key-visual {
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 310px;
  background: url(/wp-content/themes/public_housing2026_shinjuku/assets/img/home/ph_keyvisual_01.jpg) no-repeat right top/cover;
}
@media screen and (max-width: 768px) {
  .key-visual {
    height: 155px;
  }
}
.key-visual:after {
  content: "";
  position: absolute;
  bottom: 0;
  z-index: 5;
  width: 100%;
  height: 90px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
}
@media screen and (max-width: 768px) {
  .key-visual:after {
    height: 45px;
  }
}
.key-visual + .l-contents {
  margin: 80px auto 125px;
}
@media screen and (max-width: 768px) {
  .key-visual + .l-contents {
    margin: 75px 20px 40px;
  }
}

.section-information {
  margin: 0 0 40px;
  padding: 30px 20px;
  background: #fff;
  overflow: hidden;
}
.section-information .section-information-heading {
  margin: 0 0 10px;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .section-information .section-information-heading {
    font-size: 1.8rem;
  }
}
.section-information .section-information-heading:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f05a";
  color: #006D38;
  font-size: 4rem;
  vertical-align: -7px;
}
@media screen and (max-width: 768px) {
  .section-information .section-information-heading:before {
    font-size: 3rem;
    vertical-align: -6px;
  }
}
.section-information .section-information-heading strong {
  margin: 0 10px;
  font-weight: normal;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .section-information .section-information-heading strong {
    margin: 0 7px;
  }
}
.section-information .section-information-heading span {
  color: #006D38;
  font-size: 1.2rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .section-information .section-information-heading span {
    font-size: 1.1rem;
    vertical-align: 1px;
  }
}
.section-information .mod-info-list {
  margin: 0 0 10px;
  padding: 30px 30px 30px 0;
  border-top: 1px #666 solid;
  border-bottom: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .section-information .mod-info-list {
    padding: 20px 0;
  }
}
.section-information .mod-info-list dt:not(:last-of-type) {
  margin: 0 0 16px;
}
@media screen and (max-width: 768px) {
  .section-information .mod-info-list dt:not(:last-of-type) {
    margin: 0 0 5px;
  }
}
.section-information .mod-info-list dd:not(:last-of-type) {
  margin: 0 0 16px;
}
@media screen and (max-width: 768px) {
  .section-information .mod-info-list dd:not(:last-of-type) {
    margin: 0 0 20px;
  }
}
.section-information .link-information-list {
  float: right;
}

.content-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .content-list {
    display: block;
  }
}
.content-list.parent li {
  height: 75px;
}
.content-list.parent li a {
  display: flex;
  align-items: center;
  font-size: 1.6rem;
}
.content-list.parent li a::after {
  top: 50%;
  transform: translateY(-50%);
}
.content-list li {
  width: 335px;
  height: 150px;
  margin: 0 0 25px;
}
@media screen and (max-width: 768px) {
  .content-list li {
    width: 100%;
    margin: 0 0 15px;
  }
}
.content-list li:nth-child(1) dt:before {
  content: "\f1ad";
  margin: 0 10px 0 0;
  vertical-align: -4px;
}
@media screen and (max-width: 768px) {
  .content-list li:nth-child(1) dt:before {
    margin: 0 6px 0 0;
    vertical-align: -2px;
  }
}
.content-list li:nth-child(2) dt:before {
  content: "\f024";
  margin: 0 10px 0 0;
  vertical-align: -4px;
}
@media screen and (max-width: 768px) {
  .content-list li:nth-child(2) dt:before {
    margin: 0 6px 0 0;
    vertical-align: -3px;
  }
}
.content-list li:nth-child(3) {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .content-list li:nth-child(3) {
    margin: 0 0 15px;
  }
}
.content-list li:nth-child(3) dt:before {
  content: "\f303";
  margin: 0 10px 0 0;
  vertical-align: -4px;
}
@media screen and (max-width: 768px) {
  .content-list li:nth-child(3) dt:before {
    margin: 0 6px 0 0;
    vertical-align: -3px;
  }
}
.content-list li:nth-child(4) dt:before {
  content: "\f059";
  margin: 0 10px 0 0;
  vertical-align: -4px;
}
@media screen and (max-width: 768px) {
  .content-list li:nth-child(4) dt:before {
    margin: 0 6px 0 0;
    vertical-align: -3px;
  }
}
.content-list li:nth-child(5) dt:before {
  content: "\f879";
  margin: 0 10px 0 0;
  vertical-align: -4px;
}
@media screen and (max-width: 768px) {
  .content-list li:nth-child(5) dt:before {
    margin: 0 6px 0 0;
    vertical-align: -3px;
  }
}
.content-list li:nth-child(6) dt:before {
  content: "\f14a";
  margin: 0 10px 0 0;
  vertical-align: -4px;
}
@media screen and (max-width: 768px) {
  .content-list li:nth-child(6) dt:before {
    margin: 0 6px 0 0;
    vertical-align: -3px;
  }
}
.content-list a {
  position: relative;
  display: block;
  height: 100%;
  padding: 18px 35px 18px 18px;
  border: 3px #999 solid;
  border-radius: 10px;
  box-shadow: 0px 9px 4px -4px #ccc;
  color: #000;
  text-decoration: none;
}
.content-list a:hover {
  border-color: #006D38;
  color: #006D38;
}
.content-list a:hover dt {
  border-bottom: 1px #006D38 solid;
}
.content-list a:hover dt:before {
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .content-list a:hover {
    border-color: #999;
  }
}
.content-list a:after {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f054";
  position: absolute;
  top: 65px;
  right: 10px;
  color: #006D38;
}
.content-list dt {
  margin: 0 0 10px;
  padding: 0 0 10px;
  border-bottom: 1px #666 solid;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .content-list dt {
    margin: 0 0 12px;
  }
}
.content-list dt:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 3rem;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .content-list dt:before {
    font-size: 2.5rem;
  }
}
.content-list dd {
  line-height: 1.4;
}

.content-btn {
  margin: 0 0 25px;
}
.content-btn a {
  position: relative;
  display: block;
  padding: 25px 10px;
  background: #fff;
  border: 3px #999 solid;
  border-radius: 10px;
  box-shadow: 0px 9px 4px -4px #ccc;
  color: #000;
  font-size: 1.6rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  text-align: center;
  text-decoration: none;
}
.content-btn a:hover {
  border-color: #006D38;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .content-btn a:hover {
    border-color: #999;
  }
}
.content-btn a:after {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f054";
  position: absolute;
  top: 28px;
  right: 10px;
  color: #006D38;
  font-size: 1.4rem;
}

.qa-list dt {
  display: flex;
  line-height: 1.5;
  margin: 0 0 15px;
  padding: 10px 20px 10px 10px;
  background: #F5EDCA;
  font-size: 1.6rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .qa-list dt {
    font-size: 1.5rem;
  }
}
.qa-list dt > span {
  margin: 2px 0 0 5px;
}
@media screen and (max-width: 768px) {
  .qa-list dt > span {
    margin: -2px 0 0 5px;
  }
}
.qa-list dd {
  display: flex;
  line-height: 1.7;
  padding: 0 0 0 10px;
}
@media screen and (max-width: 768px) {
  .qa-list dd {
    display: block;
  }
}
.qa-list dd:not(:last-child) {
  margin: 0 0 30px;
}
@media screen and (max-width: 768px) {
  .qa-list dd:not(:last-child) {
    margin: 0 0 20px;
  }
}
.qa-list dd > div {
  margin: 2px 0 0 5px;
}
@media screen and (max-width: 768px) {
  .qa-list dd > div {
    margin: -2px 0 0 22px;
  }
}
.qa-list dd > div > span {
  color: #fe0000;
}
.qa-list em {
  line-height: 1;
  color: #006D38;
  font-style: normal;
  font-size: 2.4rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .qa-list em {
    float: left;
    font-size: 1.8rem;
  }
}

.list-local-nav {
  margin: 0 0 40px;
}
.list-local-nav a {
  display: block;
  line-height: 36px;
  border-radius: 5px;
  background: #F5EDCA;
  box-shadow: 0px 4px 1px -1px #DBCC68;
  color: #000;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .list-local-nav a {
    line-height: 38px;
  }
}
.list-local-nav a:hover {
  background: #DBCC68;
}

.link-list-area {
  display: flex;
  justify-content: left;
}
@media screen and (max-width: 768px) {
  .link-list-area {
    display: block;
    overflow: hidden;
  }
}
.link-list-area li {
  width: 165px;
  margin: 0 10px 0 0;
}
@media screen and (max-width: 768px) {
  .link-list-area li {
    width: 48%;
    margin: 0 0 15px;
  }
}
.link-list-area li:nth-child(odd) {
  float: left;
}
.link-list-area li:nth-child(even) {
  float: right;
}
.link-list-area li:last-child {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .link-list-area li:last-child {
    margin: 0 0 15px;
  }
}
.link-list-area.col2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .link-list-area.col2 {
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
}
.link-list-area.col2 li {
  width: 100%;
}
.link-list-area a {
  position: relative;
}
.link-list-area a:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f103";
  position: absolute;
  top: 11px;
  left: 13px;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .link-list-area a:before {
    top: 12px;
    left: 5px;
  }
}

.link-list-map {
  margin: 10px 0 30px;
}
.link-list-map a {
  position: relative;
  display: block;
  width: 250px;
  line-height: 36px;
  border-radius: 5px;
  background: #F5EDCA;
  box-shadow: 0px 4px 1px -1px #DBCC68;
  color: #000;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .link-list-map a {
    width: 100%;
  }
}
.link-list-map a:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f3c5";
  position: absolute;
  top: 8px;
  left: 10px;
  font-size: 2rem;
  vertical-align: -1px;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .link-list-map a:before {
    position: absolute;
    top: 8px;
    left: 15px;
  }
}
.link-list-map a:after {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Regular";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f2d2";
  position: absolute;
  top: 12px;
  right: 10px;
  color: #006D38;
}
@media screen and (max-width: 768px) {
  .link-list-map a:after {
    position: absolute;
    top: 12px;
    right: 15px;
  }
}
.link-list-map a:hover {
  background: #DBCC68;
}

@media screen and (max-width: 768px) {
  iframe {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .list-table-wrap {
    overflow-x: scroll;
  }
}

.list-table-wrap-income {
  overflow-x: scroll;
}

@media screen and (max-width: 768px) {
  .table-list {
    width: 740px;
  }
}
.table-list thead .table-list-parking {
  width: 70px;
}
@media screen and (max-width: 768px) {
  .table-list thead .table-list-parking {
    width: auto;
  }
}
.table-list thead .table-list-pdf {
  width: 55px;
}
@media screen and (max-width: 768px) {
  .table-list thead .table-list-pdf {
    width: auto;
  }
}
.table-list tbody td {
  line-height: 1.3;
}

.l-vr-img {
  height: 480px;
}
.l-vr-img iframe {
  width: 100%;
  height: 100%;
}

.link-news-list {
  margin: 35px 0 0;
  padding: 20px 0 0;
  border-top: 1px #666 solid;
}
@media screen and (max-width: 768px) {
  .link-news-list {
    margin: 20px 0 0;
    padding: 10px 0 0;
  }
}
.link-news-list:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f137";
  margin: 0 5px 0 0;
  color: #006D38;
}

.mod-news-body h2 {
  margin: 0 0 25px;
  padding: 6px 15px;
  border-left: 5px #006D38 solid;
  font-size: 2.4rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-news-body h2 {
    margin: 0 0 20px;
    padding: 6px 11px;
    font-size: 1.8rem;
  }
}
.mod-news-body h3 {
  margin: 0 0 25px;
  padding: 7px 20px;
  background: #DBCC68;
  font-size: 1.6rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-news-body h3 {
    margin: 0 0 20px;
    padding: 6px 15px;
    font-size: 1.5rem;
  }
}
.mod-news-body h4 {
  margin: 0 0 20px;
  font-size: 1.6rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
@media screen and (max-width: 768px) {
  .mod-news-body h4 {
    margin: 0 0 15px;
    font-size: 1.5rem;
  }
}
.mod-news-body p {
  line-height: 1.7;
  margin: 0 0 25px;
}
@media screen and (max-width: 768px) {
  .mod-news-body p {
    margin: 0 0 20px;
  }
}
.mod-news-body ul {
  margin: 20px 0;
}
.mod-news-body ul > li {
  position: relative;
  line-height: 1.5;
  padding: 0 0 0 17px;
}
.mod-news-body ul > li:not(:last-child) {
  margin: 0 0 10px;
}
.mod-news-body ul > li:before {
  content: "•";
  position: absolute;
  top: -4px;
  left: 3px;
  color: #006D38;
  font-size: 1.8rem;
  font-family: "UD Shin Go Bold", Meiryo, sans-serif;
}
.mod-news-body ol {
  margin: 20px 0 20px 21px;
}
.mod-news-body ol > li {
  line-height: 1.5;
  list-style-type: decimal;
}
.mod-news-body ol > li:not(:last-child) {
  margin: 0 0 10px;
}
.mod-news-body .mod-link-list {
  margin: 20px 0;
}
.mod-news-body .mod-link-list > li {
  line-height: 1.5;
  padding: 0 0 0 15px;
  text-indent: -15px;
}
.mod-news-body .mod-link-list > li:not(:last-child) {
  margin: 0 0 10px;
}
.mod-news-body .mod-link-list > li:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f138";
  margin: 0 5px 0 0;
  color: #006D38;
  position: inherit;
  top: auto;
  left: auto;
  font-size: 1.4rem;
  font-weight: normal;
}
.mod-news-body .mod-link {
  padding: 0 0 0 15px;
  text-indent: -15px;
}
.mod-news-body .mod-link:before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f138";
  margin: 0 5px 0 0;
  color: #006D38;
}

.mod-table-contact th {
  width: 200px;
}
@media screen and (max-width: 768px) {
  .mod-table-contact th {
    width: 100px;
  }
}
.mod-table-contact td .mod-table-link {
  margin: 10px 0 0;
}

/*
#colors

@main #ffb759
@accent-color #c64805
@text #000
*/
.mod-flex {
  display: flex;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .mod-flex {
    display: block;
  }
}
.mod-flex > .mod-ul.repair-ul {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .mod-flex > .mod-ul.repair-ul {
    width: 100%;
    margin: 0 0 10px;
  }
  .mod-flex > .mod-ul.repair-ul:last-child {
    margin: 0;
  }
}

.c-repair-img {
  margin: 0 auto 30px;
  max-width: 100%;
}
.c-repair-img img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .c-repair-img {
    margin: 0 0 20px;
  }
}

.mod-table.c-repair-table thead th:nth-of-type(3) {
  border-bottom: 1px solid #fff;
}
.mod-table.c-repair-table thead th:last-child {
  border-left: 1px #fff solid;
}
.mod-table.mod-table-contractor thead th:nth-child(4) {
  border-bottom: 1px solid #fff;
}

.mod-section.mod-section-document a {
  display: inline-block;
  padding: 0 0 15px 0;
}
.mod-section.mod-section-document a::before {
  font: normal normal normal 14px/1 "Font Awesome 5 Free Solid";
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f105";
  margin: 0 5px 0 0;
  color: #006D38;
}

.mod-table.mod-table-document thead th {
  width: 280px;
}

.mod-img-income {
  margin: 20px 0;
}

.mod-table-income thead th:nth-of-type(2) {
  width: 140px;
}

/*# sourceMappingURL=common.css.map */
