@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
table.cp-table td p {
    font-size: inherit;
    font-weight: inherit;
}
table.cp-table.kaigyou tr td:nth-child(2) {
    white-space: nowrap;
}
#body .vwidth {
    width: 100vw;
}
#body .room .image-content h3 {
    background: #000000a3;
    width: 100%;
    display: block;
    margin: 0;
    color: #fff;
    text-align: center;
    padding: 7px 0;
    font-weight: 600;
}
#body .room .image-content {
    position: absolute;
    z-index: 54;
    bottom: 0;
    margin: 0;
    width: 100%;
}
ul#footer-nav li.contact-menu a {
    font-size: 16px;
}
#footer i.fa-solid.fa-envelope {
    display: none;
}

#main-nav a span {
    padding-top: 6px;
    font-size: 14px;
    color: #000;
    display: block;
    line-height: 1;
}
#main-nav a {
    font-size: 14px;
    color: #f49254;
    font-weight: 600;
	text-shadow: 0 0 3px #fff, 0 0 3px #fff;
}
ul#footer-nav li a {
    font-size: 0;
    padding: 0 9px;
}
ul#footer-nav span {
    font-size: 16px;
}
#footer * {
    color: #000000;
}
#footer a {
    color: #000000;
}
#footerwrap {
    background: none;
    background-color: #fffbf1;
}
ul.check li:before {
    content: "\f00c";
    font-family: "fontawesome";
    color: #d81f1f;
    background: #e0e0e0;
    position: absolute;
    left: 0;
    width: 16px;
    height: 16px;
    font-size: 22px;
    line-height: 8px;
    top: 9px;
}
ul.check {
    list-style: none;
    margin: 0;
}
ul.check li {
    position: relative;
    padding-left: 49px;
    font-weight: 600;
font-size: 17px;
    margin-bottom: 5px;
}
div#headerwrap.fixed-header div#site-logo {
    margin: 6px 17px;
}
div#headerwrap.fixed-header #site-logo a img {
    width: 160px;
}
div#site-logo {
    margin: 20px;
}
body #site-logo a img {
    width: 15vw;
}
.module.mainv-moji img {
    width: 65vw;
    margin: 0 auto;
    display: block;
}
div#footer-logo img {
    width: 200px;
}
dl.absolute-list dd {
    margin-left: 100px;
}
dl.absolute-list dt {
    position: absolute;
}

div#headerwrap.fixed-header {
    background: #ffffffba;
    box-shadow: 0px 0px 2px 1px rgba(66, 66, 66, 0.3);
}
div#headerwrap {
    position: fixed;
    background: none;
    box-shadow: none;
}


#main-nav .sns-menu a i {
    font-size: 21px;
}

#main-nav .sns-menu a {
    color: #3499db;
    padding: 3px;
}
#main-nav li {
    vertical-align: middle;
}
#main-nav .contact-menu a i {
    margin-left: 3px;
}

#main-nav .contact-menu a {
    background: #f39153;
    color: #fff;
    padding: 24px;
    margin-left: 4px;
    text-shadow: 0 0 BLACK;
    font-weight: 800;
}
textarea, input[type=text], input[type=password], input[type=search], input[type=email], input[type=url], input[type=number], input[type=tel], input[type=date], input[type=datetime], input[type=datetime-local], input[type=month], input[type=time], input[type=week] {
    min-height: 37px;
}
input[type=date]{
    min-height: 46px;
}
    .type span {
        opacity: 0;
        transition: opacity 0.3s;
    }
    .type span.on {
        opacity: 1;
    }
header#header, .fixed-header #header {
    padding: 0;
}


select.wpcf7-form-control.wpcf7-select {
    width: 100%;
    padding: 5px 30px 5px 15px;
	    min-height: 37px;
}
.single .kasoh .module.module-text {
    max-width: 90%;
}
div#layout.sp-key {
    width: 800px;
}
h1.kasot {
    font-size: 18px;
    line-height: 1;
}
p.kasote {
    font-size: 34px;
    line-height: 1;
    margin-bottom: 10px;
}
.kasoh .module.module-text {
	    max-width: 100%;
    width: 400px;
    margin: 0 auto;
    text-align: center;
    background: #ffffffd9;
    padding: 20px 0;
}
/* テンプレート */
#site-logo a {
    font-size: 0;
}
.themify_builder_active .themify_builder_row.module_row {
    z-index: unset;
}
div.bd {
    width: 100%;
    margin: 0 20px 0 30px;
    height: 1px;
    border-top: 1px dotted;
}
.border-list p {
    white-space: nowrap;
}
.border-list {
    display: flex;
    justify-content: space-between;
    vertical-align: middle;
    align-items: center;
}
a.phone.foot-p {
    font-size: 34px;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1;
color: #111;
}
.cover-bottom.sc:before {
    height: 0;
}
.cover-bottom:before {
    content: "";
    background: #f29053;
    position: absolute;
    height: 100%;
    width: 100%;
    right: 0;
    bottom: 0;
    transition: .5s ease;
}
.cover-right.sc:before,.cover-left.sc:before {
    width: 0;
}
.cover-right:before {
    content: "";
    background: #f29053;
    position: absolute;
    height: 100%;
    width: 100%;
    right: 0;
    top: 0;
    transition: .5s ease;
}
.cover-left:before {
    content: "";
    background: #f29053;
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    transition: .5s ease;
}
.cover.sc:before {
    opacity: 0;
}
.cover:before {
    content: "";
    background: #f29053;
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
	    transition: .5s ease;
}

