@charset "UTF-8";
/* import */
/* カラー */
/* レスポンシブ */
/*****STANDART CSS******/
:root {
  --view-size: 1440;
}

@media screen and (max-width: 768px) {
  :root {
    --view-size: 375;
  }
}
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var,
video {
  margin: 0;
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  /******SMOOTH SCROLL ANCHOR******/
}

/*****STANDART CSS******/
/* ---------common--------- */
body {
  margin: 0;
  font-family: "Zen Old Mincho", serif;
  font-size: calc(16 / var(--view-size) * 100vw);
  font-weight: 400;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

img {
  vertical-align: bottom;
  width: 100%;
}

a {
  transition: 0.3s;
  text-decoration: none;
  color: #000;
  cursor: pointer;
}
a:hover {
  opacity: 0.7;
}

/* flex */
.row {
  display: flex;
  flex-wrap: wrap;
}

.between {
  justify-content: space-between;
}

.align_start {
  align-items: flex-start;
}

.align_center {
  align-items: center;
}

.align_end {
  align-items: flex-end;
}

.flex_center {
  justify-content: center;
}

.flex_start {
  justify-content: flex-start;
}

.flex_end {
  justify-content: flex-end;
}

.stretch {
  align-items: stretch;
}

.reverse {
  flex-direction: row-reverse;
}

/* inner */
.inner {
  width: calc(300 / var(--view-size) * 100vw);
  margin: 0 auto;
}

/* display */
@media (max-width: 768px) {
  .sp_dn {
    display: none;
  }
}

.sp_db {
  display: none;
}
@media (max-width: 768px) {
  .sp_db {
    display: block;
  }
}

@media (max-width: 768px) {
  .tab_dn {
    display: none;
  }
}

.tab_db {
  display: none;
}
@media (max-width: 768px) {
  .tab_db {
    display: block;
  }
}

.common_ttl {
  font-size: calc(20 / var(--view-size) * 100vw);
  margin-bottom: calc(16 / var(--view-size) * 100vw);
  text-align: center;
}

.common_btn {
  background-color: #fff;
  padding: calc(21 / var(--view-size) * 100vw) 0;
  padding-left: calc(105 / var(--view-size) * 100vw);
  position: relative;
  display: block;
  width: 100%;
}
.common_btn:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: calc(76 / var(--view-size) * 100vw);
  width: calc(18 / var(--view-size) * 100vw);
  height: calc(19 / var(--view-size) * 100vw);
  background: url(../images/icon_calendar.png) center/cover no-repeat;
}

.common_btn_02_wrap {
  text-align: right;
}

.common_btn_02 {
  position: relative;
  padding-right: calc(16 / var(--view-size) * 100vw);
  display: inline-block;
}
.common_btn_02:after {
  content: "\f054";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: calc(0 / var(--view-size) * 100vw);
  top: 50%;
  transform: translateY(-50%);
  font-size: calc(14 / var(--view-size) * 100vw);
  color: inherit;
}

.main_cont {
  width: 26%;
  margin-left: auto;
}
@media (max-width: 768px) {
  .main_cont {
    width: 100%;
  }
}

.cta_fix {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 26%;
  z-index: 4000;
  background-color: #000;
  padding: calc(12 / var(--view-size) * 100vw) 0;
}
@media (max-width: 768px) {
  .cta_fix {
    width: 100%;
  }
}
.cta_fix .cta_fix_row .cta_fix_reverse {
  color: #fff;
  padding-left: calc(24 / var(--view-size) * 100vw);
  position: relative;
}
.cta_fix .cta_fix_row .cta_fix_reverse::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: calc(18 / var(--view-size) * 100vw);
  height: calc(19 / var(--view-size) * 100vw);
  background: url(../images/icon_calendar_white.png) center/cover no-repeat;
}
.cta_fix .cta_fix_links .cta_fix_link {
  width: calc(40 / var(--view-size) * 100vw);
  height: calc(40 / var(--view-size) * 100vw);
  border: calc(1 / var(--view-size) * 100vw) solid #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: calc(22 / var(--view-size) * 100vw);
  position: relative;
}
.cta_fix .cta_fix_links .cta_fix_link img {
  display: block;
  width: calc(17 / var(--view-size) * 100vw);
}
.cta_fix .cta_fix_links .cta_fix_link:last-child {
  cursor: pointer;
  margin-right: 0;
}

