:root {
  --adjustSize: calc(460 / 750);
}

/* html {
  scroll-behavior: smooth;
} */

main {
  font-family: "Noto Sans JP", serif;
}

.header {
  margin: 0 auto;
  max-width: 460px;
  padding: 26px 0;
  position: relative;
}

.header_btn {
  position: absolute;
  top: 26px;
  right: 14px;
  width: 58.266666px;
  height: 31.7032px;
  z-index: 99999;
}

.header_btn span {
  border-top: 2px solid #000;
  content: "";
  right: 0;
  position: absolute;
  height: 2px;
  transition: .2s;
}

.header_btn span:nth-of-type(1) {
  top: 0;
  width: 100%;
}

.header_btn span:nth-of-type(2) {
  top: 0;
  bottom: 0;
  margin: auto;
  width: 80%;
}

.header_btn span:nth-of-type(3) {
  bottom: 0;
  width: 60%;
}

.header_btn.is_active span:nth-of-type(1) {
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
  width: 100%;
}

.header_btn.is_active span:nth-of-type(2) {
  opacity: 0;
}

.header_btn.is_active span:nth-of-type(3) {
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(-45deg);
  width: 100%;
}

.header_nav {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 460px;
  opacity: 0;
  visibility: hidden;
  transition: .2s;
  height: 100%;
  width: 100%;
  z-index: 9999;
}

.header_nav.is_active {
  opacity: 1;
  visibility: visible;
}

.header_nav_list ul > li:not(:last-of-type) {
  margin: 0 0 20px;
}

