@charset "UTF-8";
/* CSS Document */

/*
01 Root
*/


/*
01 Root
========================================================================== */
.dirRoot {}

/* Header ===================== */
header.dirRoot {
  display:flex;
  flex-direction:column-reverse;
  height:100%;
  position:relative;
  overflow:hidden;
}
.firstview {
  display:flex;
  height:100%;
}
.firstview .slider { width:100%; }
.firstview .slider .box {
  display:flex;
  height:100%;
  position:relative;
}
.firstview .slider .box picture { width:100%; }
.firstview .slider .box picture img {
  height:100%;
  object-fit:cover;
}
.firstview .slider .box h2 {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  color:var(--red);
  position:absolute;
  top:50%;
  left:16%;
  transform:translate(0,-75%);
  z-index:1;
}
.firstview .slider .box h2:before {
  content:'';
  width:375px;
  aspect-ratio:1;
  background-image:url(../images/common/ico-flower.svg);
  background-size:cover;
  background-position:center;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-70%,-57.5%);
  opacity:.5;
  z-index:-1;
}
.firstview .slider .box h2 i {
  padding:0 0 35px;
  font-size:27px;
  line-height:1.9;
  white-space:nowrap;
}
.firstview .slider .box h2 a {
  padding:3px 60px;
  letter-spacing:.06rem;
  line-height:1.2;
  border:1px solid var(--red);
  border-radius:5vw;
  position:relative;
  transition:.3s ease-out;
}
.firstview .slider .box h2 a:before {
  content:'';
  width:4px;
  height:4px;
  border-bottom:1px solid var(--red);
  border-right:1px solid var(--red);
  position:absolute;
  top:50%;
  right:15px;
  transform:translate(0,-75%) rotate(45deg);
  transition:.3s ease-out;
}
.firstview .slider .box h2 a:hover {
  background-color:var(--white);
  color:var(--red-filter);
}
.firstview .slider .box h2 a:hover:before {
  border-bottom:1px solid var(--red-filter);
  border-right:1px solid var(--red-filter);
}
.firstview .sns {
  position:absolute;
  top:30px;
  right:30px;
}
.firstview .sns ul li img { opacity:.85; }
.firstview .sns ul li:hover img { opacity:1; }

/* Main ===================== */
main.dirRoot {}

/* concept */
.concept { padding:200px 0 0; }
.concept .ttlBasic {
  align-items:flex-end;
  margin:0 0 0 75px;
}
.concept .block { padding:0 75px; }
.concept .block h2 {
  margin:15px 0 35px 0;
  font-size:22px;
  color:var(--red);
  position:relative;
}
.concept .pickup {
  width:100%;
  max-width:1300px;
  margin:30px auto;
  position:relative;
}
.concept .pickup .box picture {
  height:325px;
  position:absolute;
  left:50%;
  z-index:2;
}
.concept .pickup .box {
  display:flex;
  justify-content:flex-end;
}
.concept .pickup .box picture img {
  width:initial;
  height:100%;
}
.concept .pickup .box picture.img01 {
  top:4%;
  transform:translate(-42.5vw,0);
}
.concept .pickup .box picture.img02 {
  top:50%;
  transform:translate(32.5vw,-50%);
}
.concept .pickup .box picture.img03 {
  bottom:-50px;
  transform:translate(-42.5vw,0);
}
.concept .pickup ul {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  width:75%;
  max-width:1000px;
}
.concept .pickup ul li {
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  width:calc(100% / 2);
  aspect-ratio:1;
  margin:0 -10px;
  position:relative;
  z-index:1;
}
.concept .pickup li:nth-child(odd) { top:40px; }
.concept .pickup li:nth-child(3),
.concept .pickup li:nth-child(4) { left:-150px; }
.concept .pickup li:before {
  content:'';
  width:100%;
  aspect-ratio:1;
  background-image:url(../images/common/ico-star-line.svg);
  background-size:cover;
  position:absolute;
  top:0;
  left:50%;
  transform:translate(-50%,0);
  z-index:-1;
}
.concept .pickup li > * {
  background-color:var(--white);
  border-radius:2.25vw;
}
.concept .pickup li em {
  display:flex;
  justify-content:center;
  align-items:center;
  width:50px;
  height:50px;
  font-size:45px;
  color:var(--yellow);
  position:absolute;
  top:60px;
  left:50%;
  transform:translate(-60px,0);
}
.concept .pickup li i {
  margin:15px 0 0 0;
  padding:15px;
  font-size:17px;
  letter-spacing:.04rem;
  line-height:1.8;
  text-align:center;
  color:var(--red);
}
.concept .pickup li b {
  width:80%;
  padding:5px 15px 15px;
  font-size:96%;
  line-height:2.2;
}

