@charset "utf-8";
@media screen and  (max-width: 640px){/* Sp ***************/

html {
  height: auto;
}

/* Sp Layout */
div#container {
  overflow: hidden;
  min-width: 100%;
  margin: 0 auto;
  padding-bottom: 250vw;
}
.boxContents {
  min-width: 100%;
  max-width: 100%;
  margin: 0 auto;
}
.boxMain {
}


/* Sp Base Design */
body {
  min-width: 100%;
  height: auto;
  background-color: #fff;
  color: #000;
  line-height: normal;
  letter-spacing: 0.03em;
  font-size: 1em;
  font-family: "UD新ゴ R"; 
}
body.pageKomesho,
body.pageMaimu,
body.pageMatsuya,
body.pageService {
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
  background-attachment: fixed;
}
a {
  color: #000;
}
li {
  font-size: 0.875rem;
}
/* /Sp Base Design */


/* Header */
header {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  min-width: 100%;
}
.boxHeader {
  position: relative;
  min-height: 60px;
}
.boxHeader.statusOpen {
  background-color: #fff;
}

.boxHeader .btnHmbMenu {
  position: absolute;
  z-index: 1001;
  top: 15px;/*20px;*/
  left: 20px;
  width: 50px;/*15%;*/
  max-width: 101px;
}

.boxHeader .btnHmbMenu.typeClose {
  width: 30px;/*10%;*/
  /*max-width: 72px;*/
}

.boxHeaderLR{
  position: static;
  z-index: 1001;
  bottom: auto;
  right: auto;
  display: table;
  width: 100%;
  font-family: "A1明朝 A1","A1 Mincho","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ 明朝","ＭＳ Ｐ明朝",serif;
}
.boxHeaderLR.forPc{
  display: none;
}
.boxHeaderLR.forSp{
  display: table;
}
.boxHeaderLR img{
  margin: 0;
  padding: 0 4%;
}

.boxHeaderL,
.boxHeaderR {
  display: table-cell;
  width: 50%;
  vertical-align: middle;
  text-align: center;
}
.boxHeaderL {
  font-size: 1.07rem;
}
.boxHeaderR {
  border-left: 0;
  font-size: 1.0rem;
}

.boxHeaderR img {
  margin-left: 0;
}

.logoHeader01 {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
  margin: auto;
}
.logoHeader01.forSp {
  display: none;
  left: 0;
  right: 0;
  margin: auto;
  top: 15px;
  bottom: auto;
  width: 60px;/*15%*/
}

.boxHeaderMenu {
  position: absolute;
  top: 0;
  bottom: auto;
  left: 0;
  display: none;
  padding-top: 5vw;
  padding-bottom: 5%;
  background-color: #fff;
  border-bottom: 1px #ddd solid;
}

.boxHeaderMenu ul {
  display: block;
  width: 94%;
  height: auto;
  margin: 0 auto;
  margin-bottom: 4%;
}

.boxHeaderMenu li {
  display: inline-block;
  float: none;
  width: 100%;
  height: 100%;
  padding: 0.8em 2.0em 0.9em 1.6em;/*20px 25px;*/
  line-height: 1.0;
  text-align: left;
  font-size: 0.98rem;
  font-family: "A1明朝 A1","A1 Mincho","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ 明朝","ＭＳ Ｐ明朝",serif;
  border-bottom: 1px #ddd solid;
}
.boxHeaderMenu li:first-child {
  display: inline-block
}
.boxHeaderMenu li span {
  display: inline-block;
  writing-mode: initial;
  -ms-writing-mode: initial;
  -webkit-writing-mode: initial;
  padding-right: 8px;
}
.boxHeaderMenu li span:hover,
.boxHeaderMenu li span.current {
  border-right: 2px #8bb024 solid;
  padding-right: 6px;
}
/* /Header */


/* Bottom */
.boxBottom {
  margin-bottom: 0;
  background-image: url('/images/common/bottom-bg01.png');
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
}
.boxBottom.typeService {
  margin-bottom: 0;
}
.boxBottomIn {
  width: 94%;
  margin: 0 auto;
  padding: 20% 0;
  text-align: center;
  color: #fff;
}
.boxBottomIn > .ttlMin {
  margin-bottom: 10%;
  font-size: 1.95rem;
  font-size: 6.3vw;
  line-height: 1.6;
}
.boxBottomIn > .boxCont {
  margin-bottom: 10%;
  font-family: "A1明朝 A1","A1 Mincho","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ 明朝","ＭＳ Ｐ明朝",serif;
  font-size: 1.15rem;
  font-size: 4.3vw;
  line-height: 1.8;
}
.boxBottomIn > .ttlMin.no2 {
  margin-bottom: 18px;
  font-size: 0.9rem;
  font-size: 4.0vw;
}
.boxBottomLR {
  display: table;
  width: 100%;
  margin: 0 auto;
  font-family: "A1明朝 A1","A1 Mincho","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ 明朝","ＭＳ Ｐ明朝",serif;
}
.boxBottomLR img {
  margin-right: 10px;
}
.boxBottomL,
.boxBottomR {
  display: table-cell
  width: 50%;
  vertical-align: middle;
}
.boxBottomL {
  margin-bottom: 5%;
  font-size: 1.45rem;
  font-size: 5.5vw;
}
.boxBottomL img {
  margin-right: 2%;
}
.boxBottomR {
  background-image: url('/images/common/bottom-border.png');
  background-repeat: no-repeat;
  background-position: left center;
  font-size: 1.4rem;
  font-size: 5.5vw;
  color: #fff;
}
.boxBottomR a {
  color: #fff;
}
.boxBottomR img {
  margin-right: 2%;
}
/* /Bottom */


