.sp {
  display: none !important;
}

.fnt-notosan {
  font-family: 'Noto Sans JP', sans-serif;
}

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 0 !important;
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  padding-top: 10px;
  max-width: 485px;
}
.flex .left, .flex .img {
  padding: 5px;
}

.sent .inquiryFormTable {
  display: none;
}

#FORM table {
  width: 100%;
}

.mb20 {
  margin-bottom: 20px !important;
}

.btn-box input {
  margin-left: 12px !important;
  margin-right: 12px !important;
}

.wpcf7c-elm-step2 .step_catch {
  margin-bottom: 15px;
}

.failed .confirm_table input[type="reset"] {
  display: none;
}

.fl-none {
  float: none !important;
}

.failed .confirm_table input[type="text"],
.failed .confirm_table input[type="tel"],
.failed .confirm_table input[type="email"],
.failed .confirm_table input[type="date"],
.failed .confirm_table textarea,
.failed .confirm_table select,
.failed .confirm_table input[type="checkbox"],
.failed .confirm_table input[type="number"] {
  display: none;
}

.failed .confirm_table .required,
.failed .confirm_table .optional {
  display: none;
}

.failed .confirm_table .wpcf7-list-item-label {
  display: none;
}

.failed .confirm_table span.comment {
  display: none;
}

.failed .confirm_table .wpcf7-form-control-wrap.your-email_confirm {
  display: none;
}

.result_txt {
  white-space: pre-wrap;
}

a[href^="tel:"] {
  pointer-events: none;
  cursor: text;
}

@media only screen and (max-width: 804px) {
  .bodyLeft #mainImage img {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .menu05_tb {
    max-width: 100%;
  }

  a[href^="tel:"] {
    pointer-events: auto;
    cursor: pointer;
  }

  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  body {
    background: transparent !important;
  }

  #content {
    padding: 0 15px;
  }

  .bodyLeft .mainLeft {
    width: auto;
    margin: 0 auto;
    float: none;
  }

  img.cnt_imgright {
    width: 100%;
    margin-left: 0;
  }

  img.cnt_imgleft {
    width: 100%;
    margin-right: 0;
  }

  #header {
    position: fixed;
    top: 0;
    background: #B01518;
    z-index: 999;
    width: 100%;
    padding: 0;
    height: 60px;
  }
  #header .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 100%;
    padding-top: 0;
  }
  #header .h_logo {
    width: 250px;
  }
  #header .toggleMenu {
    width: 60px;
    position: relative;
  }
  #header .toggleMenu .on {
    position: absolute;
    opacity: 0;
    z-index: 1;
    top: 0;
  }
  #header .toggleMenu.active .on {
    opacity: 1;
  }
  #header .toggleMenu.active + .header_menu {
    display: block;
  }
  #header .header_menu {
    width: 100%;
    background-color: #E16F6E;
    display: none;
  }
  #header .header_menu .g_nav {
    padding: 30px 0 0;
    list-style: none;
    height: calc(100vh - 60px);
    overflow-y: scroll;
  }
  #header .header_menu .g_nav > li {
    margin: 0 30px;
    text-align: left;
  }
  #header .header_menu .g_nav > li > a, #header .header_menu .g_nav > li > span {
    background-color: #fff;
    padding: 20px 0 20px 30px;
    font-size: 16px;
    display: block;
    text-decoration: none;
    color: #000;
    position: relative;
  }
  #header .header_menu .g_nav > li > span:after {
    content: '';
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-180deg);
            transform: translateY(-50%) rotate(-180deg);
    right: 20px;
    background: url("../img/arrow2.png") no-repeat center/100% auto;
    width: 16px;
    height: 8px;
  }
  #header .header_menu .g_nav > li + li {
    margin-top: 2px;
  }
  #header .header_menu .g_nav > li:first-of-type > a {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
  }
  #header .header_menu .g_nav > li:nth-last-of-type(2) > a {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
  }
  #header .header_menu .g_nav > li.hover > span:after {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  #header .header_menu .g_nav > li dl {
    margin-top: 2px;
  }
  #header .header_menu .g_nav > li dl ul {
    list-style: none;
  }
  #header .header_menu .g_nav > li.sub > a {
    background-color: #9E000F;
    padding: 20px 0 20px 30px;
    font-size: 16px;
    display: block;
    text-decoration: none;
    color: #fff;
  }
  #header .header_menu .g_nav > .info {
    margin: 39px 0 0;
    background-color: #262626;
    color: #fff;
    text-align: center;
    padding: 25px 30px 155px;
  }
  #header .header_menu .g_nav > .info .title {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 15px;
    letter-spacing: 0.15em;
    color: #fff;
  }
  #header .header_menu .g_nav > .info .btn {
    margin-top: 6px;
  }

  #wrapper {
    padding-top: 60px;
  }

  #main #contents .box01 {
    float: none;
    margin-right: 0;
    height: auto;
  }

  #main #contents .box01WrapInner {
    margin-left: 0;
  }

  #main #contents .box02 .box02Textarea {
    margin-left: 0;
  }

  #main #aboutSite #aboutSiteBody {
    padding-left: 0;
    padding-right: 0;
  }

  table.menu01_tb {
    margin-left: 0;
  }

  .h6_title1 h6, h6.h6_title1 {
    background-position: bottom left;
    padding-bottom: 4px;
    position: relative;
  }
  .h6_title1 h6::before, h6.h6_title1::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 4px;
    left: 7px;
    background-color: #630;
  }

  .tb-bl {
    width: 100%;
    display: block;
  }
  iframe {
    max-width: 100%;
  }
}
.txt-center {
  text-align: center;
}
.btnTel {
  color: initial;
}

