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

body {
  background-color: #B1B39B;
}

.stop {
  height: 100vh;
  overflow: hidden;
}

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

section {
  margin-top: 9.375vw;
}
@media screen and (max-width: 768px) {
  section {
    margin-top: 21.3333333333vw;
  }
}

.rogo-text {
  text-align: center;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  .rogo-text {
    font-size: 3.4666666667vw;
  }
}

.ma-top {
  display: block;
  margin-top: 9.375vw;
}
@media screen and (max-width: 768px) {
  .ma-top {
    margin-top: 21.3333333333vw;
  }
}

#blog-pege .content,
#single-pege .content,
#access-pege .content,
#menu-pege .content {
  width: 75vw;
}
@media screen and (max-width: 768px) {
  #blog-pege .content,
#single-pege .content,
#access-pege .content,
#menu-pege .content {
    width: 100%;
  }
}

.content,
footer,
header {
  max-width: 1915px;
  width: 100%;
  margin: 0 auto;
  padding: 0 32px;
}
@media screen and (max-width: 768px) {
  .content,
footer,
header {
    max-width: 782px;
    padding: 0 16px;
  }
}

.noto-serif jp-regular {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
}

.noto-serif jp-medium {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-style: normal;
}

.noto-serif jp-light {
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
  font-style: normal;
}

.sawarabi-gothic-regular {
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

@media (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pc {
    display: none !important;
  }
}
h2 {
  overflow: hidden;
  font-size: 3.3333333333vw;
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  h2 {
    font-size: 5.3333333333vw;
  }
}
h2 span {
  font-size: 5vw;
  line-height: 1.4;
  display: block;
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 400;
  -webkit-animation: spa 1s forwards;
          animation: spa 1s forwards;
  text-align: center;
  transition: all 1s ease;
  transform: translateY(2em);
}
@media screen and (max-width: 768px) {
  h2 span {
    font-size: 10.6666666667vw;
  }
}
h2 img {
  width: 25vw;
}
@media screen and (max-width: 768px) {
  h2 img {
    width: 53.3333333333vw;
  }
}

.khdg {
  font-size: 1.6666666667vw;
  display: block;
  text-align: center;
  margin-bottom: 9.375vw;
}
@media screen and (max-width: 768px) {
  .khdg {
    font-size: 3.2vw;
    margin-bottom: 21.3333333333vw;
  }
}

@-webkit-keyframes spa {
  0% {
    transform: translateY(2em);
  }
  100% {
    transform: translateY(0px);
  }
}

@keyframes spa {
  0% {
    transform: translateY(2em);
  }
  100% {
    transform: translateY(0px);
  }
}
#toppege .khdg {
  margin-bottom: 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  #toppege .khdg {
    margin-bottom: 5.3333333333vw;
  }
}

