@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;600&display=swap');

.page-id-4047 h4.subt {
    margin-top: 20px;
}
:root{
  --cf7-main:#f8931d;
  --cf7-text:#222;
  --cf7-muted:#666;
  --cf7-bg:#fff;
  --cf7-surface:#fafafa;
  --cf7-border:#e6e6e6;
  --cf7-radius:14px;
  --cf7-shadow:0 10px 30px rgba(0,0,0,.10);
  --cf7-focus:rgba(248,147,29,.35);
  --cf7-gap:14px;
}
form.wpcf7-form.init br {
    display: none;
}
.cf7-reserve-form{
  max-width: 860px;
  margin: 0 auto;
  color: var(--cf7-text);
}

.cf7-required-note{
  padding: 10px 12px;
  border: 1px solid var(--cf7-border);
  background: var(--cf7-surface);
  border-radius: var(--cf7-radius);
  margin-bottom: 18px;
}

.req{ color: var(--cf7-main); font-weight: 700; margin-left: 4px; }

.cf7-hr{
  border: 0;
  border-top: 1px solid var(--cf7-border);
  margin: 22px 0;
}

.cf7-section-title{
  font-size: 1.1rem;
  font-weight: 800;
  margin: 0 0 10px;
}

.cf7-field{ margin-bottom: 16px; }
.cf7-field label{
  display: inline-block;
  font-weight: 800;
  margin-bottom: 8px;
}

.cf7-help, .cf7-note{
  font-size: .92rem;
  color: var(--cf7-muted);
  margin: 6px 0 0;
  line-height: 1.45;
}

.cf7-note{
  padding: 10px 12px;
  border: 1px dashed var(--cf7-border);
  border-radius: var(--cf7-radius);
  background: #fff;
}

.cf7-sub-label{
  display: block;
  font-size: .85rem;
  color: var(--cf7-muted);
  margin-bottom: 6px;
}

.cf7-grid2{
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--cf7-gap);
}
@media (min-width: 760px){
  .cf7-grid2{ grid-template-columns: 1fr 1fr; }
}

.cf7-grid-dt{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.cf7-reserve-form input[type="text"],
.cf7-reserve-form input[type="tel"],
.cf7-reserve-form input[type="email"],
.cf7-reserve-form select,
.cf7-reserve-form textarea{
  width: 100%;
  box-sizing: border-box;
  padding: 12px 14px;
  border: 1px solid var(--cf7-border);
  border-radius: var(--cf7-radius);
  background: var(--cf7-bg);
  color: var(--cf7-text);
  outline: none;
}

.cf7-reserve-form textarea{ min-height: 130px; resize: vertical; }

.cf7-reserve-form input:focus,
.cf7-reserve-form select:focus,
.cf7-reserve-form textarea:focus{
  border-color: var(--cf7-main);
  box-shadow: 0 0 0 4px var(--cf7-focus);
}

.cf7-reserve-form .wpcf7-list-item{
  margin: 0 10px 0 0;
}
.cf7-reserve-form .wpcf7-list-item label{
  font-weight: 700;
}

.cf7-submit{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 18px;
  border-radius: var(--cf7-radius);
  border: 1px solid var(--cf7-main);
  background: var(--cf7-main);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}
.cf7-submit:hover{ filter: brightness(.98); }

.wpcf7-not-valid-tip{
  color: #c62828;
  font-size: .92rem;
  margin-top: 6px;
}

.wpcf7-response-output{
  border-radius: var(--cf7-radius);
  padding: 12px 14px;
}

/* ===== モーダル ===== */
.cf7-modal{ display:none; }
.cf7-modal.is-open{ display:block; }

.cf7-modal__overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.45);
  z-index: 9998;
}

.cf7-modal__panel{
  position: fixed;
  inset: 0;
  margin: auto;
  width: min(720px, calc(100% - 24px));
  height: fit-content;
  background: var(--cf7-bg);
  border-radius: var(--cf7-radius);
  box-shadow: var(--cf7-shadow);
  z-index: 9999;
  overflow: hidden;
}

