@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Merriweather);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans:400,300);

/* utf-8で保存 */
/* ------------------------------
????????????
------------------------------ */
a {
  outline: none;
}
.slidewrap {
  background-color: #f2f4f7;
  margin-bottom: 30px;
}
.slidewrap .acms-container {
  position: relative;
}
.slidewrap .acms-container .topimgcopy {
  position: absolute;
  z-index: 100;
  height: 450px;
  width: 100%;
  background-image: url(../images/topcopy.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
a.shiki {
  display: block;
  font-size: 16px;
  color: #fff !important;
  background-color: #ff6e89;
  padding: 15px;
  text-align: center;
  margin-bottom: 25px;
}
.entryColumn p.freedialtext {
  text-align: center;
  font-size: 16px;
  margin-bottom: 15px;
}
.entryColumn p.freedialno {
  font-family: "Roboto", sans-serif;
  text-align: center;
  font-size: 50px;
  margin-bottom: 0;
  letter-spacing: 2px;
  color: #0d5e96;
  line-height: 1;
}
.freedialno ruby {
  ruby-align: distribute-space;
  ruby-overhang: auto;
  ruby-position: above;
}
.freedialno ruby rt {
  font-size: 12px;
}
a.athomelinks {
  display: block;
  text-align: center;
}
span.gmaplink {
  margin-left: 10px;
  font-size: 12px;
}
.company dl dd div {
  margin-bottom: 5px;
}
.company iframe {
  width: 100% !important;
}
@media screen and (max-width: 767px) {
  .slidewrap .acms-container .topimgcopy {
    height: 200px;
  }
  .entryColumn p.freedialno {
    font-size: 30px;
    letter-spacing: 0px;
  }
}
.slidewrap .acms-container .topimgcopy img {
  width: 100%;
  height: auto;
}
.slidewrap .acms-container > div {
  margin: 0 -25px;
}
#adminBox {
  margin-bottom: 0px;
}
.headWrapper {
  border-top: 0px solid #1277be;
}

.topJireiwrap {
  overflow: hidden;
}
.topJireiContent a:hover {
  text-decoration: none;
}
.topJireiwrap p.jireittlhide {
  margin: 0;
  padding: 10px;
  box-sizing: border-box;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff !important;
  font-size: 14px;
  font-weight: lighter;
  overflow: hidden;
  opacity: 0;
  transition: 1s;
}
.topJireiwrap p.jireittlhide:hover {
  opacity: 1;
}
.topJireiwrap .jireittlhide span {
  height: 100%;
  display: table-cell;
  vertical-align: middle;
}

ul.bigBtn {
  margin: 0 0 35px;
  padding: 0;
  overflow: hidden;
}

ul.bigBtn li {
  list-style: none;
  padding: 0 20px;
  margin: 0;
}
.topicswrap {
  background-color: #f2f4f7;
}
.topicswrap .acms-container,
.topjireiwrap .acms-container {
  padding: 40px 130px;
}
.topJireiContent {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  height: 130px;
}
.topJirei {
  margin-bottom: 15px;
}
.indexLink {
  text-align: right;
  padding: 25px;
  display: block;
}
.indexLink a {
  color: #999 !important;
  font-size: 12px;
}
.footerLogo {
  max-width: 300px;
  margin-bottom: 10px;
}
.sub {
  padding-right: 25px;
  box-sizing: border-box;
}
.sub .acms-list-group {
  background-color: #eee;
  border-top: 4px solid #1277be;
  padding: 15px;
}
.sub .acms-list-group li {
  background-color: #fff;
  border-bottom: 1px solid #eee;
  background-image: url(../images/entrylistpoint_1.png);
  background-repeat: no-repeat;
  background-position: 10px center;
  padding-left: 18px;
}
.sub .acms-list-group li:last-child {
  border-bottom: none;
}
.sub .acms-list-group li.stay {
  position: relative;
  font-weight: bold;
  background-color: #1277be;
  margin-left: -19px;
  background-image: url(../images/entrylistpoint_2.png);
}
.sub .acms-list-group li.stay:after {
  content: "";
  position: absolute;
  top: 100%;
  height: 0;
  width: 0;
  border: 2px solid transparent;
  border-top: 2px solid #333;
}
.sub .acms-list-group li.stay:after {
  left: 0;
  border-right: 2px solid #333;
}
.sub .acms-list-group li.stay a {
  color: #fff;
}
.sub .acms-list-group-item {
  border: none;
}
.sub a.acms-list-group-item:hover {
  background-color: #ffffff;
  color: #1277be;
}
.sub .stay a.acms-list-group-item:hover {
  background-color: #1277be;
  color: #fff;
}

.indexBtnUl {
  overflow: hidden;
  margin-right: 20px;
  margin-left: 20px;
}
.indexBtnUl > div {
  position: relative;
  margin-bottom: 20px;
}
.indexBtnUl .entryBtnWrapper {
  list-style-type: none;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  text-align: center;
  width: 100%;
  height: 200px;
  display: table;
}
.indexBtnUl div.indexBtn a {
  font-size: 20px;
  color: #fff;
  font-weight: bold;
}
.indexBtnUl div.indexBtn a:hover {
  text-decoration: none;
}
.indexBtnUl div.indexBtn a span {
  color: #c7defd;
  font-weight: lighter;
  font-family: "Josefin Sans", sans-serif;
  font-size: 12px;
  letter-spacing: 2px;
  display: block;
  padding-top: 5px;
}
.indexBtnUl .entryBtnFilter {
  position: absolute;
  top: 0;
  left: 10px;
  bottom: 0;
  right: 10px;
  background-color: rgba(0, 127, 216, 0.5);
}
.indexBtnUl .entryBtnInner {
  transition: 0.5s;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  height: 200px;
  position: relative;
}
.indexBtnUl .entryBtnInner:hover {
  background-color: rgba(0, 127, 216, 0.5);
}
.contentBody {
  margin: 0 40px;
}
.entryColumn .rinentxt {
  font-family: serif;
  font-size: 25px;
  text-align: center;
  display: block;
  margin-bottom: 25px;
}
.box01,
.box02,
.box03 {
  margin: 15px 10px;
  padding: 25px;
  overflow: hidden;
}
.box01 {
  border: 1px solid #ccc;
}
.box02 {
  background-color: #eee;
}
.box03 {
  background-color: #f9faff;
}
ul.productlist li {
  float: left;
  margin-left: 25px;
  width: 180px;
  font-size: 14px;
}
#torihikisaki dd {
  margin-left: 15px;
}
#shikakulist {
  overflow: hidden;
}
#shikakulist li {
  float: left;
  width: 360px;
}
.entryColumn em {
  font-style: normal;
  font-weight: bold;
  color: #1277be;
}
li.worksphotowrap {
}
section.workswrap {
  margin-bottom: 60px;
}
.worksbanner a {
  display: block;
  text-align: center;
  padding: 25px;
  border: 1px solid #1277be;
  font-size: 18px;
  letter-spacing: 2px;
  color: #1277be !important;
  transition: 0.5s;
}
.worksbanner a span {
  display: block;
  font-size: 9px;
  color: #aaa;
  font-family: "Josefin Sans", sans-serif;
  letter-spacing: 3px;
}
.worksbanner a:hover {
  background-color: #c9e3f4;
  text-decoration: none;
}
.main .worksbanner a {
  margin: 0 30px;
}
.constructionworksbanner a {
}
.engineeringworksbanner a {
}
ul.sakojubtn {
  margin: 10px 0;
}
.activitiesentry {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
}
.activitiesttl {
  font-size: 18px;
  color: #069;
}
.activitiesdate {
  font-size: 12px;
  color: #333;
}
h4 {
  font-size: 16px;
}
.presidentname {
  font-weight: bold;
  text-align: right;
  font-size: large;
  margin-right: 20px;
}
.presidentname span {
  font-weight: normal;
  font-size: 14px;
  padding-right: 10px;
}
.categoryindextxt {
  text-align: center;
}
.entryColumn .categoryindextxt p {
  font-size: 18px;
  font-weight: lighter;
}
.entryColumn ul.productlist {
  margin-left: 0px;
  margin-top: 5px;
}
@media screen and (max-width: 767px) {
  /* ???????��??????? */
  .topicswrap .acms-container,
  .topjireiwrap .acms-container {
    padding: 40px 20px;
  }
  ul.bigBtn {
    margin: 0 10px;
  }

  ul.bigBtn li {
    padding: 0 20px;
  }
  .contentBody {
    margin: 0 20px;
  }
  .acms-dl-horizontal dt,
  .acms-dl-line dt {
    width: 100%;
  }

  dl.acms-dl-horizontal dd,
  dl.acms-dl-line dd {
    margin-left: 15px;
  }
}
@media screen and (max-width: 479px) {
  /* ???????��??????? */
  .topicswrap .acms-container,
  .topjireiwrap .acms-container {
    padding: 40px 10px;
  }
  ul.bigBtn {
    margin: 0;
    padding: 0;
  }

  ul.bigBtn li {
    padding: 5px;
  }
  .contentBody {
    margin: 0 10px;
  }
}
/* ------------------------------
?????????���s?????`???????ui
------------------------------ */
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  border: 0px !important;
  background: #fff !important;
  background-image: none !important;
  font-weight: bold !important;
  color: #1277be !important;
  text-decoration: underline !important;
}
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  border: 0px !important;
  background: #fff !important;
  background-image: none !important;
  font-weight: normal;
  color: #555;
}

