@charset "utf-8";

/*Reset =============================================*/
html{
  /* font-size: 10px; */
  font-size: 3.125vw;
}
html,body,h1,h2,h3,p,ul,ol,li,dl,dt,dd{
  margin: 0;
  padding: 0;
  line-height:1.4;
}
ul,li{
list-style: none;
}
a{
text-decoration: none;
color: inherit;
}
a[href^="tel:"] {
  pointer-events: all;
}
img{
vertical-align: bottom;
border: none;
max-width:100%;
height:auto;
}
svg{
  fill: currentColor;
}
br.pad{
  display: none;
}
br.sp.pad{
  display: block;
}
.pc,br.pc{
  display: none;
}
table {
  border-collapse: collapse;
}
.white{
  color: #fff;
}
.center {
  text-align: center;
}
.left_center{
  text-align: left;
}
.small{
  font-size: 0.8em;
}
:root {
  --color-black: #32323c;
  --color-black2: #212121;
  --color-black3: #666666;
  --color-black4: #444444;
  --color-red: #db3516;
  --color-pink: #ef7d83;
  --color-grey: #e4e1e1;
  --color-grey2: #f2f1ea;
  --color-grey-txt: #bababa;
  --color-white: #f1f0ed;
  --color-white2: #f9f9f7;
  --font-comp: 'century gothic','Josefin Sans',"游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
  --font-ja: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif
  --font-en: 'century gothic','Josefin Sans',sans-serif;
  /* --filter-w: invert(99%) sepia(1%) saturate(1685%) hue-rotate(354deg) brightness(115%) contrast(95%); */
  --filter-w: invert(100%) sepia(19%) saturate(377%) hue-rotate(316deg) brightness(100%) contrast(91%);
  --filter-wg: invert(96%) sepia(8%) saturate(14%) hue-rotate(314deg) brightness(86%) contrast(111%);
  --filter-red: invert(33%) sepia(39%) saturate(3362%) hue-rotate(347deg) brightness(84%) contrast(106%);
  --inn-w: 2rem;
  --inn-w-minus: -2rem;

  --kv-fill-color: #fff;
}

/*Reset - Media Query =====================================*/

@media (min-width: 600px) {
  html{
    /* font-size: 1.923vw; */
    font-size: 2.333vw;
    font-size: 14px;
  }
  br.sp{
    display: none;
  }
  br.pad{
    display: block;
  }
}/* mq600 end */

@media (min-width: 960px) {
  html{
    font-size: 1.041vw;
  }
  .sp{
    display: none;
  }
  br.pad{
    display: none;
  }
  br.sp.pad{
    display: none;
  }
  .pc,br.pc{
    display: block;
  }
  .pc-center,.left_center{
    text-align: center;
  }
  .pc-left{
    text-align: left;
  }

  :root {
    --inn-w: 6rem;
    --inn-w-minus: -6rem;
  }
  .pc960{display: block;}
  .sp960{display: none;}
}/* mq960 end */

@media (min-width: 1366px) {
  /* html{
    font-size: 14.22px;
  } */
  html{
    font-size: 13.22px;
  }

  :root {
    --inn-w: 8rem;
    --inn-w-minus: -8rem;
  }
}/* mq1366 end */



/*BODY=====================================*/
body {
  /* animation: fadeIn 2s ease 0s 1 normal; */
  text-align: center;
  color: #32323c;
  letter-spacing: 0.05rem;
  line-height:1.4;
}
/* @keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
} */

.bgc{
  background-color: #f6f6f5;
}

*{
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  background-repeat: no-repeat;
}

html{
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic","Noto Sans CJK JP", Arial, Osaka, Sans-Serif;
  scroll-behavior: smooth;
}

/* attachment */
.icon_g{
  filter: invert(22%) sepia(95%) saturate(865%) hue-rotate(127deg) brightness(91%) contrast(104%);
}
.font-cg{
  font-family: 'century gothic','Josefin Sans',sans-serif;
}
.font-jose{
  font-family: 'Josefin Sans', sans-serif;
}
.font-ja{
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Osaka, Sans-Serif;
}
.en{
  font-family: 'century gothic','Josefin Sans', sans-serif;
}
.sp_left {
  text-align:left;
}
.hover-act{
  transition: opacity .5s;
}
.hover-act:hover{
  opacity: .6;
}
.anchor{
  font-weight: bold;
  color: #003830;
  transition: opacity .5s;
}
.anchor:hover{
  opacity: .6;
}
.center{
  text-align: center;
}
.left{
  text-align: left;
}
.bold{
  font-weight: bold;
}
.youtube_box {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_box iframe {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.lazyload {opacity: 0;}
.lazyloaded, .lazyloading {opacity: 1;transition: opacity 1000ms;}

/* Header=================================================================
==========================================================================
========================================================================== */
.header{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100000;
  padding: .2rem 1rem .2rem 1.5rem;

  transition: background-color 2s;
}
.header-inner{
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* max-width: 1366px;
  margin: 0 auto; */
}
.header.white{
  background-color: rgba(0, 0, 0, .5);
}

.pc_nav{
  display: none;
}
a[href^="tel:"] {
  pointer-events: all;
}
.head_logo{
  width: 14rem;
}
.head_logo a{
  display: flex;
  align-items: center;
  justify-content: center;
}

/* SP-Btn================================= */
.sp_btn{
  display: flex;
  justify-content: space-between;
}
#telephone-btn,#panel-btn{
  display: block; 
  position: relative;
  width: 4rem;
  height: 5rem;
}

/* Telephone-Btn=========================== */
#telephone-btn-icon img{
  position: absolute; 
  left:0;
  right:0;
  top:-.7rem;
  bottom:0;
  margin: auto;
  /* width: 20px;  */
  width: 2rem; 
  transition-property: opacity; 
  transition-duration: .4s;
  opacity: 1;
}
#telephone-btn-icon:before, #telephone-btn-icon:after {
  transition: .3s;
  display: none; 
  content: ""; 
  position: absolute; 
  top: 50%; 
  left: 50%; 
  width: 1.8rem; 
  height: .1rem; 
  margin-left: -.9rem; 
  background: #444; 
}
#telephone-btn .close { 
  background: transparent;
}
#telephone-btn .close:before, #telephone-btn .close:after {
  margin-top: 0;
  display: block; 
  content: ""; 
  position: absolute; 
  top: 50%; 
  left: 50%; 
  width: 1.8rem; 
  height: .1rem;
  margin-left: -0.9rem;
  background: #fff;
  transition: .9s;
}
#telephone-btn .close:before {
  transform: rotate(-45deg); 
  -webkit-transform: rotate(-45deg); 
}
#telephone-btn .close:after {
   transform: rotate(-135deg); 
   -webkit-transform: rotate(-135deg); 
}
#telephone-btn .close img{
  transition-property: opacity; 
  transition-duration: .4s;
  opacity: 0;
}	

/* Panel-Btn================================= */
#panel-btn-icon,#panel-btn-icon:before, #panel-btn-icon:after { 
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.8rem; 
  height: .1rem; 
  margin: -.1rem 0 0 -.9rem; 
  background: rgb(255, 255, 255); 
  transition: .2s; 
}
#panel-btn-icon:before, #panel-btn-icon:after {
  content: "";
  transition: .3s; 
}
#panel-btn-icon:before { 
  margin-top: -0.7rem; 
}
#panel-btn-icon:after { 
  margin-top: 0.7rem; 
}
#panel-btn .close { 
  background: transparent; 
}

#panel-btn .close:before, #panel-btn .close:after {
  margin-top: 0;
  display: block; 
  content: ""; 
  position: absolute; 
  top: 50%; left: 50%; 
  width: 1.8rem; height: .1rem; margin-left: -0.9rem; 
  /* background: #fff; 
  transition: .3s; */
}
#panel-btn .close:before { 
  transform: rotate(-45deg); 
  -webkit-transform: rotate(-45deg); 
}
#panel-btn .close:after { 
  transform: rotate(-135deg); 
  -webkit-transform: rotate(-135deg); 
}

/* 開閉メニュー 共通================================= */
.sp_tel_bloc,.sp_menu_bloc{
  display: none;
  position: absolute;
  top:0;
  left:0;
  background-image: url("/imgs/yogamenu_sp.jpg");
  background-size: cover;
  width: 100%;
  height: 100vh;
  margin: 0;
  padding-top: 6rem;
  box-sizing: border-box;
  font-size: .9em;
  border-bottom: solid 0px #ccc;
  overflow-y: scroll;
    -webkit-overflow-scrolling:touch;
  z-index: -1;
  color: #fff;
  background-color: #1c5c56;
}

/* TELメニュー ================================= */
.sp_tel_bloc ul{
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sp_tel_bloc > ul li.bdr {
  /* border: 1px solid #fff; */
  margin-bottom: 1.5rem;
  position: relative;
  display: block;
  padding: 1.2rem 0 1rem;
  text-align: center;
}
.sp_tel_bloc > ul li a{
  width:100%;
  font-size: 1.4rem;
}
.sp_tel_bloc > ul li span{
  font-size: 1rem;
  margin-left: .5em;
}
.sp_tel_bloc > ul li span.tel{
  font-size:1.76rem;
  font-weight:300;
  font-family: 'century gothic','Josefin Sans',sans-serif;
  display:inline;
  letter-spacing: 0.1em;
}
.st_name{
  margin-bottom: 10px;
}

/* Navigation メニュー ================================= */
.sp_menu_bloc{
  display: none;
  padding-bottom: 15em;
}

.sp_menu_bloc > ul {
  padding: 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  font-family: 'century gothic','Josefin Sans', sans-serif;
}
.sp_menu_bloc > ul li{
  padding: 0 10%;
  width: 100%;
  font-size: 1.4rem;
  letter-spacing: .2em;
  text-align: left;
}
.sp_menu_bloc > ul li a{
  text-decoration: none;
  position: relative;
  display: block;
}
.sp_menu_bloc > ul li a{
  padding: 16px 0;
}
.sp_menu_bloc > ul li span {
  font-size: .7em;
}
.sp_menu_bloc .subttl{
  display: block;
  margin-top: .7em;
}

.sp_menu_bloc > ul li.half {
  width:100%;
  padding:0 0%;
  margin-left: -2.5em;
}

.sp_menu_bloc > ul li.icon_none {border:none;}
.sp_menu_bloc > ul li.icon_none a:before {display:none;}
.sp_menu_bloc > ul li.icon_none a:after {display:none;}
.sp_menu_bloc > ul li.bdr a:before {display:none;}
  
/* LIST : ログイン */
.ls-login{
  border-top: solid 1px;
  border-right: solid 1px;
  border-bottom: solid 1px;
  margin: 12px 10% 12px 0;
} 
.sp_menu_bloc > ul li.bdr img {
  vertical-align: middle;
  width: 1.5em;
  margin-right: .5em;
}

/* ボタン開閉リスト */
.accbox input {
  display: none;
}
.accbox label {
  display: block;
  position: relative;
  cursor :pointer;
  transition: all 0.5s;
}

.accbox label:after {
    position: absolute;
    padding: 1.6em 9em 1em 0.4em;
    top: 4%;
/*    content: '\f067';*/
	content: "";
    font-family: "Font Awesome 5 Free";
    margin-right: 100px;
    font-weight: 600;
    font-size: 1.2em;
    z-index: 50;
}
.label1 label:after {
  left: 6em;
}
.label2 label:after {
  left: 7.5em;
} 
.label3 label:after {
  left: 4em;
} 

.accbox .accshow {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}
.cssacc:checked + label + .accshow {
  height: auto;
  /* padding: 5px 5px; */
  opacity: 1;
}

.cssacc:checked + label:after {
content: "";
}

.accshow>ul li{
  padding: 0;
}
.accshow>ul li a{
  font-size: 1em;
  padding: 12px 12px;
}

/*プラスボタン開閉リスト*/
.accbox .plus-btn-icon {
  display: inline-block;
  font-size: 1.2em;
  margin-left: .8em;
  transition: transform 0.5s;
}

.cssacc:checked + label .plus-btn-icon {
  transform: rotateZ(45deg);
}
.sc_try{
	display: block;
    padding-top: 1rem;
    color: #ee7b72;
    position: absolute;
    right: 5.3rem;
    top: 3.4rem;
    letter-spacing: 0.8px;
}

/* ナビゲーション 入会バナー ===================*/
.sp_member_bottom_btn {
  padding: 1em 0;
  display: block;
  padding: 1.8em 0;
  text-align: center;
  border: solid 0.1em #fff;
  border-radius: 0.2em;
  width: 82%;
  margin: 0 auto 4em;
}


.sp_member_bottom_txt {
  display: inline-block;
  padding-left: 3em;
  font-size: 1.5em;
  font-weight: 500;
  letter-spacing: .1em;
  position: relative;
}

.sp_member_bottom_txt::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 2.4em;
  height: 2.4em;
  filter: invert(100%) sepia(0%) saturate(7483%) hue-rotate(178deg) brightness(109%) contrast(98%);
}
.sp_member_bottom_txt.admission::before{
  background-image: url(https://www.noadance.com/imgs/icon_sp_tel_web.svg);
}


/* CAMPAIGN BANNER ===================*/
.menu_banner{
  width: 90%;
}
.menu_banner li:first-child{
  margin-bottom: 10px;
}

/* SNS BUTTON ===================*/
.header_sns {
  position: static;
  margin: 2.5em auto;
  bottom: 35px;
  left: 0;
  width: 13em;
}
.header_sns ul {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}
.header_sns ul li i {
  font-size: 2em;
  color: #fff;
}

/* PC NACIGATION ==========================================================*/
#header_nav {
  /* width: 100%; */
  letter-spacing: 0;
  /* width: 72%; */
  /* background-color: rgb(168, 166, 166); */
  color:#fff; 
}

