@charset "utf-8";
/*
theme Name: ignite1.6
Version: 1.6
*/
body {
  padding-top: 80px;
}
@media only screen and ( max-width : 1099px ) {
body {
  padding-top: 60px;
}
}

.font_playfair{
  font-family: 'Playfair Display',serif;
}

.wrapper {
max-width: 1160px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
  height: 100%;
  position: relative;
}


#header {
  box-shadow: 0px 3px 15px rgba(0,0,0,0.2);
  z-index: 99;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #000000;
  box-sizing: border-box;
  color: #fff;
}
#header .container ,
#header #h_top {
  height: 100%;
}
.h_logo {
font-size: 21px;
letter-spacing: .1em;
line-height: 1.2;
}
.h_logo a {
display: block;
padding-bottom: .05em;
}

#gNav a:hover {
  color: #999;
}
nav li a {
  font-size: 14px;
  letter-spacing: .02em;
  font-weight: 300;
}
nav .sub-menu,.mean-container .mean-nav ul ul {
  background: #000000;
  color: #fff;
}
  .h_login {
    margin-left: 35px;
    position: relative;
    width: 140px;
  }
  .h_login>div {
    width: 100%;
    text-align: center;
    position: absolute;
    z-index: 99;
    background-color: #fff;
    color: #000;
    font-size: 12px;
    border-radius: 17px;
    top: 50%;
    margin-top: -17px;
  }
  .h_login>div p ,
  .h_login>div a {
    height: 34px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
  .h_login>div p {
    cursor: default;
  }
  .h_login>div a {
    height: 30px;
  }
  .h_login>div a:hover {
    color: #999;
  }
  .h_login>div ul {
    height: 0;
    overflow: hidden;
    margin-bottom: 0;
    transition: .2s;
    opacity: 0;
  }
  .h_login>div:hover ul {
    height: 60px;
    opacity: 1;
    padding-bottom: 6px;
  }
  .h_login>div:hover p {
    color: #aaa;
  }


@media only screen and ( max-width : 1099px ) {
  #header {
    padding: 10px 0;
    height: 60px;
  }
  .h_logo {
    position: absolute;
    top: 7px;
    left: 15px;
    z-index: 100;
  }
  #gNav .nav {
    overflow-y: auto;
    height: 100vh;
  }
  .mean-nav .container {
    padding: 0;
  }
  nav li .fa {
    display: none;
  }
  .h_login {
    margin-left: 0;
    position: absolute;
    right: 65px;
    top: 50%;
  }
}

@media print, screen and ( min-width : 1100px ) {
  #header {
    height: 80px;
  }
  #h_top {
    display: flex;
    align-items: center;
  }
  .h_nav {
    margin-left: auto;
  }
  #gNav ul {
    position: relative;
    display: flex;
  }
  #gNav li {
    position: relative;
    /*margin-right: 2.4em;*/
    margin-right: 2.1em;
  }
  #gNav li:last-child {
    margin-right: 0;
  }
  #gNav li i {
    margin-left: 5px;
  }
  #gNav li a {
    position: relative;
    display: block;
    line-height: 80px;
  }
  #gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -90px;
    width: 180px;
    padding-bottom: 10px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }
  #gNav .sub-menu a {
    display: block;
    border-bottom: none;
    padding: 15px 20px;
    line-height: 1.2em;
  }
  #gNav .sub-menu a:hover:after {
    content: none;
  }
  #gNav .sub-menu li {
    display: block;
    font-size: 16px;
    padding: 0;
    margin: 0;
  }
  #gNav .sub-menu li:last-child {
    border-bottom: none;
  }
  #gNav ul > li:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
  }
  #gNav li:hover ul.sub-menu {
    top: 63px;
    visibility: visible;
    opacity: 1;
    z-index: 9999;
  }
  #gNav li ul li:after {
    content: none;
  }
 #gNav li:hover ul.sub-menu a {
  }
  #gNav .sub-menu li a:hover {
  }
  #gNav .contact_btn a:hover {
  }
}
@media only screen and ( max-width : 375px ) {
.h_logo {
  top: 9px;
font-size: 18px;
}
  .h_login {
    width: 116px;
    right: 52px;
  }
  .h_login>div {
    font-size: 11px;
  }
  .meanmenu-reveal-btn {
    width: 50px;
  }
}








footer {
margin-top: 120px;
background-color: #000;
color: #fff;
}
footer .wrapper {
display: flex;
}

#footer01 {
padding: 60px 0;
border-bottom: 1px solid #222;
}

.footer01-item-wrap {
width: 100%;
margin-right: auto;
display: flex;
  flex-wrap: wrap;
justify-content: space-between;
}

.footer01-item-header {
font-size: 18px;
line-height: 1.2;
font-weight: 400;
padding-bottom: 16px;
}
.footer01-item-txt {
font-size: 14px;
line-height: 1.7;
font-weight: 300;
padding-bottom: 12px;
}
.footer01-item-txt a {
display: block;
padding-right: 30px;
position: relative;
}
.footer01-item-txt a+a {
margin-top: 16px;
}
.footer01-item-txt a i {
vertical-align: sub;
font-size: 22px;
margin-right: 2px;
}
/*.footer01-item-txt a::after {
content: '';
position: absolute;
bottom: 0;
height: 1px;
left: 30px;
background-color: #fff;
transition: .2s;
width: 0;
}
.footer01-item-txt a:hover::after {
width: calc( 100% - 30px );
}
.footer01-item-txt a::before {
content: '▶';
position: absolute;
right: 2px;
top: 50%;
margin-top: -6px;
font-size: 10px;
line-height: 12px;
opacity: 0;
transition: 0 .2s;
}
.footer01-item-txt a:hover::before {
opacity: 1;
transition: .2s .2s;
}
*/


#footer02 {
padding: 100px 0 120px;
}
#footer02 .wrapper {
  flex-wrap: wrap;
justify-content: space-between;
}
.footer02-item-header {
font-size: 24px;
line-height: 1.2;
font-weight: 400;
padding-bottom: 12px;
position: relative;
}
.footer02-item-header::after {
content: '';
position: absolute;
bottom: 0;
width: 40px;
height: 2px;
left: 0;
background-color: #fff;
}
.footer02-menu {
display: flex;
  flex-wrap: wrap;
margin-top: 18px;
}
.footer02-menu ul {
width: 50%;
  margin-top: 12px;
}
.footer02-menu li+li {
margin-top: .8em;
}
.footer02-menu a {
color: #888890;
font-size: 14px;
font-weight: 300;
line-height: 1.2;
display: table;
}
.footer02-item-txt {
margin-top: 27px;
margin-bottom: 40px;
}
.footer02-item-txt a {
display: block;
padding-right: 30px;
position: relative;
font-size: 14px;
font-weight: 300;
line-height: 1.5;
}
.footer02-item-txt a+a {
margin-top: 16px;
}
.footer02-item-txt a i {
vertical-align: sub;
font-size: 22px;
margin-right: 2px;
}
.footer02-item-txt a::after {
content: '';
position: absolute;
bottom: 0;
height: 1px;
left: 0;
background-color: #fff;
transition: .3s;
width: 0;
}
.footer02-item-txt a:hover::after {
width: 100%;
}
.footer02-item-txt a::before {
content: '▶';
position: absolute;
right: 2px;
top: 50%;
margin-top: -6px;
font-size: 10px;
line-height: 12px;
opacity: 0;
transition: 0 .3s;
}
.footer02-item-txt a:hover::before {
opacity: 1;
transition: .3s .3s;
}
.footer02-sns_link a {
font-size: 22px;
margin-right: 8px;
}


#footer03 {
padding: 40px 0 30px;
background-color: #101017;
}
#footer03 .wrapper {
justify-content: space-between;
align-items: center;
font-size: 14px;
line-height: 1.2;
color: #888890;
}
.footer03-copy, .footer03-tel {
font-weight: 300;
}
.footer03-tel a {
color: #fff;
}





/*.footer01-item:nth-child(1){
width: 400px;
}
.footer01-item:nth-child(2){
width: 400px;
}
.footer01-item:nth-child(3){
  width: calc( 100% - 800px );
}*/
.footer02-item:nth-child(1) {
width: 620px;
}
.footer02-item:nth-child(2) {
width: calc( 100% - 620px );
}
@media only screen and ( max-width : 1000px ) {
.footer01-item:nth-child(1) ,
.footer01-item:nth-child(2) {
width: 30%; margin-right: 6%;
}
.footer02-item:nth-child(1) {
width: 66%;
}
.footer01-item:nth-child(3) {
width: 28%;
}
.footer02-item:nth-child(2) {
width: 34%;
}
}
@media only screen and ( max-width : 767px ) {
#footer01 {
padding: 50px 0 40px;
}
#footer02 {
padding: 50px 0 60px;
}
.footer01-item:nth-child(1) ,
.footer02-item:nth-child(1) ,
.footer01-item:nth-child(2) ,
.footer02-item:nth-child(2) ,
.footer01-item:nth-child(3)  {
width: 100%;margin-right: 0;
}
.footer01-item:nth-child(2) ,
.footer01-item:nth-child(3) ,
.footer02-item:nth-child(2) {
  margin-top: 50px;
}
.footer02-menu ul {
  min-width: 240px;
}
}
@media only screen and ( max-width : 640px ) {
  #footer03 {
    padding: 25px 0 20px;
  }
#footer03 .wrapper {
  flex-direction: column;
  text-align: center;
}
  .footer03-copy {
    margin-bottom: 10px;
  }
}





#home_kv {
position: relative;
height: calc( 100vh - 80px );
max-height: 900px;
min-height: 580px;
}
@media only screen and ( max-width : 1099px ) {
#home_kv {
height: calc( 100vh - 60px );
}
}

#home_kv-slide-wrap {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1;
overflow: hidden;
}
#home_kv-slide {
width: 100%;
height: 100%;
}
#home_kv-slide div.home_kv-slide-inner {
height: calc( 100vh - 80px );
max-height: 900px;
min-height: 580px;
background-repeat: no-repeat;
background-size: cover;
background-position: center;
background-image: url("images/Placeholder.png");
}
@media only screen and ( max-width : 1099px ) {
#home_kv-slide div.home_kv-slide-inner {
height: calc( 100vh - 60px );
}
}