.fade-right.sc,.fade-left.sc,.fade-bottom.sc {
    opacity: 1;
    transform: translate(0px, 0px);
}
.fade-bottom {
    opacity: 0;
    transition: .5s ease;
    transform: translate(0, 15px);
}
.fade-left {
    opacity: 0;
    transition: .5s ease;
    transform: translate(-15px, 0px);
}
.fade-right {
    opacity: 0;
    transition: .5s ease;
    transform: translate(15px, 0px);
}
.fadein.sc {
    opacity: 1;
}
.fadein {
    opacity: 0;
    transition: .5s ease;
}

.faq2 .answer:before {
    content: "A";
    background: #e67e22;
    color: #fff;
    width: 30px;
    height: 30px;
    display: block;
    text-align: center;
    line-height: 30px;
    position: absolute;
    border-radius: 100%;
    left: 20px;
    transform: translateY(-50%);
    top: 50%;
}
.faq2 .answer {
    padding: 20px 30px 20px 60px;
    border: 2px #e67e22 solid;
    margin-top: 10px;
    position: relative;
}
summary:focus {
    outline: none;
}
.faq2 details {
    margin-bottom: 30px;
}
.faq2 details[open] .answer {
    animation: fadein .5s ease-in-out;
}
@keyframes fadein{0%{opacity:0;}
	100%{opacity:1;}}
.answer {
    padding: 20px 30px;
}
.faq2 details[open] summary:after {
    transform: translateY(-50%)rotate(
45deg
);
}
.faq2 summary:after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
    transition: .5s;
	font-size: 30px;
}
.faq2 summary:hover,.faq2  details[open] summary {
    background: #c1e2f9;
}
.faq2 summary:before {
    content: "Q";
    background: #f29053;
    color: #fff;
    width: 30px;
    height: 30px;
    display: block;
    text-align: center;
    line-height: 30px;
    position: absolute;
    border-radius: 100%;
    left: 20px;
    transform: translateY(-50%);
    top: 50%;
}
.faq2 summary {
	    list-style: none;
    position: relative;
    padding: 20px 60px 20px 60px;
    background: #fafafa;
    cursor: pointer;
	    border: #f29053 2px solid;
}



