* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: "Noto Sans JP", sans-serif;
  background-color: #fbf4e2;
  color: #230500;
}
a {
  text-decoration: none;
  color: inherit;
}
li {
  list-style: none;
}
p,
h1,
h2,
h3,
h4,
h5 {
  line-height: 1.7;
  letter-spacing: 1.2px;
}
a {
  letter-spacing: 1.2px;
}
.img-status {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.wrap {
  overflow: hidden;
  width: 100%;
}
.inline {
  display: inline-block;
}
/*header*/
header {
  position: fixed;
  top: 0;
  height: 100%;
  width: 100%;
  transition: opacity 1s ease-in-out;
  display: none;
  opacity: 0;
  background-color: #fdfbf3;
  z-index: 100;
}
header.active {
  display: block;
  animation: fadein 0.5s ease-in-out forwards alternate;
}
@keyframes fadein {
  100% {
    opacity: 1;
  }
}

.header-nav-box {
  width: 90%;
  max-width: 600px;
  display: flex;
  justify-content: space-between;
  opacity: 0;
}
header.active .header-nav-box {
  animation: fadein 0.5s ease-in-out 0.4s forwards alternate;
}
.sp-nav-logo {
  display: none;
  opacity: 0;
}

header.active .sp-nav-logo {
  animation: fadein 0.5s ease-in-out 0.4s forwards alternate;
}
.header-nav {
  width: 100%;
  height: 100%;
  padding: 2rem 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
header.active .header-nav {
  animation: fadein 0.5s ease-in-out 0.7s forwards alternate;
}

.nav-company img {
  width: 200px;
}
.nav-company-title {
  font-weight: normal;
  margin-top: 0.5rem;
}
.nav-sns-title {
  margin-top: 1rem;
  font-size: 0.95rem;
  border-bottom: 1px solid #fff;
  display: inline-block;
}
.nav-sns-wrap {
  display: flex;
  align-items: center;
  margin-top: 1rem;
}
.nav-sns-box {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.nav-sns {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.5rem;
}
.nav-line {
  height: 50px;
  width: 2px;
  background-color: #fff;
  margin: 0 1rem;
}
.nav-sns a {
  margin: 0 0.2rem;
}

.nav-sns img {
  width: 40px;
}
.nav-sns .first img {
  width: 25px;
}
.nav-lists {
  font-size: 1.4rem;
}
.nav-lists li + li {
  margin-top: 1.5rem;
}
.nav-lists a {
  display: flex;
  align-items: center;
}
.sns-item {
  border-radius: 50%;
}
.contact-btn a {
  background-color: #fff;
  color: #000;
  justify-content: center;
  padding: 1rem 2rem;
  font-size: 1rem;
  margin-top: 4rem;
}
.contact-btn a::before {
  display: none;
}
.nav-lists a::before {
  content: "";
  width: 20px;
  height: 1.5px;
  background-color: #000;
  margin-right: 1rem;
}
.nav-company-text {
  margin-top: 1.5rem;
}
.nav-company-text p {
  margin-top: 0.3rem;
}
/*fv*/
.fv {
  height: auto;
  aspect-ratio: 16/9;
  width: 100%;
  position: relative;
}
/*==================================================
fv-slider
===================================*/
.fv-slider {
  position: relative;
  z-index: 1;
  /*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
  height: 100%;
}
.fv-slider .slider-item {
  width: 100%; /*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
  height: 100%;
}
.fv-slider .slider-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/*矢印の設定*/
.fv-slider .slick-prev,
.fv-slider .slick-next {
  position: absolute;
  top: 50%;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid #18212b;
  cursor: pointer;
  background-color: #fff;
  transition: background-color 0.3s ease;
  z-index: 2;
  transform: translateY(-50%);
  cursor: pointer;
}

.fv-slider .slick-prev {
  left: 2rem;
}

.fv-slider .slick-next {
  right: 2rem;
}

.fv-slider .slick-prev:before,
.fv-slider .slick-next:before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  border-top: 2px solid #18212b;
  border-right: 2px solid #18212b;
  opacity: 1;
  content: "";
  transition: border-color 0.3s ease;
}

.fv-slider .slick-prev:before {
  transform: translate(-25%, -50%) rotate(-135deg);
}

.fv-slider .slick-next:before {
  transform: translate(-75%, -50%) rotate(45deg);
}
.logo-h {
  position: absolute;
  top: 0;
  padding: 1.5rem;
  border-radius: 0 0 1rem 0;
}
.logo-h img {
  width: 150px;
}

/*==================================================
　5-2-2 2本線が×に
===================================*/

/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.openbtn {
  /*ボタン内側の基点となるためrelativeを指定。
追従するナビゲーションの場合はfixed＋top、rightといった位置をセットで指定*/
  position: fixed;
  width: 50px;
  height: 50px;
  cursor: pointer;
  background: #230500;
  border-radius: 50%;
  right: 1rem;
  top: 1rem;
  z-index: 200;
}

/*ボタン内側*/

.openbtn span {
  display: inline-block;
  transition: all 0.4s; /*アニメーションの設定*/
  position: absolute;
  left: 13px;
  height: 2px;
  background-color: #fff;
}

.openbtn span:nth-of-type(1) {
  top: 22px;
  width: 50%;
}

.openbtn span:nth-of-type(2) {
  top: 29px;
  width: 30%;
}

/*activeクラスが付与されると線が回転して×に*/

.openbtn.active span:nth-of-type(1) {
  top: 20px;
  left: 16px;
  transform: translateY(6px) rotate(-45deg);
  width: 35%;
}

.openbtn.active span:nth-of-type(2) {
  top: 32px;
  left: 16px;
  transform: translateY(-6px) rotate(45deg);
  width: 35%;
}

/*event*/
.more-btnwrap {
  text-align: center;
}
.event {
  padding: 7rem 0 3rem;
}
.event-inner {
  max-width: 1200px;
  margin: 0 auto;
  border-radius: 1rem;
  background-color: #fff;
  padding: 1rem;
  width: 95%;
  overflow: hidden;
  transition: width 1s ease;
}
.event-inner.fadeup-anime {
  width: 90%;
  padding: 2rem;
}

.event-section-title {
  margin: 1rem 0 1rem 0.5rem;
  font-size: 1.8rem;
  text-align: center;
}
.event-contents {
  width: 100%;
}
.event-item {
  box-shadow: 0 0 3px #a0a0a0;
  padding: 1rem;
  position: relative;
  height: 100%;
}
.event-situation.new {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  background-color: #f48404;
  color: #fff;
  padding: 0.2rem 2rem;
  font-size: 0.95rem;
}
.event-situation.old {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  background-color: #666666;
  color: #fff;
  padding: 0.2rem 2rem;
  font-size: 0.95rem;
}
.event-img {
  aspect-ratio: 1.5/1;
}
.event-img img {
  width: 100%;
  height: 100%;
}
.event-titlewrap {
  padding: 0.5rem;
}
.event-title {
  font-size: 1rem;
}

.genre {
  border: 1.5px solid #000;
  margin-top: 1rem;
  display: inline-block;
  padding: 0.2rem;
  font-size: 0.8rem;
  font-weight: bold;
}
.date {
  display: block;
  text-align: right;
  font-size: 0.9rem;
  color: #6b6b6b;
  margin-top: 1rem;
}

.event-line {
  width: 100%;
  position: relative;
  max-width: calc(1200px - 1rem);
  height: 15px;
  background-color: #000;
  margin: 1rem auto 0;
}
.event-line::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  height: 15px;
  width: 20%;
  background-color: #f48404;
}

.anc-btn {
  background-color: #f48404;
  border: 1px solid #f48404;
  color: #fff;
  display: inline-block;
  margin-top: 3rem;
  padding: 1rem 3rem;
  font-weight: bold;
  transition: color 0.5s ease, background-color 0.5s ease;
}
.anc-btn:hover {
  color: #f48404;
  background-color: #fff;
}

/*event-about*/
.gallery {
  background-color: #fff;
  margin: 8rem 0 4rem;
  position: relative;
  padding-bottom: 3rem;
}
.gallery-top {
  position: relative;
  top: -4.5rem;
  padding-left: 4rem;
}
.gallery-title {
  text-transform: uppercase;
  font-size: 5rem;
  text-shadow: 0.35rem 0.4rem 0px #bcb9b7;
}
.gallery-top p {
  font-size: 1.2rem;
}

/*news*/
.news {
  padding: 4rem 0;
}
/*footer*/
footer {
  border-top: 3px solid #000;
  padding: 4rem 0 2rem;
  background-color: #fdfbf3;
}

.footer-inner {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.footer-logowrap {
  display: flex;
  align-items: center;
}
.footer-logo {
  width: 300px;
}
.footer-sns {
  display: flex;
  align-items: center;
}
.footer-sns-item img {
  width: 40px;
}

.footer-sns-title {
  display: inline-block;
  text-align: center;
  margin: 0 auto;
}
.footer-sns-flex {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.bet-line {
  width: 2px;
  height: 60px;
  background-color: #000;
  margin: 0 1.5rem;
}
small {
  margin-top: 1rem;
  display: inline-block;
}

span.zt {
  overflow: hidden;
  display: block;
}
.copyright {
  text-align: center;
  margin-top: 3rem;
}

/* Loading背景画面設定　*/
#splash {
  /*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999;
  background: #fbf4e2;
  text-align: center;
  color: #fff;
}

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width: 300px;
}

/***************************************************
 * Generated by SVG Artista on 8/19/2023, 8:14:59 AM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

svg .svg-elem-1 {
  stroke-dashoffset: 317.36297607421875px;
  stroke-dasharray: 317.36297607421875px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}

svg.active .svg-elem-1 {
  stroke-dashoffset: 0;
  fill: rgb(135, 187, 87);
}

svg .svg-elem-2 {
  stroke-dashoffset: 118.70008087158203px;
  stroke-dasharray: 118.70008087158203px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.12s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
}

svg.active .svg-elem-2 {
  stroke-dashoffset: 0;
  fill: rgb(243, 130, 0);
}

svg .svg-elem-3 {
  stroke-dashoffset: 47.515907287597656px;
  stroke-dasharray: 47.515907287597656px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.24s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}

svg.active .svg-elem-3 {
  stroke-dashoffset: 0;
  fill: rgb(243, 130, 0);
}

svg .svg-elem-4 {
  stroke-dashoffset: 86.67585754394531px;
  stroke-dasharray: 86.67585754394531px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.36s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
}

svg.active .svg-elem-4 {
  stroke-dashoffset: 0;
  fill: rgb(0, 146, 229);
}

svg .svg-elem-5 {
  stroke-dashoffset: 50.384849548339844px;
  stroke-dasharray: 50.384849548339844px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.48s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2000000000000002s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2000000000000002s;
}

svg.active .svg-elem-5 {
  stroke-dashoffset: 0;
  fill: rgb(135, 187, 87);
}

svg .svg-elem-6 {
  stroke-dashoffset: 101.7249755859375px;
  stroke-dasharray: 101.7249755859375px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.6s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
}

svg.active .svg-elem-6 {
  stroke-dashoffset: 0;
  fill: rgb(165, 109, 53);
}

svg .svg-elem-7 {
  stroke-dashoffset: 47.1286506652832px;
  stroke-dasharray: 47.1286506652832px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.72s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4000000000000001s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4000000000000001s;
}

svg.active .svg-elem-7 {
  stroke-dashoffset: 0;
  fill: rgb(0, 146, 229);
}

svg .svg-elem-8 {
  stroke-dashoffset: 775.0139770507812px;
  stroke-dasharray: 775.0139770507812px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.84s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
}

svg.active .svg-elem-8 {
  stroke-dashoffset: 0;
  fill: rgb(0, 0, 0);
}

svg .svg-elem-9 {
  stroke-dashoffset: 260.5893859863281px;
  stroke-dasharray: 260.5893859863281px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      0.96s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
}

svg.active .svg-elem-9 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-10 {
  stroke-dashoffset: 180.9237518310547px;
  stroke-dasharray: 180.9237518310547px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.08s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7000000000000002s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7000000000000002s;
}

svg.active .svg-elem-10 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-11 {
  stroke-dashoffset: 235.08993530273438px;
  stroke-dasharray: 235.08993530273438px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.2s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s;
}

svg.active .svg-elem-11 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-12 {
  stroke-dashoffset: 201.94699096679688px;
  stroke-dasharray: 201.94699096679688px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.3199999999999998s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9000000000000001s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.3199999999999998s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9000000000000001s;
}

svg.active .svg-elem-12 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-13 {
  stroke-dashoffset: 134.5491180419922px;
  stroke-dasharray: 134.5491180419922px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.44s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.44s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
}

svg.active .svg-elem-13 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-14 {
  stroke-dashoffset: 22.407852172851562px;
  stroke-dasharray: 22.407852172851562px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.56s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.56s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s;
}

svg.active .svg-elem-14 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-15 {
  stroke-dashoffset: 22.40833854675293px;
  stroke-dasharray: 22.40833854675293px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.68s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.68s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s;
}

svg.active .svg-elem-15 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-16 {
  stroke-dashoffset: 61.107391357421875px;
  stroke-dasharray: 61.107391357421875px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.7999999999999998s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.7999999999999998s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3s;
}

svg.active .svg-elem-16 {
  stroke-dashoffset: 0;
}

svg .svg-elem-17 {
  stroke-dashoffset: 25.497987747192383px;
  stroke-dasharray: 25.497987747192383px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      1.92s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4000000000000004s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.92s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4000000000000004s;
}

svg.active .svg-elem-17 {
  stroke-dashoffset: 0;
  fill: rgb(135, 187, 87);
}

svg .svg-elem-18 {
  stroke-dashoffset: 28.449403762817383px;
  stroke-dasharray: 28.449403762817383px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      2.04s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.5s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2.04s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.5s;
}

svg.active .svg-elem-18 {
  stroke-dashoffset: 0;
  fill: rgb(243, 130, 0);
}

svg .svg-elem-19 {
  stroke-dashoffset: 269.4675598144531px;
  stroke-dasharray: 269.4675598144531px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      2.16s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2.16s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s;
}

svg.active .svg-elem-19 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

svg .svg-elem-20 {
  stroke-dashoffset: 213.4569854736328px;
  stroke-dasharray: 213.4569854736328px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715)
      2.28s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.7s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2.28s,
    fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.7s;
}

svg.active .svg-elem-20 {
  stroke-dashoffset: 0;
  fill: rgb(26, 19, 17);
}

/*u-fv*/
.u-fv {
  height: 300px;
  background: url("../img/salon/a") no-repeat center / cover;
}

/*追加*/
.img-status.contain {
  object-fit: contain;
}

.plan-change {
  color: #fff;
  font-weight: bold;
  margin-top: 1rem;
  display: inline-block;
  padding: 1rem 3rem;
  font-weight: bold;
  background: linear-gradient(
    270deg,
    #3bade3 0%,
    #576fe6 25%,
    #9844b7 51%,
    #ff357f 100%
  );
  background-position: 1% 50%;
  background-size: 200% auto;
  /*アニメーションの指定*/
  transition: all 0.3s ease-out;
}
.plan-change:hover {
  background-position: 99% 50%;
}
.modal-top {
  text-align: left;
}
.modal-title {
  font-weight: bold;
  font-size: 1.5rem;
  text-align: center;
}

.modal-samll {
  font-size: 0.9rem;
  margin: 0.5rem 0;
}
.modal-wrap {
  margin-top: 1rem;
}
.modal-item {
  display: block;
  width: 100%;
  padding: 1rem;
  margin: 1rem auto;
  background-color: #fff;
  font-weight: bold;
  font-size: 1.2rem;
  color: #fff;
  max-width: 400px;
}
.modal-item.first {
  background: linear-gradient(270deg, #3bade3 0%, #ff357f 100%);
  background-position: 1% 50%;
  background-size: 200% auto;
  /*アニメーションの指定*/
  transition: all 0.3s ease-out;
}
.modal-item.first:hover {
  background-position: 99% 50%;
}
.modal-item.second {
  background: linear-gradient(270deg, #b0e878 0%, #0dc0b1 100%);
  background-position: 1% 50%;
  background-size: 200% auto;
  /*アニメーションの指定*/
  transition: all 0.3s ease-out;
}
.modal-item.second:hover {
  background-position: 99% 50%;
}

.event-item .cont {
  height: auto;
}

/*anc問題*/
.anc-div {
  cursor: pointer;
}

/*sns*/
.sns-item {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}

.nav-banner {
  margin-top: 1.5rem;
  width: 100%;
  max-width: 230px;
  display: inline-block;
}
.nav-banner img {
  display: block;
  width: 100%;
}

.top-banner {
  text-align: center;
  padding-top: 6rem;
}
.top-banner a {
  width: 90%;
  display: block;
  max-width: 600px;
  margin: 0 auto;
}
.top-banner img {
  display: block;
  width: 100%;
}

.footer-banner {
  display: block;
  margin: 4rem auto 0;
  text-align: center;
  width: 80%;
  max-width: 400px;
}
.footer-banner img {
  display: block;
  width: 100%;
}

/*追加*/
.section-title-en {
  text-transform: uppercase;
  font-size: 2rem;
}
.title-center {
  text-align: center;
}
/*news-release*/
.news-release {
  padding: 4rem 0;
}
.news-release-contents {
  margin: 2rem auto 0;
  width: 95%;
  max-width: 1000px;
}
.news-release-lists {
  margin: 0 auto;
  width: 100%;
}
.news-release-lists a {
  display: flex;
  align-items: center;
  padding: 0.5rem 0;
  border-top: 1px solid #cecece;
}
.news-release-lists a:hover .news-release-list-title {
  color: #f48404;
  text-decoration: underline;
}
.news-release-lists li:last-of-type a {
  border-bottom: 1px solid #cecece;
}
.news-release-second li:first-of-type a {
  border-top: none;
}
.news-release-list-title {
  font-weight: 600;
  font-size: 1.05rem;
  margin-left: 1.5rem;
  transition: 0.3s ease;
}

.news-release-date {
  font-size: 0.95rem;
}
.news-release-morebtn {
  width: fit-content;
  margin-left: auto;
  margin-top: 1rem;
}
.news-release-morebtn a {
  font-weight: bold;
  display: flex;
  align-items: center;
  color: #000;
}
.dli-chevron-right {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 0.5em;
  height: 0.5em;
  border: 0.2em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateX(-25%) rotate(45deg);
  position: relative;
  top: 0.1rem;
  margin-left: 0.5rem;
}

.news-release-second {
  display: none;
}

.u-news-release-morebtn {
  padding: 0.75rem 3rem;
  border: 1px solid #929292;
  cursor: pointer;
  width: 90%;
  max-width: 500px;
  margin: 2rem auto 0;
  text-align: center;
  transition: 0.3s ease;
}
.u-news-release-morebtn:hover {
  color: #fff;
  background-color: #f48404;
}
.u-news-release-morebtn.dn {
  display: none;
}

select[name="archive-dropdown"] {
  padding: 1rem 4rem 1rem 3rem;
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #000;
  border-radius: 0px;
  margin-left: 3rem;
  cursor: pointer;
}
.news-release-first {
  margin-top: 2rem;
}
.u-news-release-top {
  display: flex;
  align-items: center;
}
.u-news-release-top h2 {
  font-size: 1.75rem;
}
.u-news-release-select {
  position: relative;
}

.u-news-release-select::after {
  content: "";
  position: absolute;
  top: 18px;
  right: 16px;
  width: 0.5em;
  height: 0.5em;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(45deg);
}
.fv-thumbnail {
  margin-top: 2rem;
}
.fv-thumbnail-lists {
  width: 95%;
  margin: 0 auto;
  max-width: 900px;
}
.fv-thumbnail-lists li {
  cursor: pointer;
  padding: 0.2rem;
  border: 4px solid transparent;
  transition: 0.3s ease;
  border-radius: 0.3rem;
}
.fv-thumbnail-lists li.slick-current {
  border-color: #f48404;
}
.fv-thumbnail-lists img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2/1;
  object-fit: cover;
  border-radius: 0.15rem;
}
.fv-thumbnail-lists .slick-slide {
  margin: 0 0.25rem;
}

.fv-thumbnail-lists .slick-track {
  transform: unset !important;
}

.top-blog-genre {
  display: flex;
}
.top-blog-genre a {
  border: 1.5px solid #000;
  margin-top: 1rem;
  display: inline-block;
  padding: 0.2rem;
  font-size: 0.8rem;
  font-weight: bold;
}
.top-blog-genre a + a {
  margin-left: 0.5rem;
}
.gallery-contents {
  width: 95%;
  margin: 0 auto;
}
/*トピックス追加*/
.sp-u-blog-cat-lists {
  display: none;
}
.sp-u-blog-cat-lists-box {
  display: none;
}
.sp-u-blog-cat-lists ul {
  padding: 1rem;
  font-weight: bold;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  display: flex;
  transition: 0.3s ease;
}
.sp-u-blog-cat-lists li {
  width: calc((100% - 1rem) / 2);
}
.sp-u-blog-cat-lists a {
  padding: 0.35rem 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #9c9c9c;
  padding-right: 0.25rem;
}
.sp-u-blog-cat-lists a::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 0.5em;
  height: 0.5em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateX(-25%) rotate(45deg);
}
.sp-u-blog-cat-title {
  text-align: center;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 1.1rem;
  padding: 1rem 0;
  cursor: pointer;
}
.sp-u-blog-cat-title p {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}

.sp-u-blog-cat-title p:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-top: 8px solid #000;
  border-bottom: 0;
  position: absolute;
  top: 50%;
  right: -1.2rem;
  transform: translateY(calc(-50% + 2px));
}

/*aboutus*/
.aboutus {
  padding: 4rem 0;
}
.aboutus-release-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.aboutus-mission {
  margin: 1rem auto 0;
  text-align: center;
  font-size: 2.5em;
}

.aboutus-contents {
  display: flex;
  justify-content: space-between;
  width: 95%;
  margin: 3rem auto 0;
  max-width: 1100px;
}
.aboutus-contents:nth-of-type(even) {
  flex-direction: row-reverse;
}
.aboutus-textwrap {
  width: calc(100% - 450px);
  padding: 1rem;
}
.aboutus-subtitle {
  font-weight: bold;
  font-size: 2rem;
}
.aboutus-subtitle.second {
  font-size: 1.75rem;
}
.aboutus-text {
  margin-top: 2rem;
  font-size: 1.1rem;
}
.aboutus-img {
  padding: 1rem;
  width: 400px;
  aspect-ratio: 1/1.3;
}
.aboutus-img img {
  border: 5px solid #fff;
  border-radius: 1rem;
}
.more-btnwrap.left {
  text-align: left;
}

/*topics スライダー*/
/*==================================================
スライダーのためのcss
===================================*/
.event-contents {
  /*横幅94%で左右に余白を持たせて中央寄せ*/
  width: 94%;
  margin: 1rem auto;
}

.event-contents img {
  width: 100%; /*スライダー内の画像を横幅100%に*/
  height: 100%;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.event-contents .slick-slide {
  margin: 0 10px;
}
.event-contents .slick-track {
  padding: 0.5rem 0;
}
/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.event-contents .slick-prev,
.event-contents .slick-next {
  position: absolute; /*絶対配置にする*/
  top: 42%;
  cursor: pointer; /*マウスカーソルを指マークに*/
  outline: none; /*クリックをしたら出てくる枠線を消す*/
  border-top: 2px solid #666; /*矢印の色*/
  border-right: 2px solid #666; /*矢印の色*/
  height: 15px;
  width: 15px;
}

.event-contents .slick-prev {
  /*戻る矢印の位置と形状*/
  left: -3.5%;
  transform: rotate(-135deg);
}

.event-contents .slick-next {
  /*次へ矢印の位置と形状*/
  right: -3.5%;
  transform: rotate(45deg);
}