#header_nav>ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
#header_nav>ul li.basic{
  position: relative;
}
#header_nav>ul li.basic.ls-store{
  margin-right: 1.5rem;
}
#header_nav ul li.basic>a {
  display: block;
  padding: 1.5rem 1.8rem;
  font-size: 1.1rem;
}
#header_nav li a:hover {
  color:#fe8fa4;
}

/* アイコン付きリスト */
.member-bt-pc {
  font-family: "Roboto", sans-serif; 
  font-weight: 500;
  position:relative;
  font-size: 1rem;
  font-size: clamp(10px,1rem,12px);
  line-height:1.3;
  text-align:center;
  letter-spacing:1px;
}
.member-bt-pc a{
  display: block;
  padding:0 1.2rem;
}
.member-bt-pc img{
  width: 2.5rem;
  margin:0 auto .5em;
  display:block;
}  


/* プルダウンメニュー ===============*/
.pulldown {
  top: 4rem;
  left: 0;
  right: 0;
  position: absolute;
  overflow: hidden;
  height: 0;
}
.ls-sche:hover .pulldown,
.ls-store:hover .pulldown{
  /* overflow: visible; */
  transition: .8s;
  height: 27.4rem;
}

.pulldown li {
  background:rgba(0,0,0,0.4);
  text-align:center;
  border-top:1px solid rgb(126, 126, 126);
  display:block;
}
.pulldown li:first-child {
  border-top: none;
}
.pulldown li.online {
  line-height:1;
}
.pulldown li a {
  display: block;
  padding: 1.2rem 0;
  letter-spacing: .1rem;
  line-height: 1.2;
}
.pulldown li:hover {
background:rgba(0,0,0,0.7);
}

/* HEADER Media Query ====================================================
========================================================================== */
@media (min-width: 960px){
  .pc_nav{
    display: block;
  }
  .header{
    padding: 2rem 2.5rem 2rem 4rem;
  }
  .header.white{
    padding: 1.5rem 2.5rem 1.51rem 4rem;
  }
  .head_logo{
    width: 18rem;
  }
  
  /* SP-Btn================================= */
  .sp_btn{
    display: none;
  }
  #telephone-btn,#panel-btn{
    display: none; 
  }

}/* mq960 end */

/* MEMBER用 */
#linkChangeHeader .ls-login,
#linkChangeHeader .member-bt-pc{
  display: none;
}

/* MainVisual=============================================================
==========================================================================
========================================================================== */
.mainVisual{
  width: auto;
  height: 100vh;
  position: relative;
  color: #fff;
  text-align: left;
  /* min-height: 64rem; */
  max-height: 84.4rem;
}
.mv_inner{
  position: relative;
  height: 100vh;
  padding: 20rem 0 0 1.44rem;
  background-position: center right;
  background-size: cover;
  overflow: hidden;
  min-height: 64rem;
  max-height: 84.4rem;
}
.mv_inner_top{
  height: calc(100vh - 3.0rem);
  padding: 19rem 0 0 1.44rem;
  background-image: url("/imgs/new_toppage_background_sp.jpg");
  background-position: center;
}
.mv-ttl{
  font-weight: 100;
  font-size: 3.0rem;
  line-height: 1.3em;
  letter-spacing: 0.15em;
  margin-bottom: .2em;
}
.mv_inner_top .mv-ttl{
  margin-bottom: .8em;
}
.mv-ttl .ja{
  display:block;
  font-size: 0.5em;
  line-height: 1.8em;
  letter-spacing: 0.2em;
}
.ttl_introduce{
  font-size: 1.3rem;
  line-height: 1.8em;
}
.ttl_sub{
  font-size: 10px;
  position: absolute;
  bottom: 14rem;
  margin: 1rem 0 1rem 1.44rem;
  line-height: 1.5;
  color: #dfdbd6;
}

/* 右上リンク */
.mv_link {
  width: 5.5rem;
  position: absolute;
  top: 6rem;
  right: 1rem;
}
.mv_link ul li{
  margin-bottom: 1.6rem;
}

/* 下部バナー */
.mv_bottom_link_lower{
  width: 28.8rem;
  position: absolute;
  bottom: 4rem;
  left: 0;
}
.mv_inner_top .mv_bottom_link_lower{
  bottom: 3rem;
}
.mv_bottom_link_lower li{
  margin-top: 10px;
}

.mv_link a{
  display: block;
  transition: .5s;
}
.mv_link a:hover{
  opacity: 0.5;
}

/* MainVisual Media Query ================================================ */
@media (min-width: 415px) {
  /* .mainVisual{
    height: 187.5vw;
  } */
  /* .mv_inner{
    height: 187.5vw;
    padding: 23rem 0 0 1.4rem;
  } */
  /* .mv_inner_top{
    height: calc(187.5vw - 3.0rem);
    padding: 18rem 0 0 1.4rem;
  } */
}/* mq415 end */

@media (min-width: 600px) {
  .mainVisual{
    height: 142.5vw;
  }
  /* .mv_inner{
    height: 142.5vw;
    padding: 24rem 0 0 1.4rem;
  } */
  .mv_inner_top{
    height: calc(142.5vw - 3.0rem);
    padding: 18rem 0 0 1.4rem;
  }
}/* mq600 end */

@media (min-width: 768px) {
  .mainVisual{
    width: auto;
    height: auto;
    min-height: inherit;
  }
  .mv_inner{
    /* height: 68.75vw;
    padding: 17.35rem 0 0 3.5rem; */
    height: 70.8vw;
  }
  .mv_inner_top{
    height: 70.8vw;
    padding: 12rem 0 0 2rem;
    background-image: url("/imgs/new_toppage_background.jpg");
  }
  .ttl_sub{
    position: static;
    /* bottom: -4.9rem;
    right: 0; */
    margin: 1rem 1rem 1rem 0;
  }
  /* 下部バナー */
  .mv_bottom_link_lower{
    width: 33.85%;
    position: absolute;
    bottom: 3.64rem;
    left: calc(100% - 33.85%);
  }
  .mv_inner_top .mv_bottom_link_lower {
    bottom: 0;
  }
  .mv_bottom_link_lower li{
    margin-top: 1.1rem;
  }
}/* mq768 end */

@media (min-width: 960px) {
  .mainVisual{
    width: auto;
    height: auto;
    max-height:968px;
  }
  .mv_inner{
    height: 70.8vw;
    padding: 30rem 0 0 10rem;
    max-height:968px;
  }
  .mv_inner_top{
    height: 70.8vw;
    padding: 19rem 0 0 7rem;
  }
  .mv-ttl{
    font-size: 4.2rem;
    letter-spacing: 0.3em;
  }
  .mv-ttl .ja{
    display:block;
    font-size: 0.36em;
    line-height: 1.8em;
    letter-spacing: 0.2em;
    margin-top: .8rem;
  }
  .ttl_introduce{
    font-size: 1.7rem;
    line-height: 1.9em;
    letter-spacing: .5rem;
  }
  .ttl_sub{
     bottom: -4.9rem;
  }

  /* 右上リンク */
  .mv_link{
    width: 6.5rem;
    position: absolute;
    top: 14.4rem;
    right: 2.2rem;
  }
  .mv_link ul li{
    margin-bottom: 1.6rem;
  }

  /* 下部バナー */
  .mv_bottom_link_lower{
    width: 32.4rem;
    position: absolute;
    bottom: 6.2rem;
    left: calc(100% - 32.4rem);
  }
  .mv_inner_top .mv_bottom_link_lower {
    bottom: 2rem;
  }
  .mv_bottom_link_lower li{
    margin-top: 1.1rem;
  }
}/* min-width: 960px end */

/* 各セクション共通項目 ======================================================== */
main section{
  padding: 1rem 0;
  margin-bottom: 5rem;
  /* text-align:center; */
}
.sec_bloc {
  padding: 3em 0;
}
.contents-wide{
  padding: 0 2rem;
  max-width: 600px;
  margin: 0 auto;
}
.c_inner{
  padding: 0 var(--inn-w);
}
.contents{
  max-width: 600px;
  margin: 0 auto;
}
.sec_ttl {
  font-size: 2.8rem;
  font-weight: 300;
  margin-bottom: 1em;
  line-height:1.2;
  letter-spacing:.1em;
  margin: .2em 0 3rem;
  font-family: 'century gothic','Josefin Sans',"游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
}
/* h2.sec_ttl {
  font-size: 2.3rem;
} */
.sec_ttl span {
  display:block;
  font-size: 0.4em;
  font-weight: 300;
  margin-top: .8em;
  color: #32323c;
  letter-spacing: .1em;
  line-height: 1.4;
}