.home_kv-slick-btn {
z-index: 2;
width: 54px;
height: 54px;
border-radius: 50%;
background-color: #fff;
font-family: 'Noto Sans JP',sans-serif;
font-size: 16px;
font-weight: 300;
line-height: 54px;
text-align: center;
color: #888890 !important;
transition: .3s;
}
.home_kv-slick-btn:hover {
background-color: #000;
}
.home_kv-slick-btn.slick-prev {
left: 25px;
}
.home_kv-slick-btn.slick-next {
right: 25px;
}
.home_kv-slick-btn.slick-next:before, .home_kv-slick-btn.slick-prev:before {
display: none;
}
#home_kv-slide .slick-dots {
bottom: 3.6%;
}
#home_kv-slide .slick-dots li {
margin: 0 2px;
}
#home_kv-slide .slick-dots li button:before {
color: #fff;
}
.home_kv-btn-wrap {
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: 14%;
z-index: 3;
  justify-content: center;
display: flex;
  width: 100%;
  flex-wrap: wrap;
}
.home_kv-btn {
width: 180px;
height: 60px;
margin: 5px 10px;
border: 1px solid #fff;
box-sizing: border-box;
background-color: rgba(66,66,66,.4);
color: #fff;
transition: .3s;
}
.home_kv-btn:hover {
border: 1px solid #000;
background-color: rgba(0,0,0,1);
}
.home_kv-btn a {
height: 100%;
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
line-height: 1.3;
font-size: 14px;
}
.home_kv-btn-1st_line span {
font-weight: 300;
font-size: 12px;
margin-left: 4px;
}
.home_kv-btn-2nd_line {
font-weight: 300;
}





#home01 .wrapper {
text-align: center;
padding-top: 70px;
}
#home01 .wrapper div {
font-family: 'Playfair Display',serif;
font-size: 16px;
line-height: 1.2;
color: #888890;
margin-bottom: 30px;
}
#home01 .wrapper h1 {
font-size: 90px;
font-weight: 500;
line-height: 1.2;
color: #1A1A26;
margin-bottom: 40px;
padding-bottom: 34px;
position: relative;
}
#home01 .wrapper h1::after {
content: '';
position: absolute;
bottom: 0;
width: 100px;
height: 1px;
left: 50%;
margin-left: -50px;
background-color: #000;
}
#home01 .wrapper p {
font-size: 14px;
line-height: 2.7;
color: #888890;
margin-bottom: 70px;
}
#home01 .wrapper p span {
display: inline-block;
font-weight: 500;
font-size: 18px;
color: #000;
}
#home01-slide-wrap li {
  display: block !important;
}
#home01-slide-wrap li a {
  display: block;
  margin: 0 3vw;
}
#home01-slide-wrap img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 40vw;
  margin: auto;
}
#home01 p.en{
  font-family: 'Libre Caslon Text', serif;
  font-size: 75px;
  display: inline-block;
  color: #1A1A26;
  font-style: italic;
  line-height: 1;
  margin-bottom: 30px;
}
#home01 p.ja{
  /*font-size: 40px;*/
  font-size: 18px;
  font-weight: 500;
  display: inline-block;
  color: #1A1A26;
  line-height: 1;
  padding: 0 20px;
}
@media screen and (max-width:1480px) {
#home01-slide-wrap img {
  max-width: 60vw;
}
}
@media screen and (max-width:1480px){
  #home01 .wrapper h1{
    font-size: 66px;
  }
}
@media screen and (max-width:768px) {
#home01-slide-wrap img {
  max-width: 90vw;
}
#home01 .wrapper h1{/*------------*/
  font-size: 40px;
}
#home01 p.en{
  font-size: 8vw;
  margin-bottom: 30px;
}
/*#home01 p.ja{
  font-size: 5vw;
}*/
}



#home02 {
display: flex;
flex-wrap: wrap;
}
#home02-studio {
width: 100%;
min-height: 460px;
background-repeat: no-repeat;
background-size: cover;
background-position: center;
position: relative;
text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.home02-harajuku {
background-image: url("images/Placeholder01.jpg");
}
.home02-shimokitazawa {
background-image: url("images/Placeholder02.jpg");
}
.home02-online {
background-image: url("images/Placeholder03.jpg");
}
.home02-online::before 
 {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #fff;
opacity: .6;
z-index: 1;
}
.home02-harajuku::before ,
.home02-shimokitazawa::before {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #000000;
opacity: .6;
z-index: 1;
}
.home02-harajuku .home02-inner,
.home02-shimokitazawa .home02-inner {
color: #fff;
}



#home02-left,#home02-right {
width: 50%;
height: calc( 100vh - 80px );
max-height: 920px;
min-height: 560px;
background-repeat: no-repeat;
background-size: cover;
background-position: center;
position: relative;
}
#home02-left {
background-image: url("images/Placeholder-2.png");
}
#home02-left::before {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #000000;
opacity: .4;
z-index: 1;
}
#home02-right {
background-image: url("images/Placeholder-1.png");
}
#home02-right::before {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #FFFFFF;
opacity: .63;
z-index: 1;
}

.home02-inner {
position: relative;
z-index: 2;
padding: 60px;
}
#home02-left .home02-inner {
margin-left: auto;
color: #fff;
}
#home02-right .home02-inner {
margin-right: auto;
}
.home02-inner .studio-name {
font-size: 18px;
line-height: 1.2;
margin-bottom: 1em;
}
.home02-inner .studio-name img {
max-width: 100%;
}
.home02-inner h2 {
font-size: 48px;
letter-spacing: .02em;
font-weight: 500;
line-height: 1.2;
margin-bottom: .6em;
}
.home02-inner h2 img {
max-width: 100%;
}
.home02-inner h3 {
font-size: 40px;
letter-spacing: .05em;
font-weight: 500;
line-height: 1.2;
margin-bottom: .6em;
}
.home02-inner h3:before {
content:'' ;
border-top: 1px solid #fff;
width: 45%;
max-width: 320px;
display: block;
margin: 0 auto;
margin-top: -.2em;
margin-bottom: .4em;
}
.home02-inner p {
font-size: 16px;
font-weight: 300;
line-height: 1.8;
max-width: 660px;
margin: 0 auto ;
}
.home02-inner a {
display: inline-block;
font-weight: 300;
height: 46px;
font-size: 18px;
line-height: 44px;
box-sizing: border-box;
text-align: center;
transition: .3s;
margin: 3em auto 0;
padding: 0 1.6em;
}
.home02-harajuku .home02-inner a ,
.home02-shimokitazawa .home02-inner a {
border: 1px solid #fff;
background-color: rgba(66,66,66,.4);
}
.home02-online .home02-inner a {
border: 1px solid #000;
background-color: rgba(255,255,255,.2);
}
.home02-inner a:hover {
border: 1px solid #000 !important;
background-color: rgba(0,0,0,1) !important;
color: #fff !important;
}
@media screen and (max-width:767px) {
#home02 {
  flex-direction: column;
}
#home02-left,#home02-right {
width: 100%;
height: calc( 100vh - 60px );
max-height: 500px;
min-height: 380px;
}
.home02-inner {
max-width: 500px;
  margin-left: auto;
  margin-right: auto;
padding: 0 5%;
padding-top: 10%;
  padding-bottom: 10%;
}

.home02-inner .studio-name {
font-size: 16px;
}
.home02-inner h2 {
font-size: 34px;
}
.home02-inner h3 {
font-size: 24px;
}
.home02-inner p {
font-size: 14px;
text-align: left
}
.home02-inner a {
font-size: 16px;
}
}

#home02 .wrapper {
margin-top: 70px;
width: 100%;
  box-sizing: border-box;
}
#home02-link-wrap {
display: flex;
justify-content: space-between;
}
.home02-link-inner {
width: 48.6%;
border: 1px solid #000;
text-align: center;
border-radius: 10px;
padding: 4.7% 3.36% 3.36%;
box-sizing: border-box;
position: relative;
}
.home02-link-inner h3 {
font-size: 18px;
font-weight: 500;
line-height: 1.2;
margin-bottom: .3em;
}
.home02-link-inner p {
font-family: 'Montserrat',sans-serif;
font-size: 32px;
color: #000;
font-weight: 600;
line-height: 1.6;
margin-bottom: calc(1.2em + 53px);
}
.home02-link-inner a {
  position: absolute;
  bottom: 14.36%;
  left: calc(50% - 220px);
display: block;
width: 93.28%;
max-width: 440px;
height: 53px;
background-color: #000;
color: #fff;
margin: auto;
font-family: 'Montserrat',sans-serif;
font-size: 18px;
font-weight: 700;
line-height: 53px;
border-radius: 2px;
}

@media screen and (max-width:1099px) {
#home02-link-wrap {
  flex-direction: column;
  align-items: center;
}
.home02-link-inner {
width: 100%;
  max-width: 600px;
  margin: auto;
}
.home02-link-inner+.home02-link-inner {
  margin-top: 20px;
}
.home02-link-inner p{
  margin-bottom: 1.2em;
}
.home02-link-inner a {
  position: static;
  width: 100%;
}
}
@media screen and (max-width:767px) {
  .home02-link-inner{
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .home02-link-inner p{
    font-size: 28px;
    margin-bottom: .9em;
  }
}








#home03 .wrapper {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 140px;
}
#home03-left,#home03-right {
width: 48.6%;
}
.home03-inner {
height: 100%;
min-height: 520px;
}
#home03-left iframe {
width: 100%;
margin-right: auto;
max-width: 470px;
height: 100%;
}
#home03-right .home03-inner>div:first-child {
font-family: 'Playfair Display',serif;
font-size: 16px;
line-height: 1.2;
color: #888890;
margin-bottom: 10px;
}
#home03-right h2 {
font-size: 36px;
font-weight: 500;
line-height: 1.2;
margin-bottom: .6em;
margin-bottom: 30px;
padding-bottom: 16px;
position: relative;
}
#home03-right h2::after {
content: '';
position: absolute;
bottom: 0;
width: 100px;
height: 1px;
left: 0;
background-color: #000;
}
@media only screen and ( max-width : 767px ) {
#home03 .wrapper {
  flex-direction: column-reverse;
}
#home03-left,#home03-right {
width: 100%;
}
  .home03-inner {
    min-height: 0;
  }
  /*----------------
  #home03-right .home03-inner>div:first-child{
    text-align: center;
  }
  #home03-right h2 {
    text-align: center;
  }
  #home03-right h2::after {
    left: calc(50% - 50px);
  }*/