h3 {
  font-size: 2.9166666667vw;
  line-height: 1.2;
  margin-bottom: 2.9166666667vw;
}
@media screen and (max-width: 768px) {
  h3 {
    font-size: 7.4666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
h3 span {
  font-size: 1.6666666667vw;
  display: block;
}
@media screen and (max-width: 768px) {
  h3 span {
    font-size: 4.2666666667vw;
  }
}

.recent-list {
  border-bottom: 1px solid #575753;
  border-bottom: solid 1px;
}
.recent-list a {
  display: flex;
  align-items: center;
  padding: 2.0833333333vw 0 2.0833333333vw 2.9166666667vw;
}
@media screen and (max-width: 768px) {
  .recent-list a {
    font-size: 3.2vw;
    padding: 16px 0 16px 3.2vw;
  }
}
.recent-list a h3 {
  font-size: 1.6666666667vw;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .recent-list a h3 {
    font-size: 4.2666666667vw;
  }
}
.recent-list a span {
  display: inline-block;
  margin-right: 6.4583333333vw;
}
@media screen and (max-width: 768px) {
  .recent-list a span {
    margin-right: 5.3333333333vw;
  }
}

.border-top {
  border-top: 1px solid #575753;
}

.morebn {
  padding-right: 1.7708333333vw;
}
@media screen and (max-width: 768px) {
  .morebn {
    padding-right: 3.2vw;
  }
}
.morebn a {
  font-size: 1.6666666667vw;
  position: relative;
  padding-bottom: 0.4166666667vw;
  display: block;
  width: 11.3541666667vw;
  text-align: left;
  margin: 0 0 0 auto;
  padding-left: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  .morebn a {
    font-size: 4.2666666667vw;
    width: 27.7333333333vw;
    padding-left: 4.2666666667vw;
  }
}
.morebn a::after {
  content: "";
  border: 1px solid #000;
  position: absolute;
  bottom: -1.7708333333vw;
  right: -1.7708333333vw;
  width: 3.5416666667vw;
  height: 3.5416666667vw;
  border-radius: 100%;
}
@media screen and (max-width: 768px) {
  .morebn a::after {
    width: 7.4666666667vw;
    height: 7.4666666667vw;
    bottom: -3.7333333333vw;
    right: -3.7333333333vw;
  }
}
.morebn a::before {
  content: "";
  height: 1px;
  background-color: #000;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-animation: rong 2s forwards infinite;
          animation: rong 2s forwards infinite;
  transition: all 0 ease;
}

@-webkit-keyframes rong {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
    transform: translateX(0%);
    transition: 0.5s;
  }
}

@keyframes rong {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
    transform: translateX(0%);
    transition: 0.5s;
  }
}
.flex-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  -moz-column-gap: 4.1666666667vw;
       column-gap: 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  .flex-wrap {
    display: block;
  }
}
.flex-wrap > div {
  width: 35.8333333333vw;
}
@media screen and (max-width: 768px) {
  .flex-wrap > div {
    width: 100%;
    padding-top: 8vw;
  }
}
.flex-wrap > div p {
  margin-bottom: 2.5vw;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  .flex-wrap > div p {
    font-size: 3.7333333333vw;
  }
}
.flex-wrap > div ul li {
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  .flex-wrap > div ul li {
    font-size: 3.2vw;
  }
}
.flex-wrap > div .morebn {
  text-align: right;
  margin: 0 0 0 auto;
}
.flex-wrap figure {
  width: 56.25vw;
}
@media screen and (max-width: 768px) {
  .flex-wrap figure {
    width: 100%;
  }
}

header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 56px auto 56px;
}
@media screen and (max-width: 768px) {
  header {
    margin: 4.2666666667vw auto 4.2666666667vw;
    align-items: flex-start;
  }
}
header h1 {
  width: 9.7916666667vw;
}
@media screen and (max-width: 768px) {
  header h1 {
    width: 22.9333333333vw;
  }
}
header > div {
  display: flex;
  align-items: center;
}
header .menu-bn {
  border: #000 1px solid;
  border-radius: 50%;
  z-index: 9999;
}
header .menu-bn a {
  font-size: 3.7333333333vw;
  display: block;
  width: 100%;
  padding: 2.6666666667vw 4.2666666667vw;
}
header nav {
  display: flex;
}
@media screen and (max-width: 768px) {
  header nav {
    position: absolute;
    top: 0;
    left: 0;
    padding: 14vw 0 0 32px;
    width: 100%;
    height: 100vh;
    z-index: 900;
    background-color: #C67030;
    overflow: scroll;
    display: none;
  }
}
header nav ul {
  margin-right: 2.8125vw;
  text-align: center;
}
@media screen and (max-width: 768px) {
  header nav ul {
    text-align: left;
    margin-right: 0;
    margin-top: 13.6vw;
    line-height: 1.2;
  }
}
header nav ul li {
  margin-bottom: 0.4166666667vw;
  line-height: 1.2;
}
header nav ul li a {
  font-size: 1.4583333333vw;
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 400;
}
header nav ul li a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  header nav ul li a {
    font-size: 8.5333333333vw;
  }
}
header .reservation a {
  display: block;
  border: #000000 solid 1px;
  border-radius: 60%;
  font-size: 1.6666666667vw;
  max-width: 12.5vw;
  width: 100%;
  padding: 1.5625vw;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  header .reservation a {
    font-size: 4.2666666667vw;
    max-width: 30.9333333333vw;
    padding: 4.2666666667vw 0;
    margin: 13.3333333333vw 16px 0 auto;
  }
}
header .reservation a:hover {
  background-color: #C67030;
  width: 100%;
}