.cf7-modal__header{
  display:flex;
  align-items:center;
  justify-content: space-between;
  padding: 12px 14px;
  background: var(--cf7-surface);
  border-bottom: 1px solid var(--cf7-border);
}

.cf7-modal__title{ font-weight: 900; }
.cf7-modal__close{
  border: 0;
  background: transparent;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  color: var(--cf7-muted);
}

.cf7-modal__body{
  padding: 14px;
  line-height: 1.6;
  white-space: pre-wrap;
}

.cf7-modal__footer{
  padding: 12px 14px;
  border-top: 1px solid var(--cf7-border);
  display:flex;
  justify-content:flex-end;
  gap: 10px;
}

.cf7-btn{
  padding: 10px 14px;
  border-radius: var(--cf7-radius);
  cursor: pointer;
  font-weight: 800;
}
.cf7-btn--sub{
  background: #fff;
  border: 1px solid var(--cf7-border);
  color: var(--cf7-text);
}

/* datepicker（jQuery UI）最低限 */
.ui-datepicker{
  border-radius: var(--cf7-radius);
  box-shadow: var(--cf7-shadow);
  border: 1px solid var(--cf7-border);
}
.ui-datepicker .ui-datepicker-header{
  background: var(--cf7-surface);
  border: 0;
}
.ui-datepicker .ui-state-highlight,
.ui-datepicker .ui-state-active{
  border-color: var(--cf7-main) !important;
}








.shinryo li.full {
    background: #006934;
    width: 100%;
}
a.bigp {
    font-size: 20px;
    font-weight: 600;
}
.nmn-wrap ul {
    padding-bottom: 20px;
}
a.mvb:after {
    content: "\f138";
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
    position: absolute;
    right: 10px;
    line-height: 0;
    top: 50%;
}
a.mvb.big.nm.blue {
    background: #009FD1;
}
.nmn-wrap p {
    padding-bottom: 15px;
}
a.mvb {
    width: 100%;
    background: #f8931d;
    color: #fff;
    display: block;
    text-align: center;
    font-size: 18px;
    padding: 5px 0;
    margin-bottom: 20px;
	position: relative;
}
.nmn-wrap img {
    width: 400px;
}
p.notice3 {
    color: #c0392b;
    font-weight: 600;
    text-align: center;
}
div.josei {
    background: #fafafa;
    padding: 12px 30px 18px;
    border: #ddd 1px solid;
    margin-bottom: 30px;
    border-radius: 20px;
}
.banner-wrap img {
    margin: 0;
}

.banner-wrap p {
    width: 48%;
    box-shadow: 0 0 4px #0000002b;
    padding: 0;
}
.banner-wrap {
    display: flex
;
    flex-wrap: wrap;
    gap: 20px 4%;
}
#main-nav .last li a:after {
	display:none;
}

p.red {
    color: #d70000;
}
.splirt div {
    width: 45%;
}
.splirt {
    display: flex;
    gap: 10%;
}
a.btn.long{
    width: 531px;
}
h4.subt.anc {
    z-index: -1;
    padding-top: 100px;
    margin-top: -100px;
}
#footer ul.menu li.foot-none a {
    display: none;
}
#body p.pcrt {
    margin: 0;
}
.page-id-2199 p,.page-id-2199 ul{margin-bottom:15px;}

.page-id-2199 #body  h5 {
    font-size: 17px;
    color: #f8931d;
    font-weight: 600;
}
.page-id-2199 #body strong {
    font-weight: 700;
    color: #f8931d;
}
.shinryo li a {
    color: #fff;
}
.shinryo li {
    width: calc(33.3% - 10px);
    background: #f8931d;
    color: #fff;
    text-align: center;
    margin: 5px;
}
ul.shinryo.clearfix {
    margin: 15px 0 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}