#main #contents .box02.box021 {
  margin-right: 3px;
  margin-left: 4px;
  margin-bottom: 25px;
  line-height: inherit;
  font-size: inherit;
}
#main #contents .box02.box021 h6.h6_title1 {
  margin-top: 0;
  font-size: 12px;
  font-weight: normal;
  line-height: initial;
}
#main #contents .box02.box021 p.p_contents {
  font-size: 12px;
  line-height: 150%;
}

.menu-sitemap-container ul {
  list-style: none;
  width: 100%;
}

.menu-sitemap-container ul li a {
  display: block;
  font-size: 14px;
  border-left: 4px solid;
  padding-left: 10px;
  line-height: 1.5;
  color: #333333;
  text-decoration: none;
}

.menu-sitemap-container ul li+li {
  margin: 12px 0 0;
}

.page-id-1223 #side #navigation li.sub,.page-id-1334 #side #navigation li.sub, .page-id-1365 #side #navigation li.sub{
  display: block;
}

.w-500 {
  width: 500px;
  max-width: 100%;
}
.tb1 {
  width: 100%;
}
@media only screen and (max-width: 500px) {
  table.sitetop_tb {
    margin-left: 0;
  }
.sitetop_tb > tbody > tr> td,.tb1 > tbody > tr> td {
  display: block;
  width: 100%;
}

.sitetop_tb > tbody > tr> td iframe{
  width: 100%;
}
.tb1 > tbody > tr> td {
  text-align: center;
}
}

.box-tel {
  position: relative;
  text-align: center;
}
.box-tel2 {
  position: relative;
}
.box-tel .tel {
  position: absolute;
  display: block;
  top: 77px;
  left: 85px;
  width: 250px;
  height: 30px;
  z-index: 2;
}
.box-tel2 .tel {
  position: absolute;
  display: block;
  top: 110px;
  left: 0;
  width: 160px;
  height: 20px;
  z-index: 2;
}
@media only screen and (max-width: 562px) {
  .box-tel .tel {
    top: 14vw;
    left: 15vw;
    width: 40%;
    height: 5vw;
  }
}
table.top_tb {
  max-width: 100%;
  width: 95%!important;
  margin: 0 auto;
}
#sitemap {
}
#sitemap .contentsBoxBody {
	font-size: 1.2em;
	line-height: 1.8em;
}
#sitemap .contentsBoxTitle h4 {
	font-size: 0.9em;
	line-height: 1.1em;
}
#sitemap a {
	color: #333333;
	text-decoration: none;
}
#sitemap a:hover {
    text-decoration: underline;
}
#sitemap ul {
	margin-left: 20px;
}
#sitemap ul li {
	list-style-type: none;
}
#sitemap ul li ul {
	margin-left: 12px;
}
#sitemap ul li ul li {
	background-image: url(../img/sitemap_icon.gif);
	background-repeat: no-repeat;
	background-position: 0px 8px;
	padding-left: 15px;
	padding-top: 1px;
}
#sitemap ul li ul li.subNav {
	margin-left: 15px;
}
#sitemap ul li ul li.subNav {
	background-image: url(../img/sitemap_icon_sub.gif);
}

#main #contents #box01Wrap {
	clear: left;
	text-align: left;
	font-size: 1.6em;
}
#main #contents #box01WrapInner {
	max-width: 530px;
	margin-left: 10px;
	text-align: left;
}
#main #contents .box01 {
	max-width: 530px;
	margin-right: 3px;
	margin-left: 4px;
	
}
#main #contents .box01 .box01Title {
	font-size: 1.2em;
	max-width: 530px;
	min-height: 40px;
	background-image: url(../img/menu/title_icon_01.gif);
	background-repeat: no-repeat;
	background-position: 0px 3px;
	margin: 7px 0px 12px;
  box-sizing: border-box;
  padding: 0 10px 3px 10px;
	margin-left:10px;
}
#main #contents .box01 h5 {
	padding-left: 16px;
	padding-top:15px;
	font-weight: normal;
}
#main #contents .box02 {
	float: left;
	max-width: 520px;
  width: 100%;
	margin-right: 3px;
	margin-left: 4px;
	margin-bottom: 25px;
	
}

#main #contents .box02Textarea {
    margin: 0px 0px 0px 0px;
    font-size: 1.2em;
    line-height: 1.4em;
}

.fixed-box {
  position: fixed;
  bottom: 0;right: 0;
  z-index: 99;
  line-height: 1;
  height: 50px;
}

.fixed-box ul {
  display: flex;
  max-height: 56px;
  list-style: none;
}
.fixed-box ul li{
  line-height: 1;
}

.fixed-box ul li a{
  display: block;
}

.fixed-box ul li:last-of-type{
  margin-left: 10px;
}

@media only screen and (max-width: 768px) {
  .fixed-box {
    height: auto;
  }
  .fixed-box ul li:last-of-type{
    margin-left: 0;
    border-left: 1px solid #fff;
  }
  #footer #footerInner #footerLeft {
    padding-bottom: 100px;
    background: url(../img/footer_bg.gif) repeat center / cover;
  }
  .df {
    display: flex;
    flex-wrap: wrap;
  }
  .topBn01 {
    width: 50%;
  }
  .topBn01 a {
    display: block;
    text-align: center;
  }
  .tit {
    line-height: 1.2;
  }
}

.banner:hover,.banner a:hover {
  opacity: 0.8;
}

.bnr {
  position: relative;
  display: inline-block;
}

.bnr img+img {
  position: absolute;
  opacity: 0;visibility: hidden;
  top: 0;left: 0;
}

.bnr:hover img+img {
  opacity: 1;visibility: visible;
}