span.pen {
    background: linear-gradient( transparent 70%, #c1e2f9 70%);
}
span.wavy {
    text-decoration: wavy underline #f29053;
}
span.dot {
text-emphasis: filled #f29053;
    -webkit-text-emphasis: filled #f29053;
}
span.sesame {
    text-emphasis: sesame #f29053;
    -webkit-text-emphasis: sesame #f29053;
}
p.hanten {
    mix-blend-mode: difference;
    font-size: 50px;
    font-weight: 600;
    color: #fff;
}
.module.back-plaid {
    background-image: repeating-linear-gradient(
0deg
, #c1e2f9 0 10px, transparent 10px 20px),repeating-linear-gradient(
90deg
, #c1e2f9 0 10px, transparent 10px 20px);
}
div.back-dot {
    background-image: radial-gradient( #c1e2f9 30%,#fff0 31%),radial-gradient( #c1e2f9 30%, #fff0 31%);
    background-size: 26px 26px;
    background-position: 0 0, 13px 13px;
}
div.back-border {
    background-image: repeating-linear-gradient(
45deg
, #c1e2f9, #c1e2f9 5px, rgb(0 0 0 / 0%)0, #0000 10px);
}
div.module.kugiru {
    background: #fff;
}


.card article:hover {
    transform: translate(0,-10px);
}
.card figure a, .card h2 a {
    position: relative;
}
#body .card article {
    background: #fff;
    box-shadow: 0px 0px 2px 1px rgb(66 66 66 / 30%);
    -moz-box-shadow: 0px 0px 2px 1px rgba(66,66,66,0.3);
    -webkit-box-shadow: 0px 0px 2px 1px rgb(66 66 66 / 30%);
    transition: .3s ease;
}
.card .post-content {
    height: 98px;
    padding: 0px 11px;
}
.card a {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    z-index: 4;
    display: block!important;
}

.themify_builder_row.module_row {
    z-index: 0;
}

h3.slm {
    font-size: 14px;
}
h3.slm span:after {
    content: "";
    background: #444;
    width: 1px;
    height: 20px;
    position: absolute;
    right: -15px;
bottom: 13px;
    transform: rotate(
45deg
);
}
h3.slm span {
    color: #f29053;
    font-weight: 600;
    font-size: 34px;
    display: inline-block;
    margin-right: 30px;
	position: relative;
}


h3.kmdsr {
    text-align: center;
    padding-top: 28px;
    font-weight: 600;
    font-size: 28px;
}

h3.kmdsr span {
    font-weight: 900;
    position: absolute;
    color: #c1e2f9;
    font-size: 48px;
    top: 0;
    line-height: 1;
    z-index: -1;
    left: 0;
    right: 0;
}
h3.kmdsl {
    padding-top: 28px;
    font-weight: 600;
    font-size: 28px;
}
h3.kmdsl span {
    font-weight: 900;
    position: absolute;
    color: #c1e2f9;
    font-size: 48px;
    top: 0;
    line-height: 1;
    z-index: -1;
    left: 0;
}



h3.back.c1-2 {
    background: #a24c17;
}
h3.back.c1-3 {
    background: #c1e2f9;
}
h3.back.c2 {
    background: #e67e22;
}

/* テンプレートここまで */


.phone.foot-p a {
    color: #111;
}
a.tb_turn_on.js-turn-on-builder {
    display: none;
}
#body .esc img { 
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.spro-wrap{width:100vw;}
#footer .back-top-float, #pagewrap .back-top-float {
    background-color: #f29053;
}
button.btn.btn-large.btn-primary:hover {
    box-shadow: 0 0 black;
}

.post-image img {
    border-radius: 0;
}
.cpc {
    width: 500px;
    margin: 0 auto;
    background: #fafafa;
    padding: 10px 0;
    max-width: 100%;
    margin-bottom: 40px;
    border-radius: 10px;
    text-align: center;
    border: 1px solid #ddd;
}
.themify_builder_row.module_row.clearfix.foot-c .row_inner {
    width: 900px;
      max-width: 100%;
    margin: 0 auto;
}
a.btn.footb {
    padding: 7px 0;
    width: 350px;
    margin: 10px auto 0;
	    max-width: 100%;
}
#body input.hrf {
    width: 49%;
    margin-right: 2%;
}
select.wpcf7-form-control.wpcf7-select.hrf2 {
    width: 49%;
}
.phone:before {
    content: "\f095";
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    padding-right: 0.2em;
	font-size: 93%;
}
p.phone.foot-p {
    font-size: 26px;
    font-weight: 900;
    line-height: 1.2;
}
.module.module-text.mvfade {
    width: 1200px;
    padding: 200px 30px;
    box-sizing: border-box;
    margin: 0 auto;
    background-size: cover;
    background-position: center center;
}
.sp-black {
    color: inherit;
    background: none;
}
h3.hback {
    background: rgba(255, 255, 255, .95);
    display: inline-block;
    padding: 5px 15px;
    font-size: 38px;
    font-weight: 600;
}

p.hb2 {
    background: rgba(255, 255, 255, .95);
    display: inline-block;
    padding: 5px 15px;
    font-size: 14px;
    font-weight: 500;
}
.module-image.image-top.mvf .image-content {
    margin: 0;
    position: absolute;
    z-index: 4;
	left:30px;
    top: 50%;
}





.pagewidth, .full_width .themify_builder_row .row_inner, .full_width .module-layout-part .themify_builder_row.fullwidth_row_container .row_inner {
    width: 1160px;
    max-width: 100%;
    margin: 0 auto;
}
#main-nav a {
	    line-height: 1;
    text-align: center;
}

time.post-date.entry-date.updated {
    text-align: left;
}
.entry-content {
    text-align: left;
}
#main-nav-wrap #main-nav .current_page_item > a, #main-nav .current-menu-item > a, #main-nav > .current_page_item > a, #main-nav > .current-menu-item > a,#headerwrap #mobile-menu.sidemenu-on nav a:hover, #headerwrap #mobile-menu.sidemenu-on nav .current-menu-item > a {
    color: #f29053;
}
#main-nav-wrap #main-nav .current_page_item a:hover, #main-nav .current-menu-item a:hover,#main-nav-wrap #main-nav a:hover, #main-nav-wrap #main-nav > li > a:hover,#headerwrap #mobile-menu.sidemenu-on nav a:hover, #headerwrap #mobile-menu.sidemenu-on nav .current-menu-item > a {
    color: #f29053;
}
#header a:hover {
    color: #f29053;
}
.post-title a:hover {
    color: #f29053;
}
div#site-logo,.mobile_menu_active #site-logo {
    font-size: 0;
}


.one, .one a {
    font-size: 13px;
}



.sp-key .post-title a {
    font-size: 22px;
    font-weight: 400;
}

h3.bi-color.c1{
          font-weight: 900;
 color: #f29053;
}
.cl.bi-color {
  color:#a24c17;
        font-weight: 900;
}
h3.bi-color.orange {
    color: #e67e22;
      font-weight: 900;
}