.yoyaku-list span.notice {
    color: #d21b1b;
}
.yoyaku-list p {
    font-size: 14px;
}
div.yoyaku-list a.mvb.small {
    box-sizing: border-box;
    text-align: center;
    background: #f8931d;
    color: #fff;
    width: 100%;
    display: block;
    margin-bottom: 10px;
}
.yoyaku-list .split img {
    width: 47%;
}
.cps .tb_text_wrap div.yoyaku-list .split {
    gap: 6%;
    display: flex;
    margin: 5px 0 15px;
    width: 100%;
}
.yoyaku-list ul li:before {
    display: inline-block;
    content: "\f14a";
    font-family: fontawesome;
    margin-right: 15px;
}
.yoyaku-list ul li {
    text-align: left;
    font-size: 18px;
}
.yoyaku-list ul {
    list-style: none;
    margin: 0 0 20px;
}

.yoyaku-list h4 {
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
}
.cps .tb_text_wrap div.yoyaku-list {
    max-width: 90%;
    margin: 25px auto 20px;
    width: 420px;
    text-align: left;
}
ul.notice li:before {
    content: "※";
    position: absolute;
    left: -22px;
}
ul.pagemenu.size2 li {
    width: 47%;
}
ul.notice li {
    position: relative;
}
ul.notice {
    list-style: none;
}
h1.kasot.aka {
    margin-bottom: 11px;
}
p.hiyo.josei {
    padding-left: 9em;
    margin-top: -10px;
}
p.hiyo span {
    color: #000;
    font-size: 16px;
}
p.hiyo {
    color: #c80000;
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 18px;
}
.kenpo-narrow {
    width: 700px;
    margin: 0 auto;
    max-width: 100%;
}

p.keikoku,p.keikoku2,p.keikoku3 {
    display: none;
}
p.keikoku.on ,p.keikoku2.on ,p.keikoku3.on {
    display: block;
    color: red;
}
a.btn.topm:hover {
    background: #911e12;
}
#body .kibo input, #body .kibo select {
    width: calc(50% - 3em);
}
a.btn.topm {
    margin: 5px auto 20px;
    background: #c0392b;
}
a.btn.topm {
    margin: 5px auto 20px;
}
h3.mm {
    font-family: 'Noto Serif JP';
    margin: 15px 0 5px;
}
.seinen input.wpcf7-form-control.wpcf7-text.short {
    width: 5em;
}
dl.list dd {
    margin-left: 150px;
}
dl.list dt {
    position: absolute;
}
.hht.blue time.post-date.entry-date.updated {
    color: #00c124;
}


h3.newt.blue {
    background: #00c124;
}
a.btn.blue:hover {
    background: #007a17;
}

a.btn.blue {
    background:  #00c124;
}
.pad p {
    margin-bottom: 15px;
}
h1.kasot.small {
    font-size: 20px;
}
ul.pagemenu a.small {
    font-size: 13px;
    line-height: 32px;
}
#sidebar .sbm a.pht {
    font-size: 12px;
}
a.btn.mgt {
    margin-top: 15px;
}
#footer .widget ul a:before {
    content: "・";
}
#footer .widget ul a {
    font-size: 14px;
}
.single-itsuki-blog div#categories-2 {
    display: block;
}
div#categories-2 {
    display: none;
}
dl.privacyList dd {
    margin-bottom: 30px;
}
dl.privacyList dt {
    color: #f8931d;
    font-weight: 600;
    font-size: 17px;
}
#sidebar img{
	vertical-align: middle;
	
}
#sidebar p {
    padding: 0;
    margin: 0;
}
div.kst {
    background: no-repeat;
    padding: 0;
    box-shadow: none;
}
#footer ul.menu li a:before {
    content: "・";
}
#footer ul.menu {
    column-count: 2;
}
#footer ul.sub-menu li {
    padding: 0;
}
#footer ul.sub-menu {
    margin: 0;
}



#sidebar .widget ul.sub-menu {
    padding: 0;
    border: 0;
    margin: 0;
}
#footer a.pht span {
    line-height: 1.6;
}
#main-nav ul a:before {
display:none;
}

