@charset "UTF-8";
/***************************
    index
***************************/
/* visual */
.toppage header {
  position: relative;
}
.toppage header .sinryou-koumoku {
  position: absolute;
  left: 2%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  writing-mode: vertical-rl;
  font-size: 14px;
  height: 100%;
  text-align: left;
  margin: 0;
  padding-top: 13%;
  line-height: 1.3em;
}
@media screen and (max-width: 768px) {
  .toppage header .sinryou-koumoku {
    writing-mode: horizontal-tb;
    position: static;
    width: 90%;
    margin: auto;
    text-align: left;
    line-height: 1.5em;
    padding: 0;
  }
}

.headline {
  z-index: 2;
  letter-spacing: 0.3rem;
  position: absolute;
  bottom: 10%;
  left: 3%;
  font-size: 2.5rem;
  line-height: 3rem;
}
@media screen and (max-width: 768px) {
  .headline {
    font-size: 2rem;
    writing-mode: vertical-rl;
  }
}
.headline h1 {
  margin-bottom: 80px;
  color: var(--bs-brown);
  font-family: "Klee One", cursive;
  line-height: 1.8em;
}
.headline ul {
  display: flex;
  align-items: center;
  gap: 3%;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .headline ul {
    display: none;
  }
}
.headline ul .gairai-btn {
  background-color: var(--bs-green);
}
.headline ul .gairai-btn:hover {
  background-color: var(--bs-dark-green);
}
.headline ul .houmonn-btn {
  background-color: var(--bs-orange);
}
.headline ul .houmonn-btn:hover {
  background-color: var(--bs-dark-orange);
}
.headline ul li {
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
  width: 50%;
  transition: all 0.6s;
}
.headline ul li a {
  color: white;
  padding: 10px;
  letter-spacing: 0.1rem;
  display: flex;
  align-items: center;
  gap: 3%;
}
.headline ul li a::before {
  content: "";
  display: block;
  width: 44px;
  height: 47px;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
}
.headline ul li.gairai-btn a::before {
  background-image: url(../images/icon-calendar.png);
}
.headline ul li.houmonn-btn a::before {
  background-image: url(../images/icon-mail.png);
}

.main-visual {
  max-width: 1690px;
  width: 90%;
  margin: auto;
  border-radius: 50px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .main-visual {
    margin: 10px auto 0;
  }
}

.visual {
  height: calc(100vh - 10rem);
  max-height: 860px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .visual {
    max-height: 630px;
  }
}

/* main */
.toppage main {
  padding-bottom: 0 !important;
}

/* news */
.news {
  background-color: #f3e8da;
  display: flex;
  align-items: center;
  gap: 3%;
  padding: 30px 15px;
  max-width: 900px;
  margin: 20px auto 0 0;
  border-radius: 0 15px 15px 0;
}
.news .news-title {
  margin-bottom: 15px;
  line-height: 1em;
  font-weight: 600;
}
.news p {
  margin: 0;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .news {
    flex-direction: column;
    align-items: flex-start;
    width: 90%;
    margin: auto;
    border-radius: 10px;
  }
  .news .news-title {
    margin-top: 5px;
  }
}

