.mv {
  margin-top: 1rem;
  padding: 0 2rem;
  position: relative;
}
@media (768px <= width) {
  .mv {
    padding: 0;
    margin: 0 6rem;
  }
}
@media (768px <= width) {
  .mv-img-wrap {
    overflow: hidden;
    border-radius: 3rem 12rem;
  }
  .mv-img-wrap img {
    width: 100%;
  }
}
.mv-text {
  position: absolute;
  left: 3rem;
  bottom: 2rem;
  color: #fff;
}
@media (768px <= width) {
  .mv-text {
    left: 10rem;
    bottom: 8rem;
  }
}
.mv-text p:nth-child(1) {
  font-size: 1.2rem;
  font-weight: 700;
}
@media (768px <= width) {
  .mv-text p:nth-child(1) {
    font-size: 2.4rem;
  }
}
.mv-text p:nth-child(2) {
  margin-top: 0.5rem;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 140%;
  padding-left: 2em;
  text-indent: -2em;
}
@media (768px <= width) {
  .mv-text p:nth-child(2) {
    margin-top: 1.5rem;
    font-size: 6.4rem;
  }
}

.franchise {
  padding: 6rem 2rem 4rem;
}
@media (768px <= width) {
  .franchise {
    padding: 28rem 0 18rem max(50% - 90rem, 6rem);
    display: grid;
    grid-template-columns: 90fr 102fr 24fr;
    gap: 0 8rem;
    position: relative;
  }
}
.franchise__wrap {
  display: grid;
  justify-content: center;
}
@media (768px <= width) {
  .franchise__wrap {
    display: block;
    margin-top: 24rem;
    order: 2;
  }
}
.franchise__title {
  font-size: 2.6rem;
  font-weight: 700;
}
@media (768px <= width) {
  .franchise__title {
    font-size: 4rem;
  }
  .franchise__title .no {
    transform: translateY(0.4rem);
    display: inline-block;
  }
}
.franchise__title img {
  width: 20.974rem;
  margin-right: 1rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
  vertical-align: middle;
}
@media (768px <= width) {
  .franchise__title img {
    width: 32.771rem;
    margin-right: 1.5rem;
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}
.franchise__text {
  margin-top: 3rem;
  line-height: 200%;
}
@media (768px <= width) {
  .franchise__text {
    margin-top: 5rem;
    font-size: 1.8rem;
    line-height: 300%;
  }
}
.franchise__btn {
  margin-top: 3rem;
}
@media (768px <= width) {
  .franchise__btn {
    margin-top: 6rem;
    margin-left: 0;
    width: 42rem;
  }
}
.franchise__img-wrap {
  margin-top: 5rem;
}
.franchise__img-wrap.img02, .franchise__img-wrap.img03 {
  display: none;
}
@media (768px <= width) {
  .franchise__img-wrap {
    margin: 0;
  }
  .franchise__img-wrap.img01 {
    order: 1;
  }
  .franchise__img-wrap.img02 {
    display: block;
    position: absolute;
    top: 10rem;
    left: calc(50% + 25rem);
  }
  .franchise__img-wrap.img03 {
    order: 3;
    display: block;
    align-self: end;
  }
}

.event-information {
  padding-left: 2rem;
  padding-right: 2rem;
  padding-bottom: 8rem;
  position: relative;
}
@media (768px <= width) {
  .event-information {
    padding-left: max(50% - 70rem, 12rem);
    padding-right: max(50% - 70rem, 12rem);
    padding-bottom: 12rem;
  }
}
.event-information::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 12.9rem);
  background: var(--color-bg);
  border-bottom-left-radius: 12rem;
}
@media (768px <= width) {
  .event-information::before {
    right: 0;
    width: auto;
    left: clamp(6rem, 10vw - 80px, 10rem);
    border-radius: 16rem 0rem 0rem 3rem;
  }
}
.event-information__label {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 1rem;
}
@media (768px <= width) {
  .event-information__label {
    gap: 0 1.5rem;
  }
}
.event-information__label .name {
  font-size: 2.2rem;
  font-weight: 700;
}
@media (768px <= width) {
  .event-information__label .name {
    font-size: 3.2rem;
  }
}
.event-information__label::before, .event-information__label::after {
  content: "";
  width: 2rem;
  aspect-ratio: 1;
  background: url('data:image/svg+xml;charset=utf8, <svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.64746 8.64746C12.6861 12.8076 16.8245 16.946 21.0002 21.0002" stroke="%233E3A2A" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M1 1C2.45528 2.45528 3.90745 3.90745 5.36273 5.36273" stroke="%233E3A2A" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  display: block;
}
.event-information__label::after {
  transform: scaleX(-1);
}
.event-information__bnr {
  margin-top: 2.9rem;
  text-align: center;
}
@media (768px <= width) {
  .event-information__bnr {
    margin-top: 2.4rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  .event-information__bnr a {
    transition: all var(--speed) ease-in-out;
  }
  .event-information__bnr a:hover {
    opacity: 0.7;
  }
}
.event-information .instagram__lists {
  margin-top: 4rem;
}
@media (768px <= width) {
  .event-information .instagram__lists {
    margin-top: 12rem;
  }
}
.event-information__btn {
  margin-top: 3rem;
}
@media (768px <= width) {
  .event-information__btn {
    margin-top: 4rem;
  }
}
.event-information__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background-color: #fff;
  border-radius: 100rem;
  width: 21.5rem;
  height: 6rem;
  margin: 0 auto;
}
@media (768px <= width) {
  .event-information__link {
    width: 30rem;
    height: 7rem;
    gap: 2rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  .event-information__link {
    transition: all var(--speed) ease-in-out;
  }
  .event-information__link:hover {
    background: #f4f1e9;
  }
}
.event-information__link .name {
  display: grid;
  gap: 0.2rem;
}
.event-information__link .name span {
  font-weight: 500;
  line-height: 100%;
}
.event-information__link .name span:nth-child(1) {
  font-size: 1rem;
}
@media (768px <= width) {
  .event-information__link .name span:nth-child(1) {
    font-size: 1.3rem;
  }
}
.event-information__link .name span:nth-child(2) {
  font-size: 1.8rem;
}
@media (768px <= width) {
  .event-information__link .name span:nth-child(2) {
    font-size: 2.2rem;
    margin-top: 0.3rem;
  }
}

#sb_instagram #sbi_images {
  padding: 0;
  gap: 1rem;
}
#sb_instagram .sbi_photo {
  aspect-ratio: 1;
}
#sb_instagram .sbi_photo img {
  height: 100%;
}
@media (hover: hover) and (width >= 768px) {
  #sb_instagram .sbi_photo {
    transition: all var(--speed) ease-in-out;
  }
  #sb_instagram .sbi_photo img {
    transition: transform 0.9s cubic-bezier(0.43, 0.05, 0.17, 1) 0s;
  }
  #sb_instagram .sbi_photo:hover img {
    transform: scale(1.1);
  }
}