.shint.left th, .shint.left td {
    text-align: left;
}
div.kst.ww {
    padding: 0;
    box-shadow: none;
}
dl.dsc dt {
    position: absolute;
    font-weight: 600;
}
dl.dsc dd {
    margin-left: 120px;
}
.tblwd table.shint td:nth-child(1), .tblwd table.shint td:nth-child(2), td.kleft {
    text-align: left;
}
h3.topttl {
    font-family: noto serif jp;
    font-size: 26px;
    margin-bottom: 10px;
}
.neuli li {
    width: 50%;
}
.neuli ul {
    display: flex;
    flex-wrap: wrap;
}
div.dlw {
    background: #fcfcfc;
    border: 1px solid #eee;
    padding: 10px 20px;
    border-radius: 10px;
}
.menucnt ul {
    justify-content: space-evenly;
}
p.mochi, .pbtm p.mochi {
    border-bottom: 1px dotted;
    margin-bottom: 5px;
}
ul.btnflex {
	    list-style: none;
    margin: 0 0 20px 0;
    display: flex;
    gap: 1%;
    flex-wrap: wrap;
}
span.ci:before {
    content: "●";
    color: #f8931d;
    padding-right: 5px;
}
.ccmds p {
    margin-bottom: 15px;
}
.ccmds {
    margin-top: 20px;
}
.ccmds h3 {
    font-weight: 600;
}
span.daihyo {
    background: #13478c;
    font-size: 12px;
    color: #fff;
    padding: 1px 5px;
    margin-left: 9px;
}
.asp p {
    width: 50%;
}
a.pht {
    color: #333;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.6;
}
a.read_all_btn.right {
    margin-left: auto;
    display: block;
    width: 200px;
}
.ada dd {
    margin: 0 0px 10px 155px;
}
.ada dt {
    background: #f8931d;
    color: #fff;
    font-size: 14px;
    float: left;
    width: 139px;
    text-align: center;
}

div.kst {
    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%);
    padding: 20px 30px;
    right: 40px;
    top: 60px;
    width: 700px;
    z-index: 1;
    background: rgba(255, 255, 255, .95);
}
div.top-access {
    width: 700px;
    max-width: unset;
    left: -100px;
}

.kamoku ul {
    margin: 0;
    list-style: none;
    display: flex;
    padding: 10px 20px;
    justify-content: space-around;
}
.kamoku h4 {
    background: #f8931d;
    color: #fff;
    text-align: center;
    padding: 5px;
}