footer {
  margin-top: 8.3333333333vw;
}
@media screen and (max-width: 768px) {
  footer {
    margin-top: 21.3333333333vw;
  }
}
footer .link-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
footer .link-wrap p {
  width: 8.0208333333vw;
}
@media screen and (max-width: 768px) {
  footer .link-wrap p {
    width: 11.7333333333vw;
  }
}
footer .link-wrap ul {
  display: flex;
}
footer .link-wrap ul li {
  margin-left: 1.25vw;
}
footer .link-wrap ul li a {
  display: block;
  width: 3.0208333333vw;
}
@media screen and (max-width: 768px) {
  footer .link-wrap ul li a {
    width: 7.4666666667vw;
  }
}
footer .copyright {
  margin-top: 4.1666666667vw;
  margin-bottom: 2.0833333333vw;
  text-align: center;
}
@media screen and (max-width: 768px) {
  footer .copyright {
    margin-top: 12.8vw;
    font-size: 8px;
  }
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  line-height: 1.6;
  color: #000000;
  font-family: "Sawarabi Gothic", sans-serif;
}

.titleWrap a {
  display: flex;
  align-items: center;
  padding: 2.0833333333vw 0 2.0833333333vw 2.9166666667vw;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  .titleWrap a {
    font-size: 3.2vw;
    padding: 16px 0 16px 3.2vw;
  }
}
.titleWrap a .font-weight-bold {
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  .titleWrap a .font-weight-bold {
    font-size: 3.2vw;
  }
}

#toppege .first-ani {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  overflow: hidden;
  background-color: #b1b39b;
  z-index: 99999;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-animation: first-ani 1s ease 1.5s;
          animation: first-ani 1s ease 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#toppege .first-ani img {
  width: 100px;
  -webkit-animation: first-img 2s ease 0.3s;
          animation: first-img 2s ease 0.3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}
@-webkit-keyframes first-ani {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    z-index: -9999;
  }
}
@keyframes first-ani {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    z-index: -9999;
  }
}
@-webkit-keyframes first-img {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes first-img {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
#toppege article {
  margin-top: 0;
}
#toppege .main-wrap {
  display: flex;
}
@media screen and (max-width: 768px) {
  #toppege .main-wrap {
    justify-content: space-between;
  }
}
#toppege .main-wrap ul {
  max-width: 62.5%;
  width: 100%;
  height: 100%;
  margin-right: 7.92%;
}
@media screen and (max-width: 768px) {
  #toppege .main-wrap ul {
    max-width: 72%;
    margin-right: 0;
  }
}
#toppege .main-wrap .leaf {
  display: block;
}
#toppege .main-wrap .leaf:nth-of-type(1) {
  max-width: 17.08%;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  #toppege .main-wrap .leaf:nth-of-type(1) {
    max-width: 16%;
  }
}
#toppege .main-wrap .leaf:nth-of-type(2) {
  max-width: 21.8666666667vw;
  width: 100%;
  height: 100%;
}
#toppege .news .flex-wrap {
  -moz-column-gap: 12.1875vw;
       column-gap: 12.1875vw;
}
@media screen and (max-width: 768px) {
  #toppege .news .flex-wrap {
    display: flex;
    flex-direction: column-reverse;
  }
}
#toppege .news .flex-wrap > div {
  width: 58.125vw;
}
@media screen and (max-width: 768px) {
  #toppege .news .flex-wrap > div {
    width: 100%;
  }
}
#toppege .news .title-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
#toppege .news ul li {
  border-bottom: #000000 solid 1px;
}
#toppege .news ul li:first-of-type {
  border-top: #000000 solid 1px;
}
#toppege .news ul li a:hover {
  background-color: #C67030;
}
#toppege .news ul li a span {
  margin-right: 6.4583333333vw;
}
@media screen and (max-width: 768px) {
  #toppege .news ul li a span {
    margin-right: 5.3333333333vw;
  }
}
#toppege .news figure {
  width: 26.0416666667vw;
}
@media screen and (max-width: 768px) {
  #toppege .news figure {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #toppege .menu .flex-wrap {
    display: flex;
    flex-direction: column-reverse;
  }
}