.concept {
  position: relative;
  padding: 8rem 2rem;
}
@media (768px <= width) {
  .concept {
    padding: 16rem 0 20rem;
  }
}
.concept::before {
  content: "";
  width: 100%;
  height: calc(100% - 84rem);
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  background: var(--color-bg);
}
@media (768px <= width) {
  .concept::before {
    height: calc(100% - 69rem);
  }
}
@media (768px <= width) {
  .concept__wrap {
    display: grid;
    grid-template-columns: 380fr 600fr 720fr;
    gap: 0 max(4.1666666667%, 3rem);
    padding-left: max(50% - 90rem, 3rem);
  }
}
@media (768px <= width) {
  .concept__textbox {
    padding-top: 8rem;
    order: 2;
  }
}
.concept__heading {
  padding-bottom: 1rem;
}
.concept__lead {
  margin-top: 4rem;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 166%;
}
@media (768px <= width) {
  .concept__lead {
    font-size: 3.2rem;
  }
}
.concept__text {
  margin-top: 3rem;
  line-height: 200%;
}
@media (768px <= width) {
  .concept__text {
    line-height: 250%;
  }
}
.concept__actions {
  margin-top: 3rem;
  display: grid;
  gap: 1.5rem;
}
@media (768px <= width) {
  .concept__actions {
    max-width: 32rem;
  }
}
.concept__img-wrap {
  overflow: hidden;
}
.concept__img-wrap.img01 {
  margin-top: 5rem;
  margin-left: auto;
  margin-right: -2rem;
  width: calc(50% + 13.65rem);
}
.concept__img-wrap.img01 img {
  border-radius: 16rem 0 0 2rem;
}
@media (768px <= width) {
  .concept__img-wrap.img01 {
    order: 3;
    margin: 0;
    width: auto;
    text-align: right;
  }
}
.concept__img-wrap.img02 {
  margin-top: -9rem;
  width: 50%;
}
.concept__img-wrap.img02 img {
  border-radius: 1rem;
}
@media (768px <= width) {
  .concept__img-wrap.img02 {
    order: 1;
    margin: 0;
    width: auto;
    align-self: end;
  }
}
@media (768px <= width) and (768px <= width) {
  .concept__img-wrap.img02 {
    border-radius: 2rem;
  }
}
.concept__links {
  margin-top: 8rem;
  display: grid;
  gap: 3rem 0;
}
@media (768px <= width) {
  .concept__links {
    margin-left: max(50% - 80rem, 6rem);
    margin-right: max(50% - 80rem, 6rem);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 4rem;
  }
}
.concept__box {
  background: var(--color-gray);
  border-radius: 1rem;
  padding: 2rem 2rem 4rem;
  color: #fff;
  display: block;
}
@media (768px <= width) {
  .concept__box {
    border-radius: 3rem;
    padding: 3rem 3rem 7rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  .concept__box {
    transition: all var(--speed) ease-in-out;
  }
  .concept__box img {
    transition: width 0.5s cubic-bezier(0.43, 0.05, 0.17, 1) 0s;
  }
  .concept__box:hover {
    background-color: rgb(from var(--color-gray) r g b/0.5);
    color: var(--color-text);
  }
  .concept__box:hover img {
    width: calc(100% + 3rem);
  }
}
@media (768px <= width) {
  .concept__box--img {
    overflow: hidden;
    border-radius: 2rem;
    aspect-ratio: 72/45;
    position: relative;
  }
  .concept__box--img img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    display: block;
    max-width: initial;
  }
}
.concept__box--label {
  margin-top: 3rem;
  font-size: 2rem;
  font-weight: 700;
}
@media (768px <= width) {
  .concept__box--label {
    margin: 5rem 1rem 0;
    font-size: 2.6rem;
  }
}
.concept__box--text {
  margin-top: 2rem;
  line-height: 200%;
}
@media (768px <= width) {
  .concept__box--text {
    margin: 3rem 1rem 0;
  }
}
.concept__box--link {
  margin-top: 2rem;
  display: flex;
  gap: 0 1rem;
  align-items: center;
}
@media (768px <= width) {
  .concept__box--link {
    margin: 3.5rem 1rem 0;
  }
}
.concept__box--link i {
  background: 0 0/contain no-repeat;
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="40" height="20" viewBox="0 0 40 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 10C0 4.47715 4.47715 0 10 0H30C35.5228 0 40 4.47715 40 10C40 15.5228 35.5228 20 30 20H10C4.47715 20 0 15.5228 0 10Z" fill="%2300AE83"/><path d="M26 10L21 12.8867V10.5L14 10.5C13.7239 10.5 13.5 10.2761 13.5 10C13.5 9.72386 13.7239 9.5 14 9.5L21 9.5V7.11328L26 10Z" fill="white"/></svg>');
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 10rem;
}
@media (768px <= width) {
  .concept__box--link i {
    width: 5rem;
    height: 2.4rem;
  }
}