.kamoku {
    border: 1px solid #e0e0e0;
    width: 100%;
    margin-bottom: 20px;
	    margin-top: 30px;
}
table.tanto.sinryo-hyo td {
    text-align: center;
}
tr.kamokumenu td, tr.kamokumenu th {
    color: #fff;
    background: #f8931d;
}
.tmenu ul li:last-child {
    border-right: 1px solid rgb(204, 204, 204);
}
.tmenu ul li img {
    width: 34px;
    display: block;
    margin: 0 auto 5px;
}
.tmenu ul li a {
    font-size: 13px;
}
.tmenu ul li {
    padding: 14px 0 6px;
    width: 90px;
    text-align: center;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.tmenu ul {
    margin: 15px 0 0;
    display: flex;
    list-style: none;
    background: #fff;
}
table.tanto th {
    background: #fffcfc;
}
table.tanto th, table.tanto td {
    border: 1px solid #e0e0e0;
    padding: 5px 15px;
}
table.tanto th, table.tanto td {
    border: 1px solid #e0e0e0;
    padding: 5px 15px;
}
table.tanto {
    border: 1px solid #e0e0e0;
    border-collapse: collapse;
    width: 100%;
    overflow: hidden;
    margin-bottom: 10px;
}
h3.newt {
    background: #f8931d;
    text-align: center;
    color: #fff;
    padding: 10px;
    font-size: 19px;
    border-radius: 15px 15px 0 0;
}
p.cc2 {
    font-size: 25px;
    text-align: center;
    color: #fff;
    font-family: "noto serif JP";
    text-shadow: 0 0 4px #000;
    font-weight: 600;
    margin-top: 40px;
}
p.cc {
    text-align: center;
    color: #fff;
    font-family: "noto serif JP";
    font-size: 42px;
    text-shadow: 0 0 4px #000;
    font-weight: 600;
}
.module_row.fullheight {
    min-height: 75vh;
}
#body #sidebar .widget_text {
    margin: 0;
}
#body #sidebar .textwidget {
    border: 0;
    padding: 0;
    margin-bottom: 0;
}
.sidebar .widget li a:before, #sidebar .widget li a:before {
    content: "\f0da";
    font-family: fontawesome;
    width: 16px;
    display: inline-block;
    text-align: center;
}
.sidebar .widget li a, #sidebar .widget li a, #sidebar .widget li a, #sidebar .widget li a {
	    font-size: 14px;
    color: #111;
}
.sidebar .widget li, #sidebar .widget li {
    padding: 3px 0 3px;
}
.imenu ul li:last-child a {
    border-right: 0;
}
.imenu ul li {
    text-align: center;
    width: 18%;
}
.imenu ul li img {
    height: 48px;
    display: block;
    width: 40px;
    margin: 0 auto;
    margin-bottom: 6px;
}
.imenu ul li a {
    color: #111;
    font-weight: 500;
    border-right: 1px solid #c3c3c3;
    display: block;
}
.imenu.big ul li {
    width: 25%;
}
.imenu.big ul {
    margin-top: 0;
}
.imenu ul {
    margin: 0;
    display: flex;
    list-style: none;
    padding: 15px 5px;
    background: #fff;
    margin-top: -55px;
    border: 1px solid #ccc;
    border-radius: 20px;
}

.shint th, .shint td {
    border: 1px solid #ddd;
    padding: 5px 10px;
}
span.note {
    display: block;
    font-size: 12px;
    text-align: left;
    color: #c0392b;
    line-height: 1.3;
}
.shint th:first-child {
    width: 25%;
}
tr.kamoku th {
    background: #f8931d;
    border: 1px solid #ddd;
    color: #fff;
    padding: 5px 10px;
}
.shint th {
    background: #fafafa;
}

table.shint {
    width: 100%;
    border-collapse: collapse;
    text-align: center;
    background: #fff;
    margin-bottom: 30px;
}
.cps a.btn {
    margin-top: 10px;
}
.cps .tb_text_wrap {
	    flex-wrap: wrap;
    display: flex;
}

div.cps {
    background: #fafafa;
    padding: 12px 0px 8px;
    border: #ddd 1px solid;
    margin-bottom: 30px;
    border-radius: 20px;
}
.phone:before {
    content: "\f095";
    font-family: "Font Awesome";
    font-weight: 900;
    padding-right: 0.2em;
    font-size: 93%;
}
a.csp {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.4;
}
.cps .tb_text_wrap div {
    width: 50%;
}
.cp2 {
    width: 50%;
    float: left;
}
p.cspt {
    font-size: 12px;
    line-height: 1.5;
    padding-bottom: 0px;
}
h4.cst {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 0px;
}
.cps .tb_text_wrap div {
    width: 50%;
}
span.ftden {
    position: relative;
    font-size: 13px;
    left: 0;
    margin-right: 10px;
    font-weight: 500;
    line-height: 1.6;
}
iframe, object, embed {
    vertical-align: middle;
}
a.sba {
    position: relative;
    background: #f8931d;
    color: #fff;
    width: 100%;
    display: block;
    text-align: center;
    padding: 2px 0;
    margin: 10px 0;
    font-size: 13px;
}
.sbm a.pht span.ftden {
    font-size: 12px;
}
.sbm a.pht {
    color: #111;
    position: relative;
    font-weight: 600;
}

.sbm a.pht {
    font-size: 15px;
}
.textwidget p {
    padding-bottom: 0px;
}