#home03-left iframe {
  margin-top: 50px;
max-width: 768px;
width: calc(100% + 40px);
height: 360px;
  margin-left: -20px;
  margin-right: -20px;
  display: block;
}
  #home03+footer {
    margin-top: 0;
}

}











.pc,.pc1000{
  display: block;
}
.sp,.sp1000{
  display: none;
}
@media screen and ( max-width : 1000px ) {
  .pc1000{
    display: none;
  }
  .sp1000{
    display: block;
  }
}
@media screen and ( max-width : 767px ) {
  .pc{
    display: none;
  }
  .sp{
    display: block;
  }
}
.breadcrumbs{
  padding-top: 150px;
  margin-bottom: 15px;
  font-size: 14px;
  color: #888890;
  line-height: 1.7;
}
.breadcrumbs+.sec{
  padding-top: 0;
}
.breadcrumbs span{
  margin: 0 3px;
}
.breadcrumbs span:first-child{
  margin-left: 0;
}
@media screen and ( max-width : 767px ) {
  .breadcrumbs{
    padding-top: 50px;
  }
}

p:enpty::before{
  display: none;
}
.sec{
  display: block;
  padding: 90px 0 0;
}
.sec h1,.h_text,.h_text2{
  font-size: 36px;
  font-weight: 500;
  line-height: 1.4;
  color: #1A1A26;
  margin-bottom: 15px;
}
.sec h2 span{
  font-size: 16px;
  color: #888890;
  display: block;
  margin-bottom: 10px;
}
.h_text{
  position: relative;
  text-align: center;
  padding-bottom: 17px;
  margin-bottom: 25px;
}
.h_text::after{
  position: absolute;
  content: "";
  bottom: 0;
  left: calc(50% - 50px);
  width: 100px;
  height: 1px;
  background: #000;
}
.h_text+p{
  text-align: center;
}
.sec p{
  font-size: 14px;
  color: #888890;
  line-height: 1.7;
  margin-bottom: 30px;
}
.sec img{
  width: 100%;
}
.flexbox{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.flexbox.col3 li{
width: 31%;
padding-bottom: 60px;
position: relative;
}
.btn01 a{
  display: inline-block;
  background: #000;
  color: #fff;
  text-align: center;
  padding: 14px 20px;
  line-height: 1.3;
  height: 60px;
  box-sizing: border-box;
}

.object-fit-cover{
    font-family: 'object-fit: cover;';
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.object-fit-contain{
    font-family: 'object-fit: contain;';
    height: 100%;
    object-fit: contain;
    width: 100%;
}
@media screen and (max-width: 1000px) {
  .flexbox{
    flex-direction: column;
  }
  .flexbox.col3 li{
    width: 100%;}
  .flexbox.col3 li:last-child{
    padding-bottom: 0;}
}




.wpcf7{
  border: 15px solid #F5F6F6;
  box-sizing: border-box;
  padding: 9% 5% 11%;
}
.wpcf7 dt{
  color: #888890;
  font-size: 14px;
  width: 80px;
  box-sizing: border-box;
}
.wpcf7 dt label{
  display: block;
  height: 100%;
}
.wpcf7 dt,
.wpcf7 .input_wrap dd input,
.wpcf7 select{
  height: 40px;
  line-height: 40px;
}
.wpcf7 .input_wrap{
  display: flex;
  align-items: center;
  border-bottom: 1px solid #DADEDF;
}
.wpcf7 .input_wrap+.input_wrap,
.wpcf7 .input_selectwrap,
.wpcf7 .input_textareawrap{
  margin-top: 45px;
}
.wpcf7 .input_wrap dd,
.wpcf7 .input_textareawrap dd{
  flex: 1;
}
.wpcf7 .input_wrap dd input{
  display: block;
  width: 100%;
  border: 0;
  font-size: 14px;
}
.wpcf7 .input_selectwrap{
  position: relative;
  border-bottom: 1px solid #DADEDF;
}
.wpcf7 .input_selectwrap label{
  display: block;
}
.wpcf7 .input_selectwrap label::after{
  position: absolute;
  content: "▼";
  top: 50%;
  right: 10px;
  font-size: 14px;
  margin-top: -10px;
  color: #888890;
}
.wpcf7 select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  border: 0;
  font-size: 14px;
  padding-right: 14px;
  color: #888890;
}
.wpcf7 .input_textareawrap{
  display: flex;
  border-bottom: 1px solid #DADEDF;
}
.wpcf7 .input_textareawrap dt{
  height: 40px;
  line-height: 40px;
  height: 110px;
}
.wpcf7 .input_textareawrap dd textarea{
  resize: none;
  display: block;
  width: 100%;
  height: 110px;
  font-size: 14px;
  border: 0;
  box-sizing: border-box;
  padding: 11px 0;
  padding-right: 14px;
}
.wpcf7-submit{
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  background-color: #1A1A26;
  color: #fff;
  margin-top: 50px;
  width: 100%;
  height: 60px;
  line-height: 60px;
  letter-spacing: 3.2px;
  font-size: 16px;
  text-align: center;
}
.wpcf7 .ajax-loader{
  display: none !important;
}
.wpcf7 .wpcf7-not-valid-tip{
  font-size: 14px;
}
.wpcf7-response-output{
  font-size: 14px;
  margin: 1em 0 !important;
}
.wpcf7 .input_wrap input:-webkit-autofill{
  animation-name: onAutoFillStart;
  transition: background-color 50000s ease-in-out 0s;
}



.content_row2{
  display: flex;
}
.content_row2 .left_content{
  flex: 1;
}
.content_row2 .sidebar{
  width: 200px;
}
.sidemenu{
  padding-top: 85px;
  padding-left: 55px;
  width: 200px;
}
.sidemenu li{
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.sidemenu li::after{
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 40px;
  height: 2px;
  background: #000;
}
.sidemenu li a{
  color: #1A1A26;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
}
.sidemenu li a span{
  font-size: 16px;
  display: block;
  margin-top: 5px;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .content_row2{
    flex-direction: column;
  }
  .sidemenu{
    padding-top: 85px;
    padding-left: 0;
    width: 100%;
  }
}





#about01 .aboutbg01{
  background-image: url("images/about01.png");
  background-size: cover;
  background-position: center;
  height: 52vw;
  max-height: 620px;
}
#about02 .classes{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#about02 .slick-slide{
  margin-right: 10px;
  margin-left: 10px;
}
#about02 .classes li{
  width: 31%;
  border: 1px solid #000;
  padding: 38px 0;
  text-align: center;
  box-sizing: border-box;
  transition: background .2s, color .2s;
  overflow: hidden;
}
#about02 .classes h3{
  font-size: 24px;
  font-weight: 500;
  color: #1A1A26;
  text-align: center;
  margin-bottom: 25px;
}
#about02 .classes li .classtxt{
  display: flex;
  width: 200%;
}
#about02 .classes li:hover .classtxt{
  transform: translateX(-50%);
}
#about02 .classes li p{
  font-size: 16px;
  margin-bottom: 0;
  padding: 0 7%;
  width: 100%;
}
#about02 .classes li .en{
  transform: rotateX(100%);
  display: block;
  color: #fff;
}
#about02 .classes li:hover{
  background: #000;
}
#about02 .classes li:hover h3{
  color: #fff;
}
@media screen and (min-width: 1001px) {
  #about02 .classes li:nth-of-type(n+4){
    margin-top: 30px;
  }
}
@media screen and (max-width: 1000px) and (min-width: 768px) {
  #about02 .classes li{
    width: 48%;
  }
  #about02 .classes li:nth-of-type(n+3){
    margin-top: 4%;
  }
}
@media screen and (max-width: 767px) {
  #about01 .aboutbg01{
    background-image: url("images/about01sp.png");
  }
  #about02 .classes{
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
  }
  #about02 .classes li{
    width: 90%;
    margin-top: 30px;
    margin-right: 10px;
    padding: 25px 0;
    display: inline-block;
    overflow: hidden;
  }
  #about02 .classes h3{
    margin-bottom: 15px;
  }
  #about02 .classes li p{
    padding: 0 4% 20px;
    white-space: normal;
  }
}
#about03{
  background: #F8F8F8;
  padding: 90px 0 45px;
}
#about03 img{
  padding-top: 10px;
  margin-bottom: 45px;
}
#about03 .lessons{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 55px;
}
#about03 .lessons li{
  width: 48%;
}
#about03 .lessons h3{
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 15px;
  font-size: 16px;
  font-weight: 500;
}
#about03 .lessons  h3::after{
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 50px;
  height: 2px;
  background: #000;
}
#about03 .lessons p{
  line-height: 2.3;
  margin-bottom: 0;
}
#about03 .btn01{
  text-align: center;
}
#about03 .btn01 a{
  height: auto;
}
#about03 .btn01 a span{
  font-size: 16px;
  padding: 5px 0;
  display: inline-block;
}
/*--------------------
#about03 .btn01 a{
  height: auto;
}
*/
#about03 .btn01 a span:last-child{
  font-size: 12px;
  display: block;
}
@media screen and (max-width: 767px) {
  #about03 .lessons li{
    width: 100%;
  }
  #about03 .lessons li+li{
    margin-top: 35px;
  }
}

#about04 ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: start;
}
#about04 ul::before,
#about04 ul::after{
  content: "";
  width: 23%;
  height: 0;
  order: 1;
}
#about04 li{
  width: 23%;
  position: relative;
  background: #B0BAAA;
  transition: .2s;
}
#about04 li.juri{
  width: 48.7%;
}