@media (min-width: 960px){
  .sec_bloc {
    padding: 5em 0;
  }
  .contents-wide,.c_wide{
    max-width: 1600px;
    margin: 0 auto;
  }
  .sec_ttl {
    font-size: 3.2rem;
    /* letter-spacing: 1.2rem; */
  }
  /* .sec_ttl span {
    font-size: 1.6rem;
  } */

  .sec_ttl.pc_ttl{
    text-align: left;
    padding-left: 3.6rem;
  }
  .sec_ttl.pc_ttl span{
    display: inline-block;
    margin-left: 10px;
  }
  .contents{
    max-width: 1366px;
    margin: 0 auto;
  }
}/* mq960 end */
@media (min-width: 1366px){
  .contents-wide,.c_wide{
    max-width: 1280px;
  }
}/* mq1366 end */

/* top news ============================================================
========================================================================
======================================================================== */
#top_news{
  padding: 4rem 0 1rem;
}

dl.news_list dd{
  padding: 0 1.5rem 0; 
  /* box-sizing: border-box; */
  transition: opacity .5s;
}
dl.news_list dd:hover{
  opacity: .5;
}
p.news-img{
  margin-bottom: .8rem;
}
p.news-txt{
  font-size: 1.3rem;
  line-height: 1.6; 
  padding: .5em 0;
  text-align: justify;
}

/* 一覧を見る ボタン */
.news_link a{
  display:block;
  width: 80%;
  margin: .5rem auto 0; 
}
.news_link p{
  position: relative;
  font-size: 1.28rem;
  padding: 1em 1.5em; 
  transition: all 0.5s ease;
}
.news_link p::after{
  position: absolute; 
  top: 50%; 
  left: 80%; 
  transform: translate(0,-50%); 
  font-family: "Font Awesome 5 Free"; 
  content: "\f054"; 
  font-weight: 900; 
  color: #cacaca;
}
.news_link p:hover{
  background: #32323c;
  color: #fff; 
}

/* Media Query ================================================ */
@media (min-width: 960px){
  p.news-txt{
    font-size: 1.2rem;
    line-height: 1.5; 
  }
  .news_link a{
    width: 26%;
    margin: 2rem auto 0; 
  }
  #top_news h2 span{
    display: inline;
  }
}/* mq960 end */


/* top Feature =========================================================
========================================================================
======================================================================== */
#top_feature{
  position:relative;
  width: 100%;
  padding: 0;
  /* background-color:rgb(247, 247, 247); */
}
#top_feature .contents-wide{
  padding: 0;
}
.feat-ls li{
  margin: 0 0 6rem ;
}

.toppage_pict {
position: relative;
width: 100%;
}
.toppage_pict picture{
display: block;
height: auto;
}
.toppage_pict1,.toppage_pict2{
  height: 23rem;
}
.toppage_pict3{
  height: 18rem;
}
.toppage_pict1 picture{
  width: 87.5%;
}
.toppage_pict2 picture{
  width: 84.375%;
  margin-left: auto;
}

.feat-ls .num, .pc-num {
  position: absolute;
  display: block;
  font-family: 'century gothic','Inter', sans-serif;
  font-weight: 100;
  font-size: 13.0rem;
  /* margin-bottom: .4em; */
  color:#dfdbd6;
}
.pc-num{
  display: none;
}
.feat-ls-01 .num{
  bottom: -2rem;
  right: 0;
}
.feat-ls-02 .num{
  bottom: -2rem;
  left: 1rem;
}
.feat-ls-03 .num{
  bottom: -2.5rem;
  right: 0;
}

.feat-ls-detail{
  padding: 0 2rem;
}
.feat-ls h3 {
  font-size: 2.1rem;
  margin-bottom: .5em;
  color:#32323c;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: left;
}
.feat-ls p {
  font-size: 1.1rem;
  line-height: 1.6;
  text-align: justify;
  color: #606068;
} 
.feat-ls .pc_dsp {
display: none;
} 

/* Media Query ================================================ */
@media (min-width: 600px) and (max-width: 959px){
  .toppage_pict1{
    height: 27.8rem;
  }
  .feat-ls-01 .num {
    bottom: -5rem;
  }
  .toppage_pict2{
    height: 32rem;
  }
  .feat-ls-02 .num {
    left: 1.4rem;
  }
  .toppage_pict3 {
    height: 22.8rem;
  }
  .feat-ls-03 .num {
    bottom: -53px;
  }
}/* mq600 end */
@media (min-width: 768px) and (max-width: 959px){
  .ttl_introduce{
    font-size: 1.2rem;
  }
}/* mq600 end */

@media (min-width: 960px){
  section#top_feature{
    margin: 8rem 0 0 0;
  }
  .feat-ls{
    text-align: left;
  }
  .feat-ls p .sp_dsp{
    display: none;
  }
  .feat-ls .pc_dsp {
    display: inline;
  } 
  .feat-ls .num{
    display:none;
  }
  .feat-ls-detail{
    padding: 0 2rem;
    position: relative;
  }
  .pc-num{
    display: block;
    z-index: -1;
    font-size: 16.8rem;
  }
  .feat-ls li{
    margin: 0 0 6.0rem ;
  }

  /* リスト1 ========================*/
  .feat-ls-detail-1{
    padding: 8rem 0 0 10rem;
  }
  .toppage_pict1 {
  width: 40.8rem;
  top: 0;
  right: 0;
  left: calc(100% - 42.5%);
  position: absolute;
  }
  .toppage_pict1 picture {
    width: 100%;
    object-fit: cover;
  }
  .pc-num1{
    top: -.6rem;
    left: 3rem;
  }

  /* リスト2 ========================*/
  .feat-ls-02{
    padding: 6.5rem 0 0 38rem;
    height: 21rem;
    position: relative;
  }
  .toppage_pict2 {
    width: 37.5%;
    top: 0;
    left: 0;
    position: absolute;
  }
  .toppage_pict2 picture {
    width: 100%;
    margin-left: 0;
  }
  .pc-num2{
    top: -4rem;
    left: 28rem;
  }

  /* リスト3 ========================*/
  .feat-ls-03{
    height: 21rem;
    padding: 9rem 0 0 15rem;
    position: relative;
  }
  .toppage_pict3{
    width: 37.5%;
    height: auto;
    position: absolute;
    right: 0;
    top: 0;
  }
  .pc-num3{
    top: 1rem;
    left: 4rem;
  }

}/* mq960 end */



/* Feature_Detail ======================================================
========================================================================
======================================================================== */
.feature_detail_box{
  background-color: #ee7b72;
  padding: 4rem 0 1rem;
}
.feature_detail_box .sec_ttl,
.feature_detail_box .sec_ttl span {
  color: #fff;
}

.feature_detail_box>div.contents-wide {
  padding: 0 1.2rem;
}
.detail-ls{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 1em;
  /* background-color: #f6f6f5; */
  /* border-radius: .5rem; */
}
.detail-ls li{
  width:48%;
  margin-bottom: 2em;
}
.detail-ls a{
  display: block;
  transition: .5s;
  color: #fff;
}
.detail-ls a:hover{
  transform: translateY(-.5rem);
}
/* アイコン部分 */
.detail-ls figure {
  position: relative;
  width: 8rem;
  height: 8rem;
  margin: 1em auto 1em;
  overflow: hidden;
}
.svg-icon svg{
  width: 16rem;
  height: 32rem;
  position: absolute;
  top: 0;
  left: 0;
}
.icon2 svg{
  top: -8rem;
  left: 0;
}
.icon3 svg{
  top: -16rem;
  left: 0;
}
.icon4 svg{
  top: -24rem;
  left: 0;
}
.icon5 svg{
  top: 0;
  left: -8rem;
}
.icon6 svg{
  top: -8rem;
  left: -8rem;
}
.icon7 svg{
  top: -16rem;
  left: -8rem;
}
.icon8 svg{
  top: -24rem;
  left: -8rem;
}

.detail-ls h3 {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0;
}
.detail-ls h3 span {
  display: block;
  font-size: 1rem;
  color: #faebe6;
  font-family: 'century gothic','Josefin Sans', sans-serif;
  font-weight: 100;
  margin-top: .18rem;
  letter-spacing: 0.1em;
}
.feature_detail-p{
  width: 90%;
  font-size: 1rem;
  line-height: 1.6;
  margin: 3rem auto 2rem;
  text-align: justify;
  color: #fff;
}
.detail-desc{
  font-size: 1rem;
  margin: 1rem;
}

/* Media Query ================================================ */
@media (min-width: 960px){
  .feature_detail_box>div.contents-wide {
    padding: 0 3rem;
  }
  section.feature_detail_box{
    padding: 5rem 0 3rem;
  }
  .detail-ls{
    width: 90%;
    margin: 0 auto;
  }
   .detail-ls li{
    width:25%;
    margin: 1.6em 0;
  }
  .detail-ls figure {
    width: 8rem;
    margin: 1em auto 2em;
  }
  .detail-ls h3 {
    font-size: 1.3rem;
    text-align: center;
    line-height: 1.4;
    letter-spacing: 0.1rem;
  }
  .detail-ls h3 span {
    font-size: .8em;
    margin-top: .1rem;
  }
  .feature_detail-p {
    width: 53.5%;
  }
}/* mq960 end */


/* feature_text ========================================================
========================================================================
======================================================================== */
.ft-tri-wrapper{
  position: relative;
  padding-top: 24rem;
}
.feature_text{
  position: absolute;
  width: 91.875%;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.feature_text .contents-wide{
  width: auto;
  height: 30.6rem;
  background: url("/imgs/top-feature-img1_sp.jpg") no-repeat;
  background-size: cover;
  padding:  4.2rem 2rem 0;
  color:#fff;
}
.feature_text h3{
  font-size: 4.4rem;
  font-weight: bold;
  font-family: 'century gothic','Josefin Sans', sans-serif;
  text-align:left;
  margin-bottom: 1.6rem;
  letter-spacing: 0.1em;
}
.feature_text span{
  display: block;
  font-size: .5em;
  margin-top: 3rem;
  letter-spacing: .1rem;
}
.feature_text p {
  font-size: 1rem;
  line-height: 1.7;
  text-align: justify;
  font-weight:100;
}
div.spacer{
  display:none;
}

/* Media Query ================================================ */
@media (min-width: 600px) and (max-width: 959px){
  .feature_text h3 {
    font-size: 4.9rem;
  }
}/* mq600 end */

@media (min-width: 960px){
  .feature_detail .sec_ttl{
    margin-bottom: .5em;
  }
  .ft-tri-wrapper{
    padding-top: 16rem;
  }
  .feature_text{
    width: 88%;
  }
  .feature_text .contents-wide{
    background: url("/imgs/top-feature-img1_pc.jpg") no-repeat;
    background-size: cover;
    padding:  8.2rem 0 0 5rem;
  }
  .feature_text h3{
    font-size: 5.2rem;
    font-weight: bold;
    font-family: 'century gothic','Josefin Sans', sans-serif;
    text-align:left;
    margin-bottom: 1.6rem;
    letter-spacing: 0.1em;
  }
  .feature_text span{
    margin-top: 1rem;
  }
  .feature_text p {
    width: 38rem;
    font-size: 1.2rem;
    font-weight: 400;
  }
}/* mq960 end */


/* top trial ========================================================
========================================================================
======================================================================== */
#top_trial {
  background-color: #e4c557;
  padding: 10rem 0 3rem;
  margin-bottom: 0;
}

