@charset "UTF-8";
* {
  min-height: 0vw;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: none;
  font-style: normal;
  text-align: left;
  zoom: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

table {
  border-collapse: collapse;
  font-family: inherit;
}

h1, h2, h3, h4, h5 {
  font-size: 100%;
  font-weight: normal;
  line-height: 1;
}

input, textarea, select {
  font-family: inherit;
  font-size: 16px;
}

input[type=button], input[type=text], input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

textarea {
  resize: none;
  -webkit-appearance: none;
  border-radius: 0;
}

th, td {
  border-collapse: collapse;
}

table th, table td {
  white-space: nowrap;
}

ul, ol {
  list-style-type: none;
}

img {
  vertical-align: text-bottom;
  vertical-align: -webkit-baseline-middle;
  max-width: 100%;
  height: auto;
  width: auto;
}

/*=============================================================
共通設定
=============================================================*/
html {
  scroll-behavior: smooth;
}

body {
  margin: 0 auto;
  padding: 0;
  line-height: 1.8;
  color: #333;
  text-align: left;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

a:active {
  color: #333;
  text-decoration: none;
}

a:visited {
  color: #333;
  text-decoration: none;
}

a:link {
  color: #333;
  text-decoration: none;
}

a[href^="tel:"] {
  pointer-events: none;
  text-decoration: none;
  color: #333;
}
@media screen and (max-width: 520px) {
  a[href^="tel:"] {
    display: auto;
  }
}

a:hover {
  color: #333;
  text-decoration: none;
}

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

.sp_only {
  display: none;
}
@media screen and (min-width: 521px) and (max-width: 768px) {
  .sp_only {
    display: none;
  }
}
@media screen and (max-width: 520px) {
  .sp_only {
    display: block;
  }
}

.tb_only {
  display: none;
}
@media screen and (max-width: 520px) {
  .tb_only {
    display: none;
  }
}
@media screen and (min-width: 521px) and (max-width: 768px) {
  .tb_only {
    display: block;
  }
}

.sptb_only {
  display: none;
}
@media screen and (max-width: 768px) {
  .sptb_only {
    display: block;
  }
}

.inner {
  margin: 0 auto;
  padding: 0 5%;
  text-align: center;
}
@media screen and (min-width: 521px) and (max-width: 768px) {
  .inner {
    max-width: 100%;
  }
}
@media screen and (max-width: 520px) {
  .inner {
    max-width: 100%;
  }
}

/*=============================================================
header
=============================================================*/
@media screen and (min-width: 769px) {
header{
  margin: 0 auto;
  position: relative;
  max-width: 1200px;  
  width: 95%;
}
header h1.logo{
  position: absolute;
  top: 20px;
  left: 10px;
  padding: 10px;
  width: 240px;
}
header .bread{
  float:right;
  display: flex;
  flex-wrap: wrap;
  margin:30px 20px 0 0;
}
header .bread a{
  display: block;
  position: relative;
  padding:0 30px 0 0;
}
header .bread a:after{
  content:">";
  width:26px;
  height:26px;
  position: absolute;
  top:0;
  right:0;
}
}
@media screen and (max-width: 768px) {
header{
  position: relative;
  height: 100px;
}
header h1.logo{
  position: absolute;
  top: 20px;
  left: 10px;
  padding: 10px;
  width: 50%;
}
header .bread{
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  position: absolute;
  bottom: 0;
  right: 10px;
  width: fit-content;
}
header .bread a{
  display: block;
  position: relative;
  padding:0 30px 0 0;
}
header .bread a:after{
  content:">";
  width:26px;
  height:26px;
  position: absolute;
  top:0;
  right:0;
}
}

/*=============================================================
footer
=============================================================*/
footer .outer {
  background-color: #111;
}
footer .outer .box {
  border-bottom: 1px solid #b1954f;
  -o-border-image: linear-gradient(to right, #6f4b26, #b1954f, #eadcba, #a38358, #8d5429);
     border-image: linear-gradient(to right, #6f4b26, #b1954f, #eadcba, #a38358, #8d5429);
  border-image-slice: 1;
  padding: 5vw 0 2.5vw;
}
footer .outer .box .logo {
  width: 27%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  footer .outer .box .logo {
    width: 50%;
    min-width: 200px;
  }
}
footer .outer .box p {
  color: #fff;
  font-size: 1.25vw;
  text-align: center;
  margin-top: 1em;
}
@media screen and (max-width: 768px) {
  footer .outer .box p {
    font-size: clamp(1rem, 0.821rem + 0.89vw, 1.25rem);
  }
}

.copyright {
  color: #fff;
  font-size: 1vw;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.1em;
  padding: 2.5vw 0;
}
@media screen and (max-width: 768px) {
  .copyright {
    font-size: clamp(0.875rem, 0.696rem + 0.89vw, 1.125rem);
  }
}
/*# sourceMappingURL=base.css.map */