/* price */
.price { padding:225px 0 0; }
.price:before { transform:translate(0,-40%) skewY(17.5deg); }
.price .inner { flex-direction:row-reverse; }
.price .ttlBasic { margin:0 75px 0 0; }
.price .block { padding:15px 90px 0 75px; }
.price .block dl {
  display:flex;
  align-items:center;
  width:100%;
  border:1px solid var(--gray);
  border-top:none;
  background-color:var(--white);
}
.price .block dl:first-child { border-top:1px solid var(--gray); }
.price .block dt {
  width:120px;
  padding:20px 30px;
  background-color:var(--yellow);
  text-align:center;
  position:relative;
}
.price .block dd {
  width:calc(100% - 120px);
  padding:0 30px;
}
.price .block dd em {
  font-size:27px;
  line-height:1.2;
  position:relative;
  top:2px;
}
.price .block dd span {
  padding:0 0 0 45px;
  position:relative;
}
.price .block dd span:before {
  content:'';
  width:20px;
  height:1px;
  background-color:var(--black);
  position:absolute;
  top:50%;
  left:10px;
}
.price .block dd > i + i {
  margin:0 0 0 15px;
  padding:0 0 0 20px;
  position:relative;
}
.price .block dd > i + i:before {
  content:'';
  width:1px;
  height:14px;
  background-color:var(--black);
  position:absolute;
  top:4px;
  left:0;
  transform:rotate(45deg);
}
.price .block p { margin:20px 0 0 0; }
.price .block .notes {
  margin:25px 0 0 0;
  font-size:90%;
  letter-spacing:.02rem;
  line-height:1.8;
}
.initialcost {
  width:100%;
  padding:90px 0 0;
}
.initialcost ul {
  display:flex;
  align-items:center;
  margin:25px 0 0 0;
}
.initialcost ul li {
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  width:24%;
  height:125px;
  border:1px solid var(--gray);
  border-radius:10px;
  background-color:var(--white);
  line-height:2.2;
  position:relative;
}
.initialcost ul > li + li { margin:0 0 0 30px; }
.initialcost ul > li + li:before {
  content:'+';
  font-size:22px;
  line-height:1.2;
  position:absolute;
  top:50%;
  left:-22px;
  transform:translate(0,-50%);
}
.initialcost ul li em {
  font-size:27px;
  line-height:1.2;
}
.initialcost ul li:last-child {
  width:28%;
  color:var(--red);
  border:1px solid var(--red);
}
.initialcost ul li:last-child:before {
  content:'=';
  color:var(--black);
}

.present { padding:60px 0 0; }
.discount { padding:60px 0 0; }

.price picture img {
  width:initial;
  height:100%;
}
.price picture.img01 {
  height:300px;
  position:absolute;
  top:250px;
  right:0;
}

/* river */
.river { margin:175px 0 0; }
.river div {
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  overflow:hidden;
  white-space:nowrap;
}
.river picture {
  height:400px;
  margin:0 15px;
}
.river picture img {
  width:initial;
  height:100%;
  border-radius:10px;
}

