/*!
 * Start Bootstrap - Modern Business (https://startbootstrap.com/template-overviews/modern-business)
 * Copyright 2013-2019 Start Bootstrap
 * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-logomodern-business-nav/blob/master/LICENSE)
 */

body{
  font-family: 'Roboto Condensed',-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
  font-weight: 400;
}

a {
  color: #0056b3;
}

a.tel {
  font-weight: bold;
  font-size: 1.5em;
}

h2.blog-title01{
  font-size: 1.6rem;
  margin:20px 0;
}

h2.post-title01{
  font-size: 1.6rem;
  margin:20px 0;
}

.page-header{
  border-bottom: 1px solid #ccc;
  margin-top: 15px;
  margin-bottom: 15px;
}


.title01{
  border-bottom: 1px solid #ccc;
}

.title02{
  font-size: 1.2em !important;
  font-weight: normal;
  padding-bottom: 5px;
  position: relative;
  padding-left:15px;
  text-align: left;
  
}

.title02:before {
  background: #000;
  content: "";
  height: 10px;
  width: 10px;
  left: 0;
  position: absolute;
  top: 6px;
}


img {
  width: 100%;
  height: 100%;
}

.card {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
  border: 1px solid rgba(0,0,0,.125);
  border-radius: .0rem;
  margin-bottom: 15px;
  min-height: 350px;
  padding: 5px;
}

.card h4{
  margin-top: 0.8rem;
  margin-bottom: 0.2rem;
  font-weight: bold;
}

.card p{
  margin-bottom: 0.2rem;
}

.card p.detail{
  margin-bottom: 0.8rem;
}

/*　ポインターを設定する */
.hpointer{
  cursor: pointer;
  cursor: hand;
}

.attention{
  font-weight: bold;
  font-size: 1.2em;
  padding-left: 0.6em;
}

.attention02{
  font-weight: bold;
}

.card h4{
  font-size: 1.3rem;
}

.card p.price{
  font-weight: bold;
  font-size: 1.1em;
}


.modal-body p.maker, .modal-body p.price{
  display: inline-block;
  margin-right: 15px;
  margin-bottom: 0;
  font-size: 1.2em;
}


/* ブレッドナビ設定 */
.breadcrumbs {
  padding: 15px 0;
}

span.current-item{
  font-weight: bold;
}


