@charset "UTF-8";
body {
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "MS PMincho", "MS Mincho", serif;
  font-feature-settings: "palt" 1;
}
body img {
  width: 100%;
}
body main {
  padding-top: 140px;
}
@media screen and (max-width: 999px) {
  body main {
    padding-top: 49.89px;
  }
}
body a:hover {
  opacity: 0.7;
  transition: all 0.2s;
}

.entry-box {
  text-align: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .entry-box {
    margin-bottom: 30px;
  }
}
.entry-box a {
  width: 258px;
  display: inline-block;
  background-image: url("../img/common/entry-btn.png");
  background-size: 100%;
  line-height: 48px;
  font-size: 19px;
  color: white;
  border-radius: 25px;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
  position: relative;
}
.entry-box a::after {
  content: "";
  background-image: url("../../assets/img/common/arrow.png");
  background-size: 100%;
  background-repeat: no-repeat;
  width: 6px;
  height: 7px;
  position: absolute;
  top: 50%;
  right: 6%;
  transform: translate(0, -50%);
}
.entry-box p {
  color: #1A1311;
  font-size: 13px;
  line-height: 19px;
  letter-spacing: 0.08em;
  margin-top: 24px;
}

header {
  background-color: white;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 99999;
  box-shadow: 1px 0 10px rgba(0, 0, 0, 0.1);
}
header .h-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 999px) {
  header .h-wrap {
    justify-content: center;
  }
}
header .h-wrap .h-left {
  margin-left: 20px;
}
@media screen and (max-width: 999px) {
  header .h-wrap .h-left {
    padding: 1px 0 6px;
    margin-left: 0;
  }
}
header .h-wrap .h-left a {
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 999px) {
  header .h-wrap .h-left a {
    align-items: center;
  }
}
header .h-wrap .h-left a figure {
  width: 5.4166666667vw;
  max-width: 65px;
  transition: all 0.2s;
}
@media screen and (max-width: 999px) {
  header .h-wrap .h-left a figure {
    width: 33px !important;
  }
}
header .h-wrap .h-left a h1 {
  margin-top: 5px;
  font-size: clamp(18px, 1.9166666667vw, 23px);
  letter-spacing: 0.04em;
  font-feature-settings: "palt" 1;
  transition: font-size 0.2s;
}
@media screen and (max-width: 999px) {
  header .h-wrap .h-left a h1 {
    font-size: 18px !important;
    margin-top: 0;
  }
}
header .h-wrap .h-left a h1 span {
  font-size: 10px;
  padding-bottom: 5px;
  letter-spacing: 0.1em;
  transition: font-size 0.2s;
}
@media screen and (max-width: 999px) {
  header .h-wrap .h-left a h1 span {
    font-size: 10px !important;
  }
}
header .h-wrap .h-right {
  display: flex;
  gap: 25px;
  align-items: flex-end;
}
@media screen and (max-width: 999px) {
  header .h-wrap .h-right {
    display: none;
  }
}
header .h-wrap .h-right .tel {
  padding-bottom: 14px;
  transition: all 0.2s;
}
header .h-wrap .h-right .tel figure {
  width: clamp(290px, 28.0833333333vw, 337px);
  margin-bottom: 5px;
  transition: all 0.2s;
}
header .h-wrap .h-right .tel span {
  font-size: clamp(10px, 1.0833333333vw, 13px);
  letter-spacing: 0.027em;
  font-feature-settings: "palt" 1;
  transition: all 0.2s;
}
header .h-wrap .h-right .links {
  padding-bottom: 14px;
}
header .h-wrap .h-right .links a {
  display: block;
  font-size: 15px;
  position: relative;
  padding-left: 18px;
  margin-top: 5px;
}
header .h-wrap .h-right .links a::before {
  content: "";
  background-image: url("../img/common/icon.png");
  background-size: cover;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}
