@charset "utf-8";

@media print, screen {
  #swingstretch {
    background-color: var(--grayf2-color);
  }
  #swingstretch .mv__normal {
    background-image: url(../../images/src/swingstretch/img_mv.png);
  }
  #swingstretch .tit__jp {
    margin-bottom: 40px;
    color: var(--main-color);
    font-size: 40px;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    letter-spacing: 0.03em;
    text-indent: 0.03em;
  }
  #swingstretch .tit__en {
    margin-bottom: 20px;
    color: var(--main-color);
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.03em;
    text-indent: 0.03em;
  }
  #swingstretch .sec01 {
    margin: 0 auto;
    padding: 100px 0 120px;
    width: 100%;
    max-width: 1500px;
  }
  #swingstretch .sec01 .recommend__block {
    width: 100%;
  }
  #swingstretch .sec01 .recommend__block li {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 24%;
    max-width: 360px;
    height: 338px;
    font-size: 18px;
    font-weight: 500;
    line-height: 2;
    text-align: center;
    background-color: var(--white);
    border-radius: 14px;
  }
  #swingstretch .sec01 .recommend__block li .recommend__icon {
    margin-bottom: 24px;
    width: 21.666%;
    max-width: 78px;
  }
}
@media screen and (max-width: 1600px) {
  #swingstretch .tit__jp {
    margin-bottom: 2.5vw;
    font-size: 2.5vw;
  }
  #swingstretch .tit__en {
    margin-bottom: 1.25vw;
    font-size: 1.25vw;
  }
  #swingstretch .sec01 {
    padding: 6.25vw 0 7.5vw;
    width: 93.75%;
  }
  #swingstretch .sec01 .recommend__block li {
    height: 21.125vw;
    font-size: 1.125vw;
  }
  #swingstretch .sec01 .recommend__block li .recommend__icon {
    margin-bottom: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  #swingstretch .mv__normal {
    background: none;
  }
  #swingstretch .tit__jp {
    margin-bottom: 40px;
    font-size: 6.28vw;
    line-height: 1.6;
  }
  #swingstretch .tit__en {
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1;
  }
  #swingstretch .sec01 {
    padding: 14.492vw 0 7.246vw;
    width: 76%;
    max-width: inherit;
  }
  #swingstretch .sec01 .recommend__block {
    gap: 3.623vw 0;
  }
  #swingstretch .sec01 .recommend__block li {
    padding: 4.83vw 0;
    width: 100%;
    max-width: inherit;
    height: auto;
    font-size: 3.381vw;
  }
  #swingstretch .sec01 .recommend__block li .recommend__icon {
    margin-bottom: 5.797vw;
    width: 25.454%;
    max-width: inherit;
  }
}
@media print, screen {
  #swingstretch .sec02 {
    margin: 0 auto;
    padding: 80px 0;
    width: 100%;
  }
  #swingstretch .sec02 .inner {
    margin: 0 auto;
    width: 100%;
    max-width: 1100px;
  }
  #swingstretch .sec02 .inner .about__copy {
    margin-bottom: 60px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.1em;
  }
  #swingstretch .sec02 .inner .about__copy {
    margin-bottom: 60px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.1em;
  }
  #swingstretch .sec02 .inner .about__block {
    width: 100%;
  }
  #swingstretch .sec02 .inner .about__block.top {
    margin-bottom: 80px;
  }
  #swingstretch .sec02 .inner .about__block .img {
    margin-bottom: 40px;
    width: 100%;
  }
  #swingstretch .sec02 .inner .about__block .copy {
    margin-bottom: 60px;
    color: var(--orange-color);
    font-size: 18px;
    font-weight: 700;
    line-height: 2;
    text-align: center;
    letter-spacing: 0.1em;
  }
  #swingstretch .sec02 .inner .about__block .box,
  #swingstretch .sec02 .inner .about__block .wide_text {
    margin: 0 auto;
    width: 100%;
  }
  #swingstretch .sec02 .inner .about__block .box.reverse {
    flex-direction: row-reverse;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text {
    width: 45%;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text p {
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text p + p {
    margin-top: 25px;
  }
  #swingstretch .sec02 .inner .about__block .box .box__img {
    width: 50%;
    margin-bottom: 30px;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text .read__text {
    font-weight: 700;
    font-size: 20px;
    border-bottom: 1px dotted #ccc;
    padding-bottom: 20px;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text .read__text span {
    color: var(--main-color);
    font-weight: 700;
  }
  #swingstretch .sec02 .inner .about__block .wide_text{
    width: 100%;
  }
  #swingstretch .sec02 .inner .about__block .wide_text p{
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
  }
  #swingstretch .sec02 .inner .about__block .wide_text p + p {
    margin-top: 25px;
  }
}
@media screen and (max-width: 1200px) {
  #swingstretch .sec02 {
    padding: 6.666vw 0;
  }
  #swingstretch .sec02 .inner {
    width: 91.666%;
  }
  #swingstretch .sec02 .inner .about__copy {
    margin-bottom: 5vw;
    font-size: 1.666vw;
  }
  #swingstretch .sec02 .inner .about__block .img {
    margin-bottom: 3.333vw;
  }
  #swingstretch .sec02 .inner .about__block .copy {
    margin-bottom: 5vw;
    font-size: 1.5vw;
  }
  #swingstretch .sec02 .inner .about__block .box {
    width: 76.666%;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text p {
    font-size: 1.333vw;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text p + p {
    margin-top: 2vw;
  }
}
@media screen and (max-width: 768px) {
  #swingstretch .sec02 {
    padding: 7.246vw 0;
  }
  #swingstretch .sec02 .inner {
    margin: 0 auto;
    width: 94.2%;
    max-width: inherit;
  }
  #swingstretch .sec02 .inner .about__copy {
    margin-bottom: 6vw;
    font-size: 4.347vw;
    line-height: 1.888;
  }
  #swingstretch .sec02 .inner .about__block {
    width: 100%;
  }
  #swingstretch .sec02 .inner .about__block .img {
    margin-bottom: 4.83vw;
  }
  #swingstretch .sec02 .inner .about__block .copy {
    margin-bottom: 3vw;
    font-size: 3.864vw;
    text-align: left;
  }
  #swingstretch .sec02 .inner .about__block .box,
  #swingstretch .sec02 .inner .about__block .wide_text {
    width: 100%;
    max-width: inherit;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text {
    width: 100%;
    max-width: inherit;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text p,
  #swingstretch .sec02 .inner .about__block .wide_text p {
    font-size: 3.381vw;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text p + p,
  #swingstretch .sec02 .inner .about__block .wide_text p + p {
    margin-top: 3.623vw;
  }
  #swingstretch .sec02 .inner .about__block .box .box__text .read__text {
    font-size: 3.864vw;
  }
  #swingstretch .sec02 .inner .about__block .box .box__img {
    padding: 4.83vw 0 0;
    width: 100%;
    max-width: inherit;
  }
}
@media print, screen {
  #swingstretch .sec03 {
    margin: 0 auto;
    padding: 120px 0 60px;
    width: 100%;
  }
  #swingstretch .sec03 .learning__block {
    margin: 0 auto 120px;
    padding: 80px 0;
    width: 100%;
    max-width: 1200px;
    background-color: var(--white);
    border: 4px solid var(--main-color);
    border-radius: 20px;
  }
  #swingstretch .sec03 .learning__block .block__inner {
    margin: 0 auto;
    width: 100%;
    max-width: 800px;
  }
  #swingstretch .sec03 .learning__block .block__inner li {
    padding: 20px 0 20px 50px;
    font-size: 20px;
    line-height: 1.5;
    background: url(../../images/src/swingstretch/arrow.svg) no-repeat left center;
    background-size: 28px auto;
    border-bottom: 1px solid var(--grayf3-color);
  }
  #swingstretch .sec03 .learning__imgbox {
    margin: 0 auto;
    width: 100%;
    max-width: 1700px;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__img {
    width: 100%;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text {
    margin: -54px auto 0;
    padding: 40px 10px;
    width: 100%;
    max-width: 1100px;
    text-align: center;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
    background-color: var(--white);
    border-radius: 20px;
    position: relative;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text .text {
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 2.2;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text .copy {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
  }
}
@media screen and (max-width: 1800px) {
  #swingstretch .sec03 .learning__imgbox {
    width: 94.444%;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text {
    margin: -3vw auto 0;
    padding: 2.222vw 0;
    width: 61.111%;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text .text {
    margin-bottom: 1.111vw;
    font-size: 1vw;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text .copy {
    font-size: 1.111vw;
  }
}
@media screen and (max-width: 1300px) {
  #swingstretch .sec03 {
    padding: 9.23vw 0 4.615vw;
  }
  #swingstretch .sec03 .learning__block {
    margin: 0 auto 9.23vw;
    padding: 6.153vw 0;
    width: 92.307%;
  }
  #swingstretch .sec03 .learning__block .block__inner {
    width: 61.538%;
  }
  #swingstretch .sec03 .learning__block .block__inner li {
    padding: 1.538vw 0 1.538vw 3.846vw;
    font-size: 1.538vw;
    background-size: 2.153vw auto;
  }
}
@media screen and (max-width: 768px) {
  #swingstretch .sec03 {
    padding: 7.246vw 0;
  }
  #swingstretch .sec03 .learning__block {
    margin: 0 auto 4.83vw;
    padding: 9.661vw 0;
    width: 94.2%;
    max-width: inherit;
  }
  #swingstretch .sec03 .learning__block .block__inner {
    width: 87.18%;
    max-width: inherit;
  }
  #swingstretch .sec03 .learning__block .block__inner li {
    padding: 2.415vw 0 2.415vw 8vw;
    font-size: 3.864vw;
    background-position: left 2.4vw;
    background-size: 6.28vw auto;
  }
  #swingstretch .sec03 .learning__imgbox {
    width: 94.2%;
    max-width: inherit;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text {
    margin: 4.83vw auto 0;
    padding: 10.87vw 6vw;
    width: 100%;
    max-width: inherit;
    text-align: left;
    box-sizing: border-box;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text .text {
    margin-bottom: 1vw;
    font-size: 3.381vw;
  }
  #swingstretch .sec03 .learning__imgbox .imgbox__text .copy {
    font-size: 3.864vw;
    line-height: 2;
  }
}
@media print, screen {
  #swingstretch .sec04 {
    margin: 0 auto;
    padding: 60px 0 120px;
    width: 100%;
  }
  #swingstretch .sec04 .seminar__time {
    margin-bottom: 60px;
    font-size: 24px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.12em;
    text-indent: 0.12em;
  }
  #swingstretch .sec04 .seminar__price {
    margin: 0 auto;
    width: 100%;
    max-width: 1192px;
    margin-bottom: 80px;
  }
  #swingstretch .sec04 .seminar__year {
    margin-bottom: 40px;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.12em;
    text-indent: 0.12em;
  }
  #swingstretch .sec04 .seminar__price .price__list {
    margin-bottom: 20px;
    width: 100%;
  }
  #swingstretch .sec04 .seminar__price .price__list li {
    width: 32.214%;
    max-width: 384px;
    background-color: var(--white);
    border-radius: 10px;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__tit {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 71px;
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 10px 10px 0 0;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text {
    padding: 40px 0;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text span {
    color: var(--main-color);
    font-size: 50px;
    font-weight: 700;
    line-height: 40px;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text span small {
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
  }
  #swingstretch .sec04 .seminar__price .price__note {
    font-size: 14px;
    line-height: 1.85;
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 1300px) {
  #swingstretch .sec04 {
    padding: 4.615vw 0 9.23vw;
  }
  #swingstretch .sec04 .seminar__time {
    margin-bottom: 4.615vw;
    font-size: 1.846vw;
  }
  #swingstretch .sec04 .seminar__price {
    width: 91.692%;
  }
  #swingstretch .sec04 .seminar__price .price__list {
    margin-bottom: 1.538vw;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__tit {
    height: 5.461vw;
    font-size: 2vw;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text {
    padding: 3.07vw 0;
    font-size: 1.076vw;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text span {
    font-size: 3.846vw;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text span small {
    font-size: 1.692vw;
  }
  #swingstretch .sec04 .seminar__price .price__note {
    font-size: 1.076vw;
  }
}
@media screen and (max-width: 768px) {
  #swingstretch .sec04 {
    margin: 0 auto;
    padding: 7.246vw 0 14.5vw;
    width: 100%;
  }
  #swingstretch .sec04 .seminar__time {
    margin-bottom: 8.454vw;
    font-size: 3.864vw;
  }
  #swingstretch .sec04 .seminar__price {
    margin: 0 auto;
    width: 100%;
    max-width: inherit;
  }
  #swingstretch .sec04 .seminar__price.top {
    margin-bottom: 10vw;
  }
  #swingstretch .sec04 .seminar__year {
    margin-bottom: 5.797vw;
    font-size: 3.382vw;
  }
  #swingstretch .sec04 .seminar__price {
    margin: 0 auto;
    width: 100%;
    max-width: inherit;
  }
  #swingstretch .sec04 .seminar__price .price__list {
    margin: 0 auto 2.415vw;
    width: 94.2%;
  }
  #swingstretch .sec04 .seminar__price .price__list li {
    width: 100%;
    max-width: inherit;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__tit {
    height: 16.9vw;
    font-size: 5.797vw;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text {
    padding: 4.83vw 0;
    font-size: 3.381vw;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text span {
    font-size: 8.695vw;
    line-height: 1;
  }
  #swingstretch .sec04 .seminar__price .price__list .list__text span small {
    font-size: 4.83vw;
  }
  #swingstretch .sec04 .seminar__price .price__note {
    margin: 0 auto;
    width: 94.2%;
    font-size: 3.381vw;
  }
}