/* グローバルナビ固定分 */
.menu-padding {
  padding-top: 60px;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { 
  display: block !important; 
}
.sp { 
  display: none !important; 
}

.navbar{
  background: #293e5b;
}

/* ヘッダー情報 */
header {
  background: #293e5b;
  color: #fff;
  padding: 15px 0;
}

header .logo{
  font-size: 20px;
  color: #5C4138;
}

header a .logo{
  color: #fff;
  text-decoration: none;
}

header .logo img{
  display: inline-block;
}

header .title{
  margin-top:35px;
}

.head-info{
  margin:10px 0;
}

.head-info p{
  margin:0;
  font-size: 1.4em;
}

.head-info p.tel{
  font-size: 1.9em;
}

.head-info p.tel a{
  color:#fff;
  text-decoration: none;
}

.head-info p.inquiry{
  background: #fff;
  color:#293e5b;
  font-weight: bold;
  text-align: center;
  margin-top: 15px;
}

.head-info p.inquiry a{
  text-decoration: none;
  color:#293e5b;
}



a.nav-link{
  font-size: 0.9em;
}

.navbar-dark .navbar-nav .nav-link{
  color:#fff;
}

.navbar .navbar-brand img {
  width: 85%;
}

.navbar-nav li.current{
  font-weight: bold;
  border: 1px solid #fff;
}


/* トップページスライド */
ul.icatch, .icatch2 {
  overflow-x: hidden;
  margin:0;
  padding:0;
}


/* ヘッダー バック固定背景指定 */
.topback-information{
  height:350px;
  width:100%;
  background: url(../img/information-back.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-blog{
  height:350px;
  width:100%;
  background: url(../img/blog-back1.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-about{
  height:350px;
  width:100%;
  background: url(../img/about-back1.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-stove{
  height:350px;
  width:100%;
  background: url(../img/stove-back1.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-maintenance{
  height:350px;
  width:100%;
  background: url(../img/maintenance-back1.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-products{
  height:350px;
  width:100%;
  background: url(../img/products-back1.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-access{
  height:350px;
  width:100%;
  background: url(../img/access-back1.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-qa{
  height:350px;
  width:100%;
  background: url(../img/qa-back.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topback-contact{
  height:350px;
  width:100%;
  background: url(../img/contact-back.jpg) no-repeat;
  position: relative;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}



/* 自動付加z-index解除 */
.zrelese{
position:relative;
z-index:1;
}

/* バック固定背景部分テキスト中央寄せ */
.flex-box{
  height: 350px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.flex-box h1{
  color: #fff;
  text-shadow: 2px 2px 3px #333;
}

/* リスト設定 */
ul.list1 {
  padding: 0.5em 0.5em 0.5em 2em;
}

ul.list1 li{
  font-size: 1.2em;
  line-height: 1.8;
}


/*トップ新着情報・お知らせ設定*/
ul.info, ul{
  margin:0;
  padding:0;
}

ul.info a{
  text-decoration: none;
}

ul.info li{
  margin: 10px 0;
  border-bottom: 1px dashed #888;
  position: relative;
  padding: 10px 10px 10px 2em;
  color:#333;
}

ul.info li:after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.7em;
  right: 10px;
  width: 1em;
  height: 1em;
  border-top: #286aab 3px solid;
  border-right: #286aab 3px solid;
  transform: rotate(45deg);
}

.news-date{
  width: 100px;
}
.news-cat{
  width: 100px;
}

.news-cat span{
  background: #96a9b3;
  width: 120px;
  display: block;
  text-align:center;
  color:#fff;
}

.news-subject{
  width:100%;
  text-decoration: none;
}

.news-list{
  width:100%;
  text-decoration: none;
  position: relative;
  padding: 10px 35px 10px 2em;
  color:#333;
  font-weight: bold;
}

.link a:hover{
  text-decoration: none;
}

.news-list:after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.6em;
  right: 10px;
  width: 1em;
  height: 1em;
  border-top: #293e5b 3px solid;
  border-right: #293e5b 3px solid;
  transform: rotate(45deg);
}

/* リンクボタン設定 */
.button-area a{
  text-decoration: none;
  color:#fff;
  width:100%;
}


a.link-button{
  background: #293e5b;
  width: 45%;
  border: 1px solid #293e5b;
  display: block;
  font-size: 16px;
  margin: 30px auto;
  padding: 15px 10px;
  position: relative;
  text-align: center;
}

a.link-button:after{
  content: '';
  display: block;
  position: absolute;
  top: 53%;
  margin-top: -0.6em;
  right: 15%;
  width: 1em;
  height: 1em;
  border-top: #fff 3px solid;
  border-right: #fff 3px solid;
  transform: rotate(45deg);
}


/* 新着情報ページ設定 */
.info-list li{
  border-bottom: 1px solid rgba(0,0,0,.1);
  padding-bottom: 25px;
  margin-bottom: 25px;
}

.info-list h4 a{
  color:#0056b3;
}

.info02-l{
  width: 20%;
  margin-right:10px;
}

.info02-r{
  width: 80%;
  margin-left:10px;
}

.info02-r h4{
  font-size: 1.1em;
  color: #286aab;
}


/* 新着情報投稿ページ設定*/
.info-l {
  width: 30%;
  margin-right: 10px;
}

.info-r {
  width: 70%;
  margin-left: 10px;
}

.info-r h3 {
  font-size: 1.2em;
}

.news-date2{
  width: 100px;
  border: 1px solid #96a9b3;
  text-align:center;
}

.news-cat2{
  width: 100px;
}

.news-cat2 span{
  background: #96a9b3;
  border: 1px solid #96a9b3;
  display: block;
  text-align:center;
}

.news-cat2 span a{
  color:#fff;
}


/* ブログ投稿ページ設定*/
.blog-date2{
  width: 100px;
  border: 1px solid #293e5b;
  text-align:center;
}

.blog-cat2{
  width: 100px;
}

.blog-cat2 span{
  color:#fff;
  background: #293e5b;
  border: 1px solid #293e5b;
  display: block;
  text-align:center;
}

.blog-cat2 span a{
  color:#fff;
}

/* 投稿ページサイドフッター */
.aside-title1 {
  position: relative;
  padding: 5px 5px 5px 42px;
  background: #96a9b3;
  font-size: 20px;
  color: white;
  margin-top: 25px;
  margin-left: -20px;
  line-height: 1.3;
  z-index:-1;
}

.aside-title1:after {
  position: absolute;
  content: '';
  left: -2px;
  top: -2px;
  border: none;
  border-left: solid 40px white;
  border-bottom: solid 79px transparent;
  z-index:-2
}


.aside-title2 {
  position: relative;
  padding: 5px 5px 5px 42px;
  background: #77c3df;
  font-size: 20px;
  color: white;
  margin-top: 25px;
  margin-left: -20px;
  line-height: 1.3;
  z-index:-1;
}

.aside-title2:after {
  position: absolute;
  content: '';
  left: -2px;
  top: -2px;
  border: none;
  border-left: solid 40px white;
  border-bottom: solid 79px transparent;
  z-index:-2
}

.aside-info-list {
  margin-bottom: 50px;
}

.aside-info-list li {
  padding: 5px 0 5px 10px;
  border-bottom: 1px dashed #888;
  font-size: 1.1em;
  list-style: none;
}

.aside-info-list li > a {
  width: 100%;
  color: #286aab;
}


/* アーカイブページ */
/* ペイジャー設定 */
.pager{
  text-align:center;
  margin: 15px 0 20px 0;
}

a.page-numbers,
.pager .current{
  background: #fff;
  border:solid 1px #96a9b3;
  border-radius:50%;
  padding:7px 7px;
  margin:0 2px;
  width: 40px;
  height: 40px;
  display: inline-block;
}

.pager .current{
  background: #96a9b3;
  color:rgba(255,255,255,1);
  font-weight:bold;
}

.pager2{
  text-align:center;
  margin: 15px 0 20px 0;
}

.pager2 > a.page-numbers,
.pager2 > .current{
  background: #fff;
  border:solid 1px #293e5b;
  border-radius:50%;
  padding:7px 7px;
  margin:0 2px;
  width: 40px;
  height: 40px;
  display: inline-block;
}

.pager2 .current{
  background: #293e5b;
  color:rgba(255,255,255,1);
  font-weight:bold;
}

/* フッター情報 */
footer{
  background: #293e5b;
}

footer p{
  line-height: 1.8;
}

.f-name{
  color:#fff;
  font-size: 1.2em;
  font-weight: bold;
}

.f-address{
  color:#fff;
  font-size: 1.2em;
  font-weight: bold;
}


/* コンタクトフォーム設定 */
.table-contactform7{
  overflow: hidden;
  table-layout: fixed;
  margin-bottom:20px;
}

.required-contactform7{
  padding: 5px;
  background: #293e5b;
  color: #fff;
  border-radius: 3px;
  margin-right: 3px;
  margin-left: 3px;
}

.unrequired-contactform7{
  padding: 5px;
  background: #BDBDBD;
  color: #fff;
  border-radius: 3px;
  margin-right: 3px;
}

.table-contactform7 th{
  font-weight:bold;
  margin:20px;
  width: 25%;
}

.table-contactform7 td{
  padding-right: 20px;
}

.table-contactform7 input,
.table-contactform7 textarea,
.table-contactform7 select{
  max-width: 100% !important;
  margin: 10px 10px 10px 5px;
  padding:5px;
}

#num{
  width: 50%;
}

.numm1 {
  width: 22%;
}

.address-100 input{
 width: 100% !important;
  margin: 5px 10px 10px 5px;
}

.message-100 textarea{
  width: 100%;
  padding: 5px 15px 10px 5px;
}

.send-button{
  margin-bottom: 50px;
}

.btn-success ,.btn-success:hover {
  color: #fff;
  background-color: #286aab;
  border-color: #286aab;
}

.btn-success.focus, .btn-success:focus {
  box-shadow: none;
}


/* マージン設定 */
.tmgn1{
  margin-top: 10px;
}

.tmgn2{
  margin-top: 20px;
}

.tmgn3{
  margin-top: 30px;
}

.tmgn4{
  margin-top: 40px;
}

.tmgn5{
  margin-top: 50px;
}

.tbmgn1{
  margin-top: 50px;
  margin-bottom: 50px;
}

.bmgn1{
  margin-bottom: 10px;
}

.bmgn2{
  margin-bottom: 20px;
}

.bmgn3{
  margin-bottom: 30px;
}

.bmgn4{
  margin-bottom: 40px;
}

.bmgn5{
  margin-bottom: 50px;
}

.bmgn10{
  margin-bottom: 100px;
}

.tbmgn01{
  margin: 10px 0;
}

.tbmgn02{
  margin: 20px 0;
}

.tbmgn03{
  margin: 30px 0;
}

.tbmgn04{
  margin: 40px 0;
}

.tbmgn04-2{
  margin: 40px 0 20px 0;
}


/* ガター幅調整 */
.gutter1 > [class*='col-'] {
  padding-right: 5px;
  padding-left: 5px;
}

.gutter1 {
  margin-left: -5px;
  margin-right: -5px;
}

.gutter2 > [class*='col-'] {
  padding-right: 7px;
  padding-left: 7px;
}

.gutter2 {
  margin-left: -7px;
  margin-right: -7px;
}


/* 左右並びボックス */
.general-box{
  border-bottom: 1px solid #ccc;
  padding-bottom: 15px;
  margin-bottom: 30px;
}

.general-box .l-box{
  margin-right: 10px;
  width: 50%;
}

.general-box .r-box{
  margin-left: 10px;
  width: 50%;
}


/* ポリシー */

.policy ul {
  margin: 0px 0 25px 0;
  padding: 0.2em 0.5em 0.5em 1em;
}

.policy h3 {
  font-size: 1.3rem;
  font-weight: bold;
}

.policy h4 {
  font-size: 1.2rem;
  font-weight: bold;
}

/* Top Return Button */
.pagetop {
  position: fixed;
  bottom: 25px;
  right: -80px;
  z-index: 501;
}

.pagetop a {
  display: block;
  position: relative;
  width: 70px;
  height: 70px;
  background-color: #293e5b;
  border-radius: 70px;
  text-align: center;
  color: #fff;
  font-size: 35px;
  text-decoration: none;
  line-height: 70px;
  opacity: 0.8;
  overflow: hidden;
  outline: none;
}

.pagetop a::before{
  font-family: "FontAwesome";
  font-weight: 900;
  content: '\f102';
  font-size: 1.2em;
  color: #fff;
  position: absolute;
  width: 35px;
  height: 35px;
  top: 0;
  bottom: 35px;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


table.maintenance {
  margin:10px 0 10px 0;
  background:#fff;
  width:100%;
  border: 1px solid #777;
}

table.maintenance th {
  padding:12px 10px;
  background:#293e5b;
  width:25%;
  color:#fff;
  border-bottom: 1px solid #83B8CC;
  border-left: 1px solid #fff;
}

table.maintenance tr:first-child th {
  border-left: 1px solid #83B8CC;
}

table.maintenance td {
  padding:10px;
  border: 1px solid #83B8CC;
}

caption {
  padding-top: .75rem;
  padding-bottom: .75rem;
  color: #111;
  text-align: left;
  caption-side: top;
  font-size: 1.3em;
  font-weight:bold;
}

/* ポインター設定 */
.hpointer{
  cursor: pointer;
  cursor: hand;
}

@media screen and (min-width: 980px){

  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: .35rem;
    padding-left: .35rem;
  }

  .text-pcmob {
    text-align: center;
  }

  .floatingmenu {
    display: none;
  }


  .container {
    max-width: 990px;
    padding-right: 7px;
    padding-left: 7px;
  }

  a.nav-link {
    font-size: 0.7em;
  }

}


@media screen and (min-width: 980px){

  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: .35rem;
    padding-left: .35rem;
  }

  .text-pcmob {
    text-align: center;
  }

  .floatingmenu {
    display: none;
  }


  .container {
    max-width: 990px;
    padding-right: 7px;
    padding-left: 7px;
  }

  a.nav-link {
    font-size: 0.7em;
  }

  .head-info p.tel {
    font-size: 1.6em;
  }

  .head-info p {
    margin: 0;
    font-size: 1.2em;
  }

}




@media screen and (min-width: 1180px){

  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .container {
    max-width: 1250px;
  }

  a.nav-link {
    font-size: 0.8em;
  }

  .head-info p.tel {
    font-size: 1.9em;
  }

  .head-info p {
    margin: 0;
    font-size: 1.4em;
  }

  .head-info p.inquiry {
    margin: 10px 0 0 0;
    font-size: 1.4em;
  }

}


@media screen and (min-width: 1250px){

  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: .7rem;
    padding-left: .7rem;
  }

  .container {
    max-width: 1280px;
  }

  a.nav-link {
    font-size: 0.9em;
  }

}


@media screen and (max-width: 991px) {

  h1{
    font-size:2.0em;
  }

  h2{
    font-size:1.7em;
  }

  .head-info {
    margin: 10px 0 10px 0px;
    text-align: center;
  }

  .navbar-nav li.current{
    border: none;
  }

  .navbar-dark .navbar-toggler {
    color: rgba(255,255,255,1.0);
    border-color: rgba(255,255,255,1.0);
  }

  .navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 1.0)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  }

  .pc { 
    display: none !important; 
  }
  .sp { 
    display: block !important; 
  }

  header .title {
    margin-top: 10px;
  }

  .navbar-brand{
    width:70%;
  }

  .navbar .navbar-brand img {
    width: 70%;
  }

  .navbar-brand > img {
      display: inline;
  }

  .card {
    min-height: 220px;
  }

  .card h4 {
    font-size: 1.0rem;
  }


  .flex-box{
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .flex-box h1 {
    font-size: 1.6em;
  }

  .topback-about, .topback-stove, .topback-maintenance, .topback-products, .topback-access,
     .topback-information, .topback-qa, .topback-blog, .topback-contact{
    height:220px;
    background-position: left top;
    background-attachment: scroll !important;
    -webkit-background-size: 100% auto;
    -moz-background-size: 100% auto;
    -o-background-size: 100% auto;
    background-size: 100% auto;
  }


  .text-pcmob {
    text-align: left;
  }

  .info-list h4 a {
    font-size: 0.8em;
  }

  .info02-l{
    width: 30%;
    margin-right:10px;
  }
  
  .info02-r{
    width: 70%;
    margin-left:10px;
  }

  a.link-button {
    width: 100%;
  }

  .table-contactform7 th {
    font-weight: bold;
    margin: 0px;
    width: 100%;
    display: block;
  }

  .table-contactform7 td {
    font-weight: bold;
    margin: 0px;
    width: 100%;
    display: block;
  }

  footer{
    min-height: 280px;
  }

  /* Top Return Button */
  .pagetop {
    display: none;
  }

  .floatingmenu {
    display: block;
    width: 100%;
    position: fixed;
    left: 0px;
    bottom: -70px;
    z-index: 400;
    text-align: center;
    padding: 0 auto;
    background: #293e5b;
    opacity: 0.9;
    color: #fff;
  }

  .floating-tel, .floating-mail, .floating-insta, .floating-top{
    margin: 8px 10px;
  }

  .floating-tel a, .floating-mail a, .floating-insta a, .floating-top a{
    text-decoration: none;
    color: #fff;
  }

  .floating-tel a{
    font-size: 2.2em;
    color: #fff;
    width: 25px;
    height: 25px;
  }


  .floating-mail a:before{
    font-family: "FontAwesome";
    font-weight: 900;
    content: '\f003';
    font-size: 2.2em;
    color: #fff;
    width: 25px;
    height: 25px;
  }

  .floating-insta a:before{
    font-family: "FontAwesome";
    font-weight: 900;
    content: '\f16d';
    font-size: 2.2em;
    color: #fff;
    width: 25px;
    height: 25px;
  }

  .floating-top a:before{
    font-family: "FontAwesome";
    font-weight: 900;
    content: '\f102';
    font-size: 2.2em;
    color: #fff;
    width: 25px;
    height: 25px;
  }

  table.maintenance td {
    font-size: 0.8em;
  }
}


@media screen and (max-width: 979px){

  h3.page-header{
    font-size: 1.3em;
  }

  caption {
    font-size: 1.2em;
  }
}