header .h-wrap .h-right .h-entry a {
  display: block;
  width: 138px;
  line-height: 98px;
  text-align: center;
  background-color: #6F6964;
  transition: all 0.2s;
  color: white;
  font-size: 16px;
}
header nav {
  background-color: #ADA49D;
  transition: all 0.2s;
}
@media screen and (max-width: 999px) {
  header nav {
    display: none;
  }
}
header nav ul {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
header nav ul li {
  width: 8.3333333333%;
  padding: 10px 0;
  text-align: center;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
header nav ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 8.3333333333vw;
  height: 35px;
  max-width: 100px;
  color: white;
  font-size: clamp(9px, 1.25vw, 15px);
  line-height: clamp(9px, 1.4166666667vw, 17px);
  font-feature-settings: "palt" 1;
}
header nav ul li a.off {
  opacity: 0.3;
  pointer-events: none;
}
header nav ul li a.wide {
  width: 11vw;
  max-width: 132px;
}
header nav ul li:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 35px;
  background-color: white;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
}
header nav ul li.new::before {
  content: "";
  background-image: url("../img/common/new.png");
  background-size: 100%;
  width: 34px;
  height: 16px;
  position: absolute;
  top: -7px;
  left: 50%;
  transform: translate(-50%, 0);
}
header.fixed .h-wrap .h-left figure {
  width: 45.5px;
}
header.fixed .h-wrap .h-left h1 {
  font-size: 17.5px;
}
header.fixed .h-wrap .h-left h1 span {
  font-size: 9.8px;
}
header.fixed .h-wrap .h-right .tel {
  padding-bottom: 10px;
}
header.fixed .h-wrap .h-right .tel figure {
  width: 235.9px;
  margin-bottom: 0;
}
header.fixed .h-wrap .h-right .tel span {
  font-size: 9.1px;
}
header.fixed .h-wrap .h-right .h-entry > a {
  line-height: 63.7px;
}
header.fixed nav li:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 25px;
  background-color: white;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
}
header.fixed nav a {
  height: 20px;
}