header {
  width: 74%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  padding-bottom: calc(150 / var(--view-size) * 100vw);
  height: 100vh;
}
@media (max-width: 768px) {
  header {
    display: none;
  }
}
header .header_bg_slide {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 1000;
}
@media (max-width: 768px) {
  header .header_bg_slide {
    display: none;
  }
}
header .header_bg_slide .header_bg_slide_img {
  height: 100vh;
}
header .header_bg_slide .header_bg_slide_img_01 {
  background: url(../images/header_bg_slide01.jpg) center/cover no-repeat;
}
header .header_bg_slide .header_bg_slide_img_02 {
  background: url(../images/header_bg_slide02.jpg) center/cover no-repeat;
}
header .header_bg_slide .header_bg_slide_img_03 {
  background: url(../images/header_bg_slide03.jpg) center/cover no-repeat;
}
header .header_row {
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1001;
}
header .header_info {
  width: calc(390 / var(--view-size) * 100vw);
  margin-right: calc(66 / var(--view-size) * 100vw);
}
header .header_info .header_logo {
  width: calc(320 / var(--view-size) * 100vw);
  margin: 0 auto;
  margin-bottom: calc(40 / var(--view-size) * 100vw);
}
header .header_info .header_info_textarea {
  text-align: center;
  color: #fff;
}
header .header_info .header_info_textarea .header_info_text {
  font-size: calc(14 / var(--view-size) * 100vw);
  margin-bottom: calc(10 / var(--view-size) * 100vw);
  margin-bottom: calc(33 / var(--view-size) * 100vw);
}
header .header_info .header_info_textarea .header_info_ttl {
  margin-bottom: calc(9 / var(--view-size) * 100vw);
  font-weight: bold;
}
header .header_info .header_info_textarea .header_info_text {
  font-size: calc(14 / var(--view-size) * 100vw);
}
header .header_nav_pc .header_nav_list .header_nav_item {
  margin-right: calc(36 / var(--view-size) * 100vw);
}
header .header_nav_pc .header_nav_list .header_nav_item:last-child {
  margin-right: 0;
}
header .header_nav_pc .header_nav_list .header_nav_link {
  color: #fff;
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-weight: 600;
}

.menu_btn {
  display: block;
  position: relative;
  margin-right: 0;
}
.menu_btn span {
  display: inline-block;
  height: calc(2 / var(--view-size) * 100vw);
  width: calc(16 / var(--view-size) * 100vw);
  background-color: #fff;
  border-radius: calc(2 / var(--view-size) * 100vw);
  position: absolute;
  top: calc(8 / var(--view-size) * 100vw);
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
}
.menu_btn span:nth-child(1) {
  top: calc(14 / var(--view-size) * 100vw);
}
.menu_btn span:nth-child(2) {
  top: calc(20 / var(--view-size) * 100vw);
}
.menu_btn span:nth-child(3) {
  top: calc(26 / var(--view-size) * 100vw);
}

.menu_inner {
  right: 100%;
  opacity: 0;
  position: fixed;
  top: 0;
  width: calc(375 / var(--view-size) * 100vw);
  height: 100%;
  background-color: #000;
  z-index: 500;
  transition: 500ms ease-out;
  padding: calc(90 / var(--view-size) * 100vw) 0 0;
  text-align: center;
}
.menu_inner li {
  margin-bottom: calc(20 / var(--view-size) * 100vw);
}
.menu_inner li a {
  color: #fff;
}

.open .menu_btn {
  z-index: 1000;
}
.open .menu_btn span:nth-child(1) {
  transform: translate(-50%, -50%) rotate(45deg);
  top: 50% !important;
  left: 50%;
}
.open .menu_btn span:nth-child(2) {
  opacity: 0;
}
.open .menu_btn span:nth-child(3) {
  transform: translate(-50%, -50%) rotate(-45deg);
  top: 50% !important;
  left: 50%;
}

.open .menu_inner {
  opacity: 1 !important;
  right: 0 !important;
}

/* footer */
.mv {
  background: url(../images/mv_bg.jpg) center/cover no-repeat;
  padding-bottom: calc(120 / var(--view-size) * 100vw);
  padding-top: calc(32 / var(--view-size) * 100vw);
}
.mv .mv_img {
  width: calc(113 / var(--view-size) * 100vw);
}
.mv .mv_sns {
  width: calc(24 / var(--view-size) * 100vw);
}
.mv .mv_sns a {
  margin-bottom: calc(30 / var(--view-size) * 100vw);
  display: block;
}
.mv .mv_sns a:last-child {
  margin-bottom: 0;
}