.sbgm {
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.sbm {
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
}
.sbm {
    font-size: 14px;
    padding: 8px 10px 10px;
}
h3.sbtt {
    background: #f8931d;
    color: #fff;
    text-align: center;
    font-family: source-han-serif-japanese, serif;
    padding: 8px 0;
    font-size: 16px;
}
ul.flex li {
    margin-left: 35px;
}
ul.flex {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 7px;
}
.pbtm p {
    margin-bottom: 20px;
}
.hside .row_inner {
    display: flex;
	gap:0;
}
div.back {
    background: #ffeaf8;
    padding: 10px 20px;
    border: 1px solid #f8931d;
    margin: 10px 0;
    border-radius: 15px;
}
h4.subt::before {
    content: "■";
    color: #f8931d;
    padding-right: 3px;
}
h4.subt {
    margin-bottom: 5px;
    font-weight: 600;
}
ul.pagemenu a {
    color: #fff;
    display: block;
}
ul.pagemenu.row2 li {
    width: 48%;
}

ul.pagemenu li {
    list-style: none;
    background: #f8931d;
    text-align: center;
    margin-bottom: 15px;
    width: 30%;
}
ul.pagemenu {
    margin-bottom: 30px;
    margin-left: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 5%;
}
li#bcn_widget-2 {
    margin: 0;
    list-style: none;
}
li#bcn_widget-2 span, li#bcn_widget-2 a {
    font-size: 13px;
}

#footer ul.menu li.cst a:before {
    content: "■";
    color: #f8931d;
    margin-right: 6px;
}

#footer ul.menu li a {
    font-size: 15px;
    line-height: 1;
}

#footer ul.menu li.cst a {
    border-bottom: 1px dotted;
    display: block;
    padding-bottom: 10px;
    margin-bottom: 3px;
    font-size: 15px;
    margin-top: 17px;
}
.widget li {
    padding: 0;
    line-height: 26px;
}
#footerwrap #footer a.btn {
    color: #fff;
}
.footer-text.tf_clear.tf_clearfix a {
    color: #fff;
    font-size: 13px;
}
.footer-text.tf_clear.tf_clearfix div {
    font-size: 13px;
}
.footer-text.tf_clear.tf_clearfix {
    padding: 6px;
    background:  #f8931d;
    color: #fff;
    font-size: 13px;
    text-align: center;
}
.footer-left-col .section-col {
    width: 100%;
    margin: 0;
}
#footer a.pht {
    line-height: 1;
    font-size: 13px;
}

#footer a.pht {
    position: relative;
    font-weight: 600;
}
p.fden {
    line-height: 1;
}
div#foot-add p {
    width: 33.3%;
}
p.add {
    font-size: 13px;
    line-height: 1.6;
}
.asp {
    border: 1px solid #ddd;
    display: flex;
    background: #fafafa;
    padding: 10px 20px;
    margin: 0 0 20px;
}

div#foot-add {
    padding: 15px 20px 5px;
    margin-left: 300px;
    display: flex;
    border-radius: 10px;
}
#footer, #footerwrap #footer a {
    color: #111;
}
div#footerwrap {
    padding: 60px 0 0;
}
#footerwrap {
    border-top: 1px solid rgba(0,0,0,.05);
    background: none;
    background-color: #ffffff;
}
.mobile_menu_active #header, .mobile_menu_active #headerwrap.fixed-header #header {
    padding: 5px 0 5px;
}

#main-nav .last a:after {
    content: "";
    height: 27px;
    width: 1px;
    background: #ddd;
    display: block;
    position: absolute;
    transform: rotate(15deg);
    top: 4px;
    right: 0;
}
a.sp-houjin {
    display: none;
}

.hmu .fa-solid {
    margin-right: 4px;
    color: #f8931d;
}
.hmu a {
    color: #111;
    margin-left: 12px;
    font-size: 13px;
}
.hmu {
    position: absolute;
    top: 11px;
    right: 0;
    display: flex;
}
#headerwrap {
    border-top: 5px solid #f8931d;
}
nav#main-nav-wrap {
    margin-top: 33px;
}