/* school */
.school { padding:225px 0 0; }
.school .ttlBasic {
  align-items:flex-end;
  margin:0 0 0 75px;
}
.school .ttlArea ul {
  align-items:flex-end;
  justify-content:flex-end;
  margin:35px 0 0 75px;
}

.school .tab-content {
  display:none;
  flex-wrap:wrap;
  padding:0 0 0 75px;
}
.school .tab-content > h2 {
  width:100%;
  font-size:22px;
}
.school .tab-content .block {
  display:flex;
  flex-wrap:wrap;
  width:100%;
}
.school .tab-content .block .info {
  width:calc(50% - 35px);
  padding:40px 0;
  margin:0 35px 0 0;
  border-bottom:1px solid var(--gray);
}
.school .tab-content .block .info:nth-child(1),
.school .tab-content .block .info:nth-child(2) { border-top:1px solid var(--gray); }
.school .tab-content > h2 {
  display:flex;
  align-items:center;
  margin:0 0 20px 0;
  line-height:1.8;
}
.school .tab-content > h2 em {
  font-size:50px;
}
.school .tab-content > h2 i {
  padding:0 0 0 35px;
  margin:0 0 0 12px;
  font-size:17px;
  position:relative;
  top:-2px;
}
.school .tab-content > h2 i:before {
  content:'';
  width:28px;
  height:1px;
  background-color:var(--black);
  position:absolute;
  top:15px;
  left:0;
  transform:rotate(-45deg);
}
.school .block .info ul > li + li { margin:10px 0 0 0; }
.school .block .info h3 {
  flex-direction:column;
  align-items:flex-start;
}
.school .block .info p a {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  padding:4px 100px;
  font-size:93%;
  background-color:var(--yellow);
  border-radius:4px;
  position:relative;
}
.school .block .info p a:before {
  content:'';
  width:6px;
  height:6px;
  border-top:1px solid var(--black);
  border-right:1px solid var(--black);
  position:absolute;
  top:16px;
  right:15px;
  transform:rotate(45deg);
}

/* coach */
.coach { padding:225px 0 0; }
.coach:before { transform:translate(0,-40%) skewY(17.5deg); }
.coach .inner { flex-direction:row-reverse; }
.coach .ttlBasic { margin:0 75px 0 0; }
.coach .ttlArea ul {
  align-items:flex-start;
  justify-content:flex-start;
  margin:35px 0 0 0;
}
.coach .tab-content {
  display:none;
}
.coach .block {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  width:100%;
  padding:15px 75px 0;
  margin:0 0 -85px 0;
}
.coach .modalBox {
  width:calc(33.3% - 30px);
  margin:0 15px;
}
.coach .modalBox .thumb {
  margin:0 0 85px 0;
  position:relative;
}
.coach .modalBox .thumb > * {
  display:flex;
  flex-direction:column;
  align-items:center;
  cursor:pointer;
}
.coach .modalBox .thumb picture {
  width:55%;
  max-width:140px;
  margin:0 0 35px 0;
}
.coach .modalBox .thumb h3 {
  display:flex;
  flex-direction:column;
  align-items:center;
  line-height:1.6;
}
.coach .modalBox .thumb h3 em {
  font-size:27px;
}
.coach .modalBox .thumb h3 i {
  font-size:95%;
  margin:2px 0;
}
.coach .modalBox .thumb h4 i {
  display:inline-flex;
  align-items:center;
  margin:15px 0 0 0;
  padding:0 30px;
  background-color:var(--yellow);
  border-radius:2px;
  font-size:85%;
  line-height:2.2;
}
.coach .modalBox .thumb span {
  width:16px;
  height:16px;
  padding:5px;
  background-color:var(--red);
  border-radius:2px;
  position:absolute;
  top:0;
  left:10px;
}
.coach .modalBox .thumb span hr {
  width:12px;
  height:1px;
  background-color:var(--white);
  position:absolute;
  top:50%;
  left:50%;
}
.coach .modalBox .thumb span hr:nth-child(1) { transform:translate(-50%,-50%) rotate(0deg); }
.coach .modalBox .thumb span hr:nth-child(2) { transform:translate(-50%,-50%) rotate(90deg); }