div#site-description {
    font-weight: 400;
    position: absolute;
    top: 2px;
}

.header-on-scroll .snsicon {
    display: none;
}
.sp-key h3 {
    border-bottom: 1px #999 dotted;
    padding-bottom: 5px;
    margin-bottom: 7px;
	font-weight: 600;
}
.sp-key h4 {
    border-bottom: 1px #999 dotted;
    padding-bottom: 5px;
    margin-bottom: 7px;
    font-size: 16px;
	font-weight: 600;
}
.sp-key h3:before{
  content:"■";
color:#f29053;
}
.loops-wrapper.list-post .post-date-inline .post-date, .single-post .post-content .post-date-inline .post-date {
    text-align: left;
    margin: 0;
}
table.cp-table {
    margin: 0 auto;
    text-align: left;
    font-size: 14px;
      border-bottom: 1px dashed #999;
      width: 100%;
}
table.cp-table td, table.cp-table th {
    border-top: 1px dashed #999;
    padding: 14px;
    font-weight: 500;
    font-size: 14px;
}
.narrow .row_inner {
    width: 860px;
      max-width: 100%;
    margin: 0 auto;
}
#footer .widget  a {
    font-weight: 400;
    line-height: 1.6;
}
.widget .feature-posts-list li {
    padding: 0;
    margin: 0;
    text-align: left;
}
.widget li {
    padding: 0;
    line-height: 1.6;
}
.footer-widgets .widgettitle {
    border-bottom: 1px dotted;
    padding-bottom: 10px;
    font-size: 15px;
}

.sidebar h4.widgettitle, #sidebar h4.widgettitle {
    background: #f29053;
    color: #fff;
    margin-bottom: 0;
    padding: 8px 11px;
    font-size: 14px;
    text-align: center;
}
.sidebar div.widget,#sidebar div.widget {
    font-weight: 400;
    font-size: 14px;
        margin-bottom: 25px;
}
.sidebar .widget li, #sidebar .widget li {
    border-bottom: 1px dotted #999;
}
.sidebar .widget ul, #sidebar .widget ul, .sidebar .widget .textwidget, #sidebar .widget .textwidget {
    padding: 5px 10px;
	    border: 1px solid #ddd;
    border-top: none;
}
.sidebar .widget li a, #sidebar .widget li a {
color:#111;
}
.sidebar .widget li a:before, #sidebar .widget li a:before {
content:"\f0da";
  font-family: "Font Awesome 7 Free";    font-weight: 900;
    width: 16px;
    display: inline-block;
    text-align: center;
}
#footer a {
    font-weight: 400;
}
.widget li {
    padding: 0;
    line-height: 1.6;
}
.sidebar .widget.widget_categories ul.children li a:before, #sidebar .widget.widget_categories ul.children li a:before {
    content: "・";
      padding-right: 0px;
}
.widget ul ul.children {
    padding-left: 5px;
  margin: 4px 0 0;
}
a.read-more {
  white-space: nowrap;
    color: #e67e22;
    padding-left: 3px;
}
	body.fixed-header #headerwrap, #headerwrap {
    min-height: unset;
}

