@charset "UTF-8";
/* CSS Information
---------------------------------------------------------------
Site URL:https://
File name:style.css
Summary:base styles
Created:2026-04-01
--------------------------------------------------------------- */
/* Link */
/* ------------------------------------------------------------ */
a {
  color: #111;
  text-decoration: none;
}

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

/* Animation */
/* ------------------------------------------------------------ */
a,
img {
  transition: all 0.5s ease;
}

.alpha:hover {
  filter: alpha(opacity=60);
  opacity: 0.6;
}

/* Font */
/* ------------------------------------------------------------ */
sup {
  font-size: 66%;
  vertical-align: top;
}

sub {
  font-size: 66%;
  vertical-align: baseline;
}

/* インデント1文字分 */
/* ------------------------------------------------------------ */
.indent {
  text-indent: -1em;
  margin-left: 1em;
}

/* HR */
/* ------------------------------------------------------------ */
hr {
  width: 100%;
  height: 1px;
  margin: min(5.556vw, 60px) auto;
  padding: 0;
  display: block;
  border: 0;
  border-top: 1px #000 solid;
}
@media screen and (max-width: 768px) {
  hr {
    margin: 7.692vw auto;
  }
}

/* pc_mode / sp_mode */
/* ------------------------------------------------------------ */
.pc {
  display: inherit;
}