.modalWindow .modal-container picture {
  display:flex;
  justify-content:center;
  align-items:center;
  width:175px;
  position:sticky;
  top:50px;
}
.modalWindow .modal-container .info {
  width:calc(100% - 450px);
  margin:0 0 0 100px;
}
.modalWindow h3 {
  color:var(--red);
}
.modalWindow h4 {
  margin:0 0 25px 0;
}
.modalWindow h4 i {
  display:inline-flex;
  align-items:center;
  padding:1px 18px 3px;
  background-color:var(--white);
  border:1px solid var(--black);
  border-radius:2px;
  font-size:85%;
}
.modalWindow span {
  padding:25px 0;
  margin:20px 0 0 0;
  border-top:1px solid var(--gray);
  border-bottom:1px solid var(--gray);
}
.modalWindow p {
  padding:0 0 75px 0;
  line-height:2;
}
.modalWindow p em {
  display:block;
  padding:0 0 5px 20px;
  font-size:16px;
  position:relative;
}
.modalWindow p em:before {
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width:7px 4px 0 4px;
  border-color:var(--black) transparent transparent transparent;
  position:absolute;
  top:11px;
  left:3px;
}

/* news */
.news { padding:225px 0 0; }
.news:before { transform:translate(0,-35%) skewY(-17.5deg); }
.news .ttlBasic {
  align-items:center;
  margin:auto;
}
.news .inner ul {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  max-width:1280px;
  padding:0 75px;
  margin:125px 0 0 0;
}
.news .inner ul li {
  width:calc(100% / 4);
  aspect-ratio:1;
  padding:5px;
  border-radius:5px;
  overflow:hidden;
}
.news .inner ul li a {
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  height:100%;
  position:relative;
}
.news .inner ul li a:before,
.news .inner ul li a:after {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  opacity:0;
  transition:.3s ease-out;
}
.news .inner ul li a:before {
  content:'VIEW MORE';
  padding:10px 0 0 0;
  font-family:alternate-gothic-no-3-d,sans-serif;
  font-size:16px;
  z-index:2;
}
.news .inner ul li a:after {
  content:'';
  width:101%;
  height:101%;
  border-radius:10px;
  background-color:var(--white);
}
.news .inner ul li:hover a:before { opacity:1; }
.news .inner ul li:hover a:after { opacity:.92; }
.news .inner ul li img {
  object-fit:cover;
  width:100%;
  height:100%;
  border-radius:10px;
}
.news .sns {
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  margin:75px 0 30px;
}
.news .sns p {
  margin:50px 0 0;
  line-height:2;
  text-align:center;
}

.intro {
  margin:45px 0 35px 0;
  padding:35px 0;
  border-top:1px solid var(--gray);
  border-bottom:1px solid var(--gray);
}
.intro.verThanks { margin:45px 0 0 0; }
.intro h3 {
  padding:0 0 5px 20px;
  font-size:15px;
  line-height:2;
  position:relative;
}
.intro h3:before{
  content:'';
  width:0;
  height:0;
  border-style:solid;
  border-width:7px 4px 0 4px;
  border-color:var(--black) transparent transparent transparent;
  position:absolute;
  top:13px;
  left:3px;
}
.intro ul {
  margin:15px 0;
  line-height:2;
}

