* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  font-family: 'Noto Sans JP', sans-serif;
  color: #000000;
  font-size: 1.6rem;
  line-height: 1.8;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
a {
  text-decoration: none;
  color: #000000;
}
ul {
  list-style: none;
}

.text-small {
  font-size: 1.4rem;
}
.text-large {
  font-size: 3.6rem;
  font-weight: bold;
}
.pc_none {
  display: none;
}
.sp_none {
  display: block;
}
@media (max-width: 767px) {
  .pc_none {
    display: block;
  }
  .sp_none {
    display: none;
  }
}
/*------------------------------------
Base
------------------------------------*/
.u-bg-white {
  background-color: #fff !important
}
.u-bg-black {
  background-color: #000 !important
}
.u-bg-n1 {
  background-color: #224595 !important
}
.u-bg-n2 {
  background-color: #5A73AF !important
}
.u-t-white {
  color: #fff !important
}
.u-t-black {
  color: #000 !important
}
.u-t-n1 {
  color: #224595 !important
}
.u-t-n2 {
  color: #5A73AF !important
}
.u-t-center {
  text-align: center !important;
}
.u-mt30{
  margin-top:30px;
}
.u-mt70{
  margin-top:70px;
}
.u-t-right{
  text-align: right !important;
}
/*------------------------------------
header
------------------------------------*/
.header_inner {
  padding: 15px 28px;
}
@media (max-width: 767px) {
  .header_inner {
    padding: 20px 28px;
  }
}
.header_inner .header_top {
  margin-bottom: 24px;
}
.header_inner .header_top .summary {
  font-size: 1.2rem;
  font-weight: normal;
  color: #666666;
}
.header_inner .header_navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
}
.header_inner .header_navi .header_logo {
  margin: 30px 0;
}
.header_inner .header_navi .header_logo img{
  max-width: 70%;
}
@media (max-width: 767px) {
  .header_inner .header_navi .header_logo img{
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .header_inner .header_navi {
    align-items: center;
  }
  .header_inner .header_navi .header_logo {
    width: 50%;
    margin: 0;
  }
}
.header_inner .header_navi .navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.header_inner .header_navi .navi .link {
  font-weight: bold;
  text-align: center;
  padding: 0 18px;
}
.header_inner .header_navi .navi .en {
  font-size: 1.2rem;
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
  color: #224595;
}
/* お問い合わせボタン */
.header_inner .sub_navi {
  position: absolute;
  right: 0;
  top: 0;
  display: flex;
  align-items: center;
}
.header_inner .sub_navi .phone a.button {
  font-family: 'Roboto', sans-serif;
  font-size: 1.4rem;
  text-align: center;
  margin-right: 46px;
}
.header_inner .sub_navi .button {
  display: flex;
  margin-top: 15px;
}
.header_inner .sub_navi .button .teltext {
  line-height: 1.2
}
.header_inner .sub_navi .phone .icon {
  vertical-align: baseline;
  margin-right: 8px;
}
.header_inner .sub_navi .mail a.button {
  display: inline-block;
  background: #224595;
  padding: 10px 30px;
  margin-right: 10px;
  border-radius: 25px;
  color: #ffffff;
}
.header_inner .sub_navi .mail .icon {
  vertical-align: text-bottom;
  margin-right: 8px;
}
@media (max-width: 767px) {
  .header_inner .sub_navi {
    display: none;
  }
}
/*------------------------------------
main
------------------------------------*/
.top_mainvisual {
  position: relative;
  padding-top: 40px;
}
.slider-img {
  margin: 0 20px;
}
@media (max-width: 767px) {
  .slider-img {
    margin: 0 5px;
  }
}
.slider-img img {
  height: auto;
  width: 100%;
  border-radius: 20px;
}
.top_mainvisual .top_mv_catch {
  position: absolute;
  top: 90px;
  right: 14%;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.top_mainvisual .top_mv_catch p {
  margin: 0 10px;
  font-size: 1.5rem;
  font-weight: bold;
}
.top_mainvisual .top_mv_catch p span {
  padding: 10px;
  background-color: #fff;
}
.top_mainvisual .top_mv_catch p .catch-lead {
  font-size: 1.2rem;
  color: #224595;
}
@media (max-width: 767px) {
  .top_mv_catch img {
    width: 50%
  }
  .top_mainvisual {
    padding-bottom: 0px;
  }
  .top_mainvisual .top_mv_catch {
    top: 250px;
    right: auto;
    -ms-writing-mode: inherit;
    writing-mode: inherit;
  }
  .top_mainvisual .top_mv_catch p {
    font-size: 1.2rem;
  }
  .top_mainvisual .top_mv_catch p .catch-lead {
    font-size: 1.1rem;
  }
  /*.top_mv_catch{
	right:0;
}*/
}
/* コンテンツ */
.contents_block {
  padding-top: 50px;
  padding-bottom: 50px;
}
.contents_block .block_inner {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto;
}
.contents_block .block_inner_fluid {
  width: 100%;
}
@media (max-width: 767px) {
  .contents_block .block_inner {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }
}
.contents_block .block_inner .title_area, .contents_block .block_inner_fluid .title_area {
  text-align: center;
  margin-bottom: 42px;
}
.contents_block .block_inner .title_area .contents_title, .contents_block .block_inner_fluid .title_area .contents_title {
  font-size: 5.6rem;
}
@media (max-width: 767px) {
  .contents_block .block_inner .title_area .contents_title, .contents_block .block_inner_fluid .title_area .contents_title {
    font-size: 3.4rem;
  }
}
.contents_block .block_inner .title_area .ja, .contents_block .block_inner_fluid .title_area .ja {
  font-size: 1.8rem;
  font-weight: bold;
}
.contents_block .block_inner .button_area {
  text-align: center;
}
.contents_block .block_inner_fluid .button_area {
  text-align: center;
  padding-left: 4%;
  margin-top: 48px;
}
.contents_block .block_inner a.button, .contents_block .block_inner_fluid a.button {
  display: inline-block;
  width: 360px;
}
@media (max-width: 767px) {
  .contents_block .block_inner a.button, .contents_block .block_inner_fluid a.button {
    max-width: 100%;
  }
}
.contents_block .block_inner .button, .contents_block .block_inner_fluid .button {
  background: #224595;
  border-radius: 40px;
  color: #fff;
  padding-top: 16px;
  padding-bottom: 16px;
  font-size: 1.8rem;
  border: 1px solid #fff;
}
.contents_block.bg_green {
  background: #e1efe5;
  padding-top: 80px;
  margin-bottom: 80px;
}
/* box3_area 施工事例・塗装について */
.contents_block .box3_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 100px;
}
.contents_block .box3_area .box {
  width: 31.25%;
}
@media (max-width: 767px) {
  .contents_block .box3_area .box {
    width: 100%;
    margin-bottom: 34px;
  }
}
.contents_block .box3_area .box .box_img {
  width: 100%;
  margin-bottom: 18px;
}
.contents_block .box3_area .box .text_contents .post_title {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 14px;
}
.contents_block .box3_area .box .text_contents ul {
  display: flex;
  flex-wrap: wrap;
}
.contents_block .box3_area .box .text_contents .post_category, .contents_block .box3_area .box .text_contents .post_time {
  padding: 2px 20px;
  margin-right: 10px;
  border-radius: 20px;
  color: #224595;
  font-size: 1.4rem;
  max-width: 50%;
  justify-content: center;
}
.contents_block .box3_area .box .text_contents .post_category li {
  background: #e1efe5;
  padding: 0 16px;
  margin-right: 10px;
}
.works-list__items .post_category2 li{
  width: calc((100% - 20px) / 2);
  background-color: #224595;
  padding: 2px 20px;
  margin-right: 10px;
  border-radius: 20px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  justify-content: center;
  gap:10px;
}

#column.contents_block .box3_area .box .text_contents .post_time .category {
  background: #ffffff;
  padding: 0 16px;
  margin-right: 10px;
}
/* 新着情報 */
.contents_block .block_inner .list_area {
  margin-bottom: 34px;
}
.list_area .news_list {
  display: flex;
  flex-wrap: wrap;
}
.list_area .news_list .post_time, .single-content__head .post_time {
  color: #224595;
  display: flex;
  flex-wrap: wrap;
}
.list_area .news_list .post_time .category, .single-content__head .post_time .category {
  background: #e1efe5;
  padding: 0 16px;
  margin-left: 20px;
  margin-right: 64px;
}
.list_area .news_list {
  padding: 28px 0;
  display: flex;
  justify-content: flex-start;
  background: url("../images/arrow.png") right 5px center no-repeat;
  border-bottom: 1px solid #eeeeee;
}
@media (max-width: 767px) {
  .list_area .news_list {
    padding-right: 36px;
  }
}
.clear-reset-style * {
  margin: revert;
  padding: revert;
  font-size: revert;
  line-height: revert;
}
.clear-reset-style h1, .clear-reset-style h2, .clear-reset-style h3, .clear-reset-style h4, .clear-reset-style h5 {
  display: block;
  font-weight: bold;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
}
.clear-reset-style h1 {
  font-size: 2rem;
  margin-block-start: 0.67em;
  margin-block-end: 0.67em;
}
.clear-reset-style h2 {
  font-size: 1.8rem;
  margin-block-start: 0.83em;
  margin-block-end: 0.6em;
}
.clear-reset-style h3 {
  font-size: 1.6rem;
  margin-block-start: 2em;
  margin-block-end: 0.5em;
}
.clear-reset-style h4 {
  margin-block-start: 1.33em;
  margin-block-end: 1.33em;
}
.clear-reset-style h5 {
  font-size: 1.2rem;
  margin-block-start: 1.67em;
  margin-block-end: 1.67em;
}
.clear-reset-style p {
  margin-block-start: 0;
  margin-block-end: 3em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
}
.clear-reset-style a:not(.wp-block-button__link) {
  color: #5cd5fa;
  text-decoration: underline;
}
.clear-reset-style img {
  height: auto;
  max-width: 100%;
  width: auto;
}
.clear-reset-style ol, .clear-reset-style ul {
  list-style: revert;
}
.clear-reset-style .wp-block-quote {
  border-left: 4px solid #000;
  margin-left: 0;
  padding-left: 30px;
}
.clear-reset-style .wp-block-buttons {
  margin-bottom: 2em;
}
.clear-reset-style .wp-block-pullquote {
  border-bottom: 3px solid #000;
  border-top: 3px solid #000;
  margin-bottom: 40px;
}
.clear-reset-style .wp-block-table {
  margin-bottom: 40px;
}
.clear-reset-style .wp-block-table table th, .clear-reset-style .wp-block-table table td {
  border: 1px solid #000;
  padding: 10px;
}
.clear-reset-style .wp-block-table.is-style-stripes table th, .clear-reset-style .wp-block-table.is-style-stripes table td {
  border: 0;
}
.clear-reset-style .wp-block-image {
  margin: 0;
  width: 100%;
}
.clear-reset-style .wp-block-image figcaption {
  color: #494949;
  font-size: 1.2rem;
}
.clear-reset-style .wp-block-image .aligncenter {
  text-align: center;
}
.clear-reset-style .wp-block-cover {
  margin-bottom: 40px;
}
.clear-reset-style .wp-block-separator {
  margin: 40px 0;
}
.single-content {
  padding: 0 1rem;
}
@media screen and (min-width: 768px) {
  .single-content {
    padding: 0 1rem;
  }
}
.single-content .single-content__head {
  align-items: center;
  color: #999;
  display: flex;
  flex-wrap: wrap;
  padding-top: 2rem;
  gap: 2rem;
}
.single-content .single-content__head p {
  font-size: 1.0rem;
}
@media screen and (min-width: 768px) {
  .single-content .single-content__head p {
    font-size: 1.0rem;
  }
}
.single-content .single-content__title {
  text-align: center;
  font-size: 1.3rem;
  padding: 2rem 0 4rem;
}
@media screen and (min-width: 768px) {
  .single-content .single-content__title {
    padding: 4rem 0 6rem;
    font-size: 1.5rem;
  }
}
.single-content .single-content__data {
  border-bottom: 1px solid #CCCCCC;
  margin-bottom: 2rem;
  padding: 3rem 0.5rem 1rem;
}
@media screen and (min-width: 768px) {
  .single-content .single-content__data {
    margin-bottom: 3rem;
    padding: 3rem 1rem 1rem;
  }
}
.single-content .single-content__data p {
  font-size: 1.0rem;
}
@media screen and (min-width: 768px) {
  .single-content .single-content__data p {
    font-size: 1.0rem;
  }
}
.single-content__pager {
  align-items: center;
  display: flex;
  justify-content: center;
  margin-top: 30px;
  position: relative;
}
.single-content__pager a {
  color: #224595;
  display: block;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .single-content__pager a {
    font-size: 16px;
  }
}
.single-content__pager .prev, .single-content__pager .list, .single-content__pager .next {
  width: calc(100% / 3);
}
.single-content__pager .prev a, .single-content__pager .list a, .single-content__pager .next a {
  display: block;
  text-align: center;
  position: relative;
  border:1px solid #224595;
  padding: 5px 20px;
  border-radius: 40px;
}
@media screen and (min-width: 768px) {
  .single-content__pager .prev, .single-content__pager .list, .single-content__pager .next {
    padding: 5px 50px;
  }
}