@media print, screen {
  #swingstretch .sec05 {
    margin: 0 auto;
    padding: 80px 0 120px;
    width: 100%;
    background-color: var(--main-color);
  }
  #swingstretch .sec05 .tit__jp {
    color: var(--white);
  }
  #swingstretch .sec05 .tit__en {
    color: var(--white);
  }
  #swingstretch .sec05 .inner {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
  }
  #swingstretch .sec05 .inner .voice__block {
    margin-bottom: 58px;
    width: 100%;
  }
  #swingstretch .sec05 .inner .voice__block .box {
    padding: 0 60px 80px;
    width: 48.333%;
    max-width: 580px;
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 4px 14px rgba(77, 77, 77, 0.2);
    box-sizing: border-box;
  }
  #swingstretch .sec05 .inner .voice__block .box .box__icon {
    margin: -15px auto 0;
    width: 20.862%;
    max-width: 121px;
  }
  #swingstretch .sec05 .inner .voice__block .box .box__text {
    font-size: 18px;
    line-height: 2.1;
    letter-spacing: 0.1em;
  }
  #swingstretch .sec05 .inner .schedule__btn {
    margin: 0 auto;
    width: 100%;
    max-width: 880px;
  }
  #swingstretch .sec05 .inner .schedule__btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 115px;
    background-color: var(--grayf1-color);
    border: 1px solid var(--grayf1-color);
    border-radius: 14px;
    transition: 0.5s;
  }
  #swingstretch .sec05 .inner .schedule__btn a span {
    padding: 5px 0 5px 84px;
    color: var(--white);
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.2em;
    text-indent: 0.2em;
    background-image: url(../../images/src/swingstretch/arrow02.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 54px auto;
  }
  #swingstretch .sec05 .inner .schedule__btn a:hover {
    background-color: var(--white);
  }
  #swingstretch .sec05 .inner .schedule__btn a:hover span {
    color: var(--grayf1-color);
    background-image: url(../../images/src/swingstretch/arrow03.svg);
  }
  #swingstretch .under__menu {
    padding: 120px 0;
  }
}
@media screen and (max-width: 1300px) {
  #swingstretch .sec05 {
    padding: 6.153vw 0 9.23vw;
  }
  #swingstretch .sec05 .inner {
    width: 92.307%;
  }
  #swingstretch .sec05 .inner .voice__block {
    margin-bottom: 4.461vw;
  }
  #swingstretch .sec05 .inner .voice__block .box {
    padding: 0 4.615vw 6.153vw;
  }
  #swingstretch .sec05 .inner .voice__block .box .box__icon {
    margin: -1.153vw auto 0;
  }
  #swingstretch .sec05 .inner .voice__block .box .box__text {
    font-size: 1.384vw;
  }
  #swingstretch .sec05 .inner .schedule__btn a {
    height: 10.923vw;
  }
  #swingstretch .sec05 .inner .schedule__btn a span {
    padding: 0.384vw 0 0.384vw 1.538vw;
    font-size: 1.846vw;
    background-size: 4.153vw auto;
  }
  #swingstretch .under__menu {
    padding: 9.23vw 0;
  }
}
@media screen and (max-width: 768px) {
  #swingstretch .sec05 {
    padding: 9.661vw 0;
  }
  #swingstretch .sec05 .inner {
    width: 94.2%;
    max-width: inherit;
  }
  #swingstretch .sec05 .inner .voice__block {
    margin-bottom: 7vw;
  }
  #swingstretch .sec05 .inner .voice__block .box {
    padding: 0 6vw 12vw;
    width: 100%;
    max-width: inherit;
  }
  #swingstretch .sec05 .inner .voice__block .box + .box {
    margin-top: 9.42vw;
  }
  #swingstretch .sec05 .inner .voice__block .box .box__icon {
    margin: -4.83vw auto 0;
    width: 24.88%;
    max-width: inherit;
  }
  #swingstretch .sec05 .inner .voice__block .box .box__text {
    font-size: 3.381vw;
    line-height: 2;
  }
  #swingstretch .sec05 .inner .schedule__btn a {
    height: 18.84vw;
  }
  #swingstretch .sec05 .inner .schedule__btn a span {
    padding: 0.6vw 0 0.6vw 13.76vw;
    font-size: 3.864vw;
    background-size: 8.937vw auto;
  }
  #swingstretch .sec05 .inner .schedule__btn a:hover {
    background-color: var(--white);
  }
  #swingstretch .sec05 .inner .schedule__btn a:hover span {
    color: var(--grayf1-color);
    background-image: url(../../images/src/swingstretch/arrow03.svg);
  }
  #swingstretch .under__menu {
    padding: 19vw 0;
  }
}