.engineering .js-accordion .ui-widget-content {
  border: 0px !important;
  background: #fff !important;
  background-image: none !important;
}
.engineering .ui-accordion .ui-accordion-content {
  padding: 0em 0em !important;
  border-top: 0px none !important;
}
.engineering .entryColumn tr:nth-child(2n + 1) {
  background-color: #fff;
}
.engineering .entryColumn th,
.engineering .entryColumn td {
  display: table-cell;
  padding: 5px 10px;
  text-align: left;
  font-size: 12px;
  border-top: 1px solid #eee;
}
/* ------------------------------
?????????��?`????`
------------------------------ */
.worksSerialNav {
  position: relative;
  height: 35px;
  margin-bottom: 30px;
  font-size: 14px;
}
.worksSerialNav ul {
  margin: 0;
  padding: 0;
}
.worksSerialNav li {
  list-style-type: none;
  display: block;
  font-size: 12px;
}
.worksSerialNav a,
.worksSerialNav a:link,
.worksSerialNav a:hover,
.worksSerialNav a:visited {
  display: block;
  width: 100%;
  color: #333333;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap;
  -ms-text-overflow: ellipsis;
  text-overflow: ellipsis;
  -webkit-transition: background 0.1s;
  transition: background 0.1s;
  border-radius: 3px;
  background-color: #eee;
}
.worksSerialNav a:hover,
.worksSerialNav a:link:hover,
.worksSerialNav a:hover:hover,
.worksSerialNav a:visited:hover {
  background: #ddd;
}
.worksSerialNavPrev {
  max-width: 230px;
  float: right;
  text-align: right;
  margin-right: 20px;
}
.worksSerialNavPrev a {
  padding: 5px 10px;
}
.worksSerialNavIndex {
  width: 60px;
  top: 0;
  left: 50%;
  margin-left: -30px;
  position: absolute;
  text-align: center;
}
.worksSerialNavIndex a {
  padding: 5px 0;
}
.worksSerialNavNext {
  max-width: 230px;
  float: left;
}
.worksSerialNavNext a {
  padding: 5px 10px;
}
@media screen and (max-width: 767px) {
  .worksSerialNavPrev {
    max-width: 100px;
  }
  .worksSerialNavNext {
    max-width: 100px;
  }
}
/* ------------------------------
????????????index
------------------------------ */
.categoryindexwrap {
  margin-top: -40px;
  width: 100%;
  height: auto;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  padding-top: 100px;
  padding-bottom: 110px;
}
.categoryindexwrap .cateTopMaincopy {
  font-size: 30px;
  text-align: center;
  margin-right: 30px;
  margin-left: 30px;
  margin-bottom: 15px;
}
.categoryindexwrap .cateTopSubcopy {
  font-size: 18px;
  font-weight: lighter;
  text-align: center;
  margin-right: 30px;
  margin-left: 30px;
  line-height: 2;
}
/* ???? */
.recinquiry {
  clear: both;
}
.career_indexlist {
  margin-bottom: 10px !important;
  padding: 0 10px;
}
.career_indexlist a {
  width: 100%;
  border: 2px solid #ddd;
  display: block;
  padding: 20px;
  text-align: center;
  color: #333 !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
.career_category label {
  width: 100%;
}
.career_indexlist a:hover {
  background-color: #ccc;
}
.career .recinquiry {
  clear: both;
  margin-top: 25px;
}
.career_formlink a {
  display: block;
  border: 1px solid #1277be;
  padding: 20px;
  text-align: center;
  color: #1277be !important;
  text-decoration: none;
  font-size: 18px;
  font-weight: bold;
  margin: 10px 10px 50px;
  transition: all 0.5s;
}
.career_formlink a:hover {
  background-color: #1277be;
  color: #fff !important;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .categoryindexwrap .cateTopMaincopy {
    font-size: 25px;
    margin-right: 10px;
    margin-left: 10px;
  }
  .categoryindexwrap .cateTopSubcopy {
    font-size: 15px;
    margin-right: 10px;
    margin-left: 10px;
  }
}
/* ------------------------------
???????????
------------------------------ */
.landusageindexbanner li a.bigbannerlink {
  background-position: center center;
  background-size: cover;
}
.landusageindexbannerwrap a.bigbannerlink {
  display: block;
  padding: 50px;
  text-align: center;
  color: #333333 !important;
  font-size: 24px;
  margin: 0 30px 10px;
  border: 1px solid #ccc;
  font-weight: normal;
}
.landusageindexbannerwrap a p {
  margin: 0;
}
.landusageindexbannerwrap a span {
  font-size: 16px;
  display: block;
  font-weight: normal;
}
.landusageindexbannerwrap a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.seminarlist {
  margin: 0 30px 60px;
}
.seminarlist h2 {
  font-size: 16px;
}
.entryColumn a.athomebanner {
  display: block;
  text-align: center;
  color: #333;
  border: 1px solid #ccc;
  padding: 20px;
}
.entryColumn a.athomebanner:hover {
  text-decoration: none;
  color: #225566;
}
a.athomebanner img {
  max-width: 100%;
}
a.athomebanner span {
  display: block;
}
/* ------------------------------
????????b
------------------------------ */
.entryColumn a.athomelinks {
  display: block;
  background-color: #0d5e96;
  color: #fff !important;
  padding: 20px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.entryColumn a.athomelinks:hover {
  background-color: #07395c;
  text-decoration: none;
}

/* ------------------------------
???????????
------------------------------ */
table.voiceunittable th {
  text-align: right;
  padding: 0 10px !important;
}
.voicewrap {
  background-color: #eee;
  margin-right: 10px;
  margin-bottom: 30px;
  margin-left: 10px;
  overflow: hidden;
  padding: 30px;
}
.voicewrap .bigcopy {
  font-size: 22px;
  font-weight: bold;
  color: #333;
  margin-bottom: 10px;
  line-height: 1.6;
}
.voicewrap .namewrap {
  text-align: right;
  display: block;
  font-size: 22px;
  margin-bottom: 8px;
  line-height: 1.5;
  margin-bottom: 15px;
}
.voicewrap .namewrap span {
  font-size: 16px;
  padding-right: 10px;
}
.voicewrap .jobdescription {
  display: block;
  font-size: 14px;
  color: #fff;
  background-color: #1277be;
  padding: 8px 20px;
  margin: -30px -30px 15px;
}
.voicewrap .qualification {
  text-align: right;
  display: block;
  margin-bottom: 0px;
  font-size: 12px;
}
.voicewrap .profilebox {
  background-color: #fff;
  padding: 15px 25px;
  margin-top: 20px;
  font-weight: lighter;
  font-size: 14px;
}
.massagescopyjp {
  display: block;
  font-size: 30px;
  font-weight: lighter;
  text-align: center;
  margin-top: 35px;
  margin-bottom: 5px;
}
.massagescopyen {
  display: block;
  font-size: 15px;
  letter-spacing: 10px;
  font-weight: lighter;
  text-align: center;
  margin-bottom: 45px;
  font-family: "Josefin Sans", sans-serif;
}

@media screen and (max-width: 767px) {
  .voicewrap {
    padding: 20px;
  }
  .voicewrap .jobdescription {
    margin: -20px -20px 15px;
  }
  .voicewrap .qualification span,
  .voicewrap .namewrap span {
    display: block;
  }
  .voicewrap .namewrap span {
    padding-right: 0px;
  }
  .massagescopyjp {
    font-size: 20px;
    margin-top: 30px;
  }
  .massagescopyen {
    font-size: 12px;
    letter-spacing: 3px;
    margin-bottom: 35px;
  }
}

/* ------------------------------
??????���??`?��??????���?
------------------------------ */
dl.footerSitemap {
  font-size: 12px;
}
dl.footerSitemap dt {
  margin-top: 20px;
  margin-bottom: 5px;
  font-weight: bold;
}
dl.footerSitemap dt:first-child {
  margin-top: 0px;
}
dl.footerSitemap dd {
  margin-bottom: 8px;
  margin-left: 10px;
}
dl.footerSitemap a {
  color: #666;
}
dl.footerSitemap dt a {
  color: #4b7eaa;
}
/* ------------------------------
????????
------------------------------ */
article.newswrap {
  border-bottom: 1px solid #ddd;
  margin-bottom: 30px;
  padding-bottom: 20px;
}
.newswrap .pageHeader {
  margin-right: 15px;
  margin-left: 15px;
}
.newstitile {
  font-size: 18px;
  margin-top: 5px;
}
.newswrap .newstitile a {
  color: #333;
  text-decoration: underline;
}
.newswrap .entryInfo {
  margin-bottom: 5px;
}

/* ------------------------------
??????`??
------------------------------ */
body {
  background: #fff;
  color: #333;
  font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic Pro",
    "????��?? Pro W3", Meiryo, "????", "??? ?��????���?", "MS PGothic", Verdana,
    sans-serif;
  font-size: 14px;
}
/* ?????O?? */
a {
  border: none;
  color: #006dd9;
  text-decoration: none;
}
a:visited {
  color: #315ab6;
  text-decoration: none;
}
a:active {
  color: #006dd9;
  text-decoration: none;
}
a:hover {
  color: #006dd9;
  text-decoration: underline;
}
/* ??????` */
.acms-container {
  max-width: 1170px;
}
.acms-container .acms-container {
  padding: 0;
}
.narrow-container {
  margin: 0 auto;
  max-width: 960px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 1170px) {
  .acms-container {
    padding-left: 20px;
    padding-right: 20px;
  }
  .sp-container {
    padding-right: 20px;
    padding-left: 20px;
  }
  .acms-grid-r .sp-container {
    padding-right: 20px;
    padding-left: 20px;
  }
  .sp-container .sp-container {
    padding: 0;
  }
  .sp-container .acms-container .sp-container {
    padding: 0;
  }
}
/* ?????`????? */
@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  20% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@-moz-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  20% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  20% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
/* ------------------------------
?????????
------------------------------ */
.btn {
  background: #999999;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 8px 15px;
  border-radius: 3px;
}
.btn:hover,
.btn:visited {
  color: #fff;
  text-decoration: none;
}
.btn:focus,
.btn:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.btn:hover {
  background-color: #999999;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffc1c1c1', endColorstr='#ff999999', GradientType=0);
  background-image: -moz-linear-gradient(top, #c1c1c1, #999999);
  background-image: -ms-linear-gradient(top, #c1c1c1, #999999);
  background-image: -o-linear-gradient(top, #c1c1c1, #999999);
  background-image: -webkit-gradient(
    linear,
    center top,
    center bottom,
    from(#c1c1c1),
    to(#999999)
  );
  background-image: -webkit-linear-gradient(top, #c1c1c1, #999999);
  background-image: linear-gradient(top, #c1c1c1, #999999);
  color: #ffffff;
}
.btn:active,
.btn:focus {
  background: #878787;
}
/* ?????????? */
.btnAttention {
  background: #ff9a00;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 8px 15px;
  border-radius: 3px;
}
.btnAttention:hover,
.btnAttention:visited {
  color: #fff;
  text-decoration: none;
}
.btnAttention:focus,
.btnAttention:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.btnAttention:hover {
  background-color: #ff9a00;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffdd87d', endColorstr='#ffff9a00', GradientType=0);
  background-image: -moz-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: -ms-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: -o-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: -webkit-gradient(
    linear,
    center top,
    center bottom,
    from(#fdd87d),
    to(#ff9a00)
  );
  background-image: -webkit-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: linear-gradient(top, #fdd87d, #ff9a00);
  color: #ffffff;
}
.btnAttention:active,
.btnAttention:focus {
  background: #eda800;
}
/* ?????????? */
.btnLarge {
  background: #999999;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 15px 20px;
  text-align: center;
  border-radius: 5px;
  font-size: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background-color 0.25s linear;
  transition: background-color 0.25s linear;
}
.btnLarge:hover,
.btnLarge:visited {
  color: #fff;
  text-decoration: none;
}
.btnLarge:focus,
.btnLarge:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.btnLarge:hover {
  background: #777777;
}
.btnLarge:active,
.btnLarge:focus {
  background: #878787;
}
/* ?????????? ????? */
.btnAttentionLarge {
  background: #ff9a00;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 15px 20px;
  text-align: center;
  border-radius: 5px;
  font-size: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background-color 0.25s linear;
  transition: background-color 0.25s linear;
}
.btnAttentionLarge:hover,
.btnAttentionLarge:visited {
  color: #fff;
  text-decoration: none;
}
.btnAttentionLarge:focus,
.btnAttentionLarge:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.btnAttentionLarge:hover {
  background: #ff7e00;
}
.btnAttentionLarge:active,
.btnAttentionLarge:focus {
  background: #eda800;
}
/* ???????���?????360px????? */
.btnBlockLarge {
  width: 100%;
  background: #999999;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 15px 20px;
  text-align: center;
  border-radius: 5px;
  font-size: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background-color 0.25s linear;
  transition: background-color 0.25s linear;
}
.btnBlockLarge:hover,
.btnBlockLarge:visited {
  color: #fff;
  text-decoration: none;
}
.btnBlockLarge:focus,
.btnBlockLarge:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.btnBlockLarge:hover {
  background: #777777;
}
.btnBlockLarge:active,
.btnBlockLarge:focus {
  background: #878787;
}
/* ???????���?????360px????? ????? */
.btnAttentionBlockLarge {
  width: 100%;
  background: #ff9a00;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 15px 20px;
  text-align: center;
  border-radius: 5px;
  font-size: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background-color 0.25s linear;
  transition: background-color 0.25s linear;
}
.btnAttentionBlockLarge:hover,
.btnAttentionBlockLarge:visited {
  color: #fff;
  text-decoration: none;
}
.btnAttentionBlockLarge:focus,
.btnAttentionBlockLarge:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.btnAttentionBlockLarge:hover {
  background: #ff7e00;
}
.btnAttentionBlockLarge:active,
.btnAttentionBlockLarge:focus {
  background: #eda800;
}
@media (min-width: 768px) {
  .btnBlockLarge {
    max-width: 360px;
  }
  .btnAttentionBlockLarge {
    max-width: 360px;
  }
}
@media (max-width: 767px) {
  .btnSearchBlock {
    display: block;
    width: 100%;
    max-width: 360px;
    margin: 0 auto;
    padding: 15px 20px;
    font-size: 20px;
  }
}
/* ??`???`????? */
.homeBtn {
  margin: 20px 0 10px;
}
.btnBorder {
  display: inline-block;
  padding: 7px 10px;
  color: #333;
  font-size: 16px;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.btnBorder [class*="acms-icon-"] {
  color: #ccc;
  font-size: 14px;
}
.btnBorder:hover {
  text-decoration: none;
}
/* ------------------------------
??????`?????????
------------------------------ */
.pageTitleWrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 120px;
  color: #fff;
  background: url(../images/bg_other.jpg) #333333 no-repeat center;
  background-size: cover;
}
.pageTitleFilter {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(17, 119, 190, 0.4);
}
.pageTitleInner {
  display: table-cell;
  position: relative;
  padding: 15px 50px;
  vertical-align: middle;
}
.pageTitle {
  margin: 10px 0 5px 0;
  font-size: 25px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 4px;
}
.pageTitle a {
  color: #fff;
}
.pageDescription {
  margin: 0px 0;
  font-size: 15px;
  line-height: 1.5;
  font-family: "Josefin Sans", sans-serif;
}
.pageTitleInner .acms-container {
  padding-right: 40px;
  padding-left: 40px;
}
@media (min-width: 768px) {
  .pageTitleWrapper {
    height: 180px;
  }
}
@media (max-width: 767px) {
  .pageDescription,
  span.editLink {
    display: none;
  }
  .pageTitle {
    text-align: center;
    font-size: 18px;
  }
}
/* ------------------------------
??????`????`
------------------------------ */
.pager {
  list-style: none;
  margin: 0 -5px 50px -5px;
  padding: 0;
  text-align: center;
}
.pager li {
  display: inline-block;
  margin: 0 5px;
}
.pager li.cur {
  /* ?F?????��?? */
  padding: 5px 20px;
  color: #fff;
  background: #999999;
  border-radius: 3px;
}
.pagerLink {
  display: block;
  padding: 5px 20px;
  color: #333;
  border-radius: 3px;
  background: #e5e5e5;
}
.pagerLink:visited,
.pagerLink:focus,
.pagerLink:active {
  color: #333;
}
.pagerLink:hover {
  color: #fff;
  text-decoration: none;
  background: #333;
}
.pagerLinkForward {
  float: right;
}
.pagerLinkPrev {
  float: left;
}
@media screen and (min-width: 768px) {
  .pagerLink {
    padding: 5px 10px;
  }
  .pager li.cur {
    /* ?F?????��?? */
    padding: 5px 10px;
  }
}
/* ????? */
.serialNav {
  list-style: none;
  margin: -25px 0 60px 0;
  padding: 0;
}
.serialNav .serialNavItem {
  display: block;
  float: none;
}
.serialNav .serialNavItemPrev {
  text-align: left;
}
.serialNav .serialNavItemNext {
  text-align: right;
}
.serialNav a {
  display: block;
  padding: 25px 0;
  border-bottom: 1px solid #e5e5e5;
  color: #333;
}
.serialNav a:hover,
.serialNav a:visited,
.serialNav a:focus,
.serialNav a:active {
  color: inherit;
  text-decoration: none;
}
.serialNav a:hover {
  background: #e5e5e5;
}
@media screen and (min-width: 768px) {
  .serialNav {
    margin: 0 0 60px 0;
    border: 0;
  }
  .serialNav .serialNavItemPrev {
    float: left;
  }
  .serialNav .serialNavItemNext {
    float: right;
  }
  .serialNav a {
    display: inline;
    border: 0;
  }
  .serialNav a:hover {
    text-decoration: underline;
    background: 0;
  }
}
/* ------------------------------
???????���????
------------------------------ */
.topicpath {
  margin-bottom: 40px;
  padding: 10px 50px;
  background: #f5f5f5;
}
.topicpathList {
  list-style: none;
  margin: 0 auto;
}
.topicpathItem {
  float: left;
  padding: 0 10px 0 23px;
  background: url(../images/marker/icon_arrow.png) no-repeat left center;
}
.topicpathItem:first-child {
  padding: 0 10px 0 0;
  background: 0;
}
.topicpathLink {
  color: #666;
  font-size: 14px;
}
.topicpathLink:visited,
.topicpathLink:focus,
.topicpathLink:active {
  color: #666;
}
@media screen and (max-width: 479px) {
  .topicpath {
    padding: 10px 0px;
  }
}
/* ------------------------------
???????????`
------------------------------ */
.slick-slide {
  width: 100%;
}
.slick-slider {
  padding: 0 0 12px 0;
}
.slick-slider img {
  margin: 0 auto;
}
.js-main-slider {
  height: 200px;
  /* ?????��???���???? */
  overflow: hidden;
  /* ?????��???���???? */
}
.slick-slide:hover {
  cursor: pointer;
}
.mainSliderImage {
  height: 200px;
  background-size: cover;
}
.mainSliderImage a:hover {
  text-decoration: none;
}
.mainSliderTextOuter {
  height: 100%;
}
.mainSliderTextWrap {
  display: table;
  width: 100%;
  height: 100%;
}
.mainSliderTextInner {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}
.mainSliderMainCopy {
  margin: 0;
  color: #fff;
  font-weight: bold;
  font-size: 16px;
}
.mainSliderSideCopy {
  margin: 0;
  color: #fff;
  font-size: 14px;
}
/* ???????`????? */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 19px;
  height: 60px;
  margin-top: -29px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}
.slick-prev {
  left: 10px;
  background: url(../images/marker/icon_white_arrow_left.png) no-repeat;
  z-index: 200;
}
.slick-next {
  right: 10px;
  background: url(../images/marker/icon_white_arrow_right.png) no-repeat;
  z-index: 200;
}
/* ??���?��????`????? */
.slick-dots {
  position: relative;
  margin: -35px 0 0 0;
  padding: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li {
  display: inline-block;
}
.slick-dots li button {
  content: "";
  position: relative;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 8px;
  font-size: 0;
  background: #fff;
  border-radius: 7px;
  border: 0;
}
.slick-dots li button:focus {
  outline: 0;
}
.slick-dots li:hover button {
  cursor: pointer;
}
.slick-dots li.slick-active button {
  background: #1277be;
}
.slick-dots button {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
@media screen and (min-width: 768px) {
  .slick-prev {
    left: 50px;
  }
  .slick-next {
    right: 50px;
  }
  .js-main-slider {
    height: 450px;
    /* ?????��???���???? */
  }
  .mainSliderImage {
    height: 450px;
  }
  .mainSliderMainCopy {
    font-size: 40px;
  }
  .mainSliderSideCopy {
    font-size: 24px;
  }
}
/* ------------------------------
??????????`??
------------------------------ */
.moduleSection {
  margin: 0 0 20px 0;
}
/* ??????? */
.moduleHeader {
  position: relative;
  margin: 0 0 10px;
  padding: 5px 0 10px;
  color: #333;
  border-bottom: 1px solid #ccc;
  text-align: center;
}
.moduleHeader h2 {
  font-size: 25px;
  font-weight: lighter;
  letter-spacing: 5px;
}
.moduleHeader + .summaryCustom,
.moduleHeader + .summaryDefault,
.moduleHeader + .entryColumn,
.moduleHeader + .pickupList,
.moduleHeader + .searchForm,
.moduleHeader + .banner {
  margin-top: 10px;
}
.moduleHeading {
  margin: 0;
  font-size: 18px;
}
a.moduleIndexLink {
  position: absolute;
  bottom: 5px;
  right: 0;
  color: #333;
  font-size: 16px;
}
a.moduleIndexLink [class*="acms-icon-"] {
  color: #ccc;
  font-size: 14px;
}
/* ------------------------------
????????
------------------------------ */
@media screen and (min-width: 768px) {
  /* ???? */
  a.acms-list-group-item {
    padding: 10px 10px 10px 10px;
    -webkit-transition: padding 0.15s ease-out;
    transition: padding 0.15s ease-out;
  }
  a.acms-list-group-item:hover {
    padding: 10px 10px 10px 13px;
    -webkit-transition: padding 0.25s ease-out;
    transition: padding 0.25s ease-out;
  }
}
/* ------------------------------
?????????`
------------------------------ */
.summaryDefault {
  margin: 0 0 20px 0;
  padding: 0;
  list-style: none;
  border-left: 1px solid #e5e5e5;
  border-top: 1px solid #e5e5e5;
}
.summaryDefaultEntry {
  float: left;
  width: 100%;
  padding: 10px;
  color: #333;
  border-right: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background-color 0.25s ease-out;
  transition: background-color 0.25s ease-out;
}
.summaryDefaultEntry.bl-hover {
  background: #f1f1f1;
}
.summaryTitle {
  margin: 0 0 10px 0;
  font-size: 16px;
}
.summaryDetail {
  margin: 0;
  line-height: 1.5;
  font-size: 14px;
}
@media screen and (min-width: 480px) {
  .summaryDefault {
    margin: 0 0 20px 0;
  }
  .summaryDefaultEntry {
    width: 50%;
  }
}
/* ------------------------------
??????���????���????
------------------------------ */
.pickupList {
  margin: 0;
  padding: 0;
  list-style: none;
}
.pickupList img {
  display: block;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
}
.pickupList img:hover {
  opacity: 0.75;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);
  filter: alpha(opacity=75);
}
/* ?��?` */
.banner {
  margin: 0;
  padding: 0;
  list-style: none;
}
.banner a {
  display: block;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
}
.banner a:hover {
  opacity: 0.75;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);
  filter: alpha(opacity=75);
}
.bannerListItem {
  margin: 0 0 20px 0;
}
.sub .bannerListItem {
  border: 1px solid #ddd;
  margin: 0 0 10px 0;
}
/* ------------------------------
??????���????
------------------------------ */
.headline {
  margin: 0 20px;
  border-style: none;
}
.headlineItem {
  line-height: 1.5;
  -webkit-transition: background-color 0.25s ease-out;
  transition: background-color 0.25s ease-out;
}
.headlineItem.bl-hover {
  background: #f1f1f1;
}
dl.headline dt {
  width: 120px;
  padding-top: 20px;
}
dl.headline dd {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 140px;
  padding-right: 20px;
  border-bottom: 1px dotted #ccc;
  line-height: 1.6;
}
dl.headline dd a {
  color: #333;
}
dl.headline time {
  font-family: "Merriweather", serif;
  color: #1277be;
  padding-left: 15px;
}

@media screen and (max-width: 479px) {
  /* ???????��??????? */
  /* ??���???? */
  .headlineItem {
    padding: 10px 0;
  }
  .headlineTitle {
    margin: 0;
  }
  dl.headline dd {
    padding-left: 0px;
    margin-left: 0px;
    padding-top: 10px;
  }
  dl.headline dt {
    float: none;
    text-align: left;
  }
  dl.headline time {
    padding: 0;
  }
}
/* ------------------------------
????????????`??
------------------------------ */
.searchForm .btnSearch {
  padding: 10px 20px;
  font-size: 16px;
  filter: none;
  /* IE??��????`??????????? */
  background: #333;
  color: #fff;
  border-radius: 0 4px 4px 0;
  border: 1px solid #333;
}
.searchForm .btnSearch:hover {
  background: #666;
}
.searchForm input[type="search"] {
  padding: 9px 10px;
  height: 40px;
  font-size: 16px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
input[type="search"].searchFormInput {
  padding-top: 5px;
  padding-bottom: 4px;
  font-size: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* ------------------------------
??????????`
------------------------------ */
.entry {
  margin: 0 0 25px 0;
}
.pageHeader {
  margin: 0 0 20px 0;
}
.entryInfo {
  margin-top: 0;
  font-size: 14px;
}
/* ???????`?????���??? */
.entryCategory,
.entryNew {
  font-size: 14px;
}
/* ??????? */
.entryTitle {
  margin: 0px 0 20px;
  color: #5290c7;
  border: 1px solid #8eb9d9;
  font-size: 20px;
  font-weight: bold;
  padding: 35px 35px;
}
.entryTitle a {
  color: #5290c7;
}
.acms-entry h2.entryTitle {
  padding: 0;
}
/* ??????`?��??????? */
.entryColumn {
  color: #555;
}
.entryColumn h2 {
  margin: 70px -10px 25px;
  padding: 15px 25px;
  font-size: 16px;
  color: #666;
  background-color: #e0ebf3;
}
.entryColumn h2:first-child {
  margin-top: 20px;
}
.engineeringworks .entryColumn h2:first-child,
.engineering .entryColumn h2:first-child {
  margin-top: 0px;
}
.entryColumn h2.moduleHeading {
  margin: 0;
  padding: 0;
  border: 0;
}
.entryColumn h3 {
  margin: 50px 10px 20px;
  padding: 0px 10px 5px;
  font-size: 16px;
  color: #333;
  border-bottom: 1px solid #999;
}
.entryColumn h3.lighter {
  font-weight: lighter;
  font-size: 30px;
  margin-bottom: 20px;
  border-bottom-style: none;
  margin-top: 15px;
  margin-left: 0px;
  color: #1277be;
}
.entryColumn h3.colorline {
  color: #1277be;
  border-bottom-color: #1277be;
  margin-top: 50px;
}
.entryColumn h3.noTmg {
  margin-top: 0px !important;
}
.entryColumn .acms-grid-r h3:first-child {
  margin-top: 20px;
}

.entryColumn a:link {
  color: #006dd9;
  text-decoration: none;
}
.entryColumn a:hover,
.entryColumn a:focus,
.entryColumn a:active {
  text-decoration: underline;
}
.entryColumn a:visited {
  color: #315ab6;
  text-decoration: none;
}
/* ???? */
.entryColumn p {
  margin-top: 0;
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.9;
  font-weight: normal;
}
/* ??????`?????? */
.entryColumn p.entryBtn {
  margin-bottom: 10px;
}
.entryColumn p.entryBtn a {
  background: #999999;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 8px 15px;
  border-radius: 3px;
}
.entryColumn p.entryBtn a:hover,
.entryColumn p.entryBtn a:visited {
  color: #fff;
  text-decoration: none;
}
.entryColumn p.entryBtn a:focus,
.entryColumn p.entryBtn a:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.entryColumn p.entryBtn a:hover {
  background-color: #999999;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffc1c1c1', endColorstr='#ff999999', GradientType=0);
  background-image: -moz-linear-gradient(top, #c1c1c1, #999999);
  background-image: -ms-linear-gradient(top, #c1c1c1, #999999);
  background-image: -o-linear-gradient(top, #c1c1c1, #999999);
  background-image: -webkit-gradient(
    linear,
    center top,
    center bottom,
    from(#c1c1c1),
    to(#999999)
  );
  background-image: -webkit-linear-gradient(top, #c1c1c1, #999999);
  background-image: linear-gradient(top, #c1c1c1, #999999);
  color: #ffffff;
}
.entryColumn p.entryBtn a:active,
.entryColumn p.entryBtn a:focus {
  background: #878787;
}
/* ?????????? */
.entryColumn p.entryBtnAttention a {
  background: #ff9a00;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  border: 0;
  display: inline-block;
  padding: 8px 15px;
  border-radius: 3px;
}
.entryColumn p.entryBtnAttention a:hover,
.entryColumn p.entryBtnAttention a:visited {
  color: #fff;
  text-decoration: none;
}
.entryColumn p.entryBtnAttention a:focus,
.entryColumn p.entryBtnAttention a:active {
  color: #fff;
  box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
}
.entryColumn p.entryBtnAttention a:hover {
  background-color: #ff9a00;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffdd87d', endColorstr='#ffff9a00', GradientType=0);
  background-image: -moz-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: -ms-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: -o-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: -webkit-gradient(
    linear,
    center top,
    center bottom,
    from(#fdd87d),
    to(#ff9a00)
  );
  background-image: -webkit-linear-gradient(top, #fdd87d, #ff9a00);
  background-image: linear-gradient(top, #fdd87d, #ff9a00);
  color: #ffffff;
}
.entryColumn p.entryBtnAttention a:active,
.entryColumn p.entryBtnAttention a:focus {
  background: #eda800;
}
.entryColumn p.summaryTitle {
  margin: 0 0 10px 0;
}
.entryColumn p.summaryDetail {
  margin: 0 0 10px 0;
  font-size: 14px;
}
/* ??`??? */
.entryColumn .entry-container {
  margin: 0 10px;
}
.entryColumn table {
  width: 100%;
  margin: 0 0 30px 0;
}
.entryColumn table.tableHistory {
  table-layout: fixed;
}
.entryColumn th,
.entryColumn td {
  display: block;
  padding: 5px 10px;
  text-align: left;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
  border-top: 1px solid #dfdfdf;
  vertical-align: top;
}
.entryColumn .acms-table-responsive {
  margin-bottom: 30px;
}
.entryColumn .acms-table-responsive th,
.entryColumn .acms-table-responsive td {
  display: table-cell;
  white-space: nowrap;
}
.entryColumn .acms-table-responsive table {
  margin: 0;
}
.entryColumn th {
  background: #f5f5f5;
}
/* ????���?`??? */
.entryColumn table.tableHistory tr {
  background: #fff;
}
.entryColumn table.tableHistory th,
.entryColumn table.tableHistory td {
  display: block;
}
.entryColumn table.tableHistory th {
  padding: 10px;
}
.entryColumn table.tableHistory td {
  padding: 10px 0;
}
.entryColumn table.tableHistory .tableHistoryImg {
  padding: 0 10px 10px 10px;
  display: block;
}
/* ???? */
.entryColumn ul {
  margin: 0 0 35px 10px;
  padding: 0 0 0 2em;
}
.entryColumn ul li {
  margin: 0 0 5px 0;
  font-size: 16px;
  line-height: 1.5;
}
.entryColumn ul.summaryDefault {
  padding: 0;
}
.entryColumn ul.summaryDefault li {
  margin: 0;
}
/* ???���??????? */
.entryColumn ol {
  margin: 0 0 25px 0;
  padding: 0 0 0 2.5em;
}
.entryColumn ol li {
  margin: 0 0 5px 0;
  font-size: 16px;
  line-height: 1.5;
}
/* ???x???? */
.entryColumn dl {
  margin-top: 0;
  margin-bottom: 30px;
}
.entryColumn dt {
  margin: 0 0 5px 0;
  font-size: 16px;
  white-space: normal;
}
.entryColumn dd {
  font-size: 16px;
  line-height: 1.5;
}
.acms-dl-line dd {
  border-bottom: dotted 1px #ccc;
}
.entryColumn dl.dtcolor {
  margin-bottom: 0px;
  margin-right: 15px;
  margin-left: 15px;
}
.entryColumn dl.dtcolor dt {
  color: #1277be;
}
.entryColumn dl.dtcolor dd {
  margin-bottom: 20px;
}

/* ???? */
.entryColumn blockquote {
  margin-bottom: 30px;
  padding: 15px 20px 15px 16px;
  font-size: 16px;
  line-height: 1.5;
  border-left: 4px solid #bfbfbf;
  background: #efefef;
}
/* ???`?????`?? */
.entryColumn pre {
  margin: 0 0 30px 0;
}
.entryColumn pre ol {
  margin: 0;
  padding: 0 0 0 2.5em;
}
.entryColumn pre ol li {
  line-height: 1.5;
}
/* ???��? */
.entryColumn hr {
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
/* ???���? */
.entryColumn .caption {
  margin: 0 0 20px 0;
  font-size: 12px;
}
@media screen and (min-width: 480px) {
  .entryColumn .tableHistoryImg {
    float: right;
  }
}
@media screen and (min-width: 768px) {
  .entryColumn th,
  .entryColumn td {
    display: table-cell;
    padding: 15px 20px;
    text-align: left;
    font-size: 16px;
    border-top: 1px solid #dfdfdf;
  }
  .entryColumn th {
    background: inherit;
  }
  .entryColumn tr:nth-child(odd) {
    background: #f5f5f5;
  }
}
/* ??????`??���??` */
.entryFooter {
  margin: 0 0 20px 0;
  padding: 10px;
  background: #f5f5f5;
}
/* ???? */
.entryTag {
  margin: 0 0 5px 0;
}
.entryTagIcon {
  float: left;
  color: #999;
}
.entryTagItem {
  float: left;
  margin: 0 0 0 10px;
}
/* SNS?????? */
.shareWrapper {
  float: right;
}
.shareText {
  display: inline;
  float: left;
  margin: 0;
}
/* SNS??????????? */
.shareList {
  display: inline;
  list-style: none;
  float: right;
  margin: 0;
  padding: 0;
}
.shareItem {
  display: inline-block;
  margin: 0 0 0 20px;
}
.shareItem a {
  color: #999;
  text-decoration: none;
}
.shareItem [class*="acms-icon"] {
  font-size: 16px;
  vertical-align: middle;
}
.shareItem .shareItemFacebook {
  /* Facebook */
  display: block;
  width: 22px;
  height: 22px;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  font-size: 16px;
  background: #3b5999;
  border-radius: 4px;
}
.shareItem .shareItemFacebook:before {
  vertical-align: middle;
}
.shareItem .shareItemTwitter {
  /* Twitter */
  display: block;
  width: 22px;
  height: 22px;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  font-size: 16px;
  background: #55acee;
  border-radius: 4px;
}
.shareItem .shareItemTwitter:before {
  vertical-align: middle;
}
.shareItem .shareItemGplus {
  /* Google + */
  display: block;
  width: 22px;
  height: 22px;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  font-size: 16px;
  background: #dd4b39;
  border-radius: 4px;
}
.shareItem .shareItemGplus:before {
  vertical-align: middle;
}
/* ?A?????i?????? */
.continueLink {
  margin: 0;
  font-size: 16px;
}
.continueLink a {
  display: inline-block;
  padding: 10px;
  color: #fff;
  line-height: 1.5;
  font-weight: bold;
  border-radius: 3px;
  background: #999;
}
.continueLink a [class*="acms-icon"] {
  margin: 0 10px 0 0;
}
.continueLink a:link,
.continueLink a:visited {
  color: #fff;
}
.continueLink a:hover,
.continueLink a:focus,
.continueLink a:active {
  color: #fff;
  text-decoration: none;
  background: #aaa;
}
@media screen and (min-width: 768px) {
  /* ???? */
  .entryTag {
    margin: 0;
  }
  /* ?A?????i?????? */
  .continueLink a {
    padding: 5px 10px;
    font-weight: normal;
  }
}
/* ------------------------------
??????????`??
------------------------------ */
.fieldTitle {
  padding: 0 10px;
}
.fieldTitle:first-child {
  margin: 0 0 10px 0;
}
/* ------------------------------
????????????
------------------------------ */
.sideTitle {
  margin-top: 0;
  font-size: 18px;
}
/* ------------------------------
??????????
------------------------------ */
/* ??? */
.realestateMap {
  overflow: hidden;
}
.realestateMap .js-s2d-ready,
.realestateMap [class*="column-map-"] {
  width: auto !important;
  max-width: 100%;
}
.realestateMap img[class*="column-map-"] {
  width: auto !important;
  max-width: 100%;
  height: auto;
}
.realestateMapEntry {
  margin: 0 10px;
}
.entryColumn table.realestateSearch {
  margin: 20px 0 30px 0;
}
@media screen and (min-width: 1024px) {
  .tableNowrap {
    white-space: nowrap;
  }
}
/* ?????E */
.summaryCustom {
  margin: 0 0 40px 0;
  padding: 0;
  list-style: none;
  border-left: 0px solid #e5e5e5;
}
ul.summaryCustom {
  padding: 0;
}
.summaryCustomEntry {
  padding: 10px !important;
}
.summaryCustomEntry:hover {
  background: #f5f5f5;
  -webkit-transition: background-color 0.25s linear;
  transition: background-color 0.25s linear;
}
.photo {
  margin: 0 0 7px 0;
}
p.photoTitle {
  margin: 0 5px;
  font-size: 12px;
  padding: 0;
  line-height: 1.4 !important;
}

p.photoTitle a {
  color: #333 !important;
}
.pickupTitle {
  color: #333;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  /* ?????? */
  .realestateSearch th,
  .realestateSearch td {
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .realestateSearch input {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
/* ------------------------------
?????????????
------------------------------ */
.contactBox p.message {
  margin: 0 0 35px 0;
  padding: 0 10px;
  font-weight: bold;
  color: #c41134;
}
.contactBox p.contactNo {
  margin: 0;
  font-size: 30px;
  font-weight: bold;
  color: #333;
}
.contactBox p.contactNo a {
  color: inherit;
}
.contactBox p.errorText {
  /* ????`?? */
  margin: 5px 0 0 0;
  color: #c41134;
}
.contactBox table.contactForm {
  border-right: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  border-left: 1px solid #e5e5e5;
}
.contactBox table.contactForm tr {
  background: #fff;
}
.birthinputform {
  width: 15%;
}
@media screen and (min-width: 480px) {
  .contactBox th,
  .contactBox td {
    display: table-cell;
  }
}
@media screen and (min-width: 768px) {
  .contactBox th {
    width: 260px;
  }
}
@media (max-width: 767px) {
  .acms-form input.birthinputform {
    width: 15%;
  }
}
/* ????���? */
.contactBox .mailStep {
  margin: 0 10px 35px 10px;
  padding: 0 10px;
  background: #e5e5e5;
  /* ??????`???O?? */
  counter-reset: mailStep;
}
.contactBox .mailStepItem {
  float: left;
  list-style: none;
  margin: 0 10px;
  padding: 18px 0 14px;
  color: #999;
  font-size: 16px;
  font-weight: bold;
  border-bottom: 4px solid transparent;
}
.contactBox .mailStepItem:before {
  /* ??????`???O?? */
  counter-increment: mailStep;
  content: counter(mailStep) ".";
}
.contactBox .mailStepItemCurrent {
  color: #333;
  border-bottom: 4px solid #333333;
}
@media screen and (min-width: 768px) {
  .contactBox .mailStep {
    height: 60px;
  }
}
/* ???���???? */
.formBtnBox {
  margin: 0 10px 50px 10px;
  text-align: center;
}
.formBtn {
  display: inline-block;
}
.formBtnReturn {
  float: left;
}
.formBtnSend {
  float: right;
}
@media screen and (min-width: 768px) {
  .formBtnReturn {
    float: none;
  }
  .formBtnSend {
    float: none;
    max-width: 360px;
    width: 100%;
  }
}
/* ???? */
.labelRequired {
  margin: 0 5px;
  padding: 2px 8px;
  color: #fff;
  font-size: 12px;
  border-radius: 3px;
  background: #c41134;
}
@media screen and (min-width: 768px) {
  .labelRequired {
    float: right;
  }
}
/* ------------------------------
??????���??`
------------------------------ */
/* ???????? */
.siteName {
  font-size: 24px;
  font-weight: bold;
  color: #c41134;
  text-align: center;
}
.siteName a {
  color: #c41134;
}
.siteName a:hover,
.siteName a:focus,
.siteName a:active,
.siteName a:visited {
  color: #c41134;
}
.siteLogo {
  display: inline-block;
  width: 80%;
  max-width: 350px;
  height: auto;
  margin: 0 10px 0 0;
  vertical-align: middle;
}
.siteNameText {
  display: inline;
  vertical-align: middle;
}
.editLink {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}
@media (min-width: 768px) {
  .siteName {
    font-size: 24px;
    margin: 35px 0;
    text-align: left;
  }
  .siteLogo {
    margin-left: 40px;
    width: 290px;
  }
  .header {
    display: table;
    width: 100%;
  }
  .headerLogo {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
  }
  .headerNav {
    display: table-cell;
    vertical-align: middle;
  }
}
@media (min-width: 1024px) {
  .headerLogo {
    display: table-cell;
  }
  .headerNav {
    display: table-cell;
  }
}
/* ------------------------------
?????????`?????
------------------------------ */
.headerLogo {
  /* ???????????��????? */
  padding: 48px 0 0 0;
}
.siteHeader {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  padding: 0 8px;
  border-top: 0px solid #333333;
  border-bottom: 1px solid #ddd;
  background: #fafafa;
  z-index: 100000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* ??��???r?????`????????? */
.navMenuBtn {
  display: inline-block;
  height: 44px;
  padding: 7px 5px;
  font-size: 20px;
  color: #333;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
a.navMenuBtn {
  color: #333;
}
.navMenuBtn:hover {
  text-decoration: none;
}
.navMenuBtn .acms-icon-sort {
  display: inline-block;
}
.navMenuBtnText {
  margin: 0 0 0 5px;
  font-size: 11px;
  font-weight: bold;
  color: #333;
  vertical-align: middle;
  display: inline-block;
}
/* ??��???r??���??` ???????? */
.navMenuAction {
  display: table;
  float: right;
  margin: 0;
  padding: 0;
}
.navMenuActionItem {
  display: table-cell;
  width: 44px;
  height: 44px;
  vertical-align: middle;
  text-align: center;
  font-size: 20px;
  color: #333333;
}
.navMenuActionLink {
  color: #333333;
}
.navMenuActionLink:hover,
.navMenuActionLink:active,
.navMenuActionLink:visited,
.navMenuActionLink:focus {
  color: #333333;
  text-decoration: none;
}
.navbar {
  display: none;
}
.navbar.acms-admin-module-edit-wrapper {
  z-index: 101;
}
.navbar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.navbar li a {
  display: block;
  padding: 10px;
  color: #333;
  font-size: 16px;
}
.navbar li a:hover,
.navbar li a:focus,
.navbar li a:active {
  text-decoration: none;
  color: #fff;
  background: #1277be;
}
.navbar li li.navspecialsite {
  background: #0e529f;
}
@media (min-width: 1024px) {
  .header {
    height: 100px;
  }
  .navbar {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
  }
  .navbar > ul {
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
    border-right: 1px solid #eee;
  }
  .navbar li {
    float: left;
    position: relative;
    margin: 0;
    vertical-align: middle;
    text-align: center;
    width: calc(100% / 9);
    box-sizing: border-box;
    border-left: 1px solid #eee;
  }
  .navbar li ul {
    /* ???A??��� */
    display: none;
    position: absolute;
    left: 0;
    min-width: 100%;
  }
  .navbar li li {
    margin: 0;
  }
  .navbar li a {
    /* ??A??���?��??��? */
    padding: 0;
    border-top: 4px solid transparent;
    border-bottom: 1px solid transparent;
    -webkit-transition: border 0.25s ease-out;
    transition: border 0.25s ease-out;
  }
  .navbar li a:hover,
  .navbar li a:focus,
  .navbar li a:active {
    color: #333;
    background: transparent;
  }
  .navbar li.stay a {
    /* ??A??���?��??��? */
    border-bottom: 1px solid #1277be;
  }
  .navbar li.stay a.btnAttention {
    border: 0;
  }
  .navbar li:hover ul {
    /* ???A??��� */
    display: block;
    z-index: 10000;
    -webkit-animation: 0.8s fade-in;
    -moz-animation: 0.8s fade-in;
    -o-animation: 0.8s fade-in;
    animation: 0.8s fade-in;
  }
  .navbar li:hover a {
    /* ??A??���?��??��? */
    border-bottom: 1px solid #1277be;
  }
  .navbar li:hover a.btnAttention {
    border: 0;
  }
  .navbar li:hover li a {
    border: 0;
  }
  .navbar li li {
    /* ???A??���??? */
    display: block;
    float: none;
    text-align: left;
    background: #1277be;
    border-top: 1px solid #0d5e96;
    width: auto;
    border-left: none;
  }
  .navbar li li:first-child {
    border: 0;
  }
  .navbar ul li li a {
    margin: 0;
    padding: 10px 15px;
    color: #fff;
    border: 0;
    font-size: 12px;
    white-space: nowrap;
  }
  .navbar ul li li:last-child {
    border-radius: 0 0 5px 5px;
  }
  .navbar li li a:hover {
    color: #fff;
    border: 0;
    background: #0d5e96;
  }
  .navbar a.btnAttention {
    /* ???????????? */
    background: #ff9a00;
    font-weight: bold;
    color: #fff;
    line-height: 1.2;
    display: inline-block;
    padding: 8px 15px;
    border-radius: 3px;
    border: 0;
  }
  .navbar a.btnAttention:hover,
  .navbar a.btnAttention:visited {
    color: #fff;
    text-decoration: none;
  }
  .navbar a.btnAttention:focus,
  .navbar a.btnAttention:active {
    color: #fff;
    box-shadow: inset 0px 1px 3px 0px rgba(0, 0, 0, 0.5);
  }
  .navbar a.btnAttention:hover {
    background-color: #ff9a00;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffdd87d', endColorstr='#ffff9a00', GradientType=0);
    background-image: -moz-linear-gradient(top, #fdd87d, #ff9a00);
    background-image: -ms-linear-gradient(top, #fdd87d, #ff9a00);
    background-image: -o-linear-gradient(top, #fdd87d, #ff9a00);
    background-image: -webkit-gradient(
      linear,
      center top,
      center bottom,
      from(#fdd87d),
      to(#ff9a00)
    );
    background-image: -webkit-linear-gradient(top, #fdd87d, #ff9a00);
    background-image: linear-gradient(top, #fdd87d, #ff9a00);
    color: #ffffff;
    border: 0;
  }
  .navbar a.btnAttention:active,
  .navbar a.btnAttention:focus {
    background: #eda800;
  }
}
@media (min-width: 1024px) {
  .headerLogo {
    padding: 0;
  }
  .navbar ul li a {
    font-size: 14px;
    padding-top: 8px;
    padding-bottom: 11px;
  }
}
@media (min-width: 1440px) {
  .navbar ul li a {
    font-size: 14px;
    padding-top: 5px;
    padding-bottom: 6px;
  }
}
@media (max-width: 1023px) {
  /* ????????��? */
  #nav {
    padding: 0px 0px 100px 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #d8dde4 !important;
    color: #333;
  }
  .js-nav body {
    width: 100%;
    overflow: hidden;
  }
  .js-nav #nav {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .offcanvasNav {
    /* ?????`?��?????`????? */
    margin: 0 0 20px 0;
  }
  .offcanvasNav ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .offcanvasNav li {
    display: block;
    padding: 10px;
    font-size: 16px;
    border-top: 1px solid #ccc;
  }
  .offcanvasNav li.navbarBtn {
    border: 0;
  }
  .offcanvasNav li.stay {
    background-color: #69acd7;
  }
  .lt-ie9 .offcanvasNav li.stay,
  .no-js .offcanvasNav li.stay {
    background: #e5e5e5;
  }
  .offcanvasNav li:first-child {
    border: 0;
  }
  .offcanvasNav li ul {
    display: none;
  }
  .offcanvasNav a {
    display: block;
    margin: -10px;
    padding: 10px;
    color: #222;
  }
  .offcanvasNav a:hover {
    text-decoration: none;
  }
  .offcanvasNav a.btnAttention {
    border-top: 0;
    border-radius: 0;
    font-weight: normal;
  }
  .offcanvasNav a.btnAttention:hover {
    background: #ff9a00;
  }
  .lt-ie9 .offcanvasNav a,
  .no-js .offcanvasNav a {
    color: #333;
  }
  /* ????????��???��?`?? */
  .offcanvasBar .moduleHeader {
    color: #fff;
    border-bottom: 2px solid #fff;
  }
  .lt-ie9 .offcanvasBar .moduleHeader,
  .no-js .offcanvasBar .moduleHeader {
    /* IE8???? */
    color: #333;
    border-bottom: 2px solid #333;
  }
  .offcanvasBar .sideListLink {
    color: #fff;
  }
  .lt-ie9 .offcanvasBar .sideListLink,
  .no-js .offcanvasBar .sideListLink {
    /* IE8???? */
    color: #333;
  }
  .offcanvasBar .sideListLink:hover,
  .offcanvasBar .sideListLink:visited,
  .offcanvasBar .sideListLink:focus,
  .offcanvasBar .sideListLink:active {
    color: #fff;
    background: 0;
  }
  .lt-ie9 .offcanvasBar .sideListLink:hover,
  .lt-ie9 .offcanvasBar .sideListLink:visited,
  .lt-ie9 .offcanvasBar .sideListLink:focus,
  .lt-ie9 .offcanvasBar .sideListLink:active,
  .no-js .offcanvasBar .sideListLink:hover,
  .no-js .offcanvasBar .sideListLink:visited,
  .no-js .offcanvasBar .sideListLink:focus,
  .no-js .offcanvasBar .sideListLink:active {
    /* IE8???? */
    color: #333;
  }
  .offcanvasBar .pickupTitle {
    margin: 0;
    color: #fff;
    font-size: 16px;
  }
  .offcanvasBar .pickupTitle a {
    color: inherit;
  }
  .lt-ie9 .offcanvasBar .pickupTitle a {
    color: #333;
  }
  .offcanvasBar .btnSearch {
    background: #999;
    border: 1px solid #666;
  }
  .offcanvasBar .snsList {
    margin: 0 -5px;
  }
  .js-nav .offCanvasShadow {
    /* ????????��??r?????? */
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 100000;
    -webkit-transition: background 0.25s linear;
    transition: background 0.25s linear;
  }
  /* ????????��????]????????? */
  .js-ready #nav {
    position: fixed;
    transition: left 500ms ease;
  }
  .js-ready #outer-wrap {
    left: 0;
    transition: left 500ms ease;
  }
  .js-ready #inner-wrap {
    transition: left 500ms ease;
  }
  .js-ready .siteHeader {
    right: 0;
    transition: right 500ms ease;
  }
  /* ????????��????_????????? */
  .js-nav #nav {
    left: 0;
    z-index: 10000;
  }
  .js-nav .siteHeader {
    right: -70%;
  }
  /* JS???o?????O??????????h?????���???? */
  .no-js #nav {
    position: static;
    padding: 10px 20px;
  }
  /* IE8???? */
  .lt-ie9 #nav {
    position: static;
    padding: 10px 0;
  }
  .lt-ie9 .header {
    width: 100%;
  }
  .lt-ie9 .headerLogo,
  .lt-ie9 .headerNav {
    display: block;
    width: 100%;
  }
}
/* ------------------------------
??????���??`
------------------------------ */
/* ??????????T?????? */
.suggestBox {
  background: #ddd;
}
.suggestInner {
  display: table;
  width: 100%;
  padding: 15px 0;
}
.suggestItem {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.suggestText {
  margin: 0 0 10px 0;
  line-height: 1.5;
  font-size: 14px;
}
.suggestTel {
  margin: 0 0 10px 0;
  font-size: 24px;
  font-weight: bold;
  color: #666;
}
.suggestTel a {
  color: inherit;
}
.suggestBtn {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .suggestInner {
    padding: 0;
  }
  .suggestItem {
    padding: 30px 10px;
  }
  .suggestTel {
    margin: 0;
  }
  .suggestHalf {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
  }
}
/* ??���??`???????? */
.footWrapper {
  margin-top: 50px;
  padding: 50px 0;
  background-color: #d8dde4;
}
.companyAbout {
  margin: 0 0 30px 0;
  color: #fff;
}
.companyName {
  margin: 0 0 20px 0;
  color: #333;
  font-size: 20px;
  font-style: normal;
}
.companyDetail {
  margin: 0 0 2px 0;
  padding: 0;
  color: #333;
  font-size: 13px;
  font-style: normal;
}
.companyDetail a {
  color: #333;
}
.companyDetail a:hover {
  text-decoration: underline;
}
.copylighttxt {
  font-size: 9px;
  color: #b8bcc3;
}
/* ??`?????????????? */
.pageTopBtn {
  display: block;
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 44px;
  height: 44px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: url(../images/marker/btn_pageTop.png) no-repeat center;
  transform: translateZ(0);
  z-index: 1000;
  opacity: 0;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
  filter: alpha(opacity=0);
  -webkit-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}
.no-js .pageTopBtn {
  /* js???o???���h???��?? */
  opacity: 0.6;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=60);
  filter: alpha(opacity=60);
}
.pageTopBtnAppear {
  opacity: 1;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100);
  filter: alpha(opacity=100);
}
@media screen and (max-width: 767px) {
  .pageTopBtn {
    display: none;
  }
  .companyAbout {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .pageTopBtn:hover {
    opacity: 0.8;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);
    filter: alpha(opacity=80);
    -webkit-transition: opacity 0.25s linear;
    transition: opacity 0.25s linear;
  }
}
/* ??���??`???SNS?????????��??? */
.snsList {
  list-style: none;
  margin: 0 -5px 30px 15px;
  padding: 0;
}
.snsListItem {
  float: left;
  margin: 0 5px;
}
.snsListItem a:hover,
.snsListItem a:visited,
.snsListItem a:active,
.snsListItem a:focus {
  text-decoration: none;
}
/* ???NSNS????? */
.snsListItem .snsListFacebook {
  /* Facebook */
  display: block;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 1.5;
  font-size: 19px;
  color: #fff;
  border-radius: 4px;
  background: #3b5999;
}
.snsListItem .snsListFacebook:before {
  vertical-align: middle;
}
.snsListItem .snsListTwitter {
  /* Twitter */
  display: block;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 1.5;
  font-size: 19px;
  color: #fff;
  border-radius: 4px;
  background: #55acee;
}
.snsListItem .snsListTwitter:before {
  vertical-align: middle;
}
.snsListItem .snsListGplus {
  /* Google + */
  display: block;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 1.5;
  font-size: 19px;
  color: #fff;
  border-radius: 4px;
  background: #dd4b39;
}
.snsListItem .snsListGplus:before {
  vertical-align: middle;
}
.snsListItem .snsListYoutube {
  /* YouTube */
  display: block;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 1.5;
  font-size: 19px;
  color: #fff;
  border-radius: 4px;
  background: #cd201f;
}
.snsListItem .snsListYoutube:before {
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .snsList {
    float: right;
    margin: 0 -10px;
  }
  .snsListItem {
    margin: 10px;
  }
  .snsListItem a:hover {
    opacity: 0.8;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);
    filter: alpha(opacity=80);
    -webkit-transition: opacity 0.25s linear;
    transition: opacity 0.25s linear;
  }
}
/* ???????? */
.copyright {
  margin: 0;
  color: #fff;
}
.copyrightText {
  margin: 0 auto;
}
.copryrightLogo {
  vertical-align: middle;
}

/* 住宅カテゴリ追加202412 */
:root {
  --key-color: #1277be;
}
.narrow-container-house {
  max-width: 600px;
  margin: auto;
}
.un_house_topcopy {
  text-align: center;
  font-size: 24px;
  color: var(--key-color);
  line-height: 1.5;
  margin: 60px 0;
}
.un_house_topimage {
  width: 100%;
  img {
    width: 100%;
  }
}
.un_house_maincopy {
  margin: 40px 10px 0;
  h3 {
    text-align: center;
    font-size: 24px;
    line-height: 1.5;
  }
  p {
    font-size: 16px;
    line-height: 1.8;
  }
}
.grade_image {
  text-align: center;
  margin: 40px 0;
}
.grade_image img {
  width: 100%;
  max-width: 660px;
}

@media screen and (max-width: 767px) {
  .un_house_topcopy {
    text-align: left;
    font-size: 18px;
    margin: 30px 0;
  }
  .un_house_maincopy {
    margin: 20px 10px 0;
    h3 {
      text-align: left;
      font-size: 18px;
    }
    p {
      font-size: 14px;
    }
  }
}

.un_house_circlefig {
  max-width: 800px;
  margin: auto;
  img {
    width: 100%;
  }
}

.un_housecont_wrap {
  width: 100%;
  border-top: 1px solid #eee;
  margin-top: 40px;
  padding: 80px 10px 40px;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
  * {
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  .un_house_circlefig {
    margin: 0 -30px;
  }
  .un_housecont_wrap {
    padding: 40px 0;
  }
}

.un_housecont_ttl_en {
  font-family: "Josefin Sans", sans-serif;
  font-size: 90px;
  color: var(--key-color);
  opacity: 0.1;
  font-weight: bold;
  position: absolute;
  z-index: -1;
  left: -10px;
  margin: 0;
  @media screen and (max-width: 767px) {
    font-size: 60px;
    left: 0;
  }
}

.un_housecont_box {
  display: flex;
  font-size: 16px;
  line-height: 1.8;
  img {
    max-width: 100%;
    max-height: 100%;
  }
  .un_housecont_text {
    width: 50%;
    padding: 0 20px;
  }
  .un_housecont_imageLarge {
    width: 50%;
    padding: 0 20px;
  }
  .un_housecont_ttl_jp {
    font-size: 24px;
    line-height: 1.5;
    em {
      font-style: normal;
      background: linear-gradient(transparent 70%, #fcff64 70%);
    }
  }
  .un_housecont_logo {
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
    a {
      border: 1px solid #ddd;
      height: 18px;
      display: inline-block;
      padding: 10px 15px;
      box-sizing: content-box;
      img {
        max-width: 100%;
        max-height: 20px;
        /* width: auto; */
      }
    }
  }
  .un_housecont_btmcont.un_housecont_btmcont__2col {
    display: flex;
    .un_housecont_logowrap {
      width: 50%;
    }
    .un_housecont_text__innerimage {
      width: 50%;
    }
  }
  .un_housecont_text__innerimage {
    max-width: 500px;
    margin: 0 auto 10px;
  }

  @media screen and (max-width: 767px) {
    flex-wrap: wrap;
    .un_housecont_text {
      width: 100%;
      padding: 0;
    }
    .un_housecont_imageLarge {
      width: 100%;
      padding: 0;
    }
    .un_housecont_btmcont.un_housecont_btmcont__2col {
      /* flex-wrap: wrap; */
      .un_housecont_logowrap {
        width: 100%;
      }
      .un_housecont_text__innerimage {
        width: 80%;
        max-width: 400px;
        margin: 20px auto;
      }
    }
  }
}

.house_cta_wrap {
  text-align: center;
  line-height: 1.8;
  padding: 40px;
  margin: 20px 20px 40px;
  border: 1px solid var(--key-color);
  p {
    margin: 0;
    font-size: 20px;
    font-weight: bold;
  }
}
.house_cta_telnumber {
  font-size: 40px;
  font-weight: bold;
}
.house_btn {
  a {
    display: inline-block;
    padding: 10px 40px;
    background: var(--key-color);
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    border-radius: 9999px;
    margin-top: 20px;
  }
}
.house_works_title {
  text-align: center;
  font-size: 26px;
}
.house_works_wrap {
  background-color: #d0e4f2;
  padding: 90px 10px;
  margin-bottom: -50px;
  margin-top: 50px;
  line-height: 1.8;
}
.house_works_link {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .house_cta_wrap {
    padding: 20px;
    p {
      font-size: 16px;
    }
  }
  .house_cta_telnumber {
    font-size: 22px;
  }
  .house_btn {
    a {
      padding: 10px 30px;
      font-size: 16px;
    }
  }
  .house_works_wrap {
    padding: 40px 10px;
  }
  .house_works_title {
    font-size: 20px;
  }
}

/* TOP大ボタン */
.un_toplargebtn {
  display: flex;
  list-style: none;
  padding-left: 0;
  li {
    padding: 0 20px;
  }
}
@media screen and (max-width: 767px) {
  .un_toplargebtn {
    flex-wrap: wrap;
    justify-content: center;
    li {
      width: clamp(70px, 30%, 200px);
      padding: 0 3px;
    }
  }
}