#sidebar .widget_nav_menu h4.widgettitle:before {
content:"\f03a";
  font-family: "Font Awesome 7 Free";    font-weight: 900;
      font-weight: 100;
}
.archive main#content {
    padding: 5.75% 0 6%;
}
.archive h1.page-title {
    border-bottom: 1px #999 dotted;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

/* よくある質問 */
.faq dt {
  color:#f29053;
    font-weight: 400;
    border: 1px solid #f29053;
    margin-bottom: 5px;
    padding: 5px 15px 5px;
    cursor: pointer;
    background: #fff;
    position: relative;
    line-height: 1;
    height: 30px;
  margin-left:42px;
}
.faq dt:before {
    content: "+";
    position: absolute;
    display: block;
    left: -42px;
    height: 40px;
    background: #f29053;
    border: 1px solid #f29053;
    top: -1px;
    width: 40px;
    color: #fff;
    text-align: center;
    line-height: 40px;
    font-size: 30px;
    font-weight: 900;
    font-family: sans-serif;
}
.faq dt.click {
      border-top: 1px solid #e67e22;
  border-left: 1px solid #e67e22;
  border-right: 1px solid #e67e22;
    border-bottom: none;
color:#e67e22;
  margin-bottom:0;
}
.faq dt.click:before {
    content: "-";
      background: #e67e22;
        border: 1px solid #e67e22;
}
.faq dd {
    border-right: 1px solid #e67e22;
    border-left: 1px solid #e67e22;
    border-bottom: 1px solid #e67e22;
    color: #111;
    padding: 0px 15px 10px;
    cursor: pointer;
    background: #fff;
    position: relative;
    margin-left: 42px;
    font-weight: 400;
    margin-bottom: 5px;
}
@media screen and (max-width: 680px){
     .faq dt span {
    line-height: 1;
    display: inline-block;
          font-size: 13px;
}
  .faq dt,.faq dd {
padding: 5px 10px;
  }
  .faq dd {
    font-size: 13px;
    line-height: 1;
}
  .faq dt.click:before,.faq dt:before {
    font-size: 20px;
} 
}
/* よくある質問ここまで */

/* スマホ時マージンボトム */
  
@media screen and (max-width: 680px){
  div.spmb10{
    margin-bottom:10px;
  }
    div.spmb15{
    margin-bottom:15px;
  }
      div.spmb20{
    margin-bottom:20px;
  }
}
/* スマホ時マージンボトムここまで */


/* 施工事例写真エリア */
.p-area {
    margin-bottom: 40px;
    background: #d7e5ef;
    padding: 30px;
	    display: block;
}
#body p.app {
    background: #f29053;
    display: block;
    color: #fff;
    padding: 3px 17px;
    margin: 15px 0 10px;
    border-radius: 10px;
    font-weight: 600;
width: 61px;
    text-align: center;
}
.dpw {
    width: 100%;
    background: #fff;
}
img#dpi {
    height: 100%;
    width: 100%;
    object-fit: contain;
	    display: block;

}
.thuw {
    background: #fff;
    overflow: auto;
    padding: 15px;
}
span.thuwp {
    width: 90px;
    height: 90px;
    display: block;
    float: left;
    margin-right: 10px;
}
img.thu {
    width: 100%;
    cursor: pointer;
    height: 100%;
    object-fit: cover;
}
#body p.app.before {
    background: #e67e22;
}
@media screen and (max-width: 680px){
.p-area {
    padding: 10px;
}
	.move {
    display: block;
    height: 90px;
}
}
/* 施工事例写真エリアここまで */

/* シングルポスト */
.sp-key h1.post-title.entry-title {
    text-align: left;
}
.sp-key h1.post-title.entry-title {
    border-bottom: 1px dotted #999;
    padding-bottom: 10px;
    margin-bottom: 15px;
}
.sp-key time.post-date.entry-date.updated span {
    font-weight: 400;
}
/* スマホアイキャッチ横いっぱい */
@media screen and (max-width: 680px){
  .sp-key figure.post-image.clearfix {
    margin: 0px -5.6% 20px;
}
}
/* ポストここまで */

/* ヘッダーズレ修正 */
#content {
    padding: 0;
}
  @media screen and (max-width: 760px){
body #content {
    padding-top: 0;
  }
}
/* ヘッダーズレ修正ここまで */


/* テーブルシンプル */
table.simple-table {
    border-collapse: collapse;
    text-align: left;
    width: 100%;

}
table.simple-table th, table.simple-table td {
    padding: 10px 20px;
      border: 1px solid #bbb;
}
table.simple-table th{
  font-weight:700;
  background:#fafafa;
}



/* テーブルバイカラー */
table.bi-color-table {
    border-collapse: collapse;
    text-align: left;
    width: 100%;
    border: 1px solid #ccc;
}
table.bi-color-table th, table.bi-color-table td {
    padding: 10px 20px;
}
table.bi-color-table tr:nth-child(even){
  background:#fafafa;
}
table.bi-color-table th{
  font-weight:700;
}


/* メニュー左右ボーダー
#main-nav a {
    border-left: 1px solid #999;
    text-align: center;
    width: 100px;
    padding: 0;
}
#main-nav .menulast a {
    border-right: 1px solid #999;
}
ul#main-nav {
    padding: 10px 0;
}
*/


/* 見出し集 */
h3.moji {

}
.moji span {
    position: relative;
}
.moji.sc span:after {
	width: calc(100% + 10px);}
.moji span:after {
    background:#c1e2f9;
    content: "";
    height: 20px;
	transition: 1s;
    width: 0;
    left: -5px;
    display: block;
    position: absolute;
    bottom: -5px;
    z-index: -1;
}