.header_nav_list li {
  font-size: calc(38px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  text-align: center;
}

.header_nav_list li a {
  color: #000 !important;
}

.header_logo {
  margin: 0 auto;
  width: 57.73333333333333%;
}

.main {
  background-color: #fff;
  font-feature-settings: 'palt';
  margin: 0 auto;
  max-width: 460px;
  overflow-x: hidden;
  overflow-y: auto;
}

.mv {
  position: relative;
  margin: 0 0 14%;
}

.mv::after {
  background-color: rgb(0 0 0 / 25%);
  background-image: url("../img/mv_cover02.png");
  background-size: 100%;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  height: 100%;
  width: 100%;
  z-index: 2;
}

.container {
  margin: 0 auto;
  width: 79.2%;
}

.about {
  padding: 0 0 14%;
}

.about_head {
  margin: 0 0 6%;
  width: 90%;
}

.about_text {
  color: #000;
  font-size: calc(26px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  text-align: justify;
}

.lesson {
  padding: 0 0 14%;
}

.lesson_head {
  margin: 0 0 6%;
  width: 66.16161616161616%;
}

.lesson_text {
  color: #000;
  font-size: calc(26px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  text-align: justify;
}

.swimming {
  background: linear-gradient(225deg,rgba(41, 171, 226, 1) 0%, rgba(0, 125, 171, 1) 50%, rgba(41, 171, 226, 1) 100%);
}

.miraiku {
  background: linear-gradient(225deg,rgba(255, 0, 0, 1) 0%, rgba(213, 142, 52, 1) 40%, rgba(237, 183, 0, 1) 69%);
}

.tennis {
  background: linear-gradient(225deg,rgba(97, 210, 0, 1) 0%, rgba(0, 146, 69, 1) 36%, rgba(57, 181, 74, 1) 81%, rgba(10, 249, 0, 1) 100%);
}

.athlete {
  background: linear-gradient(225deg,rgba(0, 28, 40, 1) 0%, rgba(10, 116, 161, 1) 25%, rgba(0, 75, 101, 1) 66%, rgba(0, 28, 40, 1) 90%);
}

.school {
  padding: 14% 0;
}

.school_text {
  color: #fff;
  font-size: calc(25px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  margin: 0 0 4%;
  text-align: justify;
}

.school_target {
  border: 1px solid #fff;
  color: #fff;
  font-size: calc(26px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  padding: 2% 0;
  margin: 0 0 16%;
  text-align: center;
}

.school_target.no_mb {
  margin: 0;
}

.school_coach {
  position: relative;
}

.school_coach_name {
  color: #fff;
  font-size: calc(38px * var(--adjustSize));
  line-height: calc(46px * var(--adjustSize));
  margin: 0 0 5%;
}

.school_coach_head {
  color: #1b1464;
  font-size: calc(26px * var(--adjustSize));
  font-weight: bold;
  line-height: 1.4em;
  margin: 0 0 2%;
}

.school_coach_text {
  color: #fff;
  font-size: calc(24px * var(--adjustSize));
  line-height: calc(46px * var(--adjustSize));
}

.school_coach_img {
  position: absolute;
  top: 4%;
  right: -32%;
  width: 67.104377%;
}

.lineup {
  padding: 14% 0 22%;
}

.lineup_head {
  width: 100%;
}

.lineup_items > div:not(:last-of-type) {
  margin: 0 0 14%;
}

.lineup_items_head {
  color: #000;
  font-size: calc(26px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  margin: 0 auto 2%;
  width: 78%;
}

.lineup_item_head {
  margin: 0 0 4%;
  width: 80%;
}

.lineup_item_contents {
  margin: 0 auto;
  width: 79.2%;
}

.lineup_item_text {
  color: #000;
  font-size: calc(26px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  margin: 0 0 2%;
}

.lineup_item_box {
  border: 1px solid #000;
  color: #000;
  font-size: calc(26px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  padding: 2% 0;
  margin: 0 0 3%;
  text-align: left;
  display: flex;
  justify-content: center;
  align-items: center;
}

.lineup_item_box.flex_column {
  flex-direction: column;
}

.lineup_item_schedule {
  background-color: #e1e7ea;
  color: #000;
  font-size: calc(32px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  margin: 0 0 6%;
  padding: 4% 7%;
}

.lineup_item_schedule02 {
  background-color: #e1e7ea;
  color: #000;
  font-size: calc(32px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  margin: 0 0 6%;
  padding: 6% 7%;
}

.lineup_item_schedule span {
  background-color: #6d95a1;
  color: #fff;
  display: block;
  padding: 1% 0 0 4%;
  margin: 4% 0;
  text-align: left;
}

.lineup_item_schedule02 span {
  background-color: #6d95a1;
  color: #fff;
  display: block;
  padding: 1% 0 0 4%;
  margin: 0 0 4%;
  text-align: left;
}

.lineup_item_btn {
  display: block;
  margin: 0 auto;
  width: 68%;
}

.lineup_item_img {
  margin: 0 0 2% auto;
  width: 90%;
}

.lineup_item_schedule02 dl {
  display: flex;
  flex-wrap: wrap;
}

.lineup_item_schedule02 dl .small {
  font-size: .6em;
  display: block;
  line-height: 1.8em;
  margin: 2% 0 8%;
}

.faq {
  padding: 0 0 14%;
}

.faq_head {
  margin: 0 0 10%;
  width: 50%;
}

.faq_list_q {
  color: #000;
  font-size: calc(38px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  margin: 0 0 6%;
  padding: 0 0 0 9%;
  position: relative;
}

.faq_list_q::before {
  background-image: url("../img/faq_icon_q.png");
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  margin: auto;
  height: calc(67px * var(--adjustSize));
  width: calc(38px * var(--adjustSize));
}

.faq_list_a {
  color: #000;
  font-size: calc(24px * var(--adjustSize));
  line-height: calc(60px * var(--adjustSize));
  padding: 0 0 0 9%;
  position: relative;
}

.faq_list_a::before {
  background-image: url("../img/faq_icon_a.png");
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  top: -4px;
  left: 0;
  margin: auto;
  height: calc(67px * var(--adjustSize));
  width: calc(38px * var(--adjustSize));
}

.faq_lists > div:not(:last-of-type) {
  border-bottom: 1px solid #afc2ca;
  padding: 0 0 6%;
  margin: 0 0 8%;
}

@media screen and (max-width: 460px) {
  .header {
    max-width: 100%;
    padding: 5.654% 0;
  }

  .header_btn {
    top: 5.652174vw;
    right: 3.043478vw;
    width: 12.666667vw;
    height: 6.892vw;
  }
  
  .header_btn span {
    border-top: 0.434783vw solid #000;
    height: 0.434783vw;
  }
  
  .header_nav {
    max-width: 100%;
  }
  
  .header_nav_list ul > li:not(:last-of-type) {
    margin: 0 0 4.347826vw;
  }
  
  .header_nav_list li {
    font-size: calc(8.26087vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .main {
    max-width: 100%;
  }
  
  .about_text {
    font-size: calc(5.652174vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .lesson_text {
    font-size: calc(5.652174vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .school_text {
    font-size: calc(5.434783vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .school_target {
    border: 0.217391vw solid #fff;
    font-size: calc(5.652174vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .school_coach_name {
    font-size: calc(8.26087vw * var(--adjustSize));
    line-height: calc(10vw * var(--adjustSize));
  }
  
  .school_coach_head {
    font-size: calc(5.652174vw * var(--adjustSize));
  }
  
  .school_coach_text {
    font-size: calc(5.217391vw * var(--adjustSize));
    line-height: calc(10vw * var(--adjustSize));
  }

  .lineup_items_head {
    font-size: calc(5.652174vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .lineup_item_text {
    font-size: calc(5.652174vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .lineup_item_box {
    border: 0.217391vw solid #000;
    font-size: calc(5.652174vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .lineup_item_schedule {
    font-size: calc(6.956522vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .lineup_item_schedule02 {
    font-size: calc(6.956522vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .faq_list_q {
    font-size: calc(8.26087vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .faq_list_q::before {
    top: -0.434783vw;
    height: calc(16.73913vw * var(--adjustSize));
    width: calc(8.434783vw * var(--adjustSize));
  }
  
  .faq_list_a {
    color: #000;
    font-size: calc(5.217391vw * var(--adjustSize));
    line-height: calc(13.043478vw * var(--adjustSize));
  }
  
  .faq_list_a::before {
    top: -0.869565vw;
    height: calc(16.73913vw * var(--adjustSize));
    width: calc(8.434783vw * var(--adjustSize));
  }
  
  .faq_lists > div:not(:last-of-type) {
    border-bottom: 0.217391vw solid #afc2ca;
  }  
}

#shopList .list a:link,
#shopList .list a:visited {
  color: #fff;
}