@media screen and (max-width: 999px) {
  footer {
    padding-bottom: 64px;
    background-color: #eeeeee;
  }
}
footer .entry {
  background-image: url("../img/top/info-bg.jpg");
  background-size: cover;
  padding: 60px 25px;
}
@media screen and (max-width: 999px) {
  footer .entry {
    background-image: none;
    padding: 34px;
    padding-bottom: 0;
    margin-bottom: 40px;
  }
}
footer .entry .entry-box {
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  footer .entry .entry-box {
    margin-bottom: 10px;
  }
}
footer .entry .entry-box a img {
  width: 268px;
}
footer .entry h3 {
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 15px;
  font-size: 14px;
  margin: 0 auto;
  border-left: 1px solid #808080;
  border-right: 1px solid #808080;
  margin-bottom: 30px;
}
footer .entry p {
  font-size: 12px;
  line-height: 20px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  footer .entry p {
    text-align: left;
    font-size: 10px;
    line-height: 13px;
    letter-spacing: 0.048em;
  }
}
@media screen and (max-width: 768px) {
  footer .entry p br {
    display: none;
  }
}
footer .ft-wrap nav {
  background-color: #ADA49D;
}
@media screen and (max-width: 999px) {
  footer .ft-wrap nav {
    display: none;
  }
}
footer .ft-wrap nav ul {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
footer .ft-wrap nav ul li {
  width: 8.3333333333%;
  padding: 10px 0;
  text-align: center;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .ft-wrap nav ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 8.3333333333vw;
  height: 35px;
  max-width: 100px;
  color: white;
  font-size: clamp(9px, 1.25vw, 15px);
  line-height: clamp(9px, 1.4166666667vw, 17px);
  font-feature-settings: "palt" 1;
}
footer .ft-wrap nav ul li a.off {
  opacity: 0.3;
  pointer-events: none;
}
footer .ft-wrap nav ul li a.wide {
  width: 11vw;
  max-width: 132px;
}
footer .ft-wrap nav ul li:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 35px;
  background-color: white;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
}
footer .ft-wrap nav ul li.new::before {
  content: "";
  background-image: url("../img/common/new.png");
  background-size: 100%;
  width: 34px;
  height: 16px;
  position: absolute;
  top: -7px;
  left: 50%;
  transform: translate(-50%, 0);
}
footer .ft-wrap .footer-flex {
  margin-top: 30px;
  margin-bottom: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 60px;
  padding: 0 25px;
}
@media screen and (max-width: 999px) {
  footer .ft-wrap .footer-flex {
    flex-direction: column;
    gap: 25px;
    margin-top: 20px;
    padding: 0 35px;
    margin-bottom: 25px;
  }
}
footer .ft-wrap .footer-flex .com {
  width: 301px;
}
@media screen and (max-width: 768px) {
  footer .ft-wrap .footer-flex .com {
    width: 100%;
    max-width: 365px;
    margin: 0 auto;
  }
}
footer .ft-wrap .footer-flex .sumifu {
  width: 300px;
  padding-top: 15px;
}
@media screen and (max-width: 768px) {
  footer .ft-wrap .footer-flex .sumifu {
    width: 280px;
  }
}
footer .ft-wrap .footer-flex .tel {
  width: 293px;
}
@media screen and (max-width: 768px) {
  footer .ft-wrap .footer-flex .tel {
    margin: 0 auto;
  }
}
footer .ft-wrap .footer-flex .tel p {
  font-size: 13px;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  footer .ft-wrap .footer-flex .tel p {
    text-align: center;
  }
}
footer .ft-wrap .footer-flex .tel .num {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  footer .ft-wrap .footer-flex .tel .num {
    pointer-events: visible;
  }
}
footer .ft-wrap .footer-flex .tel span {
  margin-top: 8px;
  font-size: 10px;
  display: block;
  font-feature-settings: "palt" 1;
}
@media screen and (min-width: 810px) {
  footer .ft-wrap .footer-flex .tel span .tb {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  footer .ft-wrap .footer-flex .tel span .tb {
    display: none;
  }
}
footer .ft-wrap .copy {
  text-align: center;
  font-size: 10px;
  color: white;
  padding: 5px 0;
  background-color: #716764;
}
@media screen and (max-width: 999px) {
  footer .ft-wrap .copy {
    background-color: unset;
    color: #808080;
  }
}
footer .sp-nav {
  background-color: white;
  border-top: 1px solid white;
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  z-index: 999;
}
@media screen and (min-width: 1000px) {
  footer .sp-nav {
    display: none;
  }
}
footer .sp-nav ul {
  display: flex;
  gap: 1px;
}
footer .sp-nav ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 25%;
  background-color: #9E9F9F;
}
footer .sp-nav ul li a, footer .sp-nav ul li div {
  display: block;
  width: 100%;
  height: 56px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .sp-nav ul li a img, footer .sp-nav ul li div img {
  max-width: 100px;
}
footer .sp-nav ul li:nth-child(1) {
  background: #978349;
  background: linear-gradient(146deg, rgb(151, 131, 73) 0%, rgb(100, 81, 18) 100%);
}
footer .sp-nav ul li:nth-child(2) {
  background: #924541;
  background: linear-gradient(146deg, rgb(146, 69, 65) 0%, rgb(94, 44, 31) 100%);
}
footer .sp-menu {
  position: fixed;
  bottom: -100%;
  transition: all 0.2s;
  z-index: 888;
  width: 100%;
}
footer .sp-menu ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  background-color: #645E62;
}
footer .sp-menu ul li {
  width: calc(50% - 0.5px);
}
footer .sp-menu ul li:nth-child(-n+12) {
  border-bottom: 1px solid #959595;
}
footer .sp-menu ul li:nth-child(odd) {
  border-right: 1px solid #959595;
}
footer .sp-menu ul li a {
  display: block;
  text-align: center;
  line-height: 45px;
  color: white;
  font-size: 11px;
}
footer .sp-menu ul li a.off {
  pointer-events: none;
  opacity: 30%;
}
footer .sp-menu ul li.new {
  position: relative;
}
footer .sp-menu ul li.new::before {
  content: "";
  background-image: url("../img/common/new.png");
  background-size: 100%;
  width: 34px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translate(0, -50%);
}
footer .sp-menu.show {
  bottom: 56px;
}/*# sourceMappingURL=common.css.map */