h3.dbb {
    display: block;
    margin: 0 auto 15px;
    padding: 20px 0;
    line-height: 1;
    border: #f29053 1px dashed;
    border-right: none;
    border-left: none;
    text-align: center;
    color: #f29053;
    font-size: 20px;
    font-weight: 700;
    position: relative;
}
h3.dbb:before {
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    display: block;
    height: 1px;
    background: #f29053;
    content: "";
}
h3.dbb:after {
    position: absolute;
    bottom: -5px;
    left: -5px;
    right: -5px;
    display: block;
    height: 1px;
    background: #f29053;
    content: "";
}
.sayu {
      margin-bottom: 10px;

display: flex;
align-items: center;
}
.sayu:before,
.sayu:after {
border-top: 1px solid;
content: "";
flex-grow: 1;
}
.sayu:before {
margin-right: 1rem;
}
.sayu:after {
margin-left: 1rem;
}
h3.back {
    background: #f29053;
    color: #fff;
    padding: 5px 15px;
    margin-bottom: 10px;
    border-radius: 10px;
}
h3.bm:before {
    display: inline-block;
    width: 12px;
    height: 2px;
    margin-right: 9px;
    margin-left: 0;
    content: '';
    background: #f29053;
}
h3.cm {
    border-bottom: #f29053 solid 2px;
    padding-bottom: 5px;
    margin-bottom: 5px;
}
h3.cm:before {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 9px;
    margin-left: 0;
    content: '';
    border: 3px solid #f29053;
    border-radius: 50%;
}
h3.midashi {
    border-bottom: 1px dotted #999;
    padding-bottom: 10px;
    margin-bottom: 10px;
    font-size: 18px;
}
h3.komidashi {
    border-bottom: 1px dotted #999;
    padding-bottom: 10px;
    margin-bottom: 10px;
    font-size: 16px;
}
h3.bi-color {
    border-bottom: 2px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
  position: relative;
}
h3.bi-color::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    z-index: 2;
    content: '';
    width: 20%;
    height: 3px;
    background-color: #f29053;
}

h3.cbar span {
    display: block;
    font-size: 32px;
    line-height: 1;
    padding-bottom: 10px;
}
h3.cbar:after {
    position: absolute;
    content: '';
    width: 60px;
    height: 2px;
    left: 50%;
    margin: 20px 0px 0 -30px;
    display: block;
    background-color: #111;
}
h3.cbar {
    text-align: center;
    padding-bottom: 40px;
    position: relative;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
	    color: #f29053;
}
h3.lbar span {
    display: block;
    font-size: 32px;
    line-height: 1;
    padding-bottom: 10px;
}
h3.lbar {
    padding-bottom: 40px;
    position: relative;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    color: #f29053;
}
h3.lbar:after {
    position: absolute;
    content: '';
    width: 60px;
    height: 2px;
    left: 0;
    margin: 20px 0px 0 0;
    display: block;
    background-color: #111;
}

h3.cbar.tate {
    padding-bottom: 55px;
}
h3.cbar.tate:after {
    width: 1px;
    height: 20px;
    margin: 20px 0px 0 0px;
    background-color: #555;
}
h3.lbar.tate {
    padding-bottom: 55px;
}
h3.lbar.tate:after {
    width: 1px;
    height: 20px;
    margin: 20px 0px 0 0px;
    background-color: #555;
}




h3.fc:first-letter {
  color: #f29053;
}
h3.fcb:first-letter {
  color: #f29053;
  font-size:26px;
}

h3.fcb {
    margin-bottom: 10px;
}
h3.fc {
    margin-bottom: 10px;
}
/* ヘッダー上下パディング */

.mobile_menu_active #header, .mobile_menu_active #headerwrap.fixed-header #header {
    padding: 5px 0 5px;
}
/* ヘッダー上下パディングここまで */


/* ゴーストボタン */
a.read_all_btn {
    background: #f29053;
    display: inline-block;
    color: #fff;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    padding: 10px 20px;
    font-size: 14px;
}
a.read_all_btn i {
  padding-left:5px
}
a.read_all_btn:hover {
background:#a24c17;
}
a.btn {
	    position: relative;
    display: block;
    background: #f29053;
    color: #fff;
    padding: 7px 0;
    text-align: center;
    text-decoration: none;
	width: 300px;
    margin: 0 auto;
	    max-width: 100%;
}

a.btn:hover {
    background:  #a24c17;
}
a.btn:after {
    content: "\f138";
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    position: absolute;
    right: 10px;
    line-height: 0;
    top: 50%;
}
/* ゴーストボタンここまで */


.footer-horizontal-left .back-top, .footer-horizontal-right .back-top, .footer-left-col .back-top, .footer-right-col .back-top {
    top: -90px;
}



/* ローシャドウ */

div.photoshadow {
box-shadow:0px 0px 2px 1px rgba(66,66,66,0.3);
-moz-box-shadow:0px 0px 2px 1px rgba(66,66,66,0.3);
-webkit-box-shadow:0px 0px 2px 1px rgba(66,66,66,0.3);
}
div.rowshadow {
box-shadow:0px 0px 2px 1px rgba(66,66,66,0.3);
-moz-box-shadow:0px 0px 2px 1px rgba(66,66,66,0.3);
-webkit-box-shadow:0px 0px 2px 1px rgba(66,66,66,0.3);
}
/* ローシャドウここまで */


/* 不要物表示オフ */
span.edit-button {
    display: none;
}
a.themify_builder_turn_on.js-turn-on-builder {
    display: none;
}
/* 不要物表示オフここまで */




/* 文字・問い合わせ基本 */