@media screen and (max-width:1080px) {

  header.dirRoot .btnForm { display:none; }
  .firstview {
    height:calc(100% - 110px);
    margin:110px 0 0 0;
  }
  .firstview .slider .box h2 {
    left:15%;
    transform:translate(0,-47.5%);
  }
  .firstview .sns { display:none; }

  .concept .ttlBasic {
    align-items:flex-start;
    margin:0;
  }
  .concept .block { padding:0; }
  .concept .block h2 { margin:50px 0 25px 0; }
  .concept .pickup { padding:275px 0 50px; }
  .concept .pickup ul {
    width:100%;
    justify-content:flex-start;
  }
  .concept .pickup ul li {
    width:57.5%;
    margin:-260px 0 0;
  }
  .concept .pickup li:nth-child(odd) {
    top:0;
    left:0;
  }
  .concept .pickup li:nth-child(even) {
    left:calc(100% - 57.5%);
  }


  .concept .pickup .box picture { height:290px; }
  .concept .pickup .box picture.img01,
  .concept .pickup .box picture.img02,
  .concept .pickup .box picture.img03 {
    top:initial;
    bottom:-300px;
    left:50%;
  }
  .concept .pickup .box picture.img01 { transform:translate(-260px,0); }
  .concept .pickup .box picture.img02 { transform:translate(-50%,0); }
  .concept .pickup .box picture.img03 { transform:translate(115px,0); }

  .price { padding:425px 0 0 0; }
  .price .inner { flex-direction:column; }
  .price .ttlBasic { margin:0 50px 0 0; }
  .price .block { padding:50px 0 0 0; }
  .price picture.img01 {
    height:275px;
    top:initial;
    bottom:-5px;
    right:15px;
  }

  .school .ttlBasic {
    align-items:center;
    margin:0;
  }
  .school .tab-content { padding:60px 0 0 0; }
  .school .tab-content > h2 {
    flex-direction:column;
    justify-content:center;
    margin:0 0 75px 0;
    line-height:1.6;
  }
  .school .tab-content > h2 i {
    padding:0;
    margin:0;
    font-size:14px;
    top:initial;
  }
  .school .tab-content > h2 i:before {
    display:none;
  }
  .school .ttlArea ul {
    justify-content:center;
    align-items:center;
    margin:60px 0 0 0;
  }

  .coach .inner { flex-direction:column; }
  .coach .ttlBasic {
    align-items:center;
    margin:0 0 25px 0;
  }
  .coach .ttlArea ul {
    justify-content:center;
    align-items:center;
    margin:60px 0 0 0;
  }
  .coach .block { padding:90px 0 0 0; }

  .news .inner ul {
    justify-content:center;
    padding:0;
    margin:100px 0 0 0;
  }

  .modalWindow .modal-container picture {
    width:175px;
  }
  .modalWindow .modal-container .info {
    width:calc(100% - 250px);
    margin:0 0 0 75px;
  }


}


