@charset "UTF-8";

/* =========================================

  YT TENNIS SCHOOL School SP Style

========================================= */
.l-contents { padding: calc(120 / 750 * 100%) 0 calc(40 / 750 * 100%); }
.l-contents .inner { padding: 0; }

/* ----------------------------------------

  Page Header

----------------------------------------- */

/* Main Visual
----------------------------------------- */
.main-visual { height: auto; }

/* ----------------------------------------

  School Contents

----------------------------------------- */

/* Intro
----------------------------------------- */
.school-intro { padding: calc(55 / 750 * 100%) 0 calc(130 / 750 * 100%); }
.school-intro h4 {
  font-size: calc(28 / 750 * 100vw);
  line-height: calc(54 / 28);
  margin: 0 0 calc(40 / 750 * 100%);
}
.school-intro figure, .school-intro figure:nth-of-type(even) { flex-direction: column; }
.school-intro figure:not(:last-of-type) { margin: 0 0 calc(80 / 750 * 100%); }
.school-intro figure img { padding: 0 calc(70 / 750 * 100%); }
.school-intro figure figcaption {
  font-size: calc((24 * 1.1) / 750 * 100vw);
  line-height: calc(40 / 24);
  margin: calc(40 / 750 * 100%) 0 0;
}
.school-intro figure:nth-of-type(odd) figcaption { padding: 0; }
.school-intro figure:nth-of-type(even) figcaption { padding: 0; }

/* PTR
----------------------------------------- */
.ptr { padding: calc(100 / 750 * 100%) 0 calc(130 / 750 * 100%); }
.ptr h3 i { width: calc(140 / 750 * 100vw); }
.ptr figure, .ptr figure:nth-of-type(odd) { flex-direction: column-reverse; }
.ptr figure { margin: 0 0 calc(80 / 750 * 100%); }
.ptr figure img { padding: 0 calc(135 / 750 * 100%); }
.ptr figure figcaption {
  font-size: calc((24 * 1.1) / 750 * 100vw);
  line-height: calc(40 / 24);
}
.ptr figure:nth-of-type(odd) figcaption { padding: 0; }
.ptr figure:nth-of-type(even) figcaption { padding: 0; }
.ptr p {
  font-size: calc((24 * 1.1) / 750 * 100vw);
  line-height: calc(40 / 24);
}
.ptr p:not(:last-of-type) { margin: 0 0 calc(70 / 750 * 100%); }

/* Interval
----------------------------------------- */
.interval {
  padding: 0 0 calc(400 / 750 * 100%);
  background-size: cover;
  background-attachment: scroll;
}

/* Greeting
----------------------------------------- */
.greeting { padding: calc(135 / 750 * 100%) 0 0; }
.greeting-unit { padding: 0; }
.greeting-unit p {
  font-size: calc((24 * 1.1) / 750 * 100vw);
  line-height: calc(40 / 24);
}
.greeting-unit p span { margin: calc(100 / 750 * 100%) 0 0; }
.greeting-unit .link-btn {
  width: calc(495 / 750 * 100vw);
  margin: calc(125 / 750 * 100%) auto 0;
}

/* ----------------------------------------

  Staff Contents

----------------------------------------- */

/* Staff Intro
----------------------------------------- */
.staff-intro { padding: calc(55 / 750 * 100%) 0 0; }
.staff-intro h4 {
  font-size: calc(28 / 750 * 100vw);
  line-height: calc(54 / 28);
  margin: 0 0 calc(40 / 750 * 100%);
}
.staff-intro p {
  font-size: calc((24 * 1.1) / 750 * 100vw);
  line-height: calc(40 / 24);
  margin: 0 0 calc(30 / 750 * 100%);
}
.staff-questions {
  padding: 0;
  flex-wrap: wrap;
  justify-content: center;
}
.staff-questions figure { width: 37.5%; }
.staff-questions figure:first-of-type { margin: 0 -30px 0 0; }
.staff-questions figure:nth-of-type(2) { margin: 0; }
.staff-questions figure:nth-of-type(3) { margin: 0 0 0 -30px; }
.staff-questions figure:nth-of-type(4) { margin: -30px 0 0 30px; }
.staff-questions figure:last-of-type { margin: -30px 0 0 -30px; }

/* Staff Profile
----------------------------------------- */
.profile-unit { padding: calc(130 / 750 * 100%) 0; }
.profile-unit .inner {
  flex-direction: column;
}
.profile-unit .inner > figure {
  width: calc(300 / 750 * 100vw);
  margin: 0 auto;
}
.profile {
  width: 100%;
  padding: calc(40 / 750 * 100%) 0;
}
.profile h5 {
  font-size: calc(36 / 750 * 100vw);
  line-height: calc(48 / 36);
  margin: 0 0 calc(40 / 750 * 100%);
}
.profile h5 span { font-size: calc(20 / 36 * 1em); }
.profile > p {
  font-size: calc((24 * 1.1) / 750 * 100vw);
  line-height: calc(40 / 24);
  margin: 0 0 calc(40 / 750 * 100%);
}
.profile dl dt {
  width: 70%;
  height: auto;
  line-height: initial;
  padding: calc(25 / 750 * 100%) 0;
  margin: 0 auto;
}
.profile dl dt span { font-size: calc((24 * 1.1) / 750 * 100vw); }
.profile dl dd {
  font-size: calc((24 * 1.1) / 750 * 100vw);
  line-height: calc(40 / 24);
  margin: calc(120 / 750 * 100%) 0 0;
}
.profile dl dd > figure { width: calc(230 / 750 * 100vw); }
.profile dl dd ul li i {
  width: calc(60 / 750 * 100vw);
  height: calc(60 / 750 * 100vw);
}
.profile dl dd ul li:last-of-type { padding: 0 0 0 calc((60 + 15) / 750 * 100vw); }