.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: inherit;
  }
}
/* Style */
/* ------------------------------------------------------------ */
html {
  scroll-behavior: smooth;
  -ms-overflow-style: none;
  scrollbar-width: none;
  font-size: 1.481vw;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 3.59vw;
  }
}
html body {
  background: #fff;
}
html body::-webkit-scrollbar {
  display: none;
}
html body header .inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  border-top: min(1.389vw, 15px) #8c704c solid;
  background: url("../img/bg_header.png") no-repeat center top/cover;
  width: min(100vw, 1080px);
  aspect-ratio: 216/157;
  padding: 0;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  html body header .inner {
    justify-content: flex-start;
    border-top: 1.282vw #8c704c solid;
    width: 100%;
  }
}
html body header .inner h1 {
  color: #e1c4a4;
  font-size: min(3.125rem, 50px);
  font-weight: 700;
  text-shadow: 0 min(0.278vw, 3px) min(0.463vw, 5px) #000;
  margin-bottom: min(2.778vw, 30px);
}
@media screen and (max-width: 768px) {
  html body header .inner h1 {
    font-size: 1.428571rem;
    text-shadow: 0 0.278vw 1.282vw #000, 0 0.278vw 1.282vw #000;
    margin-top: 15.385vw;
    margin-bottom: 2.564vw;
  }
}
html body header .inner p {
  color: #fcefd9;
  font-size: min(2rem, 32px);
  font-weight: 700;
  text-shadow: 0 min(0.278vw, 3px) min(0.463vw, 5px) #000;
  margin-bottom: min(9.259vw, 100px);
}
@media screen and (max-width: 768px) {
  html body header .inner p {
    font-size: 1rem;
    text-shadow: 0 0.278vw 1.282vw #000, 0 0.278vw 1.282vw #000;
    margin-bottom: 7.692vw;
  }
}
html body main section .inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: min(100vw, 1080px);
  padding: min(11.111vw, 120px) 0;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  html body main section .inner {
    width: 100%;
    padding: 15.385vw 5.128vw;
  }
}
html body main section .inner > h2 {
  color: #584533;
  text-align: center;
  font-size: min(2.75rem, 44px);
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  html body main section .inner > h2 {
    font-size: 1.571429rem;
    line-height: 1.25;
  }
}
html body main section .inner > h2 em {
  font-size: 1.5em;
  font-weight: 700;
}
html body main section .inner .comment {
  font-size: min(1.5rem, 24px);
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-top: min(2.778vw, 30px);
}
@media screen and (max-width: 768px) {
  html body main section .inner .comment {
    font-size: 1rem;
    margin-top: 3.846vw;
  }
}
html body main section .inner .btn {
  margin-top: min(5.556vw, 60px);
}
@media screen and (max-width: 768px) {
  html body main section .inner .btn {
    margin-top: 7.692vw;
  }
}
html body main section .inner .btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #a17433;
  border-radius: min(0.463vw, 5px);
  width: min(50vw, 540px);
  height: min(7.407vw, 80px);
  color: #fff;
  font-size: min(1.75rem, 28px);
}
@media screen and (max-width: 768px) {
  html body main section .inner .btn a {
    border-radius: 1.282vw;
    width: 73.846vw;
    height: 12.821vw;
    font-size: 1.142857rem;
  }
}
html body main section#section1 {
  margin-top: calc(-1 * min(4.63vw, 50px));
}
@media screen and (max-width: 768px) {
  html body main section#section1 {
    margin-top: calc(6.41vw * -1);
  }
}
html body main section#section1 .inner {
  background: url("../img/bg1.png") no-repeat center top/cover;
}
html body main section#section1 .inner > ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 5.128vw;
  }
}
html body main section#section1 .inner > ul:nth-of-type(1) li {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
html body main section#section1 .inner > ul:nth-of-type(1) li:nth-of-type(n+2) {
  border-left: 1px #7e6343 solid;
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul:nth-of-type(1) li:nth-of-type(n+2) {
    border-top: 1px #7e6343 solid;
    border-left: none;
    padding-top: 5.128vw;
  }
}
html body main section#section1 .inner > ul:nth-of-type(1) li figure {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
html body main section#section1 .inner > ul:nth-of-type(1) li figure img {
  width: min(9.259vw, 100px);
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul:nth-of-type(1) li figure img {
    width: 17.949vw;
  }
}
html body main section#section1 .inner > ul:nth-of-type(1) li figure figcaption {
  margin-top: min(1.852vw, 20px);
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul:nth-of-type(1) li figure figcaption {
    margin-top: 2.564vw;
  }
}
html body main section#section1 .inner > ul:nth-of-type(1) li figure figcaption h2 {
  color: #7e6343;
  text-align: center;
  font-size: min(1.375rem, 22px);
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul:nth-of-type(1) li figure figcaption h2 {
    font-size: 1.285714rem;
  }
}
html body main section#section1 .inner > ul:nth-of-type(1) li figure figcaption p {
  text-align: center;
  font-size: min(1rem, 16px);
  line-height: 1.75;
  margin-top: min(1.852vw, 20px);
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul:nth-of-type(1) li figure figcaption p {
    font-size: 1rem;
    margin-top: 2.564vw;
  }
}
html body main section#section1 .inner > ul:nth-of-type(2) {
  margin-top: min(5.556vw, 60px);
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul:nth-of-type(2) {
    margin-top: 7.692vw;
  }
}
html body main section#section1 .inner > ul:nth-of-type(2) li {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
html body main section#section1 .inner > ul:nth-of-type(2) li figure img {
  width: min(25.741vw, 278px);
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > ul:nth-of-type(2) li figure img {
    width: 41.026vw;
  }
}
html body main section#section1 .inner > h2 {
  margin-top: min(11.111vw, 120px);
}
@media screen and (max-width: 768px) {
  html body main section#section1 .inner > h2 {
    margin-top: 15.385vw;
  }
}
html body main section#section2 .inner {
  background: url("../img/bg2.png") no-repeat center top/cover;
  aspect-ratio: 15/8;
  position: relative;
}
html body main section#section2 .inner p {
  color: #fcefd9;
  font-size: min(2rem, 32px);
  font-weight: 700;
  line-height: 1.5;
  text-shadow: 0 min(0.278vw, 3px) min(0.463vw, 5px) #000, 0 0 min(0.926vw, 10px) #000;
  position: absolute;
  top: min(11.111vw, 120px);
  right: min(7.407vw, 80px);
}
@media screen and (max-width: 768px) {
  html body main section#section2 .inner p {
    font-size: 1rem;
    text-shadow: 0 0.278vw 1.282vw #000, 0 0 2.564vw #000;
    top: 10.256vw;
    right: 2.564vw;
  }
}
html body main section#section3 .inner {
  background: url("../img/bg3.png") no-repeat center bottom/cover;
}
html body main section#section3 .inner > ul {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  width: 100%;
  margin-top: min(5.556vw, 60px);
}
@media screen and (max-width: 768px) {
  html body main section#section3 .inner > ul {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5.128vw;
    margin-top: 7.692vw;
  }
}
html body main section#section3 .inner > ul li a img {
  width: min(39.815vw, 430px);
}
@media screen and (max-width: 768px) {
  html body main section#section3 .inner > ul li a img {
    width: 73.846vw;
  }
}
html body main section#section3 .inner > ul:nth-of-type(2) {
  margin-top: min(5.556vw, 60px);
}
html body main section#section3 .inner > ul:nth-of-type(2) li {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
html body main section#section3 .inner > ul:nth-of-type(2) li figure {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
html body main section#section3 .inner > ul:nth-of-type(2) li figure img {
  width: min(25.741vw, 278px);
}
@media screen and (max-width: 768px) {
  html body main section#section3 .inner > ul:nth-of-type(2) li figure img {
    width: 25.641vw;
  }
}
html body main section#section3 .inner > h2:nth-of-type(2) {
  margin-top: min(11.111vw, 120px);
}
html body main section#section3 .inner > .comment:nth-of-type(2) {
  text-align: center;
  line-height: 1.5;
}
html body footer .inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: min(100vw, 1080px);
  padding: 0 0 min(5.556vw, 60px);
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  html body footer .inner {
    width: 100%;
    padding: 0 0 7.692vw;
  }
}
html body footer .inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/bg3.png") no-repeat center bottom/cover;
  transform: scaleY(-1);
  z-index: -1;
}
html body footer .inner h2 {
  width: min(16.667vw, 180px);
}
@media screen and (max-width: 768px) {
  html body footer .inner h2 {
    width: 25.641vw;
  }
}
html body footer .inner small {
  font-size: min(0.75rem, 12px);
  margin-top: min(2.778vw, 30px);
}
@media screen and (max-width: 768px) {
  html body footer .inner small {
    font-size: 0.571429rem;
    margin-top: 3.846vw;
  }
}/*# sourceMappingURL=style.css.map */