.concept {
  padding: calc(150 / var(--view-size) * 100vw) 0 calc(78 / var(--view-size) * 100vw);
  background: url(../images/concept_bg.png) top/cover no-repeat;
  background-size: contain;
}
.concept .concept_ttl {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: calc(20 / var(--view-size) * 100vw);
  font-weight: 600;
}
.concept .concept_text_area {
  padding-top: calc(64 / var(--view-size) * 100vw);
}
@media (max-width: 768px) {
  .concept .concept_text_area {
    width: calc(200 / var(--view-size) * 100vw);
    height: calc(450 / var(--view-size) * 100vw);
  }
}
.concept .concept_text_area .concept_text {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: calc(14 / var(--view-size) * 100vw);
}
@media (max-width: 768px) {
  .concept .concept_text_area .concept_text {
    font-size: calc(13 / var(--view-size) * 100vw);
  }
}
.concept .concept_slide {
  margin: calc(30 / var(--view-size) * 100vw) 0;
}
@media (max-width: 768px) {
  .concept .concept_slide {
    margin-bottom: calc(60 / var(--view-size) * 100vw) !important;
  }
}
.concept .concept_slide .concept_slide_item {
  margin: 0 calc(8 / var(--view-size) * 100vw);
}
.concept .concept_slide .slick-prev,
.concept .concept_slide .slick-next {
  top: auto;
  bottom: calc(-36 / var(--view-size) * 100vw);
  transform: translateY(0);
  width: calc(20 / var(--view-size) * 100vw);
  height: calc(20 / var(--view-size) * 100vw);
  background-color: #000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.concept .concept_slide .slick-prev:before,
.concept .concept_slide .slick-next:before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: #fff;
  font-size: calc(16 / var(--view-size) * 100vw);
  background: none;
  border-radius: 0;
  padding: 0;
}
.concept .concept_slide .slick-prev {
  left: calc(50% - 60 / var(--view-size) * 100vw);
}
.concept .concept_slide .slick-prev:before {
  content: "\f104";
  font-size: calc(12 / var(--view-size) * 100vw);
}
.concept .concept_slide .slick-next {
  right: calc(50% - 60 / var(--view-size) * 100vw);
}
.concept .concept_slide .slick-next:before {
  content: "\f105";
  font-size: calc(12 / var(--view-size) * 100vw);
}

.course {
  padding: calc(320 / var(--view-size) * 100vw) 0 calc(54 / var(--view-size) * 100vw);
  background: url(../images/course_bg_black.png) top/cover no-repeat;
  color: #fff;
  position: relative;
}
.course .course_cont_wrap {
  position: relative;
  z-index: 100;
}
.course .course_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.course .course_ttl {
  font-size: calc(20 / var(--view-size) * 100vw);
  font-weight: 600;
  margin-bottom: calc(24 / var(--view-size) * 100vw);
  padding-left: calc(32 / var(--view-size) * 100vw);
}
.course .course_ttl .text_small {
  font-size: calc(16 / var(--view-size) * 100vw);
}
.course .course_text {
  font-size: calc(14 / var(--view-size) * 100vw);
  margin-bottom: calc(40 / var(--view-size) * 100vw);
}
.course .course_item {
  margin-bottom: calc(24 / var(--view-size) * 100vw);
}
.course .course_item:last-child {
  margin-bottom: 0;
}
.course .course_item .course_item_img {
  margin-bottom: calc(16 / var(--view-size) * 100vw);
}
.course .course_item .course_item_name {
  font-size: calc(14 / var(--view-size) * 100vw);
  font-weight: 500;
}
.course .course_caption {
  text-align: right;
  margin-top: calc(24 / var(--view-size) * 100vw);
  font-size: calc(10 / var(--view-size) * 100vw);
}
.course .course_price {
  margin-top: calc(40 / var(--view-size) * 100vw);
}
.course .course_price .course_price_ttlarea {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: calc(16 / var(--view-size) * 100vw);
}
.course .course_price .course_price_ttlarea .course_price_ttl {
  margin-right: calc(10 / var(--view-size) * 100vw);
}
.course .course_price .course_price_ttlarea span {
  height: calc(1 / var(--view-size) * 100vw);
  width: 95%;
  background-color: #fff;
  flex: 1;
}
.course .course_price .course_price_ttlarea.course_price_ttlarea_02 .course_price_ttl {
  margin-right: 0;
  margin-left: calc(10 / var(--view-size) * 100vw);
}
.course .course_price .course_price_text {
  margin-bottom: calc(16 / var(--view-size) * 100vw);
  font-size: calc(14 / var(--view-size) * 100vw);
}
.course .course_cancel {
  margin-bottom: calc(20 / var(--view-size) * 100vw);
}
.course .course_cancel .course_cancel_ttl {
  font-weight: 700;
  margin-bottom: calc(2 / var(--view-size) * 100vw);
}
.course .course_cancel .course_cancel_text {
  font-size: calc(14 / var(--view-size) * 100vw);
}