/* box2_area 黒田塗装が選ばれる理由 */
.contents_block .box2_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.contents_block .box2_area .box {
  width: 49%;
}
.contents_block .box2_area .box img{
  margin-right:10px;
  margin-bottom: 3px;
}
.contents_block .box2_area .right-radius img{
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
}
@media (max-width: 767px) {
  .contents_block .box2_area .box {
    width: 100%;
    margin-bottom: 34px;
  }
  .contents_block .box2_area .box img{
    margin-right: 0;
  }
  .contents_block .box2_area .right-radius img{
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
}
.contents_block .box2_area .box .box_img {
  width: 100%;
}
.contents_block .block_inner_fluid .box2_area .box .text_contents {
  padding-left: 4%;
  padding-right: 24%;
}
@media (max-width: 767px) {
  .contents_block .block_inner_fluid .box2_area .box .text_contents {
    padding-right: 4%;
  }
}
.contents_block .block_inner_fluid .box2_area .box .text_contents .sub_title {
  font-weight: bold;
  margin-bottom: 34px;
}
.contents_block .block_inner .box3_area .box .text_contents .post_time .category {
  background: #e1efe5;
  padding: 0 16px;
  margin-right: 10px;
}
/* ご依頼から施工前の流れ */
.flow_contents {
  background: #ffffff;
  padding: 4%;
  margin-bottom: 30px;
  border-radius: 10px;
}
.flow_contents .box2_area {
  align-items: flex-start;
}
.flow_contents .box2_area .box:first-child {
  width: 540px;
  flex-basis: auto;
}
.flow_contents .box2_area .box:last-child {
  flex-basis: 369px;
}
.flow_contents .box2_area .step_title {
  color: #224595;
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 30px;
  line-height: 1.4;
}
.flow_contents .box2_area .step_title .small {
  font-size: 2rem;
}
.flow_contents .box2_area .sub_title {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 20px;
}
.flow_contents .inner {
  border: 1px solid #224595;
  padding: 4% 6%;
  position: relative;
}
@media (max-width: 767px) {
  .flow_contents .inner {
    padding: 16% 6% 4%;
  }
}
.flow_contents .inner .title {
  text-align: center;
  font-size: 2.2rem;
  color: #224595;
  position: absolute;
  top: 0;
  left: 50%;
  background: #ffffff;
  padding: 0 16px;
  transform: translateY(-50%) translateX(-50%);
}
/* 会社案内 */

.company_message{
  display: flex;
  gap:24px;
  margin: 60px 0;
}
.company_message_img{
  width: 30%;
  text-align: center;
}
.company_message_txt{
  width:70%;
}
@media (max-width: 767px) {

  .company_message{
    display: block;
  }
  .company_message_img{
    width: 100%;
    margin-bottom: 30px;
  }
  .company_message_txt{
    width: 100%;
  }  
  
}

.table_area {
  margin-bottom: 106px;
}
.table_area:last-child {
  margin-bottom: 0;
}
.table_area .sub_title {
  font-size: 2.4rem;
  font-weight: bold;
  display: block;
  border-bottom: solid 2px #224595;
  margin-bottom: 30px;
}
#company .table_area h4{
  font-size: 3rem;
  margin-left: 60px;
  margin-bottom: 20px;
}
#company .table_area ol{
  font-size: 2.4rem;
  margin-left: 110px;
}
@media (max-width: 767px) {
  #company .table_area h4{
    font-size: 2.4rem;
    margin-left: 20px;
    margin-bottom: 20px;
  }
  #company .table_area ol{
    font-size: 1.8rem;
    margin-left: 30px;
  }
}
.company_table {
  border-collapse: collapse;
  width: 100%;
}
.company_table tr {
  border-bottom: solid 1px #707070;
}
.company_table th{
 color: #224595;
}
.company_table th, .company_table td {
  padding: 24px;
  text-align: left;
}
@media (max-width: 767px) {
  .company_table th, .company_table td {
    display: block;
    width: 100%;
    border-bottom: none;
  }
  .company_table tr:last-child {
    border-bottom: solid 1px #707070;
  }
  .company_table th {
    padding-bottom: 0;
  }
}
/* 地図 */
#map.contents_block {
  padding-bottom: 0px;
}
.map {
  width: 100%;
  height: 0;
  position: relative;
  /*padding-top: 56.25%;*/
  padding-top: 38.1818%;
}
@media (max-width: 767px) {
  .map {
    padding-top: 56.25%;
  }
}
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* フッターロゴ */
#footer_logo.contents_block {
  padding-bottom: 50px;
}
/*------------------------------------
footer
------------------------------------*/
footer.contents_block.bg_green {
  margin-bottom: 0;
}
.contents_block .footer_inner {
  width: 1024px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .contents_block .footer_inner {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }
}
.footer_inner h2{
  text-align: center;
  margin-bottom: 50px;
}
.footer_inner .box2_area {
  align-items: flex-start;
}
.footer_inner .box2_area .box:first-child {
  padding-right: 5%;
  text-align: center;
}
.footer_inner .box2_area .phone {
  font-family: 'Roboto', sans-serif;
  font-size: 1.4rem;
  margin-bottom: 36px;
}
.footer_inner .box2_area .phone .icon {
  vertical-align: baseline;
  margin-right: 8px;
}