#top_trial .sec_ttl,#top_trial .sec_ttl span{
  color:#fff;
}
#top_trial ol {
display: block;
margin: 1.5rem auto 5em;
}

.tri-ls{
position: relative;
margin-bottom: 4.2rem;
background-color: #fff;
width: 100%;
border-radius: .5rem;
padding: 2.4rem 2rem;
}
.tri-ls:after{
position: absolute;
top:103%;
right: 50%;
transform: translate(50%,0%);
font-family: "Font Awesome 5 Free";
content: "\f078";
font-weight: 900;
font-size: 22px;
color: #fff;
}
.tri-ls:last-child{
  margin-bottom: 0;
}
.tri-ls:last-child:after {
  display: none;
}
.tri-num{
  display:none;
  color: #fff;
  font-family: 'century gothic','Josefin Sans', sans-serif;
  text-align: left;
  font-size: 4.6rem;
  margin: 0 0 .5rem 1rem;
}

.tri-ls h3{
  font-size: 2rem;
  /* color: #003830; */
  margin-bottom: 2rem;
}
.sec-p{
  text-align: justify;
  font-size: 1.1rem;
  line-height: 1.4;
  letter-spacing: 0;
  margin-bottom: 1.5rem;
  color: white;
}
.tri-desc{
  text-align: justify;
  font-size: 1rem;
  line-height: 1.4;
  letter-spacing: 0;
  margin-bottom: 1.5rem;
}
.tri-desc span{
  display: block;
  font-size: 1.2em;
  font-weight: 700;
  /* color: #003830; */
  margin-bottom: 0.2em;
}

.tri-illust{
  display: block;
  width: 5.6rem;
  height: 6rem;
  background: url(/imgs/top-tri-illust.svg) no-repeat;
  background-size: auto 100%;
}
.tri-illust2{
  width: 10rem;
  background-position: -5.6rem 0;
}
.tri-illust3{
  width: 6rem;
  background-position: right 0;
}

.tri-step{
  display:block;
  width: 8rem;
  height: 5.6rem;
  background: url(/imgs/top-tri-num.svg) no-repeat;
  background-size: auto 100%;
  position: absolute;
  bottom: 2.4rem;
  right: 2rem;
}
.tri-step2{
  background-position: center 0;
}
.tri-step3{
  background-position: right 0;
}

/* 体験レッスンを予約するBOX =============================== */

.toppage-trial-campaign-ttl{
  font-size: 1.6rem;
  padding: 1.5rem;
  background-color: #e4c557;
  color: #32323c;
  position: relative;
  border: 1px solid #fff;
  margin: 0.5rem 0 0 .5rem;
}
.toppage-trial-campaign-ttl::after{
  content: "体験レッスンを予約する";
  width: 100%;
  height: 5.1rem;
  padding-top: 1.35rem;
  box-sizing: border-box;
  position: absolute;
  background-color: #fff;
  top: -0.5rem;
  left: -0.5rem;
  border: 1px solid #fff;
}
.trial-wrapper {
  position: relative;
  display: block;
  width: 100%;
  background-color: #fff;
  border-radius: .5rem;
  padding: 2.4rem 2rem;
  margin: 0 auto;
}
.trial-wrapper:after {
  content: "";
  position: absolute;
  top: -13.8%;
  right: 0;
  left: 0;
  display: block;
  width: 6rem;
  height: 1.56rem;
  background-image: url(/imgs/icon-triangle-wh.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  margin: auto;
}
.campaignbox-h3{
  font-size: 2.8rem;
  /* color: #003830; */
  margin-bottom: 1rem;
}
.campaignbox-p{
  font-size: 1.5em;
  line-height: 1.5;
  letter-spacing: 0;
  color: #6b6b72;
  font-weight: bold;
  margin: .5em 0 1.2em;
}
.trial-wrapper p span {
  display: block;
  font-size: .8em;
  margin-top: .3em;
  font-weight: lighter;
  color: #32323c;
}
.halfprice-img{
  width: 80%;
  max-width: 24rem;
  margin: .2em auto 0;
  display: block;
}

.top-sch-link-box {
position:relative;
margin: 1em auto 0;
}

/* 開閉ボタン */
.top-link-branch-btn {
  font-weight: bold;
}
.top-link-branch-btn a {
position:relative;
display: block;
font-size: 1.6rem;
padding:1em 1em;
line-height: 1.4;
transition: opacity .5s;
color: #fff;
border-right: 1px solid #f6f6f5;
border-radius: .1em;
background-color:#ee7b72;
}
.top-link-branch-btn a:hover {
opacity: .5;
}

/* カレンダーマーク */
.top-link-branch-btn a:after{
display:block;
font-family: "Font Awesome 5 Free";
content: "\f073";
font-weight: 900;
/* color:#e4c557; */
font-size: 1.8rem;
position:absolute;
top: 50%;
right: 6%;
transform: translate(0,-50%);
}

/* 開閉部分 */
.expand-menu {
display: none;
position: absolute;
background-color: #fff;
width: 100%;
border-right: 1px solid #f6f6f5;
border-left: 1px solid #f6f6f5;
z-index: 5;
left:0;
top:100%;
}

.expand-menu li {
border-bottom: 1px solid #f6f6f5;
background:#fff;
font-size: 1.8rem;
text-align:center;
}
.expand-menu li:first-child {
border-top: 1px solid #f6f6f5;
}
.expand-menu li a {
display: block;
font-size: .8em;
padding:1.2em .5em;
color: #32323b;
}
.expand-menu li a:hover {
  background: #eee;
}
.expand-menu li a:after{
margin-right: 1.0rem;
vertical-align: text-top;
font-family: "Font Awesome 5 Free";
content: "\f054";
font-weight: 900;
float: right;
color: #32323b;
font-size:14px;
}

/* Media Query ================================================ */
@media (min-width: 600px) and (max-width: 959px){
  .tri-ls {
    width: 70%;
    margin: 0 auto 4.2rem;
  }
}/* mq600 end */
@media (min-width: 600px){
  .toppage-trial-campaign-ttl::after{
    padding-top: 1.6rem;
  }
}/* mq600 end */

@media (min-width: 960px){
  #top_trial {
    padding: 18rem 0 4rem;
  }
  #top_trial .contents-wide{
    padding: 3rem 3.6rem;
  }
  #top_trial .sec_ttl.pc_ttl {
    padding-left: 0;
  }

  #top_trial ol {
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    margin: 0
  }
  .tri-ls{
    width: 31.15%;
    min-height: 28rem;
    padding: 8rem 0 0;
    margin-bottom: 4rem;
  }
  .tri-ls:last-child {
    margin-bottom: 4rem;
  }
  .tri-ls:after{
    position: absolute;
    top: 48%;
    right: -2.6rem;
    transform: rotate(-90deg);
    font-size: 2.2rem;
    color: #fff;
  }
  .tri-ls h3{
    font-size: 2.1rem;
    margin-bottom: 2rem;
  }
  .tri-desc{
    line-height: 1.4;
    letter-spacing: 0;
    margin-bottom: 1.5rem;
    padding: 0 3rem;
  }
  .tri-illust{
    display: block;
    margin: auto;
    position: absolute;
    bottom: 2rem;
    left: 0;
    right: 0;
  }
  .tri-illust1{
    width: 6.72rem;
    height: 7.2rem;
  }
  .tri-illust2{
    width: 10rem;
    background-position: -5.6rem 0;
  }
  .tri-illust3{
    width: 7.2rem;
    height: 7.2rem;
  }

  .tri-step{
    width: 6.4rem;
    height: 4.48rem;
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    top: 0;
    margin: 1.5rem auto;
  }
  
  .tri-desc-wrapper{
    display: flex;
    padding: 0 1rem;
  }
  .tri-desc-wrapper .tri-desc{
    width: 50%;
    padding: 0 0.8rem;
    font-size: 1rem;
    line-height: 1.3;
  }
  .tri-desc span{
    font-size: 1.4rem;
    font-weight: 700;
    text-align: center;
  }

  /* 体験レッスンを予約するBOX =============================== */
  .toppage-trial-campaignbox{
    width: 50%;
    padding-top: 2.4rem;
    margin: 0 auto;
    display: block;
    position: relative;
  }
  .toppage-trial-campaign-ttl{
    width: 80%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .trial-wrapper {
    width: 100%;
    border-radius: .5rem;
  }
  .campaignbox-p{
    font-size: 1.6em;
  }
  .campaignbox-p span {
    font-size: 1rem;
    margin-top: .2rem;
  }
  
  .top-sch-link-box {
    width: 30rem;
    position:relative;
    background-color:#f6f6f5;
    margin: 1em auto 0;
  }
  
  /* 開閉ボタン */
  .top-link-branch-btn a:hover {
    opacity: .5;
  }
  /* カレンダーマーク */
  .top-link-branch-btn a:after{
    right: 6%;
  }

}/* mq960 end */


/* top genre ===========================================================
========================================================================
======================================================================== */
.top-genre{
  background-image: url(/imgs/top-genre-bg-sp.jpg);
  background-size: cover;
  background-position: center;
  color: #fff;
}
main section.top-genre{
  padding: 5rem 0 3rem;
  margin-bottom: 0;
}
#top_genre>div.contents-wide{
  padding: 0 1.2rem;
}

.top-genre .sec_ttl,
.top-genre .sec_ttl span{
  color: #fff;
}

/* アイコン部分 */
.sub {
margin: 2em auto 1em;
text-align: center;
display: flex;
justify-content: center;
}
.sub span {
font-size: 1rem;
position:relative;
/* color:#484b45; */
margin: 0 .2em;
}
.sub span i{
display:inline-block;
background: url(/imgs/new_icon_pickup_bk.svg) no-repeat;
background-size: 100% auto;
width:2.4rem;
height: 2.4rem;
vertical-align:middle;
margin:0 .2em .2em 0;
}
.sub span i.beginner{
background-position:50% 0;
}
.sub span i.diet{
background-position:50% 50%;
}
.sub span i.kaizen{
background-position:50% 100%;
}
.halftone{
opacity: 40%;
}
#top_genre .contents-wide>.sub span{
margin: 0 .5em;
}

/* SVG ICON */
.sub .svg-img{
  width: 2.4rem;
  height: 2.4rem;
  overflow: hidden;
  position: relative;
}
.sub .svg-img svg{
  position: absolute;
  top: 0;
  left: 0;
  width: 2.4rem;
  height: 7.2rem;
}
.sub .svg-img.diet svg{
  top: -2.4rem;
  left: 0;
}
.sub .svg-img.kaizen svg{
  top: -4.8rem;
  left: 0;
}

#top_genre ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
/* padding: 2em; */
}
#top_genre ul li {
  width: 48.2%;
  margin: 0 0 1rem;
  border-right: 0;
  border-bottom: 0; 
  border-radius: 6px;
  border: solid 1px #cacaca;
  /* box-shadow: .15rem .25rem .6rem #cacaca; */
  position: relative;
  transition: background-color 1s,color 1s;
}
.top-genre ul li.full a{
  display: initial;
  color: #c6dbd9;
  transition: color 1s;
}

