@font-face {
  font-family: "Yakuhan";
  src: url("fonts/YakuHanJPs-Regular.woff") format("woff");
}

@font-face {
  font-family: "YakuhanMin";
  src: url("fonts/YakuHanMPs-Regular.woff") format("woff");
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  position: relative;
}

html {
  font-size: 14px;
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}

a.uline {
  text-decoration: underline;
}

.mincho {
  font-family: "YakuhanMin", "Yu MIncho", "YuMincho", "Noto Serif JP", serif;
  font-weight: 400;
}


.img100 {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.img80 {
  width: 80%;
  height: auto;
  vertical-align: bottom;
}

.img60 {
  width: 60%;
  height: auto;
  vertical-align: bottom;
}

.img50 {
  width: 50%;
  height: auto;
  vertical-align: bottom;
}

.img30 {
  width: 30%;
  height: auto;
  vertical-align: bottom;
}

.img20 {
  width: 20%;
  height: auto;
  vertical-align: bottom;
}

li {
  list-style: none;
}

body {
  font-weight: normal;
  font-family: "Ryumin Medium KL", "YuMincho", "Hiragino Mincho ProN W3", "Noto Serif JP", serif;
  background: #fff;
  color: #000;
}

.img100 {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.ib {
  display: inline-block;
}

a {
  text-decoration: none;
  /* color: #000; */
}

a.dis {
  pointer-events: none;
  opacity: 0.4;
}

p {
  line-height: 2;
}

.pc-on {
  display: inline !important;
}

.sp-on {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .pc-on {
    display: none !important;
  }

  .sp-on {
    display: inline !important;
  }
}

header.header {
  width: 100%;
  height: 80px;
  border-bottom: 1px solid #888;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  background: rgba(255, 255, 255, 0.7);
}


.header_h1 {
  width: 200px;
  margin: 20px 0 0 20px;
}

.header_menu {
  position: absolute;
  top: 20px;
  right: 20px;
}

.header_menu_in {
  display: none;
}

.header_menu_b {
  width: 100%;
}



@media screen and (max-width: 767px) {
  header.header {
    height: 50px;
  }

  .top header {
    border-bottom: 1px solid #888;
  }

    .header_h1 {
      font-size: 0;
      width: 150px;
      padding: 0;
      margin: 5px auto 0 !important;
    }

}



.footer {
  position: relative;
}

.footer .wrap {
  max-width: 1240px;
  margin: 0 auto;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
}

.footer .contact {
  text-align: left;
}

.footer .contact .name {
  display: block;
  font-size: 14px;
  color: #000;
  margin: 0 0 10px;
}

.footer .contact .in {
  display: flex;
}

.footer .contact .time {
  display: block;
  font-size: 14px;
  color: #000;
  margin: 0 0 0 10px;
  line-height: 1.3;
}

.footer .contact .tel {
  max-width: 330px;
}

.footer .contact a {
  display: block;
}

.footer .logos ul {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.footer .logos li {
  padding: 0 20px;
}

.footer .logos li span.ja {
  display: block;
  margin: 0 0 5px;
  font-size: 12px;
}

.footer .logos li.shimizu {
  width: 230px;
}

.footer .logos li.sumitomo {
  width: 250px;
}

.footer .copy {
  max-width: 1240px;
  margin: 0 auto;
  color: #000;
  font-size: 10px;
  text-align: right;
  padding: 0 0 2em;
}

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

.pc-on {
  display: inline !important;
}

.sp-on {
  display: none !important;
}

@media screen and (max-width: 767px) {
  a[href^="tel:"] {
    pointer-events: all;
  }

  .pc-on {
    display: none !important;
  }

  .sp-on {
    display: inline !important;
  }

  footer {
    padding: 0 0 50px;
  }

  .footer .wrap {
    width: 95%;
    display: block;
  }

  .footer .contact {
    text-align: center;
    margin: 0 auto 20px;
  }

  .footer .contact .name {
    display: block;
    font-size: 12px;
    color: #000;
    margin: 0 0 10px;
  }

  .footer .contact .in {
    display: block;
  }

  .footer .contact .time {
    display: block;
    font-size: 12px;
    color: #000;
    margin: 0;
  }

  .footer .contact .tel {
    width: 80%;
    margin: 0 auto;
  }

  .footer .contact a {
    display: block;
  }

  .footer .logos {
    margin: 0 auto 20px;
  }

  .footer .logos ul {
    display: flex;
    align-items: flex-start;
    justify-content: center;
  }

  .footer .logos li {
    padding: 0 10px;
  }

  .footer .logos li span.ja {
    font-size: 10px;
  }

  .footer .copy {
    width: 100%;
    text-align: center;
    padding: 0 0 2em;
  }

}

#nav,
.footnav {
  display: none;
}

@import url('https://fonts.googleapis.com/css2?family=EB+Garamond&display=swap');



.main_head {
  font-family: 'EB Garamond', serif;
  font-weight: normal;
}