#about04 li.juri a.link-juri{
  width: 47.5%;
  display: block;
}
#about04 li img{
  display: block;
}
#about04 li:hover img{
  opacity: 0;
}
#about04 li.juri:hover img{
  opacity: 1;
}
#about04 li.juri a:hover img{
  opacity: .6;
}
#about04 li .instructor_wrap{
  position: absolute;
  top: 4%;
  left: 4%;
  width: 92%;
  height: 92%;
  color: #fff;
  opacity: 0;
  transition: .2s;
}
#about04 li.juri .instructor_wrap{
  opacity: 1;
  width: 48.5%;
  left: 50%;
}
#about04 li:hover .instructor_wrap{
  background: #ABB5A5;
  opacity: 1;
}
#about04 li.juri:hover .instructor_wrap{
  background: transparent;
}
#about04 li .instructor_wrap>div{
  display: inline-block;
  position: relative;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  max-width: 200px;
}
#about04 li h3{
  font-size: 16px;
  font-weight: 500;
  padding-bottom: 12%;
}
#about04 li h3 span{
  display: block;
  font-size: 14px;
}
#about04 li .insta_name{
  font-size: 14px;
  padding-bottom: 9%;
}
#about04 li .insta_name i{
  font-size: 22px;
  display: inline;
  padding-right: 5px;
  vertical-align: bottom;
}
#about04 li .values{
  font-size: 14px;
  line-height: 1.7;
  font-weight: 300;
}

#team-instructor{padding: 120px 0 0;}
#team-instructor h2{
font-size: 36px;
font-weight: 500;
line-height: 1.4;
position: relative;
margin-bottom: 10px;
}
#team-instructor h3{
font-size: 26px;
font-weight: 500;
line-height: 1.4;
position: relative;
padding-bottom: 10px;
margin-top: 60px;
}
#team-instructor h3::after {
position: absolute;
content: "";
bottom: 0;
left: 0;
width: 57px;
height: 3px;
background: #000;
}
#team-instructor ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: start;
}
#team-instructor li{
margin-top:30px;
  width: 23%;
  margin-right: 2%;
  position: relative;
}
#team-instructor li{
margin-top:26px;
  width: 23%;
  margin-right: 2.6%;
  position: relative;
}
#team-instructor li h4{
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 6px;
}
#team-instructor li .insta_name{
  font-size: 14px;
}
#team-instructor li .insta_name i{
  font-size: 22px; vertical-align: middle;
  padding-right: 5px; display: inline;
}

@media screen and (min-width: 1001px) {
  #about04 li:nth-of-type(n+4){
    margin-top: 2.6%;
  }
  #team-instructor li:nth-of-type(4n){
    margin-right: 0;
  }
}
@media screen and (max-width: 1000px) and (min-width: 768px) {
  #about04 li,
  #about04 ul::before,
  #about04 ul::after{
    width: 31%;
  }
  #about04 li:nth-of-type(n+3){
    margin-top: 3%;
  }
  #about04 li.juri{
    width: 65.5%;
  }
  #team-instructor li{
    width: 31%;
  margin-right: 3.5%;
  }
  #team-instructor li:nth-of-type(3n){
  margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  #about04{
    padding: 45px 0 0;
  }
  /*
  #about04 li{
    width: 100%;
    max-width: 500px;
    margin: auto;
  }
  #about04 ul::before,
  #about04 ul::after{
    width: 0;
  }
  #about04 li+li{
    margin-top: 4%;
  }*/
  #about04 li,
  #about04 ul::before,
  #about04 ul::after{
    width: 48%;
  }
  #about04 li.juri{
    width: 100%;
  }

#about04 li.juri a{
  width: 48%;
  display: block;
}
  #about04 li:nth-of-type(n+2){
    margin-top: 4%;
  }
  #about04 li .instructor_wrap{
  }
  #about04 li h3{
    font-size: 12px;
    padding-bottom: 0;
  }
  #about04 li .insta_name{
    font-size: 10px;
    padding-bottom: 2%;
  }
  #about04 li .insta_name i{
    font-size: 10px;
    vertical-align: middle;
  }
  #about04 li .values{
    font-size: 10px;
    line-height: 1.5;
  }
  #team-instructor li{
    width: 48%;
  margin-right: 4%;
  }
  #team-instructor li:nth-of-type(2n){
  margin-right: 0;
  }


#team-instructor li h4 {
font-size: 14px;
}
#team-instructor li .insta_name {
font-size: 12px;
}
  
}


#juri01{
min-height: 430px;
position: relative;
}
#juri02{
min-height: 430px;
position: relative;
}
#juri01 .juribg01 {
position: absolute;
top: 0;
right: 0;
width: 50%;
height: 100%;
background-image: url("images/juri01.jpg");
background-size: cover;
}
#juri01 .inner {
position: relative;
width: 45%;
margin-right: auto;
padding-bottom: 40px;
}
#juri02 .juribg02 {
position: absolute;
top: 0;
width: 50%;
height: 100%;
background: url("images/juri02.jpg") center center;
background-size: cover;
}
#juri02 .inner {
position: relative;
width: 43%;
margin-left: auto;
padding-bottom: 40px;
}

@media screen and (max-width: 767px) {
#juri01.sec,
#juri02.sec {
padding: 40px 0 0;
}
#juri01 .inner,
#juri02 .inner {
width: 100%;
padding-bottom: 20px;
}
#juri01 .juribg01,
#juri02 .juribg02 {
position: relative;
width: 100%;
height: 70vw;
}
}


.studio{
  position: relative;
  height: 600px;
}
.studiobg{
  width: 50%;
  position: absolute;
  top: 0;
  height: 0;
  padding-top: 600px;
  background-size: cover;
  background-position: center;
}
.studio h2{
  color: #1A1A26;
  font-size: 24px;
  font-weight: 500;
  margin-top: 150px;
  margin-bottom: 30px;
  line-height: 1.1;
}

.studio .studiotxt{
  position: relative;
  width: 40%;
  top: -150px;
  padding-top: 150px;
  margin-left: auto;
}
@media screen and (min-width: 1001px) {
  .studio.reverse .studiobg{
    right: 0;
  }
  .studio.reverse .studiotxt{
    margin-left: 0;
  }
}
@media screen and (max-width: 1000px) {
  .studiobg{
    width: 100%;
    position: relative;
    padding-top: 0;
    height: 60vw;
    max-height: 600px;
  }
  .studio .studiotxt{
    position: static;
    width: 100%;
    padding: 12% 3% 10%;
    height: auto;
    box-sizing: border-box;
  }
  .studio h2{
    margin-top: 0;
  }

}
@media screen and (max-width: 375px) {
  .studio .studiotxt{
    padding-left: 0;
    padding-right: 0;
  }
}
#studio01 .studio{
  background-color: #F8F8F8;
}
#studio01 .studio:nth-child(2){
  margin-top: 130px;
}
#studio01 .studiobg{
  width: calc(50% + 60px);
}
#studio01.harajuku01 .studiobg01{
  background-image: url("images/harajuku01.png");
}
#studio01.harajuku01 .studiobg02{
  background-image: url("images/harajuku02.png");
}
#studio01.harajuku01 .studiobg03{
  background-image: url("images/harajuku03.png");
}
#studio01.harajuku01 .studiobg04{
  background-image: url("images/harajuku04.png");
}
#studio01.shimokita01 .studiobg01{
  background-image: url("images/shimokita01.jpg");
}
#studio01.shimokita01 .studiobg02{
  background-image: url("images/shimokita02.jpg");
}
#studio01.shimokita01 .studiobg03{
  background-image: url("images/shimokita03.jpg");
}
#studio01.shimokita01 .studiobg04{
  background-image: url("images/shimokita04.jpg");
}
#studio01 .studio h2{
  color: #1A1A26;
  font-size: 24px;
  font-weight: 500;
  margin-top: 150px;
  margin-bottom: 30px;
  line-height: 1.1;
}
#studio01 .studio p{
  color: #888890;
  font-size: 16px;
  line-height: 2.3;
  margin-bottom: 0;
}
@media screen and (max-width: 1000px) {
  #studio01 .studio{
    width: calc(100% - 40px);
    height: auto;
    margin: 0 auto 55px;
  }
  #studio01 .studiobg{
    width: 100%;
  }
  #studio01 .studio h2{
    margin-top: 0;
    line-height: 1.3;
  }
}


#online_studio01 .studio{
  background-color: #000;
  max-height: 1080px;
  height: 90vw;
}
#online_studio01 .studio_slidewrap{
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
  background: #fff;
}
#online_studio01 .studio_slide{
  height: 100%;
}
#online_studio01 .studiobg{
  background: #fff;
  background-size: cover;
  background-position: center;
}
#online_studio01 .studio_slide .slick-list li{
  height: 90vw;
  max-height: 1080px;
  background-size: cover;
  background-position: center;
  display: block !important;
}
#online_studio01 .studiobg0101{background-image: url("images/online_studio0101.jpg"); }
#online_studio01 .studiobg0102{background-image: url("images/online_studio0102.jpg"); }
#online_studio01 .studiobg0103{background-image: url("images/online_studio0103.png"); }
#online_studio01 .studiobg0104{background-image: url("images/online_studio0104.png"); }
#online_studio01 .studiobg0201{background-image: url("images/online_studio0201.png"); }
#online_studio01 .studiobg0202{background-image: url("images/online_studio0202.jpg"); }
#online_studio01 .studiobg0203{background-image: url("images/online_studio0203.jpg"); }
#online_studio01 .studiobg0204{background-image: url("images/online_studio0204.png"); }
#online_studio01 .studiobg0301{background-image: url("images/online_studio0301.jpg"); }
#online_studio01 .studiobg0302{background-image: url("images/online_studio0302.jpg"); }
#online_studio01 .studiobg0303{background-image: url("images/online_studio0303.png"); }
#online_studio01 .studiobg0304{background-image: url("images/online_studio0304.png"); }
#online_studio01 .slide_dots{
  position: absolute;
  top: calc(50% - 84px);
  right: 40px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