.top-genre ul li>a {
  display: block;
  transition: opacity .5s;
}
#top_genre .detail{
  padding:1.8em 1em;
  min-height: 17rem;
  border-radius: .5rem;
}

#top_genre .detail h3{
padding: 0 0 .1em;
/* font-size: 11px; */
font-size: 1.4rem;
letter-spacing: 0;
margin-bottom: 1em;
font-weight:bold;
/* color: #003830; */
}

#top_genre .detail .top_genre_desc {
/* font-size: 10px; */
font-size: 1.0rem;
line-height:1.4;
text-align: justify;
letter-spacing: 0;
}

#top_genre .detail .sub{
  position: absolute;
  width: 64%;
  bottom: 9%;
  left: 0;
  right: 0;
  margin: 0 auto;
  justify-content: center;
}

#top_genre ul li>a:hover{
  opacity: .6;
}
/* #top_genre ul li>a:hover{
  background-color: #003830;
  color: #fff;
}
#top_genre ul li.full:hover a{
  color: #c6dbd9;
}
#top_genre ul li:hover h3{
  color: #fff;
}
.top-genre ul li.full .detail:hover{
  background-color: #003830;
  color: #fff;
} */



/* Media Query ================================================ */
@media (min-width: 600px) and (max-width: 959px){
  #top_genre>div.contents-wide {
    padding: 0 5rem;
  }
  #top_genre .detail {
    min-height: 16rem;
  }
}/* mq600 end */

@media (min-width: 960px){
  #top_genre>div.contents-wide{
    padding: 0 3rem;
  }
  #top_genre .sec_ttl.pc_ttl,
  #top_studiolist .sec_ttl.pc_ttl {
    padding-left: 0;
  }
  
  /* アイコン部分 */
  .sub {
  margin: 2em 0 2em;
  text-align: center;
  display: flex;
  justify-content: center;
  }
  .sub span {
  font-size: 1rem;
  position:relative;
  margin: 0 .4em;
  }
  .sub span i{
  width:2.6rem;
  height: 2.6rem;
  margin:0 .2em .2em 0;
  }

  #top_genre .contents-wide>.sub span{
  font-size: 1.2rem;
  margin: 0 2.4rem 0 0;
  }
  #top_genre .contents-wide>.sub span i{
    width: 2.8rem;
    height: 2.8rem;
    margin:0 .4em .2em 0;
  }
  
  #top_genre ul li {
    width: 18.77%;
    margin: .1em  0 1.3rem;
    position: relative;
  }
  #top_genre .detail{
    padding: 2.2rem 2rem;
    min-height: 18rem;
  }
  #top_genre .detail h3 {
  font-size: 1.4rem;
  margin-bottom: 1em;
  }
  #top_genre .detail .top_genre_desc {
  line-height:1.4;
  }
  #top_genre .detail .sub{
    bottom: 8.6%;
  }
}/* mq960 end */


/* top studio list =====================================================
========================================================================
======================================================================== */
#top_studiolist>div.contents-wide{
  padding: 0 1.2rem;
}
.studio-block {
  width: auto;
  display: flex; 
  flex-wrap: wrap; 
  /* justify-content: space-between; */
  color: #fff;
  gap: 1px;
  padding: 0;
  margin: 0 0 2em; 
}
.studio-box {
width: 100%;
/* margin-bottom: 1px; */
/* border-radius: .3em; */
background-position: center;
background-size: cover;
position: relative;
transition: .5s;
}

.studio-inner {
  padding: 2.8rem 0;
  background-color: rgba(0, 0, 0, .4);
}

.women-only::before{
  display: block;
  content:"女性専用";
  width: 7rem;
  height: 1.8rem;
  line-height: 1.8rem;
  background-color: #df8076;
  position: absolute;
  right: 0;
  /* left: 0; */
  top: 0;
  /* padding-top: .1rem; */
  box-sizing: border-box;
  margin: 0 auto;
  /* border-radius: 0 0 .2rem .2rem; */
}
.studio-name {
  /* margin-bottom: .7rem; */
  text-align: center;
  font-weight: normal;
}
.studio-name .ja {
  display: block;
  font-size: 1.2em;
  font-weight: normal;
  letter-spacing: .5rem;
}
.studio-name .en {
  display: block;
  font-size: 2.4rem;
  font-weight: lighter;
  letter-spacing: 0.12em;
  font-family: 'century gothic','Josefin Sans', sans-serif;
}

.toritsudai-st-bg {
background-image: url(/imgs/top-stimg-toritsudai.jpg);
}
.shinjuku-st-bg {
background-image: url(/imgs/top-stimg-shinjuku.jpg);
}
.akihabara-st-bg {
background-image: url(/imgs/top-stimg-akihabara.jpg);
}
.ginza-st-bg {
background-image: url(/imgs/top-stimg-ginza.jpg);
}
.komazawa-st-bg {
background-image: url(/imgs/top-stimg-komazawa.jpg);
}

/* アイコン */
#top_studiolist{
  padding: 3em 0 0 ;
  margin-bottom: 8rem;
}
.studio-info{
position:absolute;
width: 100%;
display: flex;
justify-content: space-between;
bottom: 1rem;
}
.studio-info li {
width: 25%;
text-align: center;
}
.studio-info li a {
display: block;
}
.studio-info li a:hover {
opacity: .7;
filter: alpha(opacity=70);
}
.studio-info li i{
  display: inline-block;
  font-size: 2.4rem;
  margin-right: .15em;
}
.studio-info li p {
  display: block;
  font-size: clamp(10px, 1rem, 12px);
  font-weight: 100;
  letter-spacing: 0;
  /* margin-top: .5rem; */
}
.store-icon::before{
  content: "";
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  background-image: url(/imgs/icon-store.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 auto .3rem;
}
.store-icon-acc::before{
  background-position: 0 50%;
}

@media (min-width: 600px){
  /* #top_studiolist {
    padding: 1rem 0;
  } */
  .studio-box {
    width: calc(50% - .5px);
  }
  .studio-inner {
    padding: 2.4rem 0;
  }
  .studio-name .en {
    font-size: 1.8rem;
  }
  .studio-name .ja {
    font-size: 1em;
  }
  .studio-info {
    bottom: 0.6rem;
  }
  .studio-info li i {
    font-size: 1.8rem;
  }
  .studio-info li p {
    font-size: clamp(10px, .6rem, 12px);
  }
  .women-only::before{
    width: 6rem;
    /* height: 1.6rem; */
    font-size: .8rem;
  }
}/* mq600 end */

@media (min-width: 960px){
  #top_studiolist>div.contents-wide{
    padding: 0 3rem;
  }
  .studio-block {
    margin: 0 0 2em; 
  }
  .studio-box {
    width: 19.9%;
    margin-bottom: 0;
  }
  /* .studio-info {
    justify-content: space-between;
  } */
  .studio-box,.studio-inner{
    box-sizing: border-box;
  }
  .studio-inner {
    padding: 3em 0 3.2em;
  }
  .studio-name .en {
    display: block;
    font-size: 1.8rem;
  }
  .studio-name .ja {
    font-size: 1em;
  }

  /* アイコン */
  .studio-info{
    bottom: .5rem;
  }
  .studio-info li {
    width: 36%;
    font-size: 10px;
  }
  .studio-info li p {
    font-size: 10px;
  }
  .store-icon::before {
    width: 2.1rem;
    height: 2.1rem;
  }
  /* .women-only::before{
    width: 10rem;
    height: 1.6rem;
    padding-top: .1rem;
    font-size: .9rem;
  } */
}/* mq960 end */



/* top pick up =========================================================
========================================================================
======================================================================== */
#top_pickup{
  background-color: #ececec;
  padding: 5rem 0;
  margin-bottom: 0;
}
.top_pickup_slider_wrap,.top_pickup_menu{
  margin: 1em 0;
  font-size: 1rem;
}

/* インストラクター リスト */
.slider-wrapper li {
width: 100%;
margin: 0 0 2rem;
}


.top_pickup_list li{
  transition: opacity .5s;
}
.top_pickup_list li:hover{
  opacity:.5;
}
.top_pickup_list li a {
background: #fff;
border-radius: 5px;
text-decoration: none;
display: flex;
align-items: center;
justify-content: space-between;
width: 87.5%;
margin: 0 auto;
box-shadow: .15rem .25rem .6rem #cacaca;
}
.top_pickup_list li .detail {
  margin: 0 auto;
  display: block;
}

/* 左上アイコン */
.top_pickup_list .icon {
display: block;
}
.top_pickup_list .icon i{
display: block;
background-image: url(/imgs/new_icon_pickup_bk.svg);
width: 2.4rem;
height: 2.4rem;
background-size: 100% auto;
margin: 0 auto 1.2rem;

}
.top_pickup_list .icon i.beginner{
background-position:50% 0;
}
.top_pickup_list .icon i.diet{
background-position:50% 50%;
}
.top_pickup_list .icon i.kaizen{
background-position:50% 100%;
}

/* スライダー中身 */
.top_pickup_list figure img{
width: 12rem;
height: 12rem;
/* margin:0 auto; */
border-radius: 5px 0 0 5px;
object-fit: cover;
object-position: top center;
}
.top_pickup_list li .detail{
  width: 57.142%;
}  
.top_pickup_list li .detail dl {
margin: 0;
}
.top_pickup_list li .detail dl dt {
font-weight: 700;
font-size: 1.3rem;
line-height: 1.3;
letter-spacing: 0;
margin-bottom: .5em;
color: #003830;
}
.top_pickup_list li .detail dl dd{
font-size: 1.0rem;
line-height: 1.4;
}
.top_pickup_listli .detail dl dd.date{
margin-bottom: .3em;
}



/* おすすめアイコン ==============*/
.top_pickup_menu {
  display:flex;
  justify-content: space-between;
  margin:0 auto;
  width: 90%;
  margin:4.4rem auto 3rem;
}
.top_pickup_menu li {
display:inline-block;
/* width:30%; */
height: 3em;
font-size: .95em;
text-align: left;
/* margin: 0px .7rem; */
/* padding: 10px; */
}
.top_pickup_menu li i{
  background-image: url(/imgs/new_icon_pickup_bk.svg);
  background-size: 100% auto;
  width: 2.4em;
  height: 2.4em;
  display: inline-block;
  /* margin: auto; */
  float: left;
}
.top_pickup_menu li i.beginner{
background-position:50% 0;
}
.top_pickup_menu li i.diet{
background-position:50% 50%;
}
.top_pickup_menu li i.kaizen{
background-position:50% 100%;
}

.top_pickup_menu li p{
  display: inline-block;
  padding: 0.65rem 0 0 0.3rem;
  line-height: 1.3;
  letter-spacing: 0;
  font-weight: bold;
}
.top_pickup_menu li p span {
display:block;
}

/* ボタン */
.link-btn a{
  display: block;
  width: 87.5%;
  /* font-size: 11px; */
  font-size: 1.1rem;
  letter-spacing: 0.2em;
  padding: 1.6rem 0;
  color: #005a49;
  border: 1px solid;
  border-radius: .2em;
  margin: 0 auto;
  transition: background-color .5s,color .5s;
}
.link-btn a:hover {
  background-color: #005a49;
  color: #fff;
}
.link-btn a:hover .icon_g{
  filter: invert(100%) sepia(0%) saturate(7462%) hue-rotate(275deg) brightness(93%) contrast(111%)
}