.footer_inner .box2_area .phone a{
  color: #fff;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  gap: 12px;
}
.footer_inner .box2_area .phone .footer-phone {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}



.footer_inner .box2_area .mail a.button {
  display: inline-block;
  width: 312px;
  background: #fff;
  padding: 24px;
  color: #224595;
  text-align: center;
  font-weight: bold;
  border-radius: 40px;
}
.footer_inner .box2_area .mail .icon {
  vertical-align: text-bottom;
  margin-right: 8px;
}
.footer_navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
}
.footer_navi .link {
  width: 50%;
  display: flex;
  align-items: center;
  padding-bottom: 45px;
}
.footer_navi .link a{
  color: #fff;
}
.footer_navi .link:before {
  content: '';
  width: 8px;
  height: 8px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
  margin-right: 10px;
}
@media (max-width: 767px) {
  .footer_navi .link {
    width: 49%;
  }
}
.footer_inner .box2_area .box:last-child .copy {
  color: #fff;
  margin-top: 38px;
}
/* お問い合わせボタン */
.footer_inner .footer_button {
  display: none;
}
@media (max-width: 767px) {
  .footer_inner .footer_button {
    display: block;
  }
  .footer_inner .sub_navi {
    display: flex;
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
  }
  .footer_inner .footer_button .sub_navi .phone, .footer_inner .footer_button .sub_navi .mail {
    width: 50%;
    display: flex;
  }
  .footer_inner .footer_button .sub_navi .phone a{
    color: #224595;
  }
  .footer_inner .footer_button .sub_navi .phone a.button {
    width: 100%;
    display: inline-block;
    background: #ffffff;
    border: 1px solid #224595;
    font-family: 'Roboto', sans-serif;
    font-size: 2rem;
    text-align: center;
    /*padding: 24px 0;*/
    padding: 14px 0;
  }
  .footer_inner .footer_button .sub_navi .phone a.button img{
    width: 25px;
    margin-right: 5px;
    margin-bottom: 5px;
  }
  .footer_inner .footer_button .sub_navi .mail a.button img{
    width: 20px;
    margin-right: 5px;
    margin-bottom: 5px;
  }

  }
  .footer_inner .footer_button .sub_navi .mail a.button {
    width: 100%;
    display: inline-block;
    background: #224595;
    color: #ffffff;
    text-align: center;
    /*padding: 24px 0;*/
    padding: 14px 0;
  }
  .footer_inner .footer_button .sub_navi .phone .icon, .footer_inner .footer_button .sub_navi .mail .icon {
    vertical-align: baseline;
    height: 16px;
    margin-right: 8px;
  }
}
/*選ばれる理由*/
@media (min-width: 768px) {
  .br-sp {
    display: none;
  }
}
.intro {
  background-color: #eeeeee;
  padding-top: 85px;
  padding-bottom: 85px;
}
.intro h1 {
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  opacity:0.5;
}
.intro .en {
  display: block;
  font-size: 4.8rem;
}
.intro-reason{
  background-image: url("../images/reason_bg.jpg");
  background-position: center;
  background-size: cover;
}
.breadcrumb {
  max-width: 1024px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 991.98px) {
  .breadcrumb {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
}
.breadcrumb_inner {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
.breadcrumb_inner li:not(:last-child)::after {
  content: "/";
  margin: 8px;
  color: #666666;
}
.contents {
  max-width: 1024px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .contents {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
}
@media (max-width: 991.98px) {
  .contents {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
}
.feature {
  display: flex;
  flex-wrap: wrap;
  padding-top: 135px;
  padding-bottom: 100px;
}
.feature .image {
  width: 42%;
}
.feature .text_area {
  width: 58%;
  box-sizing: border-box;
}
.feature .text_area.inner {
  max-width: 652px;
  padding-left: 6%;
}
@media (max-width: 991.98px) {
  .feature .image, .feature .text_area, .feature .text_area.inner {
    width: 100%;
  }
  .feature .text_area.inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.feature .text_area.inner h2 {
  color: #224595;
  font-size: 42px;
  font-weight: bold;
  margin-bottom: 50px;
}
@media (max-width: 767.98px) {
  .feature .text_area.inner h2 {
    font-size: 24px;
    margin-top: 30px;
  }
}
.contents .title {
  font-size: 42px;
  font-weight: bold;
  color: #333333;
  text-align: center;
  position: relative;
  margin-bottom: 80px;
}
.contents .title::before {
  background-color: #224595;
  content: "";
  height: 6px;
  left: 50%;
  transform: translateX(-50%);
  bottom: -36px;
  width: 80px;
  position: absolute;
}
@media (max-width: 767.98px) {
  .contents .title {
    font-size: 24px;
    margin-top: 30px;
  }
}
.advantages {
  background-color:#D2DAEA; 
  padding: 120px 0;
}

.advantages h3 {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  color: #224595;
  margin-bottom: 36px;
}
.pride {
  padding-top: 100px;
  padding-bottom: 100px;
}
.pride_grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (max-width: 991.98px) {
  .pride_grid {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
}
.pride_grid .column {
  width: 31.3333%;
}
@media (max-width: 767.98px) {
  .pride_grid .column {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    margin-bottom: 40px;
  }
}
.pride_grid h3 {
  font-size: 20px;
  font-weight: bold;
  color: #224595;
  margin-top: 18px;
  margin-bottom: 18px;
}
.pride_grid h3 span {
  font-size: 28px;
  padding-right: 18px;
}

.reason_pride_contents {
  padding: 4%;
  margin-bottom: 30px;
}
.reason_pride_contents .box2_area {
  align-items: flex-start;
  display: flex;
  gap:20px;
}
.reason_pride_contents .box2_area .box:first-child {
  flex-basis: 369px;
}
.reason_pride_contents .box2_area .box:last-child {
  width: 540px;
  flex-basis: auto;
}
.reason_pride_contents .box2_area .step_title {
  color: #224595;
  font-size: 18px;
  font-weight: bold;
  margin-top: -12px;
  margin-bottom: 18px;
  line-height: 1.4;
}

.reason_pride_contents .box2_area .step_title span {
    font-size: 28px;
    padding-right: 18px;
}

@media (max-width: 767.98px) {
  .reason_pride_contents .box2_area {
    display: block;
    gap:10px;
  }  
  .reason_pride_contents .box2_area .box:first-child {
    flex-basis: auto;
    width: 100%;
  }
  .reason_pride_contents .box2_area .box:last-child {
    flex-basis: auto;
    width: 100%;
  }
  
  .reason_pride_contents .box2_area .step_title {
    margin-top: 0;
  }
}


/*採用情報*/

.feature-right {
  display: flex;
  flex-wrap: wrap;
  padding-top: 135px;
  padding-bottom: 100px;
  justify-content: flex-end
}
.feature-right .image {
  width: 42%;
}
.feature-right .text_area {
  width: 58%;
  box-sizing: border-box;
}
.feature-right .text_area.inner {
  max-width: 700px;
  padding-right: 6%;
}
@media (max-width: 991.98px) {
  .feature-right .image, .feature-right .text_area, .feature-right .text_area.inner {
    width: 100%;
  }
  .feature-right .image{
    order: 1;
  }
  .feature-right .text_area{
    order: 2;
  }
  .feature-right .text_area.inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.feature-right .text_area.inner h2 {
  color: #224595;
  font-size: 42px;
  font-weight: bold;
  margin-bottom: 50px;
}
@media (max-width: 767.98px) {
  .feature-right .text_area.inner h2 {
    font-size: 24px;
    margin-top: 30px;
  }
}

.intro-recruit{
  background-image: url("../images/recruit_bg.jpg");
  background-position: center;
  background-size: cover;
}
.recruit-information{
  margin-bottom: 100px
}
.recruit-information h3{
  font-size:24px;
  font-weight: bold;
  color:#224595;
  padding-bottom:20px;
  border-bottom:2px solid #224595;
}

/* 画面サイズ767px以下に適用するスタイル */
.recruit-information dl{
  border-bottom: 1px solid #707070;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.recruit-information dt {
  width: 30%;
  color:#224595;
  font-weight: bold;
  padding:20px 10px;
}
.recruit-information dd {
  width: 70%;
  padding:20px 10px;
}
@media (max-width: 767.98px) {
  .recruit-information dt {
    width: 100%;
    padding:20px 10px 5px;
  }
  .recruit-information dd {
    width: 100%;
    padding:5px 10px 20px;
  }
}

.recruit-messagebox{
  background-color: #D2DAEA;
  padding: 30px;
  color: #224595;
  margin-bottom:150px
}
.recruit-messagebox h3{
  text-align: center;
  font-size:32px;
  margin-bottom:30px
}
.recruit-flex{
  display: flex;
  flex-wrap: wrap;
  justify-content:center;
  margin-top: 40px;
}
.recruit-btn {
  width: calc(50% - 40px);
  letter-spacing: 0;
  color: #fff;
  padding: .857rem 2.857rem;
  background: #224595;
  border-radius: 50px;
  margin: 20px;
  text-align: center;
}
.recruit-flex img{
  display: inline-block;
  max-width:100%;
  height:auto;
  padding: 5px 50px;
}
@media (max-width: 767.98px) {
  .recruit-btn {
    width: 100%;
  }
}

/*施工事例 一覧ページ*/
.intro-cases{
  background-image: url("../images/cases_bg.jpg");
  background-position: center;
  background-size: cover;
}

.page-content__main .works_title{
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  color:#224595;
  padding-bottom: 10px;
  margin-bottom: 30px;
}

.works-categorylist {
  display: flex;
  flex-wrap: wrap;         
  justify-content: center;
  gap: 16px;
  margin: 30px 0;
}

.works-categorylist li {
  width: calc((100% - 16px) / 2);
  border-top:2px solid #224595;
  border-bottom:2px solid #224595;
  text-align: center;
  font-size:18px;
  padding:10px 0;
}
.works-categorylist li a{
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .works-categorylist li {
    width: calc((100% - 16px * 3) / 4);
  }
}
.workslist-img > img {
  width: 100%;
  height: 197px;
  object-fit: cover;
}

/* ページネーションの汎用スタイル */
.pagination{
  text-align: center;
}
.page-numbers{
  font-size: 14px;
  padding: 6px 13px;
  margin: 0 5px;
  border: 1px solid #224595;
  border-radius: 40px;    
}
.current{
  border: 1px solid #224595;
  border-radius: 40px;  
  padding: 6px 13px;
  background: #224595;
  color: #fff;
}
.prev,.next{
  padding: 6px 23px;
}


/*施工事例 詳細ページ*/
.works-single .p-sub-head {
  border-bottom: 1px solid #222;
}
.works-single .p-sub__content-detail .p-sub-head__inner {
  padding-top: 1.5rem;
}
.works-single .p-sub__content-detail .p-sub-head__inner::before {
  display: none;
}
.works-single img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: .75rem;
}

.works-single .works_title{
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  color:#224595;
  border-bottom: 1px solid #224595;
  padding-bottom: 10px;
  margin-bottom: 30px;
}
.works-single h2 {
  padding: 10px 0;
  margin: 30px 0 24px;
  border-top: 3px solid #224595;
  border-bottom: 1px solid #224595;
  color: #222;
  font-weight: bold;
  font-size: 20px;
}
.works-single h3 {
  position: relative;
  padding-left: 15px;
  font-size: 20px;
  line-height: 1.8;
  font-weight: bold;
  color: #224595;
  margin: 30px 0 24px;
}
.works-single h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 10px;
  height: 1em;
  background-color: #224595;
  transform: translateY(-50%);
}
.works-single p {
  margin-bottom: 24px;
}
.works-single ul {
  list-style: none !important;
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 24px;
}
.works-single ul li {
  position: relative;
  padding-left: 24px;
  line-height: 1.8;
}
.works-single ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .5em;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #224595;
}
.works-singley a {
  color: #EF850C;
  text-decoration: underline;
}
.works-single .button-map {
  margin-top: 1em;
  padding: 1em 3em;
  width: 260px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  background-color: #224595;
  text-decoration: none;
}
.works-single .button-contact {
  max-width: 468px;
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  background-color: #224595;
  border-radius: 50px;
  font-size: 1.25rem;
  font-weight: bold;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  display: block;
  position: relative;
  text-decoration: none;
  text-align: center;
  padding-left: 1.25rem;
}

.works-single .cotact-box{
  padding: 32px;
  background-color: #f5f5f5;
}
.works-single .button-contact{
  font-size:20px;
  font-weight: bold;
}
.works-single .button-contact i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 1.5em;
  right: auto;
}
@media screen and (min-width: 992px) {
  .works-single .button-contact i {
    left: 4em;
  }
}

/*お問い合わせ*/
.intro-contact{
  background-image: url("../images/contact_bg.jpg");
  background-position: center;
  background-size: cover;
}

.c-form dt {
  width: 100%;
  padding: 2rem 1rem 1rem; 
}

.c-form dt span{
  color:#fff;
  font-size:1rem;
  padding:.25rem 1rem;
  margin-left:1rem;
  border-radius: 1rem;
  background-color:#EF850C;
}

.c-form dd {
  width: 100%;
  padding: 1rem 1rem 2rem; 
}

@media (max-width: 767px) {
  .c-form dl {
    display:block;
  }
  .c-form dt {
    width: 100%;

  }
  .c-form dd {
    width: 100%;
  }
}

.c-form input[type=text], .c-form input[type=email], .c-form textarea {
    background-color: #fff;
    border: 1px solid #cbcbcb;
    border-radius: .5rem;
    font-size: 1.4rem;
    line-height: 1.8;
    padding: 1rem;
    width: 100%;
}
.c-form textarea{
  height: 100px;
}
.c-link-button {
    background-color: #224595;
    border: 1px solid #224595;    
    border-radius: 8rem;
    color: #fff;
    display: block;
    font-size: 18px;
    font-weight: 500;
    margin-inline: auto;
    max-width: 40rem;
    overflow: hidden;
    margin-top: 2rem;
    padding: 1.25rem 2.75rem;
    position: relative;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    z-index: 3;
}

.c-link-button-back {
    background-color: #EF850C;
    border: 1px solid #EF850C;
    border-radius: 8rem;
    color: #fff;
    display: block;
    font-size: 18px;
    font-weight: 500;
    margin-inline: auto;
    max-width: 40rem;
    overflow: hidden;
    margin-top: 2rem;
    padding: 1.25rem 2.75rem;
    position: relative;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    z-index: 3;
}

.c-form .policy-title{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
.c-form .policy{
  height: 300px;
  overflow-x: hidden; /* Hide horizontal scrollbar */
  overflow-y: scroll; /* Add vertical scrollbar */
  border: 1px solid #707070;
  padding:10px;
  margin: 20px 0;
}

/*-------------ここまで-----------------*/

.season {
  padding-top: 120px;
  padding-bottom: 120px;
}
.season h3 {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}
.season_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
}
.season_list li {
  width: 31.3333%;
  margin-bottom: 36px;
  font-weight: bold;
}
@media (max-width: 767.98px) {
  .season_list li {
    width: 48.5%;
  }
}
.season_list li img {
  border: 3px solid #224595;
  margin-bottom: 18px;
  box-sizing: border-box;
}
.season_list li p {
  display: inline-block;
  background: url("../images/check.png") left center no-repeat;
  background-size: 26px;
  padding-left: 42px;
}
.season .contents_inner {
  background-color: #eff7f1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 32px;
  margin-top: 50px;
}
.season .contents_inner .text_area {
  width: 40%;
  font-size: 20px;
}
@media (max-width: 767.98px) {
  .season .contents_inner .text_area {
    width: 100%;
    margin-bottom: 30px;
  }
}
.diagnose {
  background-color: #eff7f1;
  padding-top: 120px;
  padding-bottom: 120px;
}
.diagnose h3 {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}
.diagnose_grid {
  margin-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.diagnose_grid .column {
  width: 31.3333%;
  background-color: #ffffff;
  padding: 30px;
  box-sizing: border-box;
}
@media (max-width: 767.98px) {
  .diagnose_grid .column {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    margin-bottom: 40px;
  }
}
.diagnose_grid .column .column_ttl {
  display: inline-block;
  background: url("../images/check.png") left center no-repeat;
  background-size: 26px;
  padding-left: 42px;
  color: #224595;
  font-size: 18px;
  font-weight: bold;
  margin-top: 12px;
  margin-bottom: 32px;
}
.price {
  padding-top: 120px;
  padding-bottom: 120px;
}
.price .contents_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.price .contents_inner figure {
  width: 31.3333%;
}
.price .contents_inner .text_area {
  width: 63%;
}
@media (max-width: 767.98px) {
  .price .contents_inner figure {
    width: 100%;
  }
  .price .contents_inner .text_area {
    width: 100%;
    margin-bottom: 30px;
  }
}
.price_area {
  margin-top: 50px;
  border: 1px solid #224595;
  position: relative;
}
.price_area h3 {
  text-align: center;
  color: #224595;
  font-size: 24px;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  background: #ffffff;
  padding: 0 100px;
}
@media (max-width: 767.98px) {
  .price_area h3 {
    padding: 0 16px;
  }
}
.price_grid {
  max-width: 860px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 50px 84px;
  box-sizing: border-box;
}
@media (max-width: 991.98px) {
  .price_grid {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
}
.price_grid .column {
  width: 32.5581%;
  background-color: #eff7f1;
  box-sizing: border-box;
}
@media (max-width: 767.98px) {
  .price_grid .column {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 40px;
  }
}
.price_grid .column .column_head {
  background-color: #224595;
  color: #ffffff;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  padding-top: 16px;
  padding-bottom: 16px;
}
.price_grid .column .text {
  padding: 30px 30px 50px;
}
.price_grid .column .text .large {
  display: block;
  font-size: 36px;
  font-weight: bold;
  color: #224595;
  text-align: center;
  margin-bottom: 24px;
}
.price_grid .column .text .large span {
  font-size: 70%;
}
/*SPメニュー*/
.menu-btn {
  position: fixed;
  top: 10px;
  right: 10px;
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  z-index: 90;
  background-color: #224595;
}
.menu-btn span, .menu-btn span:before, .menu-btn span:after {
  content: '';
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background-color: #ffffff;
  position: absolute;
}
.menu-btn span:before {
  bottom: 8px;
}
.menu-btn span:after {
  top: 8px;
}
#menu-btn-check:checked ~ .menu-btn span {
  background-color: rgba(255, 255, 255, 0); /*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
  top: 0;
  transform: rotate(-45deg);
}
#menu-btn-check {
  display: none;
}
.menu-content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 80;
  background-color: #224595;
}
.menu-content ul {
  padding: 70px 10px 0;
}
.menu-content ul li {
  border-bottom: solid 1px #ffffff;
  list-style: none;
}
.menu-content ul li a {
  display: block;
  width: 100%;
  font-size: 15px;
  box-sizing: border-box;
  color: #ffffff;
  text-decoration: none;
  padding: 9px 15px 10px 0;
  position: relative;
}
.menu-content ul li a::before {
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 2px #ffffff;
  border-right: solid 2px #ffffff;
  transform: rotate(45deg);
  position: absolute;
  right: 11px;
  top: 16px;
}
.menu-content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 100%; /*leftの値を変更してメニューを画面外へ*/
  z-index: 80;
  background-color: #224595;
  transition: all 0.5s; /*アニメーション設定*/
}
#menu-btn-check:checked ~ .menu-content {
  left: 0; /*メニューを画面内へ*/
}
/*コンタクト*/

.contact-form .contact-form__section + .contact-form__section {
  margin-top: 1.5rem;
}
.contact-form .contact-form__section__title {
  margin-bottom: 0.5rem;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__section__title {
    margin-bottom: 1rem;
  }
}
.contact-form .contact-form__section__title span {}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__section__title span {}
}
.contact-form .contact-form__section__body {}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__section__body {}
}
.contact-form .contact-form__section__body input {
  padding: 1rem;
  width: 100%;
}
.contact-form .contact-form__section__body textarea {
  height: 20rem;
  padding: 1rem;
  width: 100%;
}
.contact-form .contact-form__privacy {
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__privacy {
    margin: 4rem auto 0;
    /*width: 80rem;*/
  }
}
.contact-form .contact-form__privacy .contact-form__privacy__title {
  font-weight: bold;
  margin-bottom: 1em;
  text-align: center;
  font-size: 1.5rem
}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__privacy .contact-form__privacy__title {}
}
.contact-form .contact-form__privacy .contact-form__privacy__inr {
  border: 1px solid #000;
  height: 20rem;
  overflow: scroll;
  padding: 0 2rem;
}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__privacy .contact-form__privacy__inr {
    height: 20rem;
    padding: 0 7rem;
  }
}
.contact-form .contact-form__privacy .contact-form__privacy__inr p {
  padding: 1rem 0 1rem;
}
.contact-form .contact-form__privacy .contact-form__privacy__note {
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__privacy .contact-form__privacy__note {}
}
.contact-form .contact-form__doui {
  text-align: center;
  margin-top: 5rem;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px) {
  .contact-form .contact-form__doui {}
}
.contact-form .contact-form__doui label {
  align-items: center;
  display: flex;
  justify-content: center;
}
.contact-form .btnA {
  background-color: #224595;
  color: #fff;
  display: inline-block;
  padding: 1rem 6rem;
  text-align: center;
  transition: all 0.5s;
}
.contact-form .btnA:hover {
  opacity: 0.5;
}
.contact-form .btnB {
  background-color: #9f9f9f;
  color: #fff;
  display: inline-block;
  padding: 1rem 6rem;
  text-align: center;
  transition: all 0.5s;
}
.contact-form .btnB:hover {
  opacity: 0.5;
}
.contact-form .contact-form__submit {
  text-align: center;
  margin-top: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3rem;
}
@media screen and (max-width: 767px) {
  .contact-form .contact-form__submit {
    flex-direction: column;
    gap: 1rem;
  }
}
.contact-form .contact-form__submit .btnA, .contact-form .contact-form__submit .btnB {}
@media screen and (max-width: 767px) {
  .contact-form .contact-form__submit .btnA, .contact-form .contact-form__submit .btnB {
    min-width: 20rem;
  }
}
.contact-form.contact-form--confirm .contact-form__section .contact-form__section__body {}
@media screen and (min-width: 768px) {
  .contact-form.contact-form--confirm .contact-form__section .contact-form__section__body {}
}
.contact-form.contact-form--confirm .contact-form__doui {
  display: none;
}
.contact-form.contact-form--confirm .contact-form__privacy {
  display: none;
}
/* -----------------------
事例
----------------------- */
.page-content {
  padding-top: 4rem;
}
@media screen and (min-width: 768px) {
  .page-content {
    margin: 0 auto;
  }
}