#online_studio01 .slide_dots li{
  background-image: none !important;
  height: auto;
  padding: 5px 0;
}
#online_studio01 .slide_dots button{
  width: 32px;
  height: 32px;
  color: #fff;
  background: #1A1A26CC;
  border: 0;
  border-radius: 30px;
  cursor: pointer;
}
#online_studio01 .slide_dots .slick-active button{
  color: #1A1A26;
  background: #fff;
}
#online_studio01 .studiobg02{
  background-image: url("images/online_studio02.png");
}
#online_studio01 .studiobg03{
  background-image: url("images/online_studio03.png");
}
#online_studio01 .studio h2{
  color: #fff;
  font-size: 43px;
  font-weight: 500;
  margin-top: 280px;
  margin-bottom: 45px;
  line-height: 1;
}
#online_studio01 .studio p{
  color: #fff;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  margin-bottom: 45px;
}
#online_studio01 .studio .font_playfair{
  font-size: 24px;
  font-weight: 500;
  font-style: italic;
}
#online_studio01 .studio a{
  display: block;
  border: 1px solid #fff;
  color: #fff;
  font-weight: 300;
  width: 160px;
  height: 60px;
  font-size: 14px;
  line-height: 58px;
  box-sizing: border-box;
  text-align: center;
  transition: .3s;
}
#online_studio01 .studio a:hover{
  background: #fff;
  color: #000;
}
@media screen and (min-width: 1001px) {
  #online_studio01 .studio.reverse .studio_slidewrap{
    right: 0;
  }
}
@media screen and (max-width: 1000px) {
  #online_studio01 h1+p{
    margin-bottom: 50px;
  }
  #online_studio01 .studio{
    height: auto;
    max-height: none;
  }
  #online_studio01 h1+p{
    margin-bottom: 50px;
  }
  #online_studio01 .studio .studiotxt{
    padding: 110px 0 55px;
  }
  #online_studio01 .studio h2{
    margin-top: 0;
  }
  #online_studio01 .studio_slidewrap{
    position: relative;
    width: 100%;
  }
  #online_studio01 .slick-dotted.slick-slider{
    margin-bottom: 0;
  }
  #online_studio01 .studio_slide .slick-list li{
    height: 50vw;
    min-height: 480px;
  }
  #online_studio01 .slide_dots{
    flex-direction: row;
    top: auto;
    bottom: 45px;
    left: 0;
    width: 100%;
  }
  #online_studio01 .slide_dots li{
    padding: 0 7px;
    height: auto;
  }
}
@media screen and (max-width: 375px) {
  #online_studio01 .studio h2{
    font-size: 30px;
  }
  #online_studio01 .studio .font_playfair{
    margin-top: -35px;
  }
}


#institute01 h1+p{
  margin-bottom: 100px;
}
#institute01 .institutebg{
  width: 100%;
  height: 520vw;
  max-height: 620px;
  margin-bottom: 140px;
  background-size: cover;
  background-position: center;
  background-image: url("images/Institute01.jpg");
}
#institute01 .studio{
  height: 900px;
}
#institute01 .studiobg{
  padding-top: 900px;
}
#institute01 .studio.reverse{
  height: 840px;
}
#institute01 .reverse .studiobg{
  padding-top: 840px;
}
#institute01 .studio.workshop{
  height: 580px;
}
#institute01 .workshop .studiobg{
  padding-top: 580px;
}
#institute01 .studiobg01{
  background-image: url("images/Institute02.jpg");
}
#institute01 .studiobg02{
  background-image: url("images/Institute03.jpg");
}
#institute01 .studio h2{
  font-size: 35px;
  margin-top: 50px;
  line-height: 1.3;
}
#institute01 .studio p a{
  text-decoration: underline;
}
#institute01 .rys200{
  width: 107px;
  display: block;
}
#institute01 .btn01 a{
  line-height: 60px;
  padding: 0;
  min-width: 210px;
  padding-left: 1.2em; padding-right: 1.2em;
}

#institute01 .instituteyoutube{
  position: relative;
  z-index: 10;
  text-align: center;
  padding-top: 60px;
}
#institute01 .instituteyoutube .movie{
  position: relative;
}
#institute01 .instituteyoutube .movieOuterWapper {
  margin: auto;
}
#institute01 .instituteyoutube .movieWapper {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
#institute01 .instituteyoutube .movieWapper iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
@media screen and (max-width:767px) {
	#institute01 .instituteyoutube .movieOuterWapper {
		width: calc(100% - 40px);
    top: 0;
	}
}
@media screen and (min-width:768px) {
	#institute01 .instituteyoutube .movieOuterWapper {
		width: 90%;
    max-width: 750px;
    top: 0.1%;
	}
}
#institute01 .instituteyoutube iframe{
  width: 100%;
  height: 50vw;
  max-height: 620px;
}
#institute01 .instituteyoutube p{
  color: #1A1A26;
  font-size: 26px;
  padding-top: 10px;
  text-align: right;
  margin: 0 auto;
  max-width: 750px;
}
#institute01 .instituteyoutube p a{
  font-size: 18px;
  margin-left: 1em;
}
#institute01 .studiobg03{
  background-image: url("images/Institute03.png");
}
@media screen and (max-width: 1000px) {
  #institute01 .institutebg{
    margin-bottom: 0;
  }
  #institute01 .studio,
  #institute01 .studio.reverse,
  #institute01 .studio.workshop{
    height: auto;
  }
  #institute01 .studio h2{
    margin-top: 0;
  }
  #institute01 .studiobg,
  #institute01 .reverse .studiobg,
  #institute01 .workshop .studiobg{
    padding-top: 0;
    height: 83vw;
    max-height: 420px;
  }
  #institute01 .instituteyoutube{
    padding-top: 50px;
  }
}


#institute02{
  background: #F8F8F8;
  padding: 120px 0 110px;
}
#institute02 h2 {
  font-size: 36px;
  font-weight: 500;
  margin-bottom: 55px;
  line-height: 1.3;
  color: #1A1A26;
}
#institute02 .institute_point>div{
  width: calc(50% - 16px);
}
#institute02 .institute_right>div{
  width: 48%;
}
#institute02 .institute_right img{
  width: 54px;
  display: block;
  padding-bottom: 28px;
}
#institute02 .institute_right h3{
  color: #1A1A26;
  font-size: 18px;
  font-weight: 500;
  padding-bottom: 10px;
}
@media screen and (max-width: 1000px) {
  #institute02 .institute_point>div{
    width: 100%;
  }
  #institute02 .institute_right{
    flex-direction: row;
  }
}
#institute #contact_formwrap{
  padding-top: 100px;
  margin-top: -100px;
}
@media screen and (max-width: 1000px) {
  #institute #contact_formwrap{
    padding-top: 80px;
    margin-top: -80px;
  }
}

#contact_us01{
  position: relative;
  padding-bottom: 90px;
  z-index: 10;
}
#contact_us01 .btn01 a{
  width: 210px;
  height: 60px;
  padding: 0;
  font-size: 14px;
  box-sizing: border-box;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: left;
}
#contact_us01 .btn01 a+a{
  margin-left: 35px;
}
@media screen and (max-width: 767px) {
  #contact_us01 .btn01{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }
  #contact_us01 .btn01 a{
    margin: 20px 15px 0;
  }
  #contact_us01 .btn01 a+a{
    margin-left: 15px;
  }
}
#contact_us02{
  position: relative;
  margin-top: -80px;
  padding-top: 0;
  border-top: 80px solid #fff;
  display: flex;
  z-index: 11;
}
.contact_us0201{
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url("images/contact_us01.jpg");
  width: calc(50% + 260px);
}
.contact_us0201inner{
  background: rgba(255, 255, 255, 0.7);
}
.contact_us0201inner>div{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.contact_us0201inner,
.contact_us0201 .wrapper{
  height: 850px;
  padding-top: 85px;
  padding-bottom: 85px;
  box-sizing: border-box;
}
.contact_us0201 .wrapper{
  max-width: 1200px;
}
.contact_us0201 .contactarea{
  width: calc(50% + 160px);
}
.contact_us0201 .contactarea>div{
  width: 47%;
}
.contactarea h2{
  text-align: left;
}
.contactarea h2::after{
  left: 0;
}
.contactarea h3{
  margin-bottom: 15px;
}
.contacttxt{
  margin-bottom: 50px;
}
.contact_us0201 .contactarea .contacttxt h2::after{
  background: #F07F84;
}
.contact_us0201 .contactarea .contactform h2::after{
  background: #000;
}
.contact_us0201 .contactarea .contactform h2 span{
  color: #000;
}
#contact_us .wpcf7{
  border: 0;
  padding: 0;
}
#contact_us .wpcf7 dt{
  width: 90px;
}
#contact_us .wpcf7 dt label{
  padding-left: 14px;
}
#contact_us .wpcf7 .input_wrap+.input_wrap,
#contact_us .wpcf7 .input_selectwrap,
#contact_us .wpcf7 .input_textareawrap{
  margin-top: 15px;
}
#contact_us .wpcf7 dt,
#contact_us .wpcf7 .input_wrap dd input,
#contact_us .wpcf7 select{
  background: none;
  height: 50px;
  line-height: 50px;
}
#contact_us .wpcf7 form[data-status="invalid"] .input_wrap dd input{
  height: 25px;
}
#contact_us .wpcf7 select{
  padding: 0 14px;
  color: #000;
}
#contact_us .wpcf7 select option{
  color: #000;
}
#contact_us .wpcf7 .input_textareawrap dt{
  height: 150px;
}
#contact_us .wpcf7 .input_textareawrap dd textarea{
  padding-right: 14px;
  background: none;
  border-bottom: 0;
  height: 150px;
}
#contact_us .wpcf7-submit{
  width: 210px;
  font-size: 14px;
  letter-spacing: 0;
  margin-top: 15px;
}

#contact_us02 .wpcf7 .input_wrap,
#contact_us02 .wpcf7 .input_textareawrap{
  border: 1px solid #000;
}
#contact_us02 .wpcf7 dt{
  color: #000;
}
#contact_us02 .wpcf7 select{
  border: 1px solid #000;
}
#contact_us02 .contact_map{width: calc(50% - 260px);flex-direction: column; background-color: #000;padding-left: 2px;}
#contact_us02 .contact_map iframe+iframe{border-top: 2px solid #000;margin-top: 2px;}