/* kokubunji-year */
#kokubunji-year {
  padding-bottom: 200px;
}
#kokubunji-year::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 500px;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(0deg, transparent, #ffffff), url("../images/index__back-img01.jpg");
  background-repeat: no-repeat;
  background-position: top center, bottom center;
  background-size: cover;
}
@media screen and (max-width: 1400px) {
  #kokubunji-year::before {
    background-size: 150%;
  }
}
@media screen and (max-width: 768px) {
  #kokubunji-year::before {
    background-size: 250%;
  }
}
#kokubunji-year .kokubunji-year-box {
  width: 95%;
  margin: 40px auto 0;
  display: flex;
  gap: 3%;
  position: relative;
}
@media screen and (max-width: 1000px) {
  #kokubunji-year .kokubunji-year-box {
    flex-direction: column;
  }
  #kokubunji-year .kokubunji-year-box div {
    width: 100%;
  }
}
#kokubunji-year .kokubunji-year__text {
  width: 50%;
}
#kokubunji-year .kokubunji-year__text .kokubunji-year__text-title {
  /* min 24px max 54px |　Viewport min768px max1280px 
  font-size: clamp(1.5rem, -1.313rem + 5.86vw, 3.375rem); */
  margin: 50px 0;
  font-family: "Klee One", cursive;
  line-height: 1.5em;
  letter-spacing: -0.1rem;
}
#kokubunji-year .kokubunji-year__text .kokubunji-year__text-title span {
  font-family: "Klee One", cursive;
  /* min 28px max 60px |　Viewport min768px max1280px */
  font-size: clamp(1.75rem, -1.25rem + 6.25vw, 3.75rem);
  color: #73b712;
}
#kokubunji-year .kokubunji-year__text p {
  line-height: 2em;
}
#kokubunji-year .kokubunji-year__text .kokubunji-year__text-name {
  text-align: right;
}
@media screen and (max-width: 768px) {
  #kokubunji-year .kokubunji-year__text .kokubunji-year__text-title {
    margin: 50px 0 20px;
  }
}
#kokubunji-year .kokubunji-year__img {
  width: 50%;
}
#kokubunji-year .kokubunji-year__img img {
  display: block;
  width: 100%;
}
#kokubunji-year .kokubunji-year__img .kokubunji-year__img01 {
  width: 40%;
  max-width: 374px;
}
#kokubunji-year .kokubunji-year__img .kokubunji-year__img02 {
  max-width: 846px;
  margin: -35% auto 0;
}
@media screen and (max-width: 1400px) {
  #kokubunji-year .kokubunji-year__img .kokubunji-year__img02 {
    margin: -19% 0 0 auto;
  }
}
#kokubunji-year .kokubunji-year__img .kokubunji-year__img03 {
  max-width: 498px;
  margin: -20% 0 0 auto;
}
@media screen and (max-width: 1400px) {
  #kokubunji-year .kokubunji-year__img .kokubunji-year__img03 {
    margin: -7% 0 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #kokubunji-year .kokubunji-year__img .kokubunji-year__img03 {
    max-width: 315px;
    margin: -25% 0 0 auto;
  }
}

/* gairai-houmon */
#gairai-houmon {
  background-image: url("../images/nami-img02-2.png");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: -100px 0 180px 0;
  position: relative;
  padding-top: 200px;
}
#gairai-houmon::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("../images/nami-img02.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100%;
  top: -1.5%;
}
#gairai-houmon .gairai-houmon__menu {
  width: 95%;
  max-width: 1200px;
  background-color: white;
  border-radius: 20px;
  padding: 5% 3%;
  margin: auto;
  transform: translate(0, 6%) !important;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon-title {
  text-align: center;
  margin-bottom: 5%;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox {
  display: flex;
  gap: 2%;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox > div {
  width: 50%;
  border: 4px solid #499978;
  border-radius: 30px;
  overflow: hidden;
  transition: all 0.6s;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox > div:hover {
  background-color: #499978;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox > div:hover p,
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox > div:hover .gairai-houmon__menubox-title {
  color: white;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox > div a {
  padding: 20px;
  display: block;
  transition: all 0.6s;
  height: 100%;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox .gairai-houmon__menubox-title {
  color: #499978;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox p {
  color: #499978;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox .gairai-houmon__menubox-title {
  display: flex;
  align-items: center;
  gap: 3%;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox .gairai-houmon__menubox-title::after {
  content: "";
  background-image: url("../images/icon-arrow-right.png");
  background-repeat: no-repeat;
  background-size: 100%;
  width: 5.5vw;
  max-width: 72px;
  height: 72px;
  display: block;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox .gairai-houmon__gairaibox,
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox .gairai-houmon__houmonbox {
  background-repeat: no-repeat;
  background-position: bottom -10px right -5px;
  background-size: 50%;
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox .gairai-houmon__gairaibox {
  background-image: url("../images/icon-calendar-back.png");
}
#gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox .gairai-houmon__houmonbox {
  background-image: url("../images/icon-car-back.png");
}
@media screen and (max-width: 768px) {
  #gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox {
    flex-direction: column;
  }
  #gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox div {
    width: 100%;
    margin-bottom: 20px;
  }
  #gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox div .gairai-houmon__menubox-title {
    padding: 0;
    margin-bottom: 10px;
  }
  #gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox div .gairai-houmon__menubox-title::after {
    width: 30px;
    height: 30px;
  }
  #gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox div p {
    line-height: 2em;
    margin: 0;
  }
  #gairai-houmon .gairai-houmon__menu .gairai-houmon__menubox div p br {
    display: none;
  }
}
#gairai-houmon .gairai-houmon__menu {
  /* gairai-houmon__menubox end */
}
@media screen and (max-width: 768px) {
  #gairai-houmon {
    margin: -100px 0 180px 0;
    padding-top: 70px;
    background-size: 230%;
  }
}