/* Footer */
.boxFooterBn {
  text-align: center;
  padding-top: 2%;
}

.boxFooterBn ul {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.boxFooterBn li {
  width: 100%;
  padding: 1% 1%;
}
.boxFooterBn li.half {
  width: 50%;
}

.boxFooterMenuBtn {
  position: relative;
  display: block;
  padding: 5%;
  background-image: url('/images_sp/common/sp-footer-bg02.png');
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
}
.txtFooterMenuBtn {
  font-size: 5.0vw;
  font-weight: bold;
}

.btnFooterMenu {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 5%;
  width: 10%;
  max-width: 73px;
}

.boxFooterMenu li span {
  display: inline-block;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  transition: margin-top 0.2s linear;
}
.boxFooterMenu li span:hover {
  margin-top: -5px;
}
.boxUpToTop {
  position: relative;
  z-index: 3;
  width: 100%;
  background-color: #fff;
  border-top: 1px #ddd solid;
  border-bottom: 1px #ddd solid;
  text-align: center;
}
.boxUpToTop.btnUpToFixed {
  position: fixed;
  z-index: 1000;
  bottom: -63px;
  transition: bottom 0.5s linear;
}
.boxUpToTop.btnUpToFixed:hover {
  bottom: auto;
}
.boxUpToTop .btnUpToTop {
  display: inline-block;
  margin-top: 0;
  padding: 5% 0 5% 12%;
  margin-bottom: 0;
  background-image: url('/images_sp/common/sp-footer-arrow-icn02.png');
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 30%;
  font-size: 5.0vw;
  font-weight: bold;
  cursor: pointer;
}
.boxFooterInfo {
  width: 100%;
  margin: 0 auto;
  padding: 10% 0;
  text-align: center;
  font-size: 0.9rem;
  font-size: 4.0vw;
  line-height:1.6;
}
.boxFooterInfo span {
  display: inline-block;
}
.boxFooterInfo .txtCompanyName {
  display: inline-block;
  width: 100%;
  margin-right: 0;
  margin-bottom: 2%;
  font-weight: bold;
  font-size: 1.0rem;
  font-size: 4.5vw;
}
.boxFooterInfo .txtZipcode {
  margin-right: 0;
  padding-right: 1%;
}
.boxFooterInfo .txtAddress a {
  text-decoration: underline;
}
.boxFooterInfo .txtPartition.no1 {
  display: none;
}
.boxFooterInfo .txtPartition {
  margin: 0;
  padding: 0.5%;
}
.boxFooterBottom {
  height: auto;
  padding-bottom: 23%;
  background-image: url('/images/common/footer-bg01.jpg');
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
}
.boxFooterCom01 {
  padding: 53px 0 35px 0;
  text-align: center;
  line-height: 1.4;
  font-family: "A1明朝 A1","A1 Mincho","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ 明朝","ＭＳ Ｐ明朝",serif;
  font-size: 2.0rem;
  font-size: 8.0vw;
}
.boxFooterCom02 {
  margin-bottom: 65px;
  text-align: center;
  letter-spacing: 0.1em;
  font-family: "A1明朝 A1","A1 Mincho","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","ＭＳ 明朝","ＭＳ Ｐ明朝",serif;
  /*font-size: 0.98rem;*/
  font-size: 4.3vw;
  line-height:1.6;
}
.boxFooterCom02 p {
  margin-bottom: 10px;
}
.boxFooterLogo {
  text-align: center;
}
.boxCopyright {
  text-align: center;
  font-size: 0.7rem;
  font-size: 3.1vw;
  /*padding: 8% 0 8% 0;*/
  /*border-top: 1px #ccc solid;*/
}
.boxCopyright .markCopy {
  font-family: "UD新ゴ R", Verdana Roboto, "Droid Sans";
}

  /* /Footer */
  .sp-block {
    display:block;
  }

}/* /Sp ****************/