#contact_us03 .wpcf7 .input_wrap,
#contact_us03 .wpcf7 select,
#contact_us03 .wpcf7 .input_textareawrap{
  border: 1px solid #fff;
  color: #fff;
}
#contact_us03 .wpcf7 dt,
#contact_us03 .wpcf7 .input_wrap input,
#contact_us03 .wpcf7 textarea,
#contact_us03 .wpcf7 .input_selectwrap::after,
#contact_us03 .wpcf7 form .wpcf7-response-output{
  color: #fff;
}
/*chromeのオートコンプリート*/
@keyframes onAutoFillStart { from {} to {}}
#contact_us03 .wpcf7 .input_wrap input:-webkit-autofill {
  animation-name: onAutoFillStart;
  transition: background-color 50000s ease-in-out 0s;
  -webkit-text-fill-color: #fff !important;
}
#contact_us03 .wpcf7-submit{
  color: #000;
  background: #fff;
}
#contact_us02 iframe{
  flex: 1;
  position: relative;
}
@media screen and (max-width: 1000px) {
  #contact_us02{
    display: block;
    border-top-width: 60px;
    margin-top: -60px;
  }
  .contact_us0201{
    width: 100%;
  }
  #contact_us02 .contact_map {
    width: 100%;
  }
  .contact_us0201inner,
  .contact_us0201 .wrapper{
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
  }
  .contact_us0201inner{
    padding-top: 95px;
    padding-bottom: 100px;
  }
  .contact_us0201inner>div{
    position: relative;
  }
  .contact_us0201 .contactarea{
    width: 100%;
  }
  .contact_us0201 .contactarea>div{
    width: 100%;
  }
  #contact_us02 iframe{
    height: 42vw;
    min-height: 300px;
    max-height: 400px;
    width: 100%;
    display: block;
  }
}


#contact_us03{
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url("images/contact_us02.jpg");
  padding: 62px 0 68px;
  border-top: 80px solid transparent;
  margin-top: -80px;
  position: relative;
}
#contact_us03 .mask{
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}
#contact_us03 h2,
#contact_us03 h2 span,
#contact_us03 h3,
#contact_us03 p{
  color: #fff;
}
#contact_us03 h2::after{
  background: #fff;
}
#contact_us03 .contacttxt{
  width: 40%;
}
#contact_us03 .contactform{
  flex: 1;
}
@media screen and (max-width: 1000px) {
  #contact_us03{
    border-top-width: 60px;
    margin-top: -60px;
  }
  #contact_us03 .contacttxt{
    width: 100%;
  }
}

#contact_us04{
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url("images/contact_us03.png");
  padding: 295px 0 77px;
}
#contact_us04 h2{
  font-size: 24px;
  color: #fff;
  line-height: 1.7;
  padding-bottom: 30px;
  margin-bottom: 35px;
}
#contact_us04 h2::after{
  background: #fff;
}
#contact_us04 p{
  color: #fff;
  margin-bottom: 90px;
  line-height: 1.8;
}
#contact_us04 .btn01{
  text-align: center;
}
#contact_us04 .btn01 a{
  width: 230px;
  height: 60px;
  padding: 0;
  line-height: 60px;
  box-sizing: border-box;
}
#contact_us footer{
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  #contact_us04{
    padding-top: 80px;
    background-image: url("images/contact_us03sp.jpg");
  }
  #contact_us04 h2{
    font-size: 20px;
    text-align: left;
  }
  #contact_us04 h2::after{
    left: 0;
  }
}

#news01{
  padding-top: 0;
}
#news01 h1+p a,
#news01 .h_text2+p a{
  text-decoration: underline;
}


.newsarchive{
  margin-bottom: 55px;
}
.newsarchive li{
  display: flex;
align-items:center;
}
.newsarchive .newsimg{
  width: 117px;
  padding-right: 33px;
}
.newsarchive .newscont{
  flex: 1;
}
.newsarchive li{
  padding-top: 38px;
  padding-bottom: 40px;
  border-bottom: 1px solid #E6E5E1;
}

.newsarchive h2{
  font-size: 14px;
  color: #1A1A26;
  margin-bottom: 5px;
}
.single-news .newscont .newstitle{
  font-size: 22px;
  font-weight: 500;
}
.newsarchive time{
  color: #888890;
  font-size: 12px;
  display: block;
  margin-bottom: 15px;
}
.newsarchive p{
  margin-bottom: 20px;
}
.newsarchive p {
  /*font-size: 0;*/
  font-weight: 300;
  /*color: transparent;*/
  /*line-height: 0;*/
  /*margin-bottom: 0;*/
  transition:
    font-size .3s .1s,
    color .1s,
    line-height .3s .1s,
    margin-bottom .3s .1s;
}
/*.newsarchive .on p {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 20px;
  transition:
    font-size .3s,
    color .3s .3s,
    line-height .3s,
    margin-bottom .3s;
}*/

.newsarchive .newsbody {
display: none;
}
.single-news .newsarchive .newsbody {
display: block;
}
.newsarchive .newsbody img {
max-width: 100%;
width: auto; height: auto;
}

.newsarchive .newsbody .newsbodyinner {
opacity:0;
transition:all .3s;
}
.newsarchive .newsbody.on .newsbodyinner {
opacity:1;
}
.newsarchive .newstoggle {
  font-size: 13px;
  font-weight: 400;
  color: #1A1A26;
  line-height: 15px;
  cursor: pointer;
  display: table;
  position: relative;
  padding-left: 1.25em;
}

.newsarchive .newstoggle::before {
  content: "▶";
  position: absolute;
  left: 0;
  top:0;
  font-size: 12px;
  line-height: 15px;
}
.newsarchive .newstoggle::after {
  content: "▲";
  position: absolute;
  left: 0;
  top:0;
  font-size: 12px;
  line-height: 15px;
  opacity: 0;
}
.newsarchive .newstoggle span ,
.newsarchive .newstoggle::before ,
.newsarchive .newstoggle::after {
  transition: .1s;
}
.newsarchive .on .newstoggle span ,
.newsarchive .on .newstoggle::before {
  opacity: 0;
}
.newsarchive .on .newstoggle::after {
  opacity: 1;
}
.olderposts{
  font-size: 14px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .newsarchive{
    padding-top: 50px;
  }
}



#special_workshop{
  height: 100vh;
}
#special_workshop01{
  padding-bottom: 65px;
}
#special_workshop01 h2{
  font-size: 36px;
  font-weight: 500;
  line-height: 1.4;
  color: #1A1A26;
  margin-bottom: 15px;
  padding-top: 70px;
}
#special_workshop01 h2 span{
  font-size: 14px;
}
#special_workshop01 .special_workshop01img{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
	align-items:  flex-start;
}
#special_workshop01 .special_workshop01img img:nth-of-type(n+3){
  padding-top: 3%;
}
#special_workshop01 .special_workshop01img .flex1{
  width: 31%;
}
#special_workshop01 .special_workshop01img .flex2{
  width: 66%;
}
#special_workshop01 .btn01 a,
#special_workshop02 .btn01 a{
  line-height: 60px;
  width: 305px;
  padding: 0;
}


#special_workshop02{
  background: #F8F8F8;
  padding: 80px 0 0;
}
#special_workshop02 ul{
  position: relative;
}
#special_workshop02 ul::before,
#special_workshop02 ul::after{
  content: "";
  width: 23%;
  height: 0;
  order: 1;
}
#special_workshop02 li{
  /*width: 31%;*/
  margin-bottom: 80px;
  position: relative;
  display: flex;
  justify-content: space-between;
}
#special_workshop02 li .workshop_image{width: 32%;}
#special_workshop02 li .workshop_info{flex:1; margin-left: 42px;}
#special_workshop02 li .workshop_image .workshop_image_inner{padding-top: 83%; position: relative;}
#special_workshop02 li .workshop_image .workshop_image_inner img{position: absolute; top: 0;}
#special_workshop02 h3{
  text-align: left;
  font-size: 24px;
  font-weight: 500;
line-height: 1.4;
color: #1A1A26;
margin-bottom: .5em;
}
#special_workshop02 li p{
  text-align: left;
}
#special_workshop02 .workshop_date{margin-bottom: 8px; font-weight: 500; color: #1A1A26;}
#special_workshop02 .workshop_content.more{
overflow: hidden; position: relative; 
}
#special_workshop02 .workshop_content.more::before{content: '';
display: block;
position: absolute; bottom: 0;
width: 100%; height: 5em;
background: linear-gradient(rgba(248, 248, 248, 0), rgba(248, 248, 248, .7), rgba(248, 248, 248, 1.0), rgba(248, 248, 248, 1.0));
}
#special_workshop02 .workshop_content.more .btn-more{
display: inline-block;
font-size: 14px;
position: absolute; bottom: 0;
border-bottom: 1px solid;
cursor: pointer;
}
.workshop_price-btn{display: flex; flex-wrap: wrap; margin-top: 1.8em;}
.workshop_price{margin-right: 30px; flex: 1; min-width: 290px;}
.workshop_price p{font-weight:500; color: #1A1A26;}

@media screen and (max-width: 1000px) {
  #special_workshop02 ul{
    flex-direction: row;
  }
}
@media screen and (max-width: 767px) {
#special_workshop02 li{  display: block;}
#special_workshop02 li .workshop_image{
margin-bottom: 20px;
margin-left: -20px;
width: calc(100% + 40px);
}
#special_workshop02 li .workshop_info{margin-left: 0;}

  #special_workshop02{
    padding: 70px 0 0;
  }
  #special_workshop02 li{
    width: 100%;
  }
  #special_workshop02 li+li{
    margin-top: 50px;
  }
  .workshop_price-btn{display: block; border-top: 1px solid; padding-top: 1.5em;}
  .workshop_price {margin-right: 0;}
  #special_workshop02 .btn01 a{  width: 100%;}
}



#special_workshop03{
  box-sizing: border-box;
  padding-top: 0;
  overflow: hidden;
}
#special_workshop03 .wrapper{
  display: flex;
}
#special_workshop03 .studiotxt{
  padding-top: 80px;
  padding-bottom: 50px;
  width: 50%;
}
#special_workshop03 h3 {
  color: #1A1A26;
  font-size: 36px;
  font-weight: 500;
  margin-bottom: 50px;
  line-height: 1.1;
}
#special_workshop03 .btn01 a{
  width: 210px;
  padding: 0;
  line-height: 60px;
}
#special_workshop03 .special_workshop03bg{
  width: 45%;
  margin-left: 5%;
}
#special_workshop03 .special_workshop03bg ul{
  display: flex;
  flex-wrap: wrap;
  width: 800px;
  height: 100%;
}
#special_workshop03 li{
  width: 33.3333%;
  position: relative;
  overflow: hidden;
}
#special_workshop03 li>div{
  position: relative;
  height: 0;
  padding-top: 83%;
}
#special_workshop03 li>div>div{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1000px) {
  #special_workshop03 .wrapper{
    display: block;
  }
  #special_workshop03 .studiotxt{
    width: 100%;
  }
  #special_workshop03 .special_workshop03bg{
    width: calc(100% + 40px);
    margin-left: -20px;
    height: auto;
  }
  #special_workshop03 .special_workshop03bg ul{
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #special_workshop03 li{
    width: 50%;
  }
}
#special_workshop footer{
  margin-top: 0;
}