#footer a:hover {
    color: #fff;
    opacity: .5;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Noto Sans JP', sans-serif;
      font-weight: 400;
  margin:0;
      letter-spacing: unset;
    text-transform: unset;
}
.post-title a{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
  margin:0;
}
p {
    padding: 0;
    margin: 0;
font-weight: 600;
    font-size: 16px;
    line-height: 2;
      font-family: 'Noto Sans JP', sans-serif;
}
div {
    font-family: 'Noto Sans JP', sans-serif;
}
a {
    font-family: 'Noto Sans JP', sans-serif;
        text-decoration: none!important;
      color: #f29053;
}
span {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    font-weight: inherit;
}
* {
    font-family: 'Noto Sans JP', sans-serif;
      font-weight: 400;
    font-size: 16px;
    line-height: 2;
        letter-spacing: unset;
}
.sp-key p{
padding: 0px 0 25px;
}
ul, ol {
    margin: 0 0 0 1.6em;
}
li {
    margin: 0;
}
h3 {
    font-size: 18px;
}

summary::-webkit-details-marker {
  display:none;
}
/* 文字・問い合わせ基本ここまで */



/* テンプレ部 */

/* トップページ投稿 */
.top-news-row h2.post-title.entry-title {
    display: inline;
      font-size: 15px;
}
.top-news-row .builder-posts-wrap.list-thumb-image article {
    border-bottom: 1px solid #ddd;
    margin: 0;
    padding: 10px;
}
.top-news-row h2.post-title.entry-title a {
    font-size: 15px;
      display: inline;
      font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;

}
.top-news-row time.post-date.entry-date.updated {
    display: inline;
    font-size: 15px;
  color:#f29053;
      font-weight: 400;
}
.top-news-row time.post-date.entry-date.updated span {
font-weight:600;
}
.top-news-row .post-date-wrap {
    display: inline-block;
    width: 10em;
}
.top-news-row .builder-posts-wrap.list-thumb-image article {
    border-bottom: 1px solid #ddd;
  margin: 0;
}
  .sp-key span.year:after{
 content:none; 
}
/* お知らせ文量少な目 */
div.hht::-webkit-scrollbar {
    width: 8px;
}
div.hht::-webkit-scrollbar-track {
  border-radius: 10px;
	background: #fafafa;
}
div.hht::-webkit-scrollbar-thumb {
  border-radius: 4px;
	background:#ddd;
}
div.hht {
    height: 300px;
    overflow: auto;
    border: 1px solid #ddd;
    padding: 20px;
}

.hht h2.post-title.entry-title a {
    line-height: 1.6;
    font-size: 15px;
    font-weight: 400;
}
.hht h2.post-title.entry-title {
width: calc(100% - 10em);
    float: left;
}

.hht .builder-posts-wrap.list-thumb-image article {
    border-bottom: 1px solid #ddd;
}
.hht .entry-content {
    float: left;
width: calc(100% - 10em);
}
.hht time.post-date.entry-date.updated {
  color: #f29053;
      line-height: 1.6;
    font-size: 15px;
}
.hht .post-date-wrap {
    display: block;
    float: left;
    width: 10em;
      padding-bottom: 30px;
}
.hht .builder-posts-wrap.list-thumb-image article {
    border-bottom: 1px solid #ddd;
    padding: 0 0 15px;
    margin: 0 0 15px;
}
  .sp-key span.year:after{
 content:none; 
}
/* お知らせ文量少な目ここまで */

/* お問い合わせパーツ */
button.btn.btn-large.btn-primary i {
    position: absolute;
    right: 15px;
    top: 50%;
    line-height: 0;
}
button.btn.btn-large.btn-primary {
	    position: relative;
    width: 600px;
    background: #f29053;
    padding: 10px 0;
    color: #fff;
    border: none;
    margin: 30px auto 30px;
    display: block;
    border-radius: 5px;
    max-width: 100%;
}
button.btn.btn-large.btn-primary:hover {
    background: #a24c17;
    padding: 10px 0;
}
p.middle-size-font {
    font-size: 18px;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.6;
    padding: 0;
}
a.beta-button-full {
	    position: relative;
    background: #f29053;
    width: 100%;
    display: block;
    color: #fff;
    font-size: 16px;
    font-family: 'Noto Sans JP', sans-serif;
    padding: 10px 0px;
    margin-top: 5px;
}
a.beta-button-full:hover {
background:#a24c17;
}
a.beta-button-full i {
    position: absolute;
    right: 15px;
    top: 50%;
    line-height: 0;
}
a.phone-no {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 36px;
    color: #111;
    display: block;
    font-weight: 700;
    line-height: 1;
}
span.phone-no-taiou {
    font-size: 14px;
    padding-top: 4px;
    display: block;
}

/* コンタクトフォーム２ */
table.contact {
  width:100%;
    margin: 0 auto;
    text-align: left;
    font-size: 14px;
      border-bottom: 1px dashed #999;
}
table.contact td,  table.contact th{
    border-top: 1px dashed #999;
    padding: 16px;
}
table.contact th {
    position: relative;
    width: 30%;
	    padding-right: 50px;
}
@media screen and (max-width: 1200px){
  table.contact {
    width: 100%;
  }
}