.message .message_group {
  padding-bottom: calc(34 / var(--view-size) * 100vw);
}
.message .message_group .message_img {
  margin-bottom: calc(16 / var(--view-size) * 100vw);
}
.message .message_group .message_name {
  font-size: calc(20 / var(--view-size) * 100vw);
  margin-bottom: calc(16 / var(--view-size) * 100vw);
}
.message .message_group .message_name .text_small {
  font-size: calc(16 / var(--view-size) * 100vw);
}
.message .message_group .message_text {
  font-size: calc(14 / var(--view-size) * 100vw);
}

.news {
  background: url(../images/news_bg.png) center/cover no-repeat;
  padding: calc(50 / var(--view-size) * 100vw) 0;
}
.news .news_cont .news_item {
  padding: calc(20 / var(--view-size) * 100vw) 0;
  border-bottom: calc(1 / var(--view-size) * 100vw) solid #000;
  display: flex;
  align-items: center;
}
.news .news_cont .news_item .news_date {
  font-size: calc(14 / var(--view-size) * 100vw);
  margin-right: calc(8 / var(--view-size) * 100vw);
}
.news .news_cont .news_item .news_ttl {
  font-size: calc(14 / var(--view-size) * 100vw);
}
.news .news_btn {
  margin-top: calc(20 / var(--view-size) * 100vw);
}

.insta {
  padding: calc(50 / var(--view-size) * 100vw) 0;
}
.insta .insta_cont .insta_item {
  width: 32%;
  margin-bottom: calc(10 / var(--view-size) * 100vw);
}

.shop .shop_map {
  margin-bottom: calc(20 / var(--view-size) * 100vw);
}
.shop .shop_item {
  border-bottom: calc(1 / var(--view-size) * 100vw) solid #000;
  padding: calc(20 / var(--view-size) * 100vw) 0;
}
.shop .shop_item:first-child {
  display: flex;
}
.shop .shop_item:first-child .shop_item_ttl {
  width: calc(72 / var(--view-size) * 100vw);
}
.shop .shop_item:first-child .shop_item_text {
  font-size: calc(20 / var(--view-size) * 100vw);
}
.shop .shop_item:last-child {
  border-bottom: none;
}
.shop .shop_item .shop_item_ttl {
  margin-bottom: calc(10 / var(--view-size) * 100vw);
  font-weight: 500;
}
.shop .shop_item .shop_item_text {
  font-size: calc(14 / var(--view-size) * 100vw);
}
.shop .shop_item_row .shop_item_item {
  width: 50%;
}

.copyright {
  background-color: #000;
  padding: calc(5 / var(--view-size) * 100vw) 0 calc(80 / var(--view-size) * 100vw);
}
.copyright .copyright_text {
  font-size: calc(14 / var(--view-size) * 100vw);
  color: #fff;
  text-align: center;
}

.fadein {
  opacity: 0;
  transform: translateY(3%);
}
.fadein.active {
  animation: 0.8s forwards fadein;
}

.fadein2 {
  opacity: 0;
  transform: translateY(3%);
}
.fadein2.active {
  animation: 0.8s forwards 0.1s fadein;
}

.leftin {
  transform: translateX(-100%);
  overflow: hidden;
}
.leftin.active {
  animation: 0.5s forwards leftin;
}

.rightin {
  transform: translateX(100%);
  overflow: hidden;
}
.rightin.active {
  animation: 0.5s forwards rightin;
}

@keyframes fadein {
  0% {
    opacity: 0;
    transform: translateY(3%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes leftin {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes rightin {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}/*# sourceMappingURL=style.css.map */