.name {
  background-image: url(../img/index_il_01.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  padding: 14.5833333333vw 0;
}
@media screen and (max-width: 768px) {
  .name {
    padding: 6vw 0;
    margin-top: 16vw;
  }
}
.name h2 {
  text-align: center;
  font-size: 4.5833333333vw;
  font-family: "Sawarabi Gothic", sans-serif;
  margin-bottom: 4.1666666667vw;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .name h2 {
    font-size: 8.5333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.name h2 span {
  display: block;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  .name h2 span {
    font-size: 3.7333333333vw;
  }
}

.bn-wrap {
  margin-top: 9.375vw;
  width: 75vw;
}
@media screen and (max-width: 768px) {
  .bn-wrap {
    width: 100%;
    margin-top: 21.3333333333vw;
  }
}
.bn-wrap .bn {
  width: 36.6666666667vw;
  text-align: center;
  border: 1px solid #000;
  border-radius: 50%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .bn-wrap .bn {
    width: 53.3333333333vw;
  }
}
.bn-wrap .bn::after {
  content: "";
  border: 1px solid #000;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: -1.0416666667vw;
  left: 0;
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  .bn-wrap .bn::after {
    top: -2vw;
  }
}
.bn-wrap .bn::before {
  content: "";
  border: 1px solid #000;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: -2.0833333333vw;
  left: 0;
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  .bn-wrap .bn::before {
    top: -4vw;
  }
}
.bn-wrap .bn:nth-child(2) {
  margin: 0 0 0 auto;
}
.bn-wrap .bn a {
  display: block;
  font-size: 6.1458333333vw;
  padding: 4.1666666667vw 0.8333333333vw;
  position: relative;
  line-height: 1.1;
  z-index: 99;
}
@media screen and (max-width: 768px) {
  .bn-wrap .bn a {
    font-size: 8.5333333333vw;
    padding: 5.3333333333vw 0;
  }
}
.bn-wrap .bn a span {
  display: block;
  font-size: 1.6666666667vw;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .bn-wrap .bn a span {
    font-size: 3.2vw;
  }
}

#concept-pege .rogo {
  display: block;
  width: 33.3333333333vw;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2.0833333333vw;
}
@media screen and (max-width: 768px) {
  #concept-pege .rogo {
    width: 64vw;
    margin-bottom: 5.3333333333vw;
  }
}
#concept-pege .flex-wrap {
  align-items: flex-start;
}
#concept-pege .flex-wrap > div {
  margin-top: 1.25vw;
}
#concept-pege .flex-wrap > div li {
  margin-bottom: 1.25vw;
  line-height: 1.2;
}
#concept-pege #slide-list {
  overflow-x: scroll;
  white-space: nowrap;
  width: 100%;
}
#concept-pege #slide-list li {
  display: inline-block;
  width: 640px;
}
@media screen and (max-width: 768px) {
  #concept-pege #slide-list li {
    width: 85.3333333333vw;
  }
}

#slide-list::-webkit-scrollbar {
  background: #777;
  width: 4px;
  height: 4px;
}

#slide-list::-webkit-scrollbar-track {
  margin-top: 8px;
}

#slide-list::-webkit-scrollbar-thumb {
  background-color: #000;
}