.voice {
  padding: 8rem 0;
  position: relative;
}
@media (768px <= width) {
  .voice {
    padding: 12rem 0;
    display: flex;
    gap: 0 12rem;
  }
}
@media (width < 768px) {
  .voice__stage {
    overflow: hidden;
  }
}
@media (768px <= width) {
  .voice__stage {
    order: 2;
    width: 57.2916666667%;
    padding-top: 3.8rem;
    position: relative;
  }
}
.voice__headline {
  margin: 0 2rem;
}
.voice__nav {
  position: absolute;
  right: 2rem;
  top: 9.3rem;
}
@media (768px <= width) {
  .voice__nav {
    top: 7rem;
    right: max(50% - 80rem, 6rem);
  }
}
.voice__content {
  margin-top: 3.5rem;
}
@media (768px <= width) {
  .voice__content {
    margin-top: 8rem;
    max-width: calc(40rem * var(--count) + (var(--count) - 1) * 2rem);
  }
}
.voice__item {
  padding: 2rem 2rem 4rem;
  background: var(--color-bg);
  border-radius: 1rem;
  width: 25.5rem;
  margin: 0 1rem;
}
@media (768px <= width) {
  .voice__item {
    width: 40rem;
    padding: 3rem 3rem 5rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  .voice__item {
    transition: all var(--speed) ease-in-out;
  }
  .voice__item img {
    transition: transform 0.9s cubic-bezier(0.43, 0.05, 0.17, 1);
  }
  .voice__item .voice__item-btn,
  .voice__item i {
    transition: all var(--speed) ease;
  }
  .voice__item:hover img {
    transform: scale(1.1);
  }
  .voice__item:hover .voice__item-btn {
    background-color: var(--color-red);
    color: #fff;
  }
  .voice__item:hover i {
    background: 0 0/contain no-repeat;
    background-image: url('data:image/svg+xml;charset=utf8, <svg width="50" height="24" viewBox="0 0 50 24" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="50" height="24" rx="12" fill="white"/><path d="M30 12.7692V14.5V16.2308C30 16.4348 29.919 16.6304 29.7747 16.7747C29.6304 16.919 29.4348 17 29.2308 17H20.7692C20.5652 17 20.3696 16.919 20.2253 16.7747C20.081 16.6304 20 16.4348 20 16.2308V7.76923C20 7.56522 20.081 7.36956 20.2253 7.2253C20.3696 7.08104 20.5652 7 20.7692 7H24.2308M27.3077 7H30M30 7V9.69231M30 7L25 12" stroke="%23E6001B" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  }
}
.voice__item-img {
  aspect-ratio: 215/275;
  overflow: hidden;
  border-radius: 0.5rem;
}
@media (768px <= width) {
  .voice__item-img {
    border-radius: 1rem;
  }
}
.voice__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.voice__item-tag {
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.voice__item-tag span {
  border-radius: 100rem;
  font-size: 1.1rem;
  padding: 0.6rem 1rem;
}
.voice__item-tag span:nth-child(1) {
  border: 1px solid currentColor;
}
.voice__item-tag span:nth-child(2) {
  border: 1px solid var(--color-gray);
  background: var(--color-gray);
  color: #fff;
}
.voice__item-title {
  margin-top: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 166%;
}
@media (768px <= width) {
  .voice__item-title {
    font-size: 2.2rem;
  }
}
.voice__item-link {
  margin-top: 1.5rem;
}
.voice__item-btn {
  display: flex;
  align-items: center;
}
@media (768px <= width) {
  .voice__item-btn {
    background-color: #fff;
    height: 7rem;
    justify-content: space-between;
    padding-right: 2rem;
    padding-left: 3rem;
    border-radius: 100rem;
  }
}
.voice__item-btn i {
  order: 1;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 10rem;
  background: 0 0/contain no-repeat;
  background-image: url('data:image/svg+xml;charset=utf8, <svg width="50" height="24" viewBox="0 0 50 24" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="50" height="24" rx="12" fill="%23E6001B"/><path d="M30 12.7692V14.5V16.2308C30 16.4348 29.919 16.6304 29.7747 16.7747C29.6304 16.919 29.4348 17 29.2308 17H20.7692C20.5652 17 20.3696 16.919 20.2253 16.7747C20.081 16.6304 20 16.4348 20 16.2308V7.76923C20 7.56522 20.081 7.36956 20.2253 7.2253C20.3696 7.08104 20.5652 7 20.7692 7H24.2308M27.3077 7H30M30 7V9.69231M30 7L25 12" stroke="white" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}
@media (768px <= width) {
  .voice__item-btn i {
    width: 5rem;
    height: 2.4rem;
    order: 2;
  }
}
.voice__item-btn .name {
  order: 2;
  font-size: 1.4rem;
  font-weight: 700;
  margin-left: 1rem;
}
@media (768px <= width) {
  .voice__item-btn .name {
    order: 1;
    font-size: 1.6rem;
    margin-left: 0;
  }
}
.voice__img-wrap {
  display: none;
}
@media (768px <= width) {
  .voice__img-wrap {
    display: block;
    order: 1;
    width: 36.4583333333%;
  }
  .voice__img-wrap img {
    border-radius: 0 2rem 16rem 0;
  }
}

.column {
  padding: 8rem 0;
  position: relative;
}
@media (768px <= width) {
  .column {
    padding: 11rem 0 12rem;
    padding-left: 16rem;
    display: grid;
    grid-template-columns: 28rem calc(100% - 28rem);
  }
}
.column::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
  width: calc(50% + 10.75rem);
  height: 100%;
  background: var(--color-bg);
  border-radius: 2rem 0 0 12rem;
}
@media (768px <= width) {
  .column::before {
    right: 10rem;
    left: 0;
    width: auto;
    border-radius: 0 3rem 16rem 0;
  }
}
@media (768px <= width) {
  .column__header {
    position: relative;
  }
}
.column__headline {
  margin: 0 2rem;
}
@media (768px <= width) {
  .column__headline {
    margin: 0;
    writing-mode: vertical-rl;
    gap: 2rem;
  }
  .column__headline .headline__en::before {
    width: 1px;
    height: 1.5rem;
  }
  .column__headline .headline__ja {
    line-height: 120%;
  }
}
.column__nav {
  position: absolute;
  right: 2rem;
  top: 9.3rem;
}
@media (768px <= width) {
  .column__nav {
    top: auto;
    right: auto;
    left: 0;
    bottom: 0;
  }
}
.column__content {
  padding-top: 5rem;
  overflow: hidden;
}
@media (768px <= width) {
  .column__content {
    padding-top: 1rem;
    padding-left: 1rem;
    width: 100%;
  }
}
.column__content .slick-list {
  overflow: visible;
}
.column__item {
  width: 29.5rem;
  position: relative;
  margin: 0 1rem;
}
@media (768px <= width) {
  .column__item {
    margin: 0 2rem;
  }
}
@media (hover: hover) and (width >= 768px) {
  .column__item {
    transition: all var(--speed) ease-in-out;
  }
  .column__item img {
    transition: transform 0.9s cubic-bezier(0.43, 0.05, 0.17, 1);
  }
  .column__item:hover {
    color: var(--color-green);
  }
  .column__item:hover img {
    transform: scale(1.1);
  }
}
.column__item-icon {
  width: 5rem;
  position: absolute;
  left: -1rem;
  top: -1rem;
  z-index: 2;
}
@media (768px <= width) {
  .column__item-icon {
    width: 6rem;
  }
}
.column__item-img {
  border-radius: 0.5rem;
  overflow: hidden;
}
.column__item-img img {
  width: 100%;
  aspect-ratio: 360/255;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (768px <= width) {
  .column__item-img {
    border-radius: 1rem;
  }
}
.column__item-title {
  margin-top: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 166%;
}
.column__item-time {
  margin-top: 1rem;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1;
}

.about {
  position: relative;
  padding: 8rem 2rem;
}
@media (768px <= width) {
  .about {
    padding: 16rem 0;
  }
}
@media (768px <= width) {
  .about__disc {
    padding-left: max(50% - 70rem, 6rem);
    padding-right: max(50% - 70rem, 6rem);
    display: grid;
    grid-template-columns: calc(100% - 58rem) 42rem;
    gap: 0 16rem;
    align-items: end;
  }
}
.about::before {
  content: "";
  width: calc(50% + 10.75rem);
  height: calc(100% - 40.5rem);
  border-radius: 0 12rem 2rem 0;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  background: var(--color-bg);
}
@media (768px <= width) {
  .about::before {
    width: calc(50% - 24rem);
    height: auto;
    top: 40rem;
    bottom: 33.6rem;
    border-radius: 0 16rem 3rem 0;
  }
}
.about__heading {
  padding-bottom: 1rem;
}
.about__lead {
  margin-top: 4rem;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 166%;
}
@media (768px <= width) {
  .about__lead {
    margin-top: 7rem;
    font-size: 3.2rem;
  }
}
.about__text {
  margin-top: 3rem;
  line-height: 200%;
}
@media (768px <= width) {
  .about__text {
    margin-top: 4.5rem;
    line-height: 250%;
  }
}
.about__actions {
  margin-top: 3rem;
  display: grid;
  gap: 1.5rem;
}
@media (768px <= width) {
  .about__actions {
    gap: 2rem;
  }
}
@media (768px <= width) {
  .about__img-block {
    margin-top: 12rem;
    padding-left: max(50% - 80rem, 6rem);
    padding-right: max(50% - 80rem, 6rem);
    display: grid;
    grid-template-columns: 1170fr 370fr;
    gap: 0 3.75%;
    align-items: end;
  }
}
.about__img-wrap {
  overflow: hidden;
}
.about__img-wrap.img01 {
  margin-top: 5rem;
  margin-right: 4rem;
  border-radius: 12rem 1rem 1rem 1rem;
}
@media (768px <= width) {
  .about__img-wrap.img01 {
    margin: 0;
  }
}
.about__img-wrap.img02 {
  margin-top: -5rem;
  margin-left: auto;
  width: 50%;
  border-radius: 1rem;
}
@media (768px <= width) {
  .about__img-wrap.img02 {
    margin: 0;
    width: auto;
  }
}