@media screen and (max-width:840px) {

  .firstview .slider .box h2 {
    left:7.5%;
    transform:translate(0,-65%);
  }
  .firstview .slider .box h2:before {
    width:350px;
    opacity:.25;
    transform:translate(-50%,-57.5%);
  }
  .firstview .slider .box h2 i { font-size:24px; }

  .concept .pickup { padding:50px; }
  .concept .pickup ul li {
    width:100%;
    aspect-ratio:initial;
    margin:30px 0;
    padding:30px 0;
  }
  .concept .pickup ul > li + li {
  }
  .concept .pickup li:nth-child(odd),
  .concept .pickup li:nth-child(even) {
    top:initial;
    left:initial;
  }
  .concept .pickup li > * {
    background-color:initial;
  }
  .concept .pickup li em {
    top:-20px;
    left:-10px;
    transform:translate(0,0);
  }
  .concept .pickup li i {
    width:100%;
    margin:0;
    padding:0;
  }
  .concept .pickup li i br {
    display:none;
  }
  .concept .pickup li b {
    width:100%;
    padding:30px 0 0;
  }
  .concept .pickup li:before {
    width:400px;
    top:50%;
  }
  .concept .pickup li:nth-child(odd):before {
    left:initial;
    right:-50px;
    transform:translate(0,-50%);
  }
  .concept .pickup li:nth-child(even):before {
    left:-50px;
    right:initial;
    transform:translate(0,-50%);
  }

  .school .tab-content .block {
    justify-content:space-between;
  }
  .school .tab-content .block .info {
    width:calc(50% - 10px);
    margin:0;
  }
  .school .block .info p a {
    width:100%;
    padding:5px 0;
  }

  .coach .modalBox {
    width:calc(33.3% - 20px);
    margin:0 10px;
  }

  .price .block dt { padding:30px 30px; }
  .price .block dd {  }
  .price .block dd span {
    display:block;
    padding:0 0 0 0;
  }
  .price .block dd span:before { display:none; }
  .price picture.img01 {
    height:225px;
    bottom:-15px;
  }
  .present,
  .discount { width:calc(100% - 200px); }
  .present br,
  .discount br { display:none; }

  .initialcost ul > li + li { margin:0 0 0 25px; }
  .initialcost ul > li + li:before { left:-20px; }

  .river picture img { border-radius:7px; }

  .modalWindow .modal-container {
    flex-direction:column;
    justify-content:flex-start;
    align-items:center;
  }
  .modalWindow .modal-container picture {
    width:125px;
    position:initial;
    top:0;
  }
  .modalWindow .modal-container .info {
    width:80%;
    margin:50px 0 0 0;
  }
  .modalWindow h3 {
    flex-direction:column;
    align-items:center;
    margin:0 0 20px 0;
  }
  .modalWindow .info h3 em {
    margin:0;
  }
  .modalWindow h4 {
    margin:0 0 40px 0;
    text-align:center;
  }

  .news .inner { padding:0 45px; }
  .news .inner ul li {
    width:calc(100% / 3);
  }

  .intro p br {
    display:none;
  }

}