#main-nav li:not(.themify-widget-menu)>ul li a {
    font-size: 13px;
    padding: 0 10px;
}
#main-nav a:before {
    content: "";
    height: 27px;
    width: 1px;
    background: #ddd;
    display: block;
    position: absolute;
    transform: rotate( 15deg );
    left: 0;
    top: 6px;
}
#main-nav a {
    text-align: center;
    font-family: source-han-serif-japanese, serif;
    font-weight: 500;
    font-style: normal;
    padding: 3px 14px;
    font-size: 15px;
}
body #site-logo a img {
    width: 200px;
}

header#header, .fixed-header #header {
   padding: 5px 0 5px;
}


select.wpcf7-form-control.wpcf7-select {
    width: 100%;
    padding: 5px 30px 5px 15px;
	    min-height: 37px;
}
.single .kasoh .module.module-text {
    max-width: 90%;
}

h1.kasot {
    font-family: noto serif jp;
    font-size: 26px;
    line-height: 1;
    font-weight: 500;
}
p.kasote {
    padding-top: 10px;
    color: #f8931d;
    font-family: noto serif jp;
    font-size: 18px;
    line-height: 1;
}
.kasoh .module.module-text {
    max-width: 100%;
    width: 400px;
    margin: 0 auto;
    text-align: center;
    background: #ffffff9e;
    padding: 10px 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: #f8931d;
    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: #f8931d;
    position: absolute;
    height: 100%;
    width: 100%;
    right: 0;
    top: 0;
    transition: .5s ease;
}
.cover-left:before {
    content: "";
    background: #f8931d;
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    transition: .5s ease;
}
.cover.sc:before {
    opacity: 0;
}
.cover:before {
    content: "";
    background: #f8931d;
    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: #fbddba;
}
.faq2 summary:before {
    content: "Q";
    background: #f8931d;
    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: #f8931d 2px solid;
}



span.pen {
    background: linear-gradient( transparent 70%, #fbddba 70%);
}
span.wavy {
    text-decoration: wavy underline #f8931d;
}
span.dot {
text-emphasis: filled #f8931d;
    -webkit-text-emphasis: filled #f8931d;
}
span.sesame {
    text-emphasis: sesame #f8931d;
    -webkit-text-emphasis: sesame #f8931d;
}
p.hanten {
    mix-blend-mode: difference;
    font-size: 50px;
    font-weight: 600;
    color: #fff;
}
.module.back-plaid {
    background-image: repeating-linear-gradient(
0deg
, #fbddba 0 10px, transparent 10px 20px),repeating-linear-gradient(
90deg
, #fbddba 0 10px, transparent 10px 20px);
}
div.back-dot {
    background-image: radial-gradient( #fbddba 30%,#fff0 31%),radial-gradient( #fbddba 30%, #fff0 31%);
    background-size: 26px 26px;
    background-position: 0 0, 13px 13px;
}
div.back-border {
    background-image: repeating-linear-gradient(
45deg
, #fbddba, #fbddba 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: #f8931d;
    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: #fbddba;
    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: #fbddba;
    font-size: 48px;
    top: 0;
    line-height: 1;
    z-index: -1;
    left: 0;
}



h3.back.c1-2 {
    background: #ae5e00;
}
h3.back.c1-3 {
    background: #fbddba;
}
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: #f8931d;
}
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 6 Pro";
    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: 1110px;
    max-width: 100%;
    margin: 0 auto;
}
#main-nav a {
    text-align: center;
}
#main-nav a span {
    display: block;
    font-size: 12px;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1;
    padding-top: 2px;
}
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: #f8931d;
}
#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: #f8931d;
}
#header a:hover {
    color: #f8931d;
}
.post-title a:hover {
    color: #f8931d;
}
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: #f8931d;
}
.cl.bi-color {
  color:#ae5e00;
        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;
}
.sp-key h4 {
    border-bottom: 1px #999 dotted;
    padding-bottom: 5px;
    margin-bottom: 7px;
    font-size: 16px;
}
.sp-key h3:before{
  content:"■";
color:#f8931d;
}
.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: 16px;
    font-weight: 400;
}