.works-list__title {
  color: #224595;
  font-size: 1.2rem;
}
.works-list__items {
  display: flex;
  flex-wrap: wrap;
  gap: 2%;
  padding: 2rem 0;
}
.works-list__items li {
  width: 32%;
  margin-bottom: 2rem;
}
.works-list__btn a {
  display: block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 80%;
  margin: auto;
  padding: 1rem 4rem;
  font-weight: bold;
  border: 2px solid #224595;
  color: #224595;
  transition: 0.5s;
}
.works-list__btn a:hover {
  color: #fff;
  background: #224595;
}


.works-single__before-after {
  display: flex;
  gap: 2rem;
  margin-top: 1rem;
  margin-bottom: 2rem;
}
.works-single__before-after__item {
  width: 50%;
}
.works-list {
  padding: 3rem 0;
}
.works-list__ttl {
  align-items: center; /* 横線を上下中央 */
  display: flex; /* 文字と横線を横並び */
  font-size: 1.3rem;
  padding: 10px 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  margin-bottom: 2rem;
}
.works-list__ttl::before {
  background-color: #224595; /* 横線の色 */
  content: "";
  height: 3px; /* 横線の高さ */
  width: 15px; /* 横線の長さ */
}
.works-list__ttl::before {
  margin-right: 20px; /* 文字との余白 */
}
.works-list__ttl__place {
  border-left: 8px solid #224595;
  padding-left: 10px;
  font-size: 1.3rem;
  line-height: 1.2;
  font-weight: normal;
  margin-bottom: 10px;
}
.works-list__list table, .works-list__list th, .works-list__list td {
  border-left: 1px solid #aaa;
  border-top: 1px solid #aaa;
  padding: 5px;
}
.works-list__list {
  width: 100%;
  margin-bottom: 2rem;
  border-spacing: 0;
  border-bottom: 1px solid #aaa;
  border-right: 1px solid #aaa;
}
.works-list__list th {
  background-color: #eee;
  font-weight: bold;
}
.works-list__list th:first-child {
  width: 15%
}
.works-list__list th:nth-child(2) {
  width: 15%
}
.works-list__list th:nth-child(3) {
  width: 40%
}
.works-list__list th:nth-child(4) {
  width: 30%
}
.works-list__price {
  font-weight: bold;
  font-size: 1.1em;
  color: #224595;
  text-align: right;
}