@media screen and (max-width:600px) {

  .firstview {
    height:calc(100% - 90px);
    margin:90px 0 0 0;
  }
  .firstview .slider .box h2 {
    left:6.5%;
    transform:translate(0,-80%);
  }
  .firstview .slider .box h2:before {
    width:190px;
    transform:translate(-55%,-55%);
  }
  .firstview .slider .box h2 i {
    padding:0 0 20px;
    font-size:17px;
    letter-spacing:.01rem;
  }
  .firstview .slider .box h2 a {
    padding:2px 35px;
    font-size:12px;
  }

  .concept { padding:150px 0; }
  .concept .block h2 { font-size:17px; }
  .concept .pickup { padding:25px; }
  .concept .pickup li {
    margin:25px 0;
    padding:25px 0;
  }
  .concept .pickup li:nth-child(odd):before,
  .concept .pickup li:nth-child(even):before {
    width:300px;
    opacity:.5;
  }
  .concept .pickup li:nth-child(odd):before {
    right:-25px;
  }
  .concept .pickup li:nth-child(even):before {
    left:-25px;
  }
  .concept .pickup li em {
    font-size:50px;
    top:-18px;
    left:-5px;
  }
  .concept .pickup li i {
    padding:20px 0 10px;
    font-size:17px;
  }
  .concept .pickup li i br { display:block; }  
  .concept .pickup li b {
    font-size:100%;
  }
  .concept .pickup .box picture { height:200px; }
  .concept .pickup .box picture.img01,
  .concept .pickup .box picture.img02,
  .concept .pickup .box picture.img03 { bottom:-210px; }
  .concept .pickup .box picture.img01 { transform:translate(55px,0); }
  .concept .pickup .box picture.img02 { transform:translate(-50%,0); }
  .concept .pickup .box picture.img03 { transform:translate(-140px,0); }

  .river picture { height:350px; }

  .price { padding:150px 0 0 0; }
  .price .inner { padding:0 25px 275px; }
  .price .block dl { flex-direction:column; }
  .price .block dt,
  .price .block dd { width:100%; }
  .price .block dt { padding:9px 0; }
  .price .block dd { padding:18px 25px; }
  .price .block dd i { display:block; }
  .price .block dd > i + i {
    margin:0;
    padding:0;
  }
  .price .block dd > i + i:before { display:none; }
  .price .block dd em {
    font-size:30px;
  }
  .price .block dd span {
    padding:3px 0 0 0;
    font-size:95%;
    line-height:1.5;
  }
  .price .block .notes {
    font-size:70%;
  }
  .initialcost ul {
    flex-direction:column;
  }
  .initialcost ul li {
    flex-direction:row;
    width:100%;
    height:initial;
    padding:15px 0 12px;
    border-radius:5px;
  }
  .initialcost ul > li + li { margin:20px 0 0 0; }
  .initialcost ul li i { padding:0 10px 0 0; }
  .initialcost ul > li + li:before {
    font-size:20px;
    top:-20px;
    left:50%;
    transform:translate(-50%,0) rotate(90deg);
  }
  .initialcost ul li:last-child { width:100%; }
  .initialcost ul li em {
    font-size:30px;
    letter-spacing:-.02rem;
  }
  .present, .discount { width:100%; }
  .price picture.img01 {
    height:210px;
    bottom:10px;
    right:initial;
    left:50%;
    transform:translate(-50%,0);
  }

  .river { margin:75px 0 0 0; }

  .ttlArea ul li {
    width:calc(100% / 4);
    font-size:85%;
  }

  .school { padding:135px 0 0 0; }
  .school .ttlBasic { align-items:flex-start; }
  .school .ttlArea ul {
    flex-wrap:wrap;
    justify-content:flex-start;
  }
  .school .tab-content > h2 {
    align-items:flex-start;
    margin:0 0 35px 0;
  }
  .school .tab-content > h2 em {
    font-size:50px;
  }
  .school .tab-content .block .info {
    width:100%;
    margin:0;
  }
  .school .tab-content .block .info:nth-child(2) {
    border-top:none;
  }

  .coach .ttlArea ul {
    flex-wrap:wrap;
    justify-content:flex-start;
  }

  .coach { padding:135px 0 0 0; }
  .coach .ttlBasic { align-items:flex-start; }
  .coach .block {
    justify-content:space-between;
    margin:0;
  }
  .coach .info h3 { align-items:center; }
  .coach .info span br { display:none; }
  .coach .modalBox {
    width:calc(100% / 2 - 5px);
    margin:0;
  }
  .coach .modalBox .thumb {}
  .coach .modalBox .thumb picture {
    width:60%;
  }
  .coach .modalBox .thumb span {
    top:-20px;
  }
  .coach .modalBox .thumb h4 {
    width:100%;
  }
  .coach .modalBox .thumb h4 i {
    justify-content:center;
    width:100%;
    padding:0 0 2px;
  }
  .modalWindow .modal-container {
    padding:50px 0 0 0;
  }
  .modalWindow .modal-container picture {
    width:125px;
  }
  .modalWindow .modal-container .info {
    width:90%;
    margin:30px 0 0 0;
  }
  .modalWindow .info h3 i {
    margin:6px 0;
  }
  .modalWindow h4 {
    margin:0 0 30px 0;
  }
  .modalWindow h4 i {
    font-size:80%;
  }
  .modalWindow p em {
    font-size:22px;
  }
  .modalWindow p em:before {
    top:15px;
  }
  .news { padding:135px 0 0 0; }
  .news .ttlBasic {
    align-items:flex-start;
    padding:0 0 0 30px;
  }
  .news .inner { padding:0 25px; }
  .news .inner ul {
    justify-content:space-between;
  }
  .news .inner ul li {
    width:calc(100% / 2);
  }
  .news .sns p {
    padding:0 25px;
    font-size:85%;
    text-align:left;
  }
  .news .sns p br { display:none; }

}