/* Media Query ================================================ */
@media (min-width: 600px) and (max-width: 959px){
  .top_pickup_list li a {
      width: 92%;
  }
}/* mq600 end */

@media (min-width: 960px){

  .top_pickup_list li a {
    background: #fff;
    border-radius: 5px;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 90%;
    height: 14rem;
    margin: 0 auto .5em;
    box-shadow: .15rem .25rem .6rem #cacaca;
  }
  
  /* 左上アイコン */
  .top_pickup_list .icon {
  display: block;
  }
  .top_pickup_list .icon i{
  width: 2.6rem;
  height: 2.6rem;
  margin: 0 auto 1rem;  
  }


  /* スライダー中身 */
  .top_pickup_list figure img{
  border-radius: 5px;
  margin-left: 1rem;
  }
  .top_pickup_list li .detail{
    width: 55%;
  }  
  .top_pickup_list li .detail dl dt {
    font-size: 1.2rem;
    margin-top: 0.2em;
    color: #003830;
  }
  .top_pickup_list li .detail dl dd{
  font-size: 1.1rem;
  line-height: 1.4;
  }
  .top_pickup_listli .detail dl dd.date{
  margin-bottom: .3em;
  }

  /* SLICK CSS */
  #top_pickup .slick-dots{
    bottom: -45px;
  }

  /* アイコン ==============*/
  .top_pickup_menu {
  display: flex;
  justify-content: center;
  width:100%;
  margin:6em auto 2em;
  }
  .top_pickup_menu li {
  font-size: 1em;
  margin: 0 1rem 1.5em;
  }
  /* ボタン */
  .link-btn a{
    display: block;
    width: 24%;
  }

  .slider-wrapper{
    width: 100%;
    margin: 0 0 2rem;
  }
  .link-btn a {
    padding: 2rem 0;
}
}/* mq960 end */


/* lesson_info ===========================================================
==========================================================================
========================================================================== */
.lesson_info{
  background-color: #ececec;
  padding: 0 0 3rem;
  margin: 0;
}
.lesson_info .contents-wide{
  width: 92%;
  display:block;
  text-align:center;
  line-height:2em;
  background-color: #005a49;
  color: #fff;
  border-radius: 3px;
  padding: 3rem 1.8rem 2.4rem;
  margin: 0 auto 2rem;
}

.lesson_info .sec_ttl{
  margin-bottom: .3em;
}
.lesson_info .desc{
  font-size: 1.1rem;
  margin-bottom: 2em;
}

.link-btn.lesson_kakunin_btn a{
  border-color: #fff;
  color: #fff;
  width: 100%;
  padding: 1.3rem 0;
}
.link-btn.lesson_kakunin_btn a:hover{
  background-color: #fff;
  color: #005a49;
}

/* Media Query  */
@media (min-width: 960px){
  .lesson_info{
    padding: 1.5rem 0 6rem;
  }
  .lesson_info .contents-wide{
    width: 43.75%;
    max-width: 560px;
    margin: 0 auto;
  }
  .lesson_info .sec_ttl{
    margin-bottom: .4em;
  }
  .lesson_info .desc{
    font-size: 1.3rem;
  }  
  .link-btn.lesson_kakunin_btn a{
    border-color: #fff;
    color: #fff;
    width: 23rem;
    padding: 1.3rem 0;
    margin: auto;
  }
}/* mq960 end */




/* top about-txt =========================================================
==========================================================================
========================================================================== */
#top_about {
  width: 100%;
  background-image: url(/imgs/top_aboutnoa_sp.jpg);
  background-size: cover;
  color:#fff;
  padding: 4rem 0;
}
#top_about .sec_ttl{
  margin-bottom: .5em;
}
#top_about .sec_ttl_desc{
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: 0.12rem;
  margin-bottom: 2.5rem;
}

#top_about .detail {
width: 100%;
margin: 0 auto;
}
#top_about .detail p{
  font-size: clamp(10px,1rem,12px);
  line-height:1.6;
  text-align: justify;
  letter-spacing: 0;
}
#top_about .detail p:first-child{
margin-bottom: 2em;
}

/* ボタン */
#top_about .btn_bloc{
  display: none;
}
#top_about .btn_bloc a{
  border-color: #fff;
  color: #fff;
  width: 42rem;
}
#top_about .btn_bloc a:hover{
  background-color: #fff;
  color: #005a49;
  width: 42rem;
}
#top_about .btn_bloc span{
  display: block;
  font-size: 1.5rem;
  margin-top: 1.2rem;
  position: relative;
}
#top_about .btn_bloc span::after{
  position: absolute; 
  bottom: 0; 
  left: 66%; 
  font-family: "Font Awesome 5 Free"; 
  content: "\f054"; 
  font-weight: 900; 
  color: #fff;
  transition: .5s;
}
#top_about .btn_bloc a:hover{
  background-color: #fff;
  color: #003830;
  width: 42rem;
}
#top_about .btn_bloc a:hover span::after{
  color: #003830;
}

/* Media Query ================================================ */
@media (min-width: 600px){
  #top_about {
    background-image: url(/imgs/top_aboutnoa_bg.jpg);
    padding: 6rem 0;
  }
}/* mq 600 end */

@media (min-width: 960px){
  #top_about {
    background-image: url(/imgs/top_aboutnoa_bg.jpg);
    padding: 6rem 0;
  }
  #top_about .sec_ttl{
    float: left;
    margin-right: .5em;
  }
  #top_about .sec_ttl_desc{
    text-align-last: left;
    font-size: 1.8rem;
    line-height: 1.5;
    letter-spacing: 0.5rem;
    padding: .7rem 0 0;
    margin-bottom: 7rem;
  }
  #top_about .sec_ttl_desc br.sp{
    display: none;
  }
  #top_about .detail {
    padding: 0 2rem;
  }
  #top_about .detail p{
    font-size: 1.0rem;
    line-height:2;
    text-align: justify;
    letter-spacing: .1rem;
  }
  #top_about .detail p:first-child{
    margin-bottom: 3em;
  }
  #top_about .detail p:last-child{
    margin-bottom: 4em;
  }
  #top_about .btn_bloc{
    display: block;
  }
}/* mq960 end */


/* top_works =============================================================
==========================================================================
========================================================================== */
/* #top_works{
  margin-bottom: 2rem;
} */
#top_works>div.contents-wide,#top_studio>div.contents-wide{
  padding: 0 1.4rem;
}
.relate-block,.n-st-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.relate-block li,.n-st-list li {
  width: 47.5%;
  margin-bottom: 2rem;
}
.relate-block li a {
  display:block;
}
.n-st-imagebox p{
  display: block;
  text-align: justify;
  line-height: 1.4;
  /* margin: 0 auto; */
  font-size: clamp(10px,.8rem,12px);
  color: #606068;
}
.brand-logo{
  background-image: url(/imgs/link-logo.svg);
  background-size: 200%;
  background-position: 0 0;
  width: 13.8rem;
  height: 4rem;
  margin: 0 auto .5rem;
  display: block;
  max-width: 100%;
}
.nda-k .brand-logo{
background-position: 0 10.9%;
}
.nds .brand-logo{
background-position: 0 22.5%;
}
.nbal .brand-logo{
background-position: 0 33%;
}
.nbal-k .brand-logo{
background-position: 0 55.5%;
}
.npila .brand-logo{
  background-position: 100% 33.5%;
}
.nbox .brand-logo{
  background-position: 0 44.5%;
  }
.voat .brand-logo{
background-position: 0 67%;
}
.voat-v .brand-logo{
background-position: 0 78%;
}
.music-s .brand-logo{
  background-position: 0 89%;
}
.tdl .brand-logo{
background-position: 0 100%;
}
.relate-desc p{
  font-size: clamp(10px,.8rem,12px);
  line-height: 1.4;
  text-align: justify;
  letter-spacing: 0;
  padding: 0 0.2em;
}

/* Media Query ================================================ */
@media (min-width: 600px) and (max-width: 959px){

  #top_works .sec_ttl,#top_studio .sec_ttl{
    font-size: 2.2rem;
  }

  .brand-logo {
    width: 12rem;
    height: 3.48rem;
  }
  .relate-desc p,.n-st-imagebox p{
    font-size: clamp(10px,.7rem,12px);
  }
  .relate-block li, .n-st-list li {
    width: 30%;
    margin-bottom: 2rem;
  }
}/* mq600 end */

@media (min-width: 960px){
  #top_works,#top_studio{
    margin-bottom: 0;
  }
  #top_studio{
    padding: 5rem 0;
  }
  #top_works .sec_ttl{
    font-size: 2.4rem;
  }
  #top_works .sec_ttl span{
    font-size: 1.4rem;
  }
  #top_works .sec_ttl br{
    display: none;
  }
  #top_works>div.contents-wide{
    padding: 0 4.5rem;
  }
  .relate-block li {
    width: 15%;
    margin-bottom: 4rem;
  }
  .relate-block::after {
    content: "";
    width: 15%;
  }
}/* mq960 end */


/* top_studio ============================================================
==========================================================================
========================================================================== */
#top_studio .sec_ttl{
  margin-bottom: 3rem;
}
#top_studio .sec_ttl span{
  letter-spacing: 0;
}
.n-st-logobox{
  display: block;
  margin: 0 auto;
}
.ss-noah .brand-logo{
  background-position: 100% 0;
}
.p-noah .brand-logo{
  background-position: 100% 11%;
}
.noah-st .brand-logo{
  background-position: 100% 22%;
}
.n-st-logobox p{
 letter-spacing: 0;
}
/* Media Query ================================================ */
@media (min-width: 960px){
  #top_studio .sec_ttl{
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
  #top_studio .sec_ttl span{
    font-size: 1.4rem;
    margin-bottom: 3rem;
  }
  .n-st-list{
    width: 58.5%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  .n-st-list li{
    width: 30%;
  }
  .n-st-logobox{
    width: 100%;
  }
  .n-st-list li p{
    width: 100%;
    margin: 0;
  }
}/* mq960 end */


/* パンくずリスト ============================================================
========================================================================== */
.breadcrumbs {
  text-align:left;
  background-color:#ebebeb;
  /* margin-top: 5rem; */
}
.breadcrumbs ol {
padding:.8em 1em .8em;
line-height: 1;
width:100%;
/* max-width: 1166px; */
margin: 0 auto;
}
.breadcrumbs li {
position: relative;
display: inline-block;
margin: .2em 1.8em .2em 0;
font-size: clamp(10px, 1rem, 12px);
padding:0;
line-height: 1;
}
.breadcrumbs li:not(:last-child)::after {
position: absolute;
content: ">";
right: -1.5em;
top: 0;
}
.breadcrumbs li a:hover {
text-decoration: underline;
}

@media (min-width: 960px){
  .breadcrumbs ol {
    padding: .8em 0em .8em;
}
}/* mq960 end */