.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: #f8931d;
    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 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 6 Pro";    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 6 Pro";    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:#f8931d;
    font-weight: 400;
    border: 1px solid #f8931d;
    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: #f8931d;
    border: 1px solid #f8931d;
    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: #f8931d;
    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:#fbddba;
    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: #f8931d 1px dashed;
    border-right: none;
    border-left: none;
    text-align: center;
    color: #f8931d;
    font-size: 20px;
    font-weight: 700;
    position: relative;
}
h3.dbb:before {
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    display: block;
    height: 1px;
    background: #f8931d;
    content: "";
}
h3.dbb:after {
    position: absolute;
    bottom: -5px;
    left: -5px;
    right: -5px;
    display: block;
    height: 1px;
    background: #f8931d;
    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: #f8931d;
    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: #f8931d;
}
h3.cm {
    border-bottom: #f8931d 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 #f8931d;
    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.anc {
    z-index: -1;
    z-index: -1;
    padding-top: 100px;
    margin-top: -100px;
}

h3.bi-color {
    border-bottom: 2px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
    position: relative;
}
h3.bi-color::before {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 9px;
    margin-left: 0px;
    content: "";
    border-width: 3px;
    border-style: solid;
    border-color: #f8931d;
    border-image: initial;
    border-radius: 50%;
}
h3.bi-color::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    z-index: 2;
    content: '';
    width: 20%;
    height: 3px;
    background-color: #f8931d;
}

h3.cbar span {
    display: block;
    font-size: 32px;
    line-height: 1;
    padding-bottom: 10px;
}
h3.cbar:after {
    position: absolute;
    content: '';
    width: 60px;
    height: 3px;
    left: 50%;
    margin: 20px 0px 0 -30px;
    display: block;
    background-color: #f8931d;
}
h3.cbar {
    text-align: center;
    padding-bottom: 40px;
    position: relative;
    font-size: 28px;
    font-family: 'Noto Serif JP';
    font-weight: 400;
    line-height: 1;
}
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-family: 'Noto Serif JP';
    font-weight: 400;
    line-height: 1;
}
h3.lbar:after {
    position: absolute;
    content: '';
    width: 60px;
    height: 3px;
    left: 0;
    margin: 20px 0px 0 0;
    display: block;
    background-color: #f8931d;
}
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: #f8931d;
}
h3.fcb:first-letter {
  color: #f8931d;
  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: #f8931d;
    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:#ae5e00;
}
a.btn {
	    position: relative;
    display: block;
    background: #f8931d;
    color: #fff;
    padding: 7px 0;
    text-align: center;
    text-decoration: none;
	width: 300px;
    margin: 0 auto;
	    max-width: 100%;
}

a.btn:hover {
    background:  #ae5e00;
}
a.btn:after {
    content: "\f138";
    font-family: "Font Awesome 6 Pro";
    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#headerwrap {
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.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: #f8931d;
}
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: 400;
    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: #f8931d;
}
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:#f8931d;
      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: 220px;
    overflow: auto;
    border: 1px solid #ddd;
    padding: 20px;
    background: #fff;
    border-radius: 0 0 15px 15px;
}

.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: #f8931d;
      line-height: 1.6;
    font-size: 15px;
}
.hht .post-date-wrap {
    display: block;
    float: left;
    width: 10em;
}
.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: #f8931d;
    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: #ae5e00;
    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: #f8931d;
    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:#ae5e00;
}
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: #f8931d;
    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: #f8931d;
    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 6 Pro";    font-weight: 900;
    color: #f8931d;
    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;
}

.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;
}
	
	div.sayu-lay {
    height: 450px;
}
}
/* PCここまで */

div.kasoh {
    background-image: url(https://ichinomiya-itsuki.com/wp-content/uploads/2023/11/mainv-kari-3.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: scroll;
    background-position: center center;
    padding-top: 100px;
    padding-bottom: 100px;
}