/* コンタクトフォーム１ */
table.subform {
    width: 100%;
    border-collapse: collapse;
    font-size: 16px;
    text-align: left;
}
table.subform th {
    border: #999 solid 1px;
    background: #f29053;
    color: #fff;
    padding: 10px 20px;
      font-weight: 400;
      width: 30%;
}
table.subform td {
    border: #999 solid 1px;
    padding: 10px 15px;
      width: 70%;
}
@media screen and (max-width: 1200px){
    table.contact {
    width: 100%;
  }
}
input[type=text], input[type=password], input[type=search], input[type=email], input[type=url], input[type=tel] {
    margin: 0;
    max-width: 100%;
    width: 100%;
    padding: 5px 15px;
    border-radius: 5px;
}
textarea, input[type=text], input[type=password], input[type=search], input[type=email], input[type=url], input[type=number], input[type=tel], input[type=date], input[type=datetime], input[type=datetime-local], input[type=month], input[type=time], input[type=week] {
    margin: 0;
    max-width: 100%;
    width: 100%;
    padding: 5px 15px;
    border-radius: 5px;
}
input.wpcf7-form-control.wpcf7-submit {
    width: 600px;
    background: #f29053;
    padding: 10px 0;
    color: #fff;
    border: none;
    margin: 30px auto 30px;
    display: block;
    border-radius: 5px;
    max-width: 100%;
}
span.hissu {
	    top: 21px;
      white-space: nowrap;
    background: #e74c3c;
    padding: 2px 5px;
    font-size: 14px;
    font-weight: 400;
    border-radius: 5px;
    margin-left: 10px;
  	color:#fff;
    position: absolute;
    right: 0;
}
.post-date {
    font-size: 14px;
  margin: 0;
}
.sidebar .widget li:last-child, #sidebar .widget li:last-child {
    border-bottom: none;
}
.sidebar .widget ul.children li, #sidebar .widget ul.children li {
    border-bottom: none;
	    padding: 0;
}
.sidebar .widget ul ul.children ,#sidebar .widget ul ul.children {
    padding: 0 0 7px 7px;
    border-bottom: 1px dotted #999;
}

.sidebar .widget li, #sidebar .widget li {
    padding: 1px 0 1px;
}
.sidebar .widget li a, #sidebar .widget li a,#sidebar .widget li a, #sidebar .widget li a {
    color:#111;
}
.sidebar .widget.widget_categories li a:before,#sidebar .widget.widget_categories li a:before {
    content: "\f15c";
    font-family: "Font Awesome 7 Free";    font-weight: 900;
    color: #f29053;
    padding-right: 7px;
}
#headerwrap {
    border-bottom: none;
}


#sidebar .widget ul.children, .sidebar .widget ul.children {
    padding: 0;
    border: 0;
    border-top: 1px solid #ddd;
    margin-bottom: 0px;
}
#sidebar .widget ul.children li, .sidebar .widget ul.children li {
    padding: 1px 0 1px 24px;
    position: relative;
}
.sidebar .widget.widget_categories ul.children li a:before, #sidebar .widget.widget_categories ul.children li a:before {
    content: "・";
    padding-right: 0px;
}

.textwidget a.btn {
    margin-top: 3px;
}
.textwidget p {
    padding-bottom: 5px;
}
.sp-key main#content {
    padding: 60px 0;
}
.single-post .post .post-date-inline {
    margin: 0;
}
p.ppt {
    padding-top: 15px;
}

#main-nav li.ulc a {
    cursor: default;
}
#main-nav li.ulc ul.sub-menu li a {
    cursor: pointer;
}
#main-nav li:not(.themify-widget-menu)>ul {
    width: 200px;
    left: -61px;
    right: 0;
    margin: auto;
    box-shadow: 0px 0px 2px 1px rgba(66,66,66,0.3);
    -moz-box-shadow: 0px 0px 2px 1px rgba(66,66,66,0.3);
    -webkit-box-shadow: 0px 0px 2px 1px rgba(66,66,66,0.3);
}
#main-nav li:not(.themify-widget-menu)>ul li a {
    font-size: 13px;
padding: 0 10px;
}
#main-nav li:not(.themify-widget-menu)>ul li a:before {
    content: "・";
}
/* テンプレ部ここまで */

/* PC */
@media screen and (min-width: 1200px){
.pcnone{
  display:none;
  }
  #main-nav li.pcnone {
    display: none;
}
	#main-nav span.child-arrow {
    display: none;
}
}
/* PCここまで */

div.kasoh {
    background-image: url(https://georgekrnir.mixh.jp/share-house/wp-content/uploads/2025/09/mainv.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: scroll;
    background-position: center center;
    padding-top: 100px;
    padding-bottom: 100px;
}