#event_gallery01 ul{
  padding-top: 50px;
  display: flex;
  flex-wrap: wrap;
}
#event_gallery01 li{
  width: 20%;
  position: relative;
  overflow: hidden;
}
#event_gallery01 li>div{
  position: relative;
  height: 0;
  padding-top: 83%;
}
#event_gallery01 li>div>div{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#event_gallery01 li h2,
#event_gallery01 li p{
  display: none;
}
@media screen and (max-width: 1000px) and (min-width: 768px) {
  #event_gallery01 li{
    width: 33.3333%;
  }
}
@media screen and (max-width: 767px) {
  #event_gallery01 li{
    width: 50%;
  }
}


#online_workshop01 h1+p{
  margin-bottom: 80px;
}
#online_workshop02{
  background: #000;
  color: #fff;
  overflow: hidden;
  padding-top: 0;
}
#online_workshop02 .online_workshop0201{
  width: 40%;
  float: left;
  padding: 95px 4% 0;
  box-sizing: border-box;
}
#online_workshop02 .eventtxt .btn01{
  text-align: center;
}
#online_workshop02 .eventtxt .btn01 a{
  background: #fff;
  color: #000;
  width: 100%;
  max-width: 210px;
  height: 50px;
  line-height: 50px;
  margin-top: 30px;
  padding: 0;
}
#online_workshop02 h3{
  font-size: 36px;
  margin-bottom: 50px;
}
#online_workshop02 p{
  color: #fff;
}
@media screen and (max-width: 1000px){
  #online_workshop02 .online_workshop0201{
    float: none;
    width: 100%;
    padding: 90px 20px 20px;
  }
}
#event_workshop footer,
#online_workshop footer,
#online_workshop02 footer,#event_workshop2 footer,
#yoga footer{
  margin-top: 0;
}

#yoga01 h1+p{
  margin-bottom: 80px;
}

#schedule01 .btn01{
  margin-top: 20px;
}
#schedule01 .btn01 a{
  margin-top: 20px;
  padding: 0;
  line-height: 60px;
  width: 210px;
  display: block;
}

.eventbox{
  width: 20%;
  float: left;
  list-style: none;
  padding-bottom: 100px;
}
.eventbox .eventimg>div{
  position: relative;
  height: 0;
  padding-top: 83%;
}
.eventbox .eventimg>div>div{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.eventbox .eventtxt{
  margin: 0 4%;
}
.eventbox h4{
  font-size: 16px;
  margin-top: 48px;
  margin-bottom: 10px;
}
.eventbox p{
  margin-bottom: 10px;
}
.eventbox span{
  font-size: 16px;
  font-weight: 500;
}
@media screen and (max-width: 1000px){
  .eventbox{
    width: 33.3333%;
  }
}
@media screen and (max-width: 767px){
  .eventbox{
    width: 50%;
    padding-bottom: 50px;
  }
  .eventbox h4{
    margin-top: 20px;
  }
}
.yogatxt{
  padding-top: 0;
}
.yogatxt p{
  font-size: 36px;
  text-align: center;
  color: #1A1A26;
  font-weight: 500;
  padding: 40px 0 50px;
  margin-bottom: 0;
}
@media screen and (max-width: 767px){
  .yogatxt p{
    padding: 30px 0;
    font-size: 25px;
  }
}

#waiver h1+p{
  line-height: 3.7;
  margin-bottom: 20px;
}
#waiver01 h1{
  margin-bottom: 55px;
}
#waiver01 h1+p{
  margin-bottom: 20px;
}
#waiver01 h1+p+p{
  margin-bottom: 70px;
}
#waiver01 ul{
  color: #888890;
  font-size: 14px;
  padding-bottom: 30px;
}
#waiver01 li{
  margin-bottom: 25px;
}
@media screen and (max-width: 767px){
  #waiver01 h1+p{
    line-height: 2;
  }
  #waiver01 h1+p+p{
    margin-bottom: 50px;
  }
}
.print{
  background: #1A1A26;
  color: #fff;
  width: 210px;
  height: 50px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-left: auto;
  padding: 0 20px;
  box-sizing: border-box;
  cursor: pointer;
}
.print img{
  width: 30px;
}

#international_shipping01,
#orders_and_shipping01,
#term_and_conditions01{
  padding-top: 0;
},
#international_shipping01 h1+p,
#orders_and_shipping01 h1+p
#term_and_conditions01 h1+p{
  margin-bottom: 20px;
}
#international_shipping01 ul,
#orders_and_shipping01 ul,
#term_and_conditions01 ul{
  color: #888890;
  font-size: 14px;
  padding-bottom: 30px;
}
#international_shipping01 li{
  margin-bottom: 25px;
}
#orders_and_shipping01 li,
#term_and_conditions01 li{
  margin-bottom: 25px;
  padding-left: 1em;
  text-indent: -1em;
}



#price01{
  padding-bottom: 60px;
}
#price01 .flexbox>li{
  width: 31%;
  max-width: 300px;
  border: 1px solid #ECECEC;
  position: relative;
}
#price01 .flexbox::before,
#price01 .flexbox::after{
  content: "";
  width: 31%;
  max-width: 300px;
  height: 0;
  order: 1;
}
#price01 .p_head{
  padding: 25px;
  border-bottom: 1px solid #ECECEC;
  text-align: center;
}
#price01 .p_name{
  font-size: 18px;
  color: #1A1A26;
  margin-bottom: 5px;
  font-weight: 500;
  letter-spacing: 5px;
}
#price01 .p_price{
  font-size: 36px;
  color: #1A1A26;
  margin-bottom: 0;
  font-weight: 900;
  line-height: 1;
}
#price01 .p_price span{
  font-size: 14px;
  font-style: italic;
  color: #888890;
  padding-left: 5px;
}
#price01 .p_body{
  padding: 24px 30px 115px;
}
#price01 .p_txt{
  line-height: 1.8;
}
#price01 .p_list{
  margin-bottom: 60px;
  color: #1A1A26;
  font-size: 14px;
  text-align: center;
  line-height: 2.2;
}
#price01 ul ul{
  margin-bottom: 60px;
}
#price01 ul ul li{
  color: #1A1A26;
  font-size: 14px;
  text-align: center;
  margin-bottom: 10px;
}
#price01 .btn01 a{
  line-height: 50px;
  height: 50px;
  padding: 0;
  width: 210px;
  position: absolute;
  bottom: 65px;
  left: calc(50% - 105px);
  transition: .3s;
}
/*#price01 .btn01 a:hover{
  background: #F07F84;
}*/
@media screen and (min-width: 1001px){
  #price01 .flexbox>li:nth-of-type(n+4){
    margin-top: 30px;
  }
}
@media screen and (max-width: 1000px) and (min-width: 768px){
  #price01 .flexbox{
    flex-direction: row;
  }
  #price01 .flexbox>li{
    width: 48%;
    max-width: none;
  }
  #price01 .flexbox>li:nth-of-type(n+3){
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px){
  #price01 .flexbox>li{
    width: 100%;
    max-width: none;
  }
  #price01 .flexbox>li+li{
    margin-top: 30px;
  }
  #price01 .p_body{
    padding-bottom: 50px;
  }
  #price01 .btn01 a{
    bottom: 40px;
  }
}

#price02{
  background: #F8F8F8;
  padding: 80px 0 100px;
}
#price02 h2{
  font-size: 42px;
  color: #1A1A26;
  margin-bottom: 40px;
}
#price02 ul{
  display: flex;
  justify-content: space-between;
}
#price02 li{
  /*width: 31%;*/
  width: 22%;
}
#price02 li .ja{
  font-size: 19px;
  font-weight: 500;
  margin-bottom: 20px;
  color: #1A1A26;
  line-height: 1.3;
}
#price02 .btn01 a{
  padding: 0;
  width: 100%;
  max-width: 290px;
  height: auto;
  padding: 13px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}


@media screen and (max-width: 1000px){
  #price02 ul{
    display: block;
  }
  #price02 li{
    width: 100%;
  }
}
@media screen and (max-width: 767px){
  #price02 h2{
    font-size: 25px;
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 375px){
  #price02 .btn01 a,
  #price02 .btn01 a span{
    display: block;
  }
  #price02 .btn01 a .bullet{
    display: none;
  }
}

#price03{
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url("images/price01.png");
  padding: 295px 0 75px;
}
#price03 h2{
  font-size: 24px;
  color: #fff;
  padding-bottom: 35px;
  margin-bottom: 35px;
  line-height: 1.7;
}
#price03 h2::after{
  background: #fff;
}
#price03 p{
  color: #fff;
  margin-bottom: 70px;
}
#price03 .btn01{
  text-align: center;
}
#price03 .btn01 a{
  padding: 0;
  line-height: 60px;
  width: 230px;
}
@media screen and (max-width: 1000px) {
  #price03 .contacttxt{
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #price03 h2 {
    font-size: 20px;
    text-align: left;
  }
  #price03 h2::after {
    left: 0;
  }
}
#harajuku_price footer,
#online_price footer{
  margin-top: 0;
}


.footer01-item-wrap {
  max-width: 960px;
}
.footer03-copy span {
  display: inline-block;
  margin: 0.25em;
}
@media screen and (max-width:640px) {
  .footer01-item-wrap {
    flex-direction: column;
    /*max-width: 400px;*/
    margin: auto;
  }
  .footer01-item+.footer01-item {
    margin-top: 30px;
  }
  #footer03 {
    padding-bottom: 40px;
  }
  #footer03 .wrapper {
    flex-direction: column;
    max-width: 400px;
    margin: auto;
    text-align: center;
  }
  .footer03-tel {
    margin-top: 20px;
  }
}