#menu-pege .content section {
  margin-top: 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  #menu-pege .content section {
    margin-top: 8.5333333333vw;
  }
}
#menu-pege .content ul {
  text-indent: 1em;
}
#menu-pege .content ul li {
  padding: 1.6666666667vw 0;
  border-bottom: #575753 solid 1px;
}
#menu-pege .content ul li:nth-child(1) {
  border-top: #575753 solid 1px;
}
@media screen and (max-width: 768px) {
  #menu-pege .content ul li {
    padding: 2.1333333333vw 0;
  }
}
#menu-pege .content ul li dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  #menu-pege .content ul li dl {
    font-size: 3.2vw;
  }
}
#menu-pege .text-area {
  margin-top: 3.3333333333vw;
  font-size: 1.4583333333vw;
}
@media screen and (max-width: 768px) {
  #menu-pege .text-area {
    font-size: 2.9333333333vw;
  }
}
#menu-pege .cancel {
  margin-top: 9.375vw;
}
#menu-pege .cancel p {
  font-size: 0.9375vw;
  margin-bottom: 0.75em;
  color: #575753;
}
@media screen and (max-width: 768px) {
  #menu-pege .cancel p {
    font-size: 2.6666666667vw;
  }
}

#access-pege .text-area {
  margin-top: 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  #access-pege .text-area {
    margin-top: 10.6666666667vw;
  }
}
#access-pege .text-area p {
  margin-bottom: 2.9166666667vw;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  #access-pege .text-area p {
    margin-bottom: 4.2666666667vw;
    font-size: 4.2666666667vw;
  }
}
#access-pege .map {
  position: relative;
  width: 100%;
  height: 0;
  padding: 28%;
}
#access-pege .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#contact-pege .content {
  max-width: 1440px;
  width: 75vw;
}
@media screen and (max-width: 768px) {
  #contact-pege .content {
    width: 100%;
  }
}
#contact-pege .wpcf7-form p {
  margin-bottom: 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  #contact-pege .wpcf7-form p {
    margin-bottom: 8.5333333333vw;
  }
}
#contact-pege .wpcf7-form label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 768px) {
  #contact-pege .wpcf7-form label br {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  #contact-pege .wpcf7-form label {
    display: block;
    font-size: 3.2vw;
  }
}
#contact-pege .wpcf7-form label span {
  width: 80%;
}
#contact-pege .wpcf7-form label input {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #000;
  width: 100%;
  padding: 0;
}
#contact-pege .wpcf7-form label input:focus-visible {
  outline: none;
  border-bottom: 2px solid #C67030;
  background-color: transparent;
}
#contact-pege .wpcf7-form label textarea {
  background-color: transparent;
  width: 100%;
  border: 1px solid #000;
}
@media screen and (max-width: 768px) {
  #contact-pege .wpcf7-form label textarea {
    margin-top: 1.0666666667vw;
  }
}
#contact-pege .wpcf7-form label textarea:focus-visible {
  outline: none;
  border: 2px solid #C67030;
  background-color: transparent;
}
#contact-pege .wpcf7-form .wpcf7-submit {
  max-width: 320px;
  width: 100%;
  position: relative;
  display: block;
  margin: 0 auto;
  padding: 2% 0;
  background-color: transparent;
  border: 1px solid #000;
}
@media screen and (max-width: 768px) {
  #contact-pege .wpcf7-form .wpcf7-submit {
    max-width: 280px;
  }
}
#contact-pege .wpcf7-form .wpcf7-submit:hover {
  background-color: #C67030;
}

@media screen and (max-width: 768px) {
  #single-pege h2 {
    margin-top: 64px;
  }
}
#single-pege .post-content {
  margin-top: 64px;
}
@media screen and (max-width: 768px) {
  #single-pege .post-content {
    margin-top: 32px;
  }
}
#single-pege .post-content figure {
  text-align: center;
  margin-bottom: 32px;
}
#single-pege .post-content figure img {
  width: 100% !important;
}

.scroll-up {
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition: opacity 1s, visibility 1s, transform 1s;
}
.scroll-up.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}
/*# sourceMappingURL=index.css.map */