/* footer =============================================================
=======================================================================
======================================================================= */
footer {
  /* background: #003830; */
  background-image: url(/imgs/yogamenu_sp.jpg);
  background-size: cover;
  color: #fff;
  font-size: 10px;
}
footer .contents-wide{
  /* max-width: 600px; */
  margin: 0 auto;
}
.footer_left {
  margin-bottom: 3rem;
  text-align: left;
}
.footer_left .foot_logo {
  padding: 3rem 0;
  width: 15rem;
  max-width: 200px;
}
.footer_left p {
  font-size: clamp(10px,1rem,11px);
  line-height: 1.5;
  text-align: justify;
  letter-spacing: 0.1em;
}
.footer_right {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 3rem;
  text-align: left;
}

.foot_cnt {
  width: 48%;
  margin-bottom: 2rem;
}
.foot_cnt_wrap {
  margin-bottom: 2rem;
}
.foot_cnt h2 {
  font-weight: 700;
  font-size: 10.5px;
  margin-bottom: .5rem;
  line-height: 1.2;
  letter-spacing: 0;
}
.foot_cnt ul li {
  line-height: 1.8;
  padding-left:.8rem;
  opacity: .6;
  transition: opacity .5s , transform .5s;
}
.foot_cnt ul li:hover {
  opacity: 1;
  transform: translateX(-.5rem);
}


/* アイコン */
.footer_sns {
  position: static;
  width: 13rem;
  margin: 0.2em;
}
.footer_sns ul {
display: flex;
justify-content: space-between;
}
.footer_sns ul li i{
font-size: 1.8rem;
}

.foot_logo a,.footer_sns a{
  transition:opacity .5s;
}
.foot_logo a:hover,.footer_sns a:hover{
  opacity: .5;
}

.copyright {
font-size: 10px;
padding:3rem 0;
text-align: left;
}

/* Media Query ================================================ */
@media (min-width: 600px) and (max-width: 959px){
  .foot_cnt {
    width: 30%;
  }
}/* mq600 end */


@media (min-width: 960px){
  footer {
    /* background: #003830; */
    background-image: url(/imgs/yogamenu_pc.jpg);
  }
  footer .contents-wide {
    display: flex;
    justify-content: space-between;
    position: relative;
    /* max-width: 1166px; */
    /* padding: 0; */
  }
  .footer_left {
    width: 35%;
    margin-bottom: 0;
    text-align: left;
  }
  .footer_left p {
    font-size: 10px;
    line-height: 1.6;
  }
  .footer_right {
    width: 50%;
    margin: 3rem 0 0;
    /* justify-content: flex-end; */
  }
  /* .footer_right::after{
    content: "";
    width: 40%;
  }   */
  .foot_cnt {
    width: 33%;
  }
  .foot_cnt h2 {
    font-size: 10.5px;
  }
  .footer_sns {
    position: absolute;
    left: 2rem;
    bottom: 4rem;
    margin: 2rem 0;
  }
  .copyright{
    position:absolute;
    left: 2rem;
    bottom: .2em;
    padding:2rem 0; 
  }
}/* mq960 end */





/* SLICK ================================================== */
.slick-dots {
  bottom: -16px;
  left: 0;
  right: 0;
  width: 90%;
  margin: 0 auto;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  /* width: 20px; */
  /* height: 20px; */
  /* margin: 0 5px; */
  padding: 0;
  cursor: pointer;

  width: 40px;
  width: 12.5%;
  height: 4px;
  margin: 0 2%;
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  /* width: 20px; */
  /* height: 20px; */
  /* padding: 5px; */
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  /* background: transparent; */

  width: 40px;
  width: 100%;
  height: 4px;
  padding: 0;
  background-color: #ccc;
  box-sizing: border-box;
}
.slick-dots li button:before {
  font-family: 'slick';
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  /* width: 20px; */
  /* height: 20px; */
  content: '';
  text-align: center;
  opacity: .25;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  width: 0;
  height: 4px;
  /* background-color: #999; */
  
}

.slick-dots li.slick-active button:before{
  background: #005a49;
  width: 40px;
  width: 100%;
  transition: width 4.5s ease;
}

@media (min-width: 768px){
  .slick-dots {
    bottom: -34px;
  }
  .slick-dots li {
    width: 40px;
    margin: 0 0.6%;
  }
}/* mq960 end */


/* 20200713 ms add strat */
/*画面ローディング*/
.u-loading-area {
	width: 100vw;
	height: 100vh;
	transition: all 1s;
	background-color: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100001;
}

.u-spinner {
	margin: 0 auto;
	width: 150px;
	height: 100px;
	text-align: center;
	font-size: 25px;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	bottom: 50%;
}

.u-spinner > div {
	background-color: #949393;
	height: 100%;
	width: 10px;
	display: inline-block;

	-webkit-animation: stretchdelay 1.2s infinite ease-in-out;
	animation: stretchdelay 1.2s infinite ease-in-out;
}
/*ポイント:以下のディレイの指定*/
.u-spinner .rect2 {
	-webkit-animation-delay: -1.1s;
	animation-delay: -1.1s;
}

.u-spinner .rect3 {
	-webkit-animation-delay: -1.0s;
	animation-delay: -1.0s;
}

.u-spinner .rect4 {
	-webkit-animation-delay: -0.9s;
	animation-delay: -0.9s;
}

.u-spinner .rect5 {
	-webkit-animation-delay: -0.8s;
	animation-delay: -0.8s;
}

@-webkit-keyframes stretchdelay {
	0%, 40%, 100% { -webkit-transform: scaleY(0.4) }
	20% { -webkit-transform: scaleY(1.0) }
}

@keyframes stretchdelay {
	0%, 40%, 100% { transform: scaleY(0.4) }
	20% { transform: scaleY(1.0) }
}
/* 20200713 ms add end */

/* 20200812 ms add strat */
/*//// modal window ////*/
.modal{display: none;height: 100vh;position: fixed;top: 0;left:0;width: 100%;z-index:100000;overflow:hidden;}
.modal-sc{height: 100vh;position: fixed;top: 0;left:0;width: 100%;z-index:999;overflow:hidden;}
.modal.modal-confirm{display: block;}
.modal-bg{background: rgba(0,0,0,0.8);height: 100vh;position: absolute;width: 100%;}
.modal-content{
  background: #fff;
  padding:2em 1.25em 3em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 86%;
  overflow-y:scroll;
  -webkit-overflow-scrolling: auto;
  overflow-scrolling: auto;
  height: fit-content;
  max-height: 92%;
}
.modal-ttl{text-align: center; margin-bottom: 1em;font-family: "Roboto", sans-serif!important; font-weight: 900;font-size: 2.4rem;line-height:1.7;}
.modal-ttl span{display: block;font-size: .9rem;}
.modal-close{position: absolute; top: 1em; right: 1em; width:30px;height:30px;cursor: pointer;display:block;}
.modal-close span {display: block; width: 100%; height: 1px; background: #000;}
.modal-close span {background: #000; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%;position: absolute;}
.modal-close span:nth-child(1) { top:1em;transform: rotate(45deg);}
.modal-close span:nth-child(2) { top:1em;transform: rotate(-45deg);}
.modal-ac-ttl{font-size:1.3rem;font-family:'Oswald', sans-serif;font-weight:300;margin-bottom:1.25em;}
.modal-content .kousya{font-size:1.5rem;font-weight:bold;margin-bottom:.6em;}
.modal-content .tel{font-family:'Roboto', sans-serif;font-size:2rem;margin-bottom:.5em;color:#34ceca;}
.modal-content .tel i{padding-right:.5em;color:#34ceca;}
.modal-content .add{font-size:1.3rem;margin-bottom:1.5em;}
.modal-content iframe{width:100%;height:30vh;}

.qa-box .modal-content{width:90%;}
.modal-content .cfm-form-lede{
  padding: 1.5em 0;
  border-bottom: 1px dotted #ccc;
}
.modal-content .couple-operate li{
  float:none !important;
  width:100%;
  margin: 1.2em auto;
  max-width: 28rem;
}
.modal-content .couple-operate li:last-child{
  font-size: 1.1rem;
  margin-bottom:0;
  background:none;
  /* border:1px solid #000;
  color:#000; */
}
.modal-content .form-operate li:last-child input{
  color:#999;
  font-weight:normal;
  border: 1px solid;
  font-size: 1.1rem;
}
.modal-content .primary-btn{background-color:transparent;}
.modal-content .couple-operate{
  margin-bottom: 0;
}

@media screen and (min-width: 769px) {
	.modal-content{padding:3.5em 2.5em 4em;width: 60%;}
	_:-ms-fullscreen, :root .modal-content{padding:3em 2.5em 3em;width: 50%;}
	.modal-ttl{margin-bottom: 1em;font-size: 2.4rem;line-height:1.7;}
	.modal-ttl span{font-size: .9rem;}
	.modal-close{top: 1em; right: 1em; width:30px;height:30px;}
	.modal-close span:nth-child(1) { top:1em;transform: rotate(45deg);}
	.modal-close span:nth-child(2) { top:1em;transform: rotate(-45deg);}

	.qa-box .modal-content{
    padding:2em 2.5em 2em;
    max-width: 540px;
  }
	@-moz-document url-prefix() {.modal-content .couple-operate ul{margin-bottom:5em;}}
	/* .modal-content .couple-operate li{width:80%;margin:0 auto 2.5em;display:block;} */
	/* .modal-content .couple-operate li:last-child{width:80%;float:none;} */
}

@media screen and (min-width: 1280px) {
	.modal-content{padding:4.5em 3.5em 5em;width: 50%;}
	.modal-ttl{font-size: 2.4em;}
	.modal-ttl span{font-size: 40%;}

	/* .qa-box .modal-content{padding:4.5em 3.5em 5em;width: 60%;} */
}
/* 20200812 ms add end */

/* 20200817 ms add */
.time_list {
	cursor : pointer;
}

.time_list.today {
	cursor : auto;
}
/* 20200817 ms add end */

/* TEL-BLOCK */
.tel-block {
  text-align: center;
}
.tel-a{
  display: block;
  /* display: block; */
  color: #23584a;
  border: 1px solid #23584a;
  border-radius: .2rem;
  padding: 1rem 2rem;
  margin: 1rem 0;
  font-size: 1.8rem;
  transition: background-color .5s;
}
.tel-block .tel-a:hover{
  background-color: #23584a;
}
.tel-block .tel-a:hover,
.tel-block .tel-a:hover .tel-txt{
  color: #fff;
}
.tel-txt{
  display: inline-block;
  color: #32323b;
  font-size: 0.8em;
  vertical-align: middle;
  margin: 0 .3em .15em 0;
}
.tel-ttl{
  padding: 1.5em 0 .4em;
  font-size: 1.5rem;
  font-weight: bold;
}
.tel-block .tel-p{
  font-size: 1.2rem;
}

@media (min-width: 960px) {
  .tel-block .common-p{
    width: 59rem;
    margin: 0 auto 1.5em;
  }
  .tel-ttl{
    font-size: 1.7rem;
    padding: 1em 0 .4em;
  }
  .tel-ul{
    display: flex;
    justify-content: center;
  }
  .tel-li{
    width: 19%;
  }
  .tel-a{
    margin: 0 .25em;
  }
  .tel-txt{
    display: block;
    margin: 0 0 .38em;
  }
}/* 960 end */


/* welcome ブランド一覧 ==========================
================================================================ */
.sys_brands_block{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sys_brands_box{
  position: relative;
  background-color: #000;
  width: calc(50% - .5px);
  margin-bottom: 1px;
}
.sys_brands_box_img{
  opacity: .6;
  filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
  /* filter: gray; */
  -webkit-filter: grayscale(100%);
  transition: opacity 1s;
  object-fit: cover;
  object-position:center top;
  height: 100%;
}
.sys_brands_box:hover .sys_brands_box_img{
  opacity: 1;
  filter: none;
  -webkit-filter: grayscale(0%);
}
.sys_brands_detail{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: fit-content;
  color: #fff;
  padding: 0.5em 0 0.5em;
  margin: auto 0;
}
.sys_brands_ttl{
  font-size: .8rem;
  font-weight: 500;
  text-align: center;
  letter-spacing: -.02em;
  margin: 0;
}
.sys_logos_blk{
  position: relative;
  width: 70px;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  margin: 0 auto .2em;
}
.sys_logos_blk::before{
  content: "";
  display: block;
  width: 100%;
  padding-top: 70px;
}
.sys_logos_blk img{
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
.sys_logos_blk.box2 img{
  top: -70px;
}
.sys_logos_blk.box3 img{
  top: -140px;
}
.sys_logos_blk.box4 img{
  top: -210px;
}
.sys_logos_blk.box5 img{
  top: -280px;
}
.sys_logos_blk.box6 img{
  top: -350px;
}
.sys_logos_blk.box7 img{
  top: -420px;
}

@media screen and (min-width: 769px){
  .sys_brands_box_wrap{
    width: 43%;
  }
  .system-kyotsu-wrap{
    width: 48%;
  }
  .sys_brands_box_img{
    height: 7em;
  }
  .block_wrap .sys_brands_box_img {
    height: 11em;
  }
}/* 769 */
@media screen and (min-width: 960px){
  .sys_brands_box{
    width: calc(100% / 6);
  }
}


/* TOP BOTTOM CONTACT */
.top_bottom_contact_box_wrap{
  padding: 2em 0;
}
.top_bottom_contact_box{
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 3.5em 1.8em;
  margin: 0 auto 3em;
  border-radius: .2em;
  overflow: hidden;
  background-color: rgba(0, 0, 0, .6);
  /* background-color: var(--color-white); */
  /* max-width: 52em; */
}
.sp_menu_bloc .top_bottom_contact_box{
  background-color: transparent;
  border: 1px solid #fff;
}
.top_bottom_contact_txt_wrap{
  color: var(--color-white);
  text-align: left;
}
.top_bottom_contact_ttl{
  font-weight: 600;
  letter-spacing: .05em;
  margin: 0 0 1.5em;
}
.top_bottom_contact_ttl .en{
  display: block;
  font-size: 2.4em;
  line-height: 1.1;
}
.top_bottom_contact_ttl .ja{
  display: block;
  font-size: 1em;
}
.top_bottom_contact_txt{
  margin: .1em 0;
  letter-spacing: .03em;
}
.top_bottom_contact_img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  filter: grayscale(1);
}
.top_bottom_contact_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  transition: transform .5s ;
}
.top_bottom_contact_box .arrow_circle {
  background-color: #fff;
  /* border: 1px solid var(--color-white); */
}
/* .top_bottom_contact_box .arrow_circle_img{
  filter: none;
} */

.top_bottom_contact_box .arrow_circle{
  position: relative;
  display: inline-block;
  /* background-color: var(--color-red); */
  width: 3.2em;
  height: 3.2em;
  border-radius: 50%;
  margin-left: .8em;
  overflow:hidden;
}
.top_bottom_contact_box .arrow_circle_img{
  position: absolute;
  top: 0;
  bottom: .1em;
  left: 0;
  right: 0;
  margin: auto;
  width: 38% !important;
  /* filter: var(--filter-w); */
  transition: transform .25s ease-in, opacity .25s;
}
.top_bottom_contact_box .arrow_circle_img._pdf{
  width: 44%;
}
.top_bottom_contact_box .arrow_circle::before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: block;
  width: 38%;
  height: 38%;
  background-image: url(/imgs/icon_arrow_right.svg);
  background-repeat: no-repeat;
  background-position: center;
  transform: translateX(-200%);
  opacity: 0;
  transition: transform .25s ease-out, opacity .25s ease-out;
  /* filter: var(--filter-w); */
}

@media (min-width: 769px) {
  .top_bottom_contact_box {
    padding: 6em 4.5em;
    /* max-width: 80%; */
  }
  .top_bottom_contact_ttl  {
    font-size: 1.2em;
  }
  .top_bottom_contact_ttl .en {
    font-size: 3.8em;
  }
  .top_bottom_contact_txt {
    font-size: 1.1em;
  }
  .top_bottom_contact_box .arrow_circle {
    font-size: 1.2em;
  }
  .top_bottom_contact_box:hover .top_bottom_contact_img img{
    transform: scale(1.05);
  }
}/*  */



/* OTHER WORKS LIST
========================================== */
.work_list_box._yoga{
  display: none;
}
.work_list{
  display: flex;
  flex-wrap: wrap;
  gap: 1px ;
}
.work_list_box{
  width: calc(50% - .5px);
}
.work_list_box a{
  display: block;
  position: relative;
}
.work_list_img_wrap{
  position: relative;
  background-color: #000;
  aspect-ratio: 3 / 2;
}
.work_list_img{
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.noah_school .work_list_img{
  opacity: .6;
}
.work_list_img_logo{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1;
  width: 80%;
  height: auto;
  filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(152deg) brightness(103%) contrast(103%);
}

.work_list_txt {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  font-size: 10px;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.7);
  color: #fff;
  text-align: left;
  /* overflow-y: scroll; */
  /* visibility: visible; */
  transform: translateY(0);
  /* opacity: 1; */
  transition: transform .4s, opacity .4s;
  display: flex;
  justify-content: center;
  align-items: center;

  font-size: .7em;
  font-weight: 500;
  padding: .5em 1.5em;

  visibility: none;
  opacity: 0;
}
.work_list_box:hover .work_list_txt {
  opacity: 1;
  visibility: visible;
}

@media (min-width:960px){
  .noaschool-box{
    padding: 3em 0;
  }
  .work_list_box{
    width: calc(25% - .75px);
  }
  .work_list_img_logo {
    width: 60%;
  }
  .work_list_txt{
    font-size: .75em;
    padding: .5em 3.5em;
  }
}/*  */


/* TOP - RECOMMEND
========================================= */
.top_reco_block{
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  /* border-top: .5px solid var(--color-grey);
  border-bottom: .5px solid var(--color-grey); */

  width: calc(100% + 4em);
  margin: 0 0 0 -2em;
}
.top_reco_box{
  position: relative;
  width: 50%;
  border: 1px solid var(--color-grey);
  border-left: none;
  overflow: hidden;
  aspect-ratio: 5 / 3.5;
}
.reco_box_inner{
  display: block;
  width: 100%;
  height: 100%;
}
@media (max-width: 959px) {
  .top_reco_box:nth-child(2n) {
    border-right: none;
  }
  .top_reco_box:nth-child(n+3) {
    border-top: none;
  }
}

.reco_detail_box{
  position: absolute;
  z-index: 5;
  font-size: 10px;
  width: 100%;
  height: 100%;
  background-color: var(--color-black2);
  color: var(--color-white);
  overflow-y: scroll;

  visibility: hidden;
  opacity: 0;
  /* transform: translateY(-101%); */
}
/* .top_reco_box.on .reco_detail_box, */
.top_reco_box:hover .reco_detail_box{
  /* transform: translateY(0); */
  visibility: visible;
  opacity: 1;
  transition: opacity .5s;
  display: flex;
  justify-content: center;
  align-items: center;
}
/* .top_reco_box:hover .reco_detail_box{
  transform: translateY(0);
  opacity: 1;
} */
.reco_txt{
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  margin: auto;
  height: fit-content;
  padding: 1em  2em;
  text-align: left;
}

.reco_img_box{
  position: relative;
  width: 70%;
  padding-top: 70%;
  overflow: hidden;
  margin: auto;
  transform: translateY(-.25em);
}
.reco_img_box img{
  width: 100%;
}
/* .top_reco_box:hover .reco_img_box{
  transform: translateY(-100%);
  opacity: 0;
} */
.reco_logo_img{
  position: absolute;
  left: 0;
  pointer-events: none;
}
.reco_logo_img.nda{top: 0;}
.reco_logo_img.ndak{top: -100%;}
.reco_logo_img.nds{top: -200%;}
.reco_logo_img.nyoga{top: -300%;}
.reco_logo_img.npila{top: -1800%;}
.reco_logo_img.nbox{top: -400%;}
.reco_logo_img.nbal{top: -500%;}
.reco_logo_img.nbalk{top: -600%;}
.reco_logo_img.non{top: -700%;}
.reco_logo_img.nmusic{top: -800%;}
.reco_logo_img.tdl{top: -900%;}
.reco_logo_img.sst{top: -1300%;}
.reco_logo_img.pst{top: -1400%;}
.reco_logo_img.stn{top: -1500%;}
.reco_logo_img.voat{top: -1000%;}
.reco_logo_img.voice{top: -1100%;}
.reco_logo_img.voatk{top: -1200%;}
.reco_img_box{
  transition: transform .4s , opacity .4s;
}
.reco_logo_img_single{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin:auto;
  width: 90%;
  z-index: 2;
}

.reco_detail_btn{
  position: absolute;
  bottom: 8%;
  left: 0;
  right: 0;
  margin: auto;
  width: fit-content;
  width: 35%;
  padding: .3em 1.8em;
  margin: 0 auto;
  opacity: .2;
  z-index: 10;
}

@media (min-width: 960px) {
  .top_reco_block{
    width: 100%;
    margin: 0 auto 3em;
    max-width: 62em;
    /* border: .5px solid var(--color-grey); */
  }
  .top_reco_box{
    width: 20%;
    aspect-ratio: 1 / 1;
  }
  .top_reco_box:nth-child(n+6) {
    border-top: none;
  }
  .top_reco_box:nth-child(5n+1) {
    border-left: 1px solid var(--color-grey);
  }
  .reco_img_box {
    width: 90%;
    padding-top: 90%;
    transform: translateY(.25em);
  }
  .sec_top_contents .foot_desc{
    padding-right: 0;
  }
  .reco_detail_btn{
    width: 38%;
  }
  .reco_txt{
    bottom: 0;
    margin: auto;
  }
  /* .top_reco_box.on .reco_detail_box{
    overflow-y:inherit;
  } */
}/* 769 */

@media (min-width: 1200px) {
  .sec_top_reco .sec_ttl._small{
    font-size: 1.1rem;
    padding-top: 0;
  }
  /* .sec_top_reco_inner{
    display: flex;
    justify-content: space-between;
  }*/
  .top_reco_pc_wrap{
    width: 70%;
    margin-left: auto;
    margin-top: -7.7em;
  }
  /* .top_reco_box {
    width: 11.1111111111111111%;
  } */
  .reco_detail_box{
    font-size: .7em;
    overflow-y: initial;
  }
  .reco_detail_btn {
    width: 45%;
  }
}/* 960 */