#faq_sec01 .wrapper {
  display: flex;
  padding-bottom: 30px;
  justify-content: space-between;
}
.faq_menu {
  width: 220px;
}
.faq_left {
  flex: 1;
  padding-right: 40px;
}
.faq_left h1 {
  font-size: 36px;
  font-weight: 500;
  color: #1A1A26;
  line-height: 1.2;
  margin-bottom: 25px;
}
.faq_left h1 span {
  font-size: 14px;
  font-weight: 400;
  color: #888890;
  display: block;
  margin-bottom: 20px;
}
.faq_left li {
  padding-top: 25px;
}
.faq_left li+li {
  margin-top: 25px;
  border-top: 1px solid #E6E5E1;
}
.faq_left h2 {
  font-size: 16px;
  font-weight: 500;
  color: #1A1A26;
  line-height: 1.2;
  margin-bottom: 15px;
  display: table;
}
.faq_left h2 span {
  font-size: 12px;
  font-weight: 400;
  color: #888890;
  display: block;
  margin-top: 10px;
}
.faq_left h2+div {
  padding-bottom: 15px;
}
.faq_left p {
  font-size: 0;
  font-weight: 300;
  color: transparent;
  line-height: 0;
  margin-bottom: 0;
  transition:
    font-size .3s .1s,
    color .1s,
    line-height .3s .1s,
    margin-bottom .3s .1s;
}
.faq_left .on p {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 20px;
  transition:
    font-size .3s,
    color .3s .3s,
    line-height .3s,
    margin-bottom .3s;
}
.faq_left .faqtoggle {
  font-size: 13px;
  font-weight: 400;
  color: #1A1A26;
  line-height: 15px;
  cursor: pointer;
  display: table;
  position: relative;
  padding-left: 1.25em;
}

.faq_left .faqtoggle::before {
  content: "▶";
  position: absolute;
  left: 0;
  top:0;
  font-size: 12px;
  line-height: 15px;
}
.faq_left .faqtoggle::after {
  content: "▲";
  position: absolute;
  left: 0;
  top:0;
  font-size: 12px;
  line-height: 15px;
  opacity: 0;
}
.faq_left .faqtoggle span ,
.faq_left .faqtoggle::before ,
.faq_left .faqtoggle::after {
  transition: .1s;
}
.faq_left .on .faqtoggle span ,
.faq_left .on .faqtoggle::before {
  opacity: 0;
}
.faq_left .on .faqtoggle::after {
  opacity: 1;
}


.faq_menu {
  margin-top: -10px;
}
.faq_menu .faq_menu_cat a {
  font-size: 18px;
  font-weight: 500;
  color: #1A1A26;
  line-height: 1.2;
  padding: 10px 0;
  display: block;
  position: relative;
}
.faq_menu li:not(.open) .faq_menu_cat a {
  margin-top: 4px;
}
.faq_menu li:not(.open) .faq_menu_cat a::before {
  content: "";
  position: absolute;
  width: 40px;
  height: 2px;
  background-color: #000;
  bottom: 0;
  left: 0;
}
.faq_menu .faq_menu_cat a span {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2;
  padding: 4px;
  display: block;
  margin-top: 3px;
}
.faq_menu .open ul {
  border-left: 2px solid #000;
  margin-bottom: 8px;
  margin-top: -6px;
  padding: 6px 0 6px 10px;
}
.faq_menu_content {
  padding: 10px;
}
.faq_menu_content a {
  font-size: 14px;
  font-weight: 400;
  color: #1A1A26;
  line-height: 1.2;
  display: block;
}
.faq_menu_content a span {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.2;
  display: block;
  margin-top: 5px;
}


@media screen and (max-width:980px) {
#faq_sec01 .wrapper {
  padding-bottom: 30px;
  flex-direction: column;
}
.faq_menu {
  width: 100%;
  margin-top: 100px;
}
.faq_left {
  flex: auto;
  padding-right: 0;
}
}


#company01{padding-top: 0;}
#company01 h1{
  margin-bottom: 55px;
}
#company01 th,
#company01 td{
font-size: 14px;
color: #888890;
line-height: 1.7;
padding-bottom: 20px;
}
#company01 th{padding-right: 30px; white-space: nowrap;}
#company01 td th{padding-right: 0;}
#company01 td th,
#company01 td td{padding-bottom: 0;}














.contactinfo iframe{
  width: 100%;
  height: 50vw;
  max-height: 650px;
  margin-bottom: 75px;
}
.contactinfo .flexbox>div{
  width: 48%;
}
.contactinfo .h_text{
  margin-bottom: 25px;
  padding-bottom: 0;
  text-align: left;
  line-height: 1.1;
}
.contactinfo .h_text::after{
  display: none;
}
.contactinfo .h_text+p{
  text-align: left;
  height: 100px;
}
.contactinfo .address p{
  color: #1A1A26;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 20px;
  line-height: 1.5;
  display: flex;
}
/*.contactinfo .address p.mail{
  color: #888890;
}*/
.contactinfo .address p span{
  display: block;
  color: #888890;
  margin-left: 56px;
  padding: 40px 0 20px;
}
.contactinfo .address i{
  width: 15px;
  margin-right: 40px;
  color: #888890;
}
.contactinfo .address img{
  width: 16px;
  padding-right: 40px;
}
@media screen and (max-width: 1000px) {
  .contactinfo .flexbox{
    display: block;
  }
  .contactinfo .flexbox>div{
    width: 100%;
  }
}










.modal{
  position:absolute;
  width:100%;
  height:100%;
  top:0;
  left:0;
  display:none;
  font-size: 15px;
}
body.on {
  height: 100vh;
  overflow: hidden;
  box-sizing: border-box;
}
body.on .modal{
  display: block;
}
.overLay {
  position:absolute;
  top:0;
  left:0;
  background: #fff;
  opacity: .8;
  width:100%;
  height:100vh;
  z-index:9999;
}
.modal .mcontent {
  position:absolute;
  z-index:10000;
  top:50%;
  left:50%;
  width: 100%;
  max-width: 1100px;
  min-height: 300px;
  transform: translate(-50%,-50%);
  padding: 20px;
  box-sizing: border-box;
}
.modal .modalclose{
  position: absolute;
  top: 0;
  right: 20px;
  font-size: 34px;
}
.modal .modalimg{
  text-align: center;
  margin: 20px auto;
  width: 100%;
  max-width: 580px;
  display: none;
}
.modal .modalimg img{
  width: 100%;
}
.modal h2{
  font-size: 29px;
  font-weight: 500;
  margin-bottom: 10px;
}
.modal p{
  font-size: 24px;
  padding-bottom: 70px;
}
@media screen and (max-width: 1000px) {
  .modal p{
    font-size: 21px;
  }
}
@media screen and (max-width: 767px) {
  .modal h2{
    font-size: 20px;
  }
  .modal p{
    font-size: 16px;
  }
}

iframe {
border: 1px solid black;
width: 100%;
box-sizing: border-box;
}
.output {
background: #eee;
}

/*teacher training*/
#tt-regist iframe{border: 0; background-color: #f0f0f0; padding-top: 30px; height: 2750px;}
#tt-policy .sec h2{font-size: 1.4em; margin-bottom: 20px; margin-top: 55px}

@media only screen and ( max-width : 480px ) {
#tt-regist iframe{height: 3200px;}
}

/*training_200-hour-teacher*/
.training_200_hour_teacher01img{
  margin-top: 25px;
}
.training_200_hour_teacher01img img{
object-fit: cover;
  height: 52vw;
  max-height: 620px;
  min-height: 380px;
}
#training_200_hour_teacher02 .box-img{
  margin:  0 auto 20px;
  max-width: 500px;
}
@media screen and (min-width: 1001px) {
.training_200_hour_teacher01img{
  margin-top: 50px;
}
#training_200_hour_teacher02 li{padding-bottom: 20px;}
#training_200_hour_teacher02 li .instagram{bottom: 0; position: absolute;}
}
#training_200_hour_teacher03 h2{
font-size: 24px;
}
#training_200_hour_teacher03 h2+p{
margin-top: 20px;
}

#training_200_hour_teacher04 .wrapper {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-top: 100px;
}
@media screen and (max-width: 767px) {
#training_200_hour_teacher04 .wrapper {
flex-direction: column-reverse;
}
}


h1.hs2,
h2.hs2,
h3.hs2,
h4.hs2{font-size:16px;}
h1.hs,
h2.hs,
h3.hs,
h4.hs{font-size:18px;}
h1.hl,
h2.hl,
h3.hl,
h4.hl{font-size:20px;}
h1.hl2,
h2.hl2,
h3.hl2,
h4.hl2{font-size:22px;}
h1.hl3,
h2.hl3,
h3.hl3,
h4.hl3{font-size:24px;}
h1.hl4,
h2.hl4,
h3.hl4,
h4.hl4{font-size:26px;}
h1.hl5,
h2.hl5,
h3.hl5,
h4.hl5{font-size:28px;}

.s5{font-size:.5em;}
.s4{font-size:.6em;}
.s3{font-size:.7em;}
.s2{font-size:.8em;}
.s1{font-size:.9em;}
.l1{font-size:1.1em;}
.l2{font-size:1.2em;}
.l3{font-size:1.3em;}

.b{font-weight: 500;}

.tl{text-align: left !important;}
.tc{text-align: center !important;}
.tr{text-align: right !important;}






button.olderposts {
	background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}





/*block-youtube*/
.block-youtube{
  position: relative;
  z-index: 10;
  text-align: center;
  padding-top: 80px;
}
.block-youtube .movie{
  position: relative;
}
.block-youtube .movieOuterWapper {
  margin: auto;
}
.block-youtube .movieWapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.block-youtube .movieWapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
@media screen and (max-width:767px) {
  .block-youtube .movieOuterWapper {
    width: calc(100% - 40px);
    top: 0;
  }
}
@media screen and (min-width:768px) {
  .block-youtube .movieOuterWapper {
    width: 90%;
    max-width: 750px;
    top: 0.1%;
  }
}
.block-youtube iframe{
  width: 100%;
  height: 50vw;
  max-height: 620px;
}
.block-youtube p{
  color: #1A1A26;
  font-size: 26px;
  padding-top: 10px;
  text-align: right;
  margin: 0 auto;
  max-width: 750px;
}
.block-youtube p a{
  font-size: 18px;
  margin-left: 1em;
}
@media screen and (max-width: 1000px) {
  .block-youtube{
    padding-top: 50px;
  }
}