/* sinryo */
#sinryo {
  margin-bottom: -1px;
}
#sinryo::after {
  content: "";
  background-image: url("../images/nami-img03-top.png");
  background-size: 100%;
  background-position: bottom 0 center;
  background-repeat: no-repeat;
  display: block;
  width: 100%;
  height: 220px;
}
@media screen and (max-width: 768px) {
  #sinryo::after {
    background-size: 120%;
    height: 120px;
  }
}

/* index-ftmenu */
#index-ftmenu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 3%;
  position: relative;
  padding: 40px 3% 10px;
}
#index-ftmenu::before {
  display: block;
  content: "";
  background-color: #f1e8d6;
  position: absolute;
  z-index: -2;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
#index-ftmenu div {
  background: rgba(68, 61, 45, 0.6);
  background-size: 100%;
  width: 48%;
  max-width: 820px;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 30px;
}
#index-ftmenu div:hover::after {
  transform: scale(1.3);
}
#index-ftmenu div a {
  display: block;
  height: 100%;
  padding: 40px 20px;
}
#index-ftmenu div p {
  margin: 0;
  color: white;
  line-height: 1.5em;
}
#index-ftmenu div.index-ftmenu__mamechisiki a {
  padding: 50px 40px;
}
#index-ftmenu div::after {
  display: block;
  content: "";
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: all 1s;
}
#index-ftmenu div.index-ftmenu__first::after {
  background-image: url("../images/index__menu-img01.jpg");
}
#index-ftmenu div.index-ftmenu__houmon::after {
  background-image: url("../images/index__menu-img02.jpg");
}
#index-ftmenu div.index-ftmenu__mamechisiki::after {
  background-image: url("../images/index__menu-img03.jpg");
}
#index-ftmenu div .index-ftmenu__title {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  #index-ftmenu {
    flex-direction: column;
  }
  #index-ftmenu div {
    width: 100%;
  }
  #index-ftmenu div.index-ftmenu__mamechisiki a,
  #index-ftmenu div a {
    padding: 20px;
  }
  #index-ftmenu div.index-ftmenu__mamechisiki::after {
    background-position: bottom center;
  }
  #index-ftmenu div .index-ftmenu__title {
    margin-bottom: 10px;
  }
}

/* index-footerimage */
.index-footerimage {
  position: relative;
  height: 500px;
}
.index-footerimage::before {
  content: "";
  background-image: url("../images/index__footer-img01.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  display: block;
  width: 100%;
  height: 500px;
  top: 0;
  left: 0;
  z-index: -2;
}
.index-footerimage::after {
  content: "";
  background-image: url("../images/nami-img03-bottom.png");
  background-size: 100%;
  background-position: top 0 center;
  background-repeat: no-repeat;
  position: absolute;
  display: block;
  width: 100%;
  height: 220px;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .index-footerimage {
    height: 300px;
  }
  .index-footerimage::before {
    height: 300px;
  }
}

/* net-houmon__morebtn */
#net-houmon__morebtn {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  max-height: 360px;
}
#net-houmon__morebtn li {
  writing-mode: vertical-rl;
  border-radius: 10px 0 0 10px;
  margin-bottom: 20px;
  height: 50%;
  transition: all 0.6s;
}
#net-houmon__morebtn li a {
  color: white;
  padding: 8px 2px;
  letter-spacing: 0.1rem;
  display: flex;
  align-items: center;
  gap: 2%;
  font-size: 14px;
  font-weight: 600;
}
#net-houmon__morebtn li a::before {
  content: "";
  display: block;
  width: 24px;
  height: 27px;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
}
#net-houmon__morebtn .net-houmon__morebtn-net {
  background-color: var(--bs-green);
}
#net-houmon__morebtn .net-houmon__morebtn-net a::before {
  background-image: url(../images/icon-calendar.png);
}
#net-houmon__morebtn .net-houmon__morebtn-net:hover {
  background-color: var(--bs-dark-green);
}
#net-houmon__morebtn .net-houmon__morebtn-houmon {
  background-color: var(--bs-orange);
}
#net-houmon__morebtn .net-houmon__morebtn-houmon a::before {
  background-image: url(../images/icon-mail.png);
}
#net-houmon__morebtn .net-houmon__morebtn-houmon:hover {
  background-color: var(--bs-dark-orange);
}

/* pagetop */
.page-top {
  z-index: 1000;
  position: fixed;
  bottom: 0.5rem;
  right: 0.5rem;
  border-radius: 20px;
  overflow: hidden;
}
.page-top a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-decoration: none !important;
  width: 7rem;
  height: 5rem;
  transition: all 0.6s;
}
.page-top a:hover {
  opacity: 0.7;
}
.page-top a p {
  line-height: 1em;
}

.top-page-icon {
  width: 2rem;
  height: auto;
}/*# sourceMappingURL=index.css.map */