@charset "UTF-8";
.mg0 {
  margin: 0 !important; }

.mt0 {
  margin-top: 0 !important; }

.mb0 {
  margin-bottom: 0 !important; }

.mb5 {
  margin-bottom: 5px; }

.mb10 {
  margin-bottom: 10px; }

.mb15 {
  margin-bottom: 15px; }

.mb20 {
  margin-bottom: 20px; }

.mb25 {
  margin-bottom: 25px; }

.mb30 {
  margin-bottom: 30px; }

.mb35 {
  margin-bottom: 35px; }

.mb40 {
  margin-bottom: 40px; }

.mb45 {
  margin-bottom: 45px; }

.mb50 {
  margin-bottom: 50px; }

.mb55 {
  margin-bottom: 55px; }

.mb60 {
  margin-bottom: 60px; }

.mb65 {
  margin-bottom: 65px; }

.mb70 {
  margin-bottom: 70px; }

.mb75 {
  margin-bottom: 75px; }

.mb80 {
  margin-bottom: 80px; }

.mb85 {
  margin-bottom: 85px; }

.mb90 {
  margin-bottom: 90px; }

.mb95 {
  margin-bottom: 95px; }

.mb100 {
  margin-bottom: 100px; }

.mb105 {
  margin-bottom: 105px; }

.mb110 {
  margin-bottom: 110px; }

.mb115 {
  margin-bottom: 115px; }

.mb120 {
  margin-bottom: 120px; }

.mb125 {
  margin-bottom: 125px; }

.mb130 {
  margin-bottom: 130px; }

.mb135 {
  margin-bottom: 135px; }

.mb140 {
  margin-bottom: 140px; }

.mb145 {
  margin-bottom: 145px; }

.mb150 {
  margin-bottom: 150px; }

.mt5 {
  margin-top: 5px; }

.mt10 {
  margin-top: 10px; }

.mt15 {
  margin-top: 15px; }

.mt20 {
  margin-top: 20px; }

.mt25 {
  margin-top: 25px; }

.mt30 {
  margin-top: 30px; }

.mt35 {
  margin-top: 35px; }

.mt40 {
  margin-top: 40px; }

.mt45 {
  margin-top: 45px; }

.mt50 {
  margin-top: 50px; }

.mt55 {
  margin-top: 55px; }

.mt60 {
  margin-top: 60px; }

.mt65 {
  margin-top: 65px; }

.mt70 {
  margin-top: 70px; }

.mt75 {
  margin-top: 75px; }

.mt80 {
  margin-top: 80px; }

.mt85 {
  margin-top: 85px; }

.mt90 {
  margin-top: 90px; }

.mt95 {
  margin-top: 95px; }

.mt100 {
  margin-top: 100px; }

.ml5 {
  margin-left: 5px; }

.gap5 {
  gap: 5px; }

.gap10 {
  gap: 10px; }

.gap15 {
  gap: 15px; }

.gap20 {
  gap: 20px; }

.gap25 {
  gap: 25px; }

.gap30 {
  gap: 30px; }

.gap35 {
  gap: 35px; }

.gap40 {
  gap: 40px; }

.gap45 {
  gap: 45px; }

.gap50 {
  gap: 50px; }

.gap55 {
  gap: 55px; }

.gap60 {
  gap: 60px; }

.gap65 {
  gap: 65px; }

.gap70 {
  gap: 70px; }

.gap75 {
  gap: 75px; }

.gap80 {
  gap: 80px; }

.gap85 {
  gap: 85px; }

.gap90 {
  gap: 90px; }

.gap95 {
  gap: 95px; }

.gap100 {
  gap: 100px; }

@media screen and (min-width: 760px) {
  .w15 {
    width: 15% !important;
    max-width: 15% !important; }

  .w16 {
    width: 16% !important;
    max-width: 16% !important; }

  .w17 {
    width: 17% !important;
    max-width: 17% !important; }

  .w18 {
    width: 18% !important;
    max-width: 18% !important; }

  .w19 {
    width: 19% !important;
    max-width: 19% !important; }

  .w20 {
    width: 20% !important;
    max-width: 20% !important; }

  .w21 {
    width: 21% !important;
    max-width: 21% !important; }

  .w22 {
    width: 22% !important;
    max-width: 22% !important; }

  .w23 {
    width: 23% !important;
    max-width: 23% !important; }

  .w24 {
    width: 24% !important;
    max-width: 24% !important; }

  .w25 {
    width: 25% !important;
    max-width: 25% !important; }

  .w26 {
    width: 26% !important;
    max-width: 26% !important; }

  .w27 {
    width: 27% !important;
    max-width: 27% !important; }

  .w28 {
    width: 28% !important;
    max-width: 28% !important; }

  .w29 {
    width: 29% !important;
    max-width: 29% !important; }

  .w30 {
    width: 30% !important;
    max-width: 30% !important; }

  .w31 {
    width: 31% !important;
    max-width: 31% !important; }

  .w32 {
    width: 32% !important;
    max-width: 32% !important; }

  .w33 {
    width: 33% !important;
    max-width: 33% !important; }

  .w34 {
    width: 34% !important;
    max-width: 34% !important; }

  .w35 {
    width: 35% !important;
    max-width: 35% !important; }

  .w36 {
    width: 36% !important;
    max-width: 36% !important; }

  .w37 {
    width: 37% !important;
    max-width: 37% !important; }

  .w38 {
    width: 38% !important;
    max-width: 38% !important; }

  .w39 {
    width: 39% !important;
    max-width: 39% !important; }

  .w40 {
    width: 40% !important;
    max-width: 40% !important; }

  .w41 {
    width: 41% !important;
    max-width: 41% !important; }

  .w42 {
    width: 42% !important;
    max-width: 42% !important; }

  .w43 {
    width: 43% !important;
    max-width: 43% !important; }

  .w44 {
    width: 44% !important;
    max-width: 44% !important; }

  .w45 {
    width: 45% !important;
    max-width: 45% !important; }

  .w46 {
    width: 46% !important;
    max-width: 46% !important; }

  .w47 {
    width: 47% !important;
    max-width: 47% !important; }

  .w48 {
    width: 48% !important;
    max-width: 48% !important; }

  .w49 {
    width: 49% !important;
    max-width: 49% !important; }

  .w50 {
    width: 50% !important;
    max-width: 50% !important; } }
.w100 {
  width: 100%; }

.fs10 {
  font-size: 10px; }

.fs11 {
  font-size: 11px; }

.fs12 {
  font-size: 12px; }

.fs13 {
  font-size: 13px; }

.fs14 {
  font-size: 14px; }

.fs15 {
  font-size: 15px; }

.fs16 {
  font-size: 16px; }

.fs17 {
  font-size: 17px; }

.fs18 {
  font-size: 18px; }

.fs19 {
  font-size: 19px; }

.fs20 {
  font-size: 20px; }

.fs21 {
  font-size: 21px; }

.fs22 {
  font-size: 22px; }

.fs23 {
  font-size: 23px; }

.fs24 {
  font-size: 24px; }

.fs25 {
  font-size: 25px; }

.fs26 {
  font-size: 26px; }

.fs27 {
  font-size: 27px; }

.fs28 {
  font-size: 28px; }

.fs29 {
  font-size: 29px; }

.fs30 {
  font-size: 30px; }

.fs31 {
  font-size: 31px; }

.fs32 {
  font-size: 32px; }

.fs33 {
  font-size: 33px; }

.fs34 {
  font-size: 34px; }

.fs35 {
  font-size: 35px; }

.fs36 {
  font-size: 36px; }

.fs37 {
  font-size: 37px; }

.fs38 {
  font-size: 38px; }

.fs39 {
  font-size: 39px; }

.fs40 {
  font-size: 40px; }

.fs41 {
  font-size: 41px; }

.fs42 {
  font-size: 42px; }

.fs43 {
  font-size: 43px; }

.fs44 {
  font-size: 44px; }

.fs45 {
  font-size: 45px; }

.fs46 {
  font-size: 46px; }

.fs47 {
  font-size: 47px; }

.fs48 {
  font-size: 48px; }

.fs49 {
  font-size: 49px; }

.fs50 {
  font-size: 50px; }

.fs51 {
  font-size: 51px; }

.fs52 {
  font-size: 52px; }

.fs53 {
  font-size: 53px; }

.fs54 {
  font-size: 54px; }

.fs55 {
  font-size: 55px; }

.fs56 {
  font-size: 56px; }

.fs57 {
  font-size: 57px; }

.fs58 {
  font-size: 58px; }

.fs59 {
  font-size: 59px; }

.fs60 {
  font-size: 60px; }

.fs61 {
  font-size: 61px; }

.fs62 {
  font-size: 62px; }

.fs63 {
  font-size: 63px; }

.fs64 {
  font-size: 64px; }

.fs65 {
  font-size: 65px; }

.fs66 {
  font-size: 66px; }

.fs67 {
  font-size: 67px; }

.fs68 {
  font-size: 68px; }

.fs69 {
  font-size: 69px; }

.fs70 {
  font-size: 70px; }

.fs71 {
  font-size: 71px; }

.fs72 {
  font-size: 72px; }

.fs73 {
  font-size: 73px; }

.fs74 {
  font-size: 74px; }

.fs75 {
  font-size: 75px; }

.fs76 {
  font-size: 76px; }

.fs77 {
  font-size: 77px; }

.fs78 {
  font-size: 78px; }

.fs79 {
  font-size: 79px; }

.fs80 {
  font-size: 80px; }

.fs81 {
  font-size: 81px; }

.fs82 {
  font-size: 82px; }

.fs83 {
  font-size: 83px; }

.fs84 {
  font-size: 84px; }

.fs85 {
  font-size: 85px; }

.fs86 {
  font-size: 86px; }

.fs87 {
  font-size: 87px; }

.fs88 {
  font-size: 88px; }

.fs89 {
  font-size: 89px; }

.fs90 {
  font-size: 90px; }

.fs91 {
  font-size: 91px; }

.fs92 {
  font-size: 92px; }

.fs93 {
  font-size: 93px; }

.fs94 {
  font-size: 94px; }

.fs95 {
  font-size: 95px; }

.fs96 {
  font-size: 96px; }

.fs97 {
  font-size: 97px; }

.fs98 {
  font-size: 98px; }

.fs99 {
  font-size: 99px; }

.fs100 {
  font-size: 100px; }

.fs101 {
  font-size: 101px; }

.fs102 {
  font-size: 102px; }

.fs103 {
  font-size: 103px; }

.fs104 {
  font-size: 104px; }

.fs105 {
  font-size: 105px; }

.fs106 {
  font-size: 106px; }

.fs107 {
  font-size: 107px; }

.fs108 {
  font-size: 108px; }

.fs109 {
  font-size: 109px; }

.fs110 {
  font-size: 110px; }

.fs111 {
  font-size: 111px; }

.fs112 {
  font-size: 112px; }

.fs113 {
  font-size: 113px; }

.fs114 {
  font-size: 114px; }

.fs115 {
  font-size: 115px; }

.fw400 {
  font-weight: 400 !important; }

.fw500 {
  font-weight: 500 !important; }

.fw600 {
  font-weight: 600 !important; }

.fw700 {
  font-weight: 700 !important; }

.lh1 {
  line-height: 1; }

.lh15 {
  line-height: 1.5; }

.lh17 {
  line-height: 1.7; }

.lh18 {
  line-height: 1.8; }

.lh20 {
  line-height: 2.0; }

.lh25 {
  line-height: 2.5; }

.ls-20 {
  letter-spacing: -0.02em; }

.ls0 {
  letter-spacing: 0em; }

.ls40 {
  letter-spacing: 0.04em; }

.ls60 {
  letter-spacing: 0.06em; }

.ls80 {
  letter-spacing: 0.08em; }

.ls100 {
  letter-spacing: .1em; }

.ls160 {
  letter-spacing: .16em; }

.ls200 {
  letter-spacing: .2em; }

html {
  scroll-behavior: smooth; }

body {
  font-family: 'Noto Sans JP', sans-serif;
  color: #1E3779;
  line-height: 1.5;
  font-size: 16px; }
  @media screen and (max-width: 760px) {
    body {
      font-size: 4.2666666667vw !important;
      -webkit-text-size-adjust: none; }
      body .home {
        padding-top: 16vw; } }
  body#under {
    padding-top: 0;
    font-size: 18px; }
    @media screen and (max-width: 760px) {
      body#under {
        font-size: 6.9333333333vw !important; } }
  body#privacypolicy {
    letter-spacing: .04em; }

.hidden {
  overflow: hidden; }

.relative {
  position: relative; }

.bebas {
  font-family: 'Bebas Neue', sans-serif;
  text-transform: uppercase; }

.poppins {
  font-family: 'Poppins', sans-serif; }

.impact {
  font-family: Impact, Charcoal, "Helvetica Inserat", "Bitstream Vera Sans Bold", "Arial Black", sans-serif; }

.robot {
  font-family: 'Roboto', sans-serif; }

.italic {
  font-style: italic; }

a, .nav-toggle {
  text-decoration: none; }
  a:hover, .nav-toggle:hover {
    opacity: .7; }

.block {
  display: block; }

.flex {
  display: flex; }
  .flex + .flex {
    margin-top: 80px; }
    @media (min-width: 760px) {
      #studio .flex + .flex {
        margin-top: 120px; } }
    @media (max-width: 760px) {
      .flex + .flex {
        margin-top: 7vw; } }

.wrap {
  flex-wrap: wrap; }

.jc-sb {
  justify-content: space-between; }

.jc-end {
  justify-content: flex-end; }

.ai-center {
  align-items: center; }

.left {
  text-align: left; }

.center {
  justify-content: center;
  text-align: center; }

.right {
  text-align: right; }

.reverse {
  flex-direction: row-reverse; }

ol, ul {
  list-style: none;
  padding: 0;
  margin: 0; }

h2, h3, h4 {
  font-weight: 700;
  color: #1E3779; }

.header {
  position: sticky;
  z-index: 99;
  background: white;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  .home .header, #naha .header, #urasoe .header, #uruma .header, #misato .header {
    position: fixed; }
    @media (min-width: 760px) {
      .home .header, #naha .header, #urasoe .header, #uruma .header, #misato .header {
        background: none; } }
  .header .logo {
    mix-blend-mode: multiply;
    padding: 10px 22px; }
    @media (max-width: 760px) {
      .header .logo {
        padding: 0 5vw; } }
  .header .header_btn {
    display: flex;
    font-size: 15px;
    font-weight: 700; }
    @media (max-width: 760px) {
      .header .header_btn {
        font-size: 2.6666666667vw !important; }
        .header .header_btn img {
          height: 6vw; } }
    .header .header_btn a, .header .header_btn .nav-toggle {
      width: 183px;
      height: 100px;
      display: flex;
      align-content: center;
      justify-content: center;
      flex-wrap: wrap;
      text-align: center; }
      @media (max-width: 760px) {
        .header .header_btn a, .header .header_btn .nav-toggle {
          height: 16vw;
          width: 24vw; } }
    .header .header_btn .header_btn_studio a {
      background: #0C47E6; }
      @media (max-width: 760px) {
        .header .header_btn .header_btn_studio a {
          position: fixed;
          bottom: 0;
          right: 0;
          width: 50vw; } }
    .header .header_btn .beginner a {
      background: #F49600; }
    .header .header_btn .web a {
      background: #55BCB3; }
    .header .header_btn .txt {
      width: 100%;
      color: white;
      transform: translateY(4px); }
      @media (min-width: 760px) {
        .header .header_btn .txt {
          height: 45px;
          display: flex;
          justify-content: center;
          align-items: center; } }
    .header .header_btn .nav-toggle {
      width: 100px; }
      @media (max-width: 760px) {
        .header .header_btn .nav-toggle {
          width: 16vw;
          padding: 4vw; } }
  .header .nav-toggle {
    cursor: pointer;
    padding: 26px;
    position: relative;
    background: white; }
  .header .nav-toggle:after {
    content: "Menu";
    position: absolute;
    bottom: 14px;
    left: 0;
    right: 0;
    text-align: center; }
    @media (max-width: 760px) {
      .header .nav-toggle:after {
        bottom: 0.5vw; } }
  .header .nav-toggle div {
    position: relative;
    width: 100%;
    height: 100%; }
  .header .nav-toggle span {
    display: block;
    position: absolute;
    width: 100%;
    border-bottom: solid 3px;
    transition: .35s ease-in-out; }
  .header .nav-toggle span:nth-child(1) {
    top: 0; }
  .header .nav-toggle span:nth-child(2) {
    top: 12px; }
    @media (max-width: 760px) {
      .header .nav-toggle span:nth-child(2) {
        top: 3vw; } }
  .header .nav-toggle span:nth-child(3) {
    top: 24px; }
    @media (max-width: 760px) {
      .header .nav-toggle span:nth-child(3) {
        top: 6.4vw; } }
  .header .nav-toggle.open span:nth-child(1) {
    top: 11px;
    transform: rotate(-45deg); }
  .header .nav-toggle.open span:nth-child(2),
  .header .nav-toggle.open span:nth-child(3) {
    top: 11px;
    transform: rotate(45deg); }

.gm {
  background: #1E3779;
  display: none;
  position: fixed;
  inset: 0;
  z-index: 98;
  overflow: auto; }
  .gm.open {
    display: block; }
  .gm .sns {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-left: auto; }
    @media (max-width: 760px) {
      .gm .sns {
        padding: 11vw 4vw; } }
  .gm .sitemap {
    color: white;
    padding-top: 200px; }
    @media (max-width: 760px) {
      .gm .sitemap {
        padding-top: 23vw;
        font-size: 3.2vw !important; }
        .gm .sitemap a, .gm .sitemap dt {
          padding: 4.3vw 4vw;
          width: 100%;
          position: relative;
          display: block; }
        .gm .sitemap dt {
          border-bottom: 1px solid white; }
          .gm .sitemap dt:before, .gm .sitemap dt:after {
            content: "";
            position: absolute;
            top: 0;
            bottom: 0;
            right: 3.5vw;
            width: 4vw;
            height: 0;
            margin: auto;
            border-bottom: 1px solid;
            transition: .3s; }
          .gm .sitemap dt:after {
            transform: rotate(90deg); }
          .gm .sitemap dt.open {
            border: none; }
            .gm .sitemap dt.open:before, .gm .sitemap dt.open:after {
              transform: rotate(360deg); }
        .gm .sitemap dd {
          display: none;
          background: #E8ECF7;
          margin: 0 -5vw;
          padding: 0 5vw; }
          .gm .sitemap dd a {
            color: #1E3779; }
        .gm .sitemap .sitemap02 a, .gm .sitemap .sitemap03 a {
          padding-right: 30px; }
          .gm .sitemap .sitemap02 a:after, .gm .sitemap .sitemap03 a:after {
            content: "";
            border: 1px solid;
            border-left: none;
            border-top: none;
            width: 1.5vw;
            height: 1.5vw;
            position: absolute;
            top: 0;
            right: 5vw;
            bottom: 0;
            margin: auto;
            transform: rotate(-45deg); } }
    .gm .sitemap .sitemap01 {
      padding: 19px 0;
      border-bottom: 1px solid white; }
      @media (max-width: 760px) {
        .gm .sitemap .sitemap01 {
          padding: 0; } }
    .gm .sitemap .sitemap02 {
      border-bottom: 1px solid white;
      padding: 77px 0 67px;
      margin: 0; }
      @media (max-width: 760px) {
        .gm .sitemap .sitemap02 {
          padding: 0;
          border: none; } }
      @media (min-width: 760px) {
        .gm .sitemap .sitemap02 dl.fw700 li {
          margin-bottom: 28px; }
        .gm .sitemap .sitemap02 dl dt {
          font-weight: 700;
          margin-bottom: 25px; }
          .gm .sitemap .sitemap02 dl dt:before {
            content: "ー";
            margin-right: 4px; }
        .gm .sitemap .sitemap02 dl dd {
          padding: 9px 0 0 25px; }
          .gm .sitemap .sitemap02 dl dd li {
            margin-bottom: 10px; } }
    .gm .sitemap .sitemap03 {
      padding: 30px 0; }
      @media (min-width: 760px) {
        .gm .sitemap .sitemap03 {
          font-size: 16px; }
          .gm .sitemap .sitemap03 ul {
            gap: 2.4vw; }
            .gm .sitemap .sitemap03 ul a {
              position: relative;
              padding-right: 30px; }
              .gm .sitemap .sitemap03 ul a:after {
                content: "";
                border: 1px solid;
                border-left: none;
                border-top: none;
                width: 13px;
                height: 13px;
                position: absolute;
                top: 0;
                right: 0;
                bottom: 0;
                margin: auto;
                transform: rotate(-45deg); } }
      @media (max-width: 760px) {
        .gm .sitemap .sitemap03 {
          padding: 5vw 0; } }

.main_top {
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: 1020px;
  padding-bottom: 120px;
  background: url(../img/top/main_pc.png) center no-repeat; }
  @media (min-width: 1920px) {
    .main_top {
      background-size: 100%; } }
  @media (max-width: 760px) {
    .main_top {
      background: url(../img/top/main_sp.png) center top;
      background-size: 100%;
      height: 147vw;
      justify-content: flex-start;
      padding: 9vw 3vw; } }
  @media (max-width: 950px) {
    .main_top .logo {
      width: 26.1vw; } }
  @media (max-width: 760px) {
    .main_top .logo {
      width: 18vw; } }
  .main_top .logo_wrap {
    position: relative; }
    @media (max-width: 760px) {
      .main_top .logo_wrap {
        display: flex;
        gap: 3vw;
        align-items: flex-end; } }
    .main_top .logo_wrap .txt {
      color: white;
      line-height: 2.05; }
      @media (min-width: 1380.1px) {
        .main_top .logo_wrap .txt {
          word-break: keep-all;
          width: 41vw; } }
      @media (min-width: 1100px) and (max-width: 1380px) {
        .main_top .logo_wrap .txt {
          width: 35vw; } }
      @media (min-width: 950px) {
        .main_top .logo_wrap .txt {
          left: 284px; } }
      @media (min-width: 760px) and (max-width: 1380px) {
        .main_top .logo_wrap .txt br {
          display: none; } }
      @media (min-width: 760px) and (max-width: 950px) {
        .main_top .logo_wrap .txt {
          left: 30vw; } }
      @media (min-width: 760px) {
        .main_top .logo_wrap .txt {
          position: absolute;
          bottom: 0;
          width: 30vw; } }
      .main_top .logo_wrap .txt .bebas {
        letter-spacing: .04em; }
        @media (max-width: 1105px) {
          .main_top .logo_wrap .txt .bebas {
            font-size: 8vw; } }
        @media (max-width: 950px) {
          .main_top .logo_wrap .txt .bebas {
            font-size: 7vw; } }
        @media (max-width: 760px) {
          .main_top .logo_wrap .txt .bebas {
            font-size: 7.7333333333vw !important; } }
      .main_top .logo_wrap .txt .fs23 {
        letter-spacing: .13em;
        display: block;
        margin: 13px 0 0;
        line-height: 1.47; }
        @media (max-width: 950px) {
          .main_top .logo_wrap .txt .fs23 {
            font-size: 2.1vw; } }
        @media (max-width: 760px) {
          .main_top .logo_wrap .txt .fs23 {
            font-size: 2.6666666667vw !important;
            margin: 0; } }

#site-content, #equipment {
  overflow: hidden; }

.inner {
  max-width: 1020px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: 0 10px; }
  @media (max-width: 760px) {
    .inner {
      padding: 0 5vw; } }
  .main_top .inner {
    display: flex;
    justify-content: center; }

.inner1200 {
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: 0 10px; }
  @media (max-width: 760px) {
    .inner1200 {
      padding: 0 5vw; } }

.inner800 {
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: 0 10px; }
  @media (max-width: 760px) {
    .inner800 {
      padding: 0 5vw; } }

.more {
  font-weight: 500;
  font-size: 20px;
  font-family: 'Poppins', sans-serif;
  max-width: 175px; }
  @media (max-width: 760px) {
    .more {
      margin-left: auto;
      margin-right: auto; } }

.news {
  padding: 92px 0 88px; }
  @media (min-width: 760px) {
    #kids .news {
      padding-top: 0; } }
  #kids .news a {
    color: inherit;
    text-decoration: none; }
  @media (max-width: 760px) {
    .news {
      padding: 12vw 0 6vw; } }
  .news .bebas {
    letter-spacing: .04em; }
    @media (min-width: 760px) {
      .news .bebas {
        padding: 0 125px 0 28px; } }
    @media (max-width: 760px) {
      .news .bebas {
        font-size: 10.6666666667vw !important; } }
  .news .cate {
    min-width: 101px;
    height: 24px;
    border: 1px solid #1E3779;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0 10px; }
    @media (max-width: 760px) {
      .news .cate .fs13 {
        font-size: 3.4666666667vw !important; } }
  .news .news_list {
    width: 100%; }
    .news .news_list li {
      border-bottom: 1px solid #E0E0E0;
      padding-bottom: 21px;
      margin-bottom: 15px; }
    .news .news_list a {
      display: flex;
      gap: 10px 20px;
      flex-wrap: wrap;
      color: inherit !important;
      text-decoration: none !important; }
      @media (max-width: 760px) {
        .news .news_list a {
          gap: 3vw; } }
      .news .news_list a .title {
        width: 100%;
        text-align: left; }
  .news .more {
    width: 100%;
    margin: 48px 0 0 auto; }
    @media (max-width: 760px) {
      .news .more {
        margin: 10vw 0 0; } }

.bg_blue {
  background: #F0F0F0; }
  .campaign .bg_blue {
    padding: 75px 0 0; }
    @media (max-width: 760px) {
      .campaign .bg_blue {
        padding: 12vw 0 0; } }

.bg_blue02 {
  background: #BDC5DC;
  overflow: auto; }

.color_red {
  color: #CC1111; }

.color_black {
  color: #000; }

.color_blue {
  color: #1E3779; }

.color_yellow {
  color: #EBEB41; }

.campaign {
  padding: 0 0 176px;
  margin: auto;
  overflow: hidden; }
  @media (min-width: 760px) {
    #kids .campaign {
      padding-bottom: 80px; } }
  @media (max-width: 760px) {
    .campaign {
      padding: 0 0 20vw; }
      .campaign h2.bebas {
        font-size: 8vw !important; }
        .campaign h2.bebas .fs18 {
          font-size: 3.7333333333vw !important; } }
  #admission .campaign {
    padding: 0 0 76px; }
  .campaign .btn_campaign03 {
    max-width: 1020px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px; }
    @media (min-width: 760px) {
      .campaign .btn_campaign03 li:not(:nth-child(1)) {
        width: 48%; } }
    @media (max-width: 760px) {
      .campaign .btn_campaign03 {
        margin: 0 4vw;
        gap: 2vw; }
        .campaign .btn_campaign03 li, .campaign .btn_campaign03 img {
          width: 100%; } }

.home .btn_facility {
  margin-bottom: 100px; }
  @media (max-width: 760px) {
    .home .btn_facility {
      margin-bottom: 4vw; } }
.btn_facility li {
  display: contents; }
.btn_facility a {
  position: relative;
  display: block;
  color: white;
  height: 339px;
  width: 100%; }
  @media (max-width: 760px) {
    .btn_facility a {
      height: 35.4vw; } }
  .btn_facility a .txt {
    position: absolute;
    inset: 0;
    margin-top: 105px; }
    @media (max-width: 760px) {
      .btn_facility a .txt {
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        justify-content: center; }
        .btn_facility a .txt .fs26 {
          font-size: 4.8vw !important; } }
  .btn_facility a .bebas {
    letter-spacing: .12em; }
    @media (max-width: 760px) {
      .btn_facility a .bebas {
        width: 100%;
        font-size: 9.0666666667vw !important; } }
  .btn_facility a.jjimjilbang {
    background: url(../img/top/bnr_jjimjilbang_pc.png) no-repeat center; }
    @media (min-width: 1920px) {
      .btn_facility a.jjimjilbang {
        background-size: 100%; } }
    @media (max-width: 760px) {
      .btn_facility a.jjimjilbang {
        background: url(../img/top/bnr_jjimjilbang_sp.png) no-repeat center;
        background-size: 100%; } }
  .btn_facility a.onsen {
    background: url(../img/top/bnr_onsen_pc.png) no-repeat center; }
    @media (min-width: 1920px) {
      .btn_facility a.onsen {
        background-size: 100%; } }
    @media (max-width: 760px) {
      .btn_facility a.onsen {
        background: url(../img/top/bnr_onsen_sp.png) no-repeat center;
        background-size: 100%; } }

@media (max-width: 760px) {
  .equipment h2.bebas {
    font-size: 8vw !important; } }
@media (min-width: 760px) {
  .equipment .equipment_content {
    width: 94.53vw; } }
.equipment .equipment_content .inner1303 {
  max-width: 1323px;
  margin: auto;
  position: relative;
  padding: 0 10px; }
.equipment .equipment_content a {
  position: relative;
  color: white;
  font-size: 18px;
  display: block;
  border-bottom: 3px solid white;
  height: 565px;
  width: 100%; }
  @media (max-width: 760px) {
    .equipment .equipment_content a {
      height: auto;
      font-size: 4.2666666667vw !important; } }
  .equipment .equipment_content a:before {
    content: "";
    background: #1e3779e6;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    scale: 0 1;
    transform-origin: left top;
    transition: .3s; }
  .equipment .equipment_content a:after {
    content: "";
    position: absolute;
    top: 0;
    right: 80px;
    bottom: 0;
    background: url(../img/top/icon_equipment.svg) no-repeat;
    width: 81px;
    height: 16px;
    margin: auto; }
    @media (max-width: 760px) {
      .equipment .equipment_content a:after {
        background-size: 100%;
        margin: 0;
        right: 5vw;
        top: 15vw;
        width: 7vw; } }
  .equipment .equipment_content a:hover {
    opacity: 1;
    color: white; }
    .equipment .equipment_content a:hover:before {
      scale: 1 1; }
  @media (min-width: 760px) {
    .equipment .equipment_content a dl {
      position: absolute;
      inset: 0;
      display: flex;
      gap: 30px;
      margin-top: 215px;
      padding: 0 170px 0px 0; } }
  .equipment .equipment_content a dl dd {
    max-width: 479px;
    line-height: 2.05;
    letter-spacing: .04em; }
    @media (max-width: 760px) {
      .equipment .equipment_content a dl dd {
        padding: 6.6vw 5vw;
        max-width: 100%; } }
  .equipment .equipment_content a dl dt {
    letter-spacing: .04em; }
    @media (min-width: 760px) {
      .equipment .equipment_content a dl dt {
        width: 20vw;
        min-width: 230px;
        line-height: 1; } }
    @media (max-width: 760px) {
      .equipment .equipment_content a dl dt {
        font-size: 9.0666666667vw !important;
        display: flex;
        flex-wrap: wrap;
        padding: 7vw 8vw;
        align-items: center;
        line-height: 1;
        height: 31.5vw; }
        .equipment .equipment_content a dl dt .fs30 {
          font-size: 4.8vw !important;
          width: 100%;
          margin-top: 0vw; } }
    .equipment .equipment_content a dl dt span {
      display: block;
      margin: 45px 0 0;
      letter-spacing: 0; }
      @media (max-width: 760px) {
        .equipment .equipment_content a dl dt span {
          margin: 20px 0 0; } }
.equipment .equipment_content .gym {
  background: url(../img/top/bg_gym_pc.png) no-repeat center; }
  @media (min-width: 1920px) {
    .equipment .equipment_content .gym {
      background-size: 100%; } }
  @media (max-width: 760px) {
    .equipment .equipment_content .gym {
      background: url(../img/top/bg_gym_sp.png) #7786AE no-repeat center top;
      background-size: 100%; } }
.equipment .equipment_content .swimming {
  background: url(../img/top/bg_swimming_pc.png) no-repeat center; }
  @media (min-width: 1920px) {
    .equipment .equipment_content .swimming {
      background-size: 100%; } }
  @media (max-width: 760px) {
    .equipment .equipment_content .swimming {
      background: url(../img/top/bg_swimming_sp.png) #7786AE no-repeat center top;
      background-size: 100%; } }
.equipment .equipment_content .studio {
  background: url(../img/top/bg_studio_pc.png) no-repeat center; }
  @media (min-width: 1920px) {
    .equipment .equipment_content .studio {
      background-size: 100%; } }
  @media (max-width: 760px) {
    .equipment .equipment_content .studio {
      background: url(../img/top/bg_studio_sp.png) #7786AE no-repeat center top;
      background-size: 100%; } }
.equipment .equipment_content .golf {
  background: url(../img/top/bg_golf_pc.png) no-repeat center; }
  @media (min-width: 1920px) {
    .equipment .equipment_content .golf {
      background-size: 100%; } }
  @media (max-width: 760px) {
    .equipment .equipment_content .golf {
      background: url(../img/top/bg_golf_sp.png) #7786AE no-repeat center top;
      background-size: 100%; } }
.equipment .equipment_content .facility {
  color: #1E3779; }
  .equipment .equipment_content .facility:after {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="81.223" height="16.255" viewBox="0 0 81.223 16.255"><g transform="translate(-9400.96 -3157.373)"><path d="M9280.521,3171.871H9200.96v-2h79.562Z" transform="translate(200 -5.371)" fill="#fff"/><path d="M9275.065,3173.521l-1.414-1.414,6.705-6.705-6.706-6.723,1.416-1.413,8.116,8.137Z" transform="translate(199 0.106)" fill="#1E3779"/></g></svg>'); }

.location {
  background: url(../img/top/bg_location.png);
  padding-bottom: 70px;
  margin-bottom: 100px; }
  @media (min-width: 760px) {
    .location {
      width: 94.53vw; } }
  @media (max-width: 760px) {
    .location {
      padding-bottom: 0;
      margin-bottom: 9vw; } }
  .location .location_inner {
    margin-left: 6vw;
    position: relative; }
    .location .location_inner h2.bebas {
      writing-mode: vertical-lr;
      position: absolute;
      top: 190px;
      left: -20px;
      color: white; }
      @media (max-width: 760px) {
        .location .location_inner h2.bebas {
          font-size: 10.6666666667vw !important;
          top: 7vw;
          left: 6vw; } }
      .location .location_inner h2.bebas span {
        display: block; }
        @media (max-width: 760px) {
          .location .location_inner h2.bebas span {
            font-size: 3.4666666667vw !important; } }
    .location .location_inner .okinawa {
      padding-top: 2.34vw; }
      @media (min-width: 1920px) {
        .location .location_inner .okinawa img {
          width: 100%; } }
      @media (min-width: 760px) {
        .location .location_inner .okinawa {
          width: 46.25vw; } }
      @media (max-width: 760px) {
        .location .location_inner .okinawa img {
          margin: auto; } }
    .location .location_inner .location_list {
      margin-top: 10.16vw; }
      @media (max-width: 760px) {
        .location .location_inner .location_list {
          margin-top: 8.5vw; } }
      .location .location_inner .location_list a {
        display: block;
        padding: 2.86vw 51px 4vw;
        line-height: 1.15;
        color: white;
        position: relative; }
        @media (min-width: 1920px) {
          .location .location_inner .location_list a {
            background-size: 100% !important; } }
        @media (min-width: 760px) {
          .location .location_inner .location_list a {
            width: 42.24vw; } }
        @media (max-width: 760px) {
          .location .location_inner .location_list a {
            padding: 7vw 6vw; } }
        .location .location_inner .location_list a span {
          display: block;
          position: relative; }
          @media (max-width: 760px) {
            .location .location_inner .location_list a span {
              font-size: 3.7333333333vw !important; } }
        .location .location_inner .location_list a .bebas {
          letter-spacing: .04em; }
          @media (max-width: 760px) {
            .location .location_inner .location_list a .bebas {
              font-size: 5.3333333333vw !important; } }
        .location .location_inner .location_list a.naha {
          background: url(../img/top/bg_naha.png) no-repeat center; }
        .location .location_inner .location_list a.urasoe {
          background: url(../img/top/bg_urasoe.png) no-repeat center; }
        .location .location_inner .location_list a.misato {
          background: url(../img/top/bg_misato.png) no-repeat center; }
        .location .location_inner .location_list a.uruma {
          background: url(../img/top/bg_uruma.png) no-repeat center; }
        .location .location_inner .location_list a:before {
          content: "";
          background: #1e3779e6;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          scale: 0 1;
          transform-origin: left top;
          transition: .3s; }
        .location .location_inner .location_list a:after {
          content: "";
          background: url(../img/common/arrow_white.svg) no-repeat;
          width: 22px;
          height: 42px;
          display: block;
          position: absolute;
          top: 0;
          right: 50px;
          bottom: 0;
          margin: auto; }
          @media (max-width: 760px) {
            .location .location_inner .location_list a:after {
              background-size: 100%;
              right: 6vw;
              width: 3vw;
              height: 6vw; } }
        .location .location_inner .location_list a:hover {
          opacity: 1; }
          .location .location_inner .location_list a:hover:before {
            scale: 1 1; }

.footer {
  background: #1E3779; }
  @media (min-width: 760px) {
    .footer .inner1200 {
      padding: 70px 10px 0; } }
  .footer .logo_footer {
    position: absolute;
    top: 90px;
    left: 66px; }
    @media (max-width: 760px) {
      .footer .logo_footer {
        top: 20px;
        left: 5vw;
        width: 12.5vw; } }
  .footer .sns {
    display: flex;
    align-items: center;
    gap: 30px;
    position: absolute;
    right: 10px;
    top: 82px; }
    @media (max-width: 760px) {
      .footer .sns {
        margin-left: auto;
        padding: 11vw 4vw;
        position: inherit; } }
  .footer .sitemap {
    color: white;
    max-width: 930px; }
    @media (min-width: 760px) {
      .footer .sitemap {
        margin-left: calc(1200px - 930px); } }
    .footer .sitemap .sitemap01 {
      padding: 20px 0 20px 13px;
      border-bottom: 1px solid white; }
    .footer .sitemap .sitemap02 {
      border-bottom: 1px solid white;
      padding: 39px 0 30px; }
      .footer .sitemap .sitemap02 dl.fw700 li {
        margin-bottom: 9px; }
      .footer .sitemap .sitemap02 dl dt {
        font-weight: 700; }
        .footer .sitemap .sitemap02 dl dt:before {
          content: "-";
          margin-right: 9px; }
      .footer .sitemap .sitemap02 dl dd {
        padding: 9px 0 0 12px; }
        .footer .sitemap .sitemap02 dl dd li {
          margin-bottom: 5px; }
    .footer .sitemap .sitemap03 {
      padding: 20px 0; }
      .footer .sitemap .sitemap03 ul {
        gap: 15px 44px; }
        .footer .sitemap .sitemap03 ul a {
          position: relative;
          padding-right: 17px; }
          .footer .sitemap .sitemap03 ul a:after {
            content: "";
            border: 1px solid;
            border-left: none;
            border-top: none;
            width: 7px;
            height: 7px;
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            margin: auto;
            transform: rotate(-45deg); }
  .footer .copyright {
    background: white;
    font-size: 14px;
    text-align: center;
    padding: 30px;
    font-weight: 500;
    letter-spacing: .06em; }
    @media (max-width: 760px) {
      .footer .copyright {
        padding: 5vw;
        font-size: 3.7333333333vw !important; } }

li {
  list-style: none; }

.slider {
  margin-bottom: 77px; }
  @media (max-width: 760px) {
    .slider {
      margin-bottom: 10vw; }
      .slider img {
        width: 100%; } }

.slick-track {
  display: flex;
  gap: 15px; }

.slick-prev:before,
.slick-next:before {
  content: '';
  background: url(../img/common/arrow_slider.svg) no-repeat;
  width: 37px;
  height: 70px;
  display: block; }
  @media (max-width: 760px) {
    .slick-prev:before,
    .slick-next:before {
      background-size: 100%;
      width: 3vw;
      height: 6vw; } }

.slick-prev:before {
  transform: translate(-21px, -36%) scale(-1, 1); }
  @media (max-width: 760px) {
    .slick-prev:before {
      transform: translate(4vw, 0%) scale(-1, 1); } }

.slick-next:before {
  transform: translate(5px, -36%); }
  @media (max-width: 760px) {
    .slick-next:before {
      transform: translate(-1vw, 0%); } }

h2 {
  letter-spacing: .04em;
  margin-bottom: 35px; }
  @media (max-width: 760px) {
    h2 {
      margin-bottom: 5vw; } }
  h2 .block {
    margin-top: 15px;
    letter-spacing: 0.04em; }
    @media (max-width: 760px) {
      h2 .block {
        margin-top: 2vw; } }

h3 .block {
  margin-top: 15px;
  letter-spacing: 0.04em; }

h4 {
  font-size: 20px;
  margin-bottom: 22px; }
  @media (max-width: 760px) {
    h4 {
      font-size: 4.8vw !important; } }

.under {
  background: #E8ECF7; }
  @media (max-width: 760px) {
    .under h2.bebas {
      font-size: 8vw !important;
      margin-bottom: 10vw; }
      .under h2.bebas .fs20 {
        font-size: 3.7333333333vw !important; } }
  .under .under_content {
    position: relative;
    background: white;
    margin-bottom: 10vw;
    padding: 16vw 0 10vw; }
    @media (min-width: 760px) {
      .under .under_content {
        width: 94.53vw;
        padding: 170px 0 98px;
        margin-bottom: 177px; }
        .application-form .under .under_content {
          margin-top: -150px; }
        .under .under_content .inner1200 {
          max-width: calc(1220px + 5.47vw);
          padding-left: calc(5.47vw + 10px); } }
    #admission .under .under_content {
      margin-bottom: 0; }
      @media (min-width: 760px) {
        #admission .under .under_content {
          padding-bottom: 165px; } }
    @media (min-width: 760px) {
      #jjimjilbang .under .under_content {
        padding-bottom: 5vw; } }
    #kids .under .under_content {
      padding-bottom: 0; }
  .under p:not([class]) {
    margin-bottom: 25px; }
    @media (min-width: 760px) {
      .single .under p:not([class]) {
        margin-bottom: 45px; } }
    @media (max-width: 760px) {
      .under p:not([class]) {
        margin-bottom: 5vw; } }
  .under a:not([class]) {
    color: #0046FF;
    text-decoration: underline; }
    .single .under a:not([class]) {
      color: #1E3779; }
  .under .btn_blue a {
    text-decoration: none;
    color: white;
    border-radius: 5px;
    padding: 8px 44px 8px 19px;
    font-size: inherit;
    background: #2B2790 url(../img/common/arrow_white.svg) no-repeat right 17px center;
    background-size: 10px; }
    @media (max-width: 760px) {
      .under .btn_blue a {
        display: inline-block;
        background-position: center right 3vw;
        padding: 2vw 8vw 2vw 2vw; } }
  .under .ttl_border_b {
    margin: 75px 0 50px;
    position: relative;
    font-size: 26px;
    font-weight: 500;
    padding-bottom: 14px; }
    @media (max-width: 760px) {
      .under .ttl_border_b {
        font-size: 6.4vw !important;
        margin-bottom: 5vw; } }
    .under .ttl_border_b:before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100px;
      height: 0;
      border-bottom: 1px solid; }
  .under .ttl_border_b02 {
    padding: 18px 0 22px;
    border-bottom: 1px solid;
    margin-bottom: 13px; }
    @media (max-width: 760px) {
      .under .ttl_border_b02 {
        font-size: 4.8vw !important;
        line-height: calc(27/18); } }
  .under .shop_img {
    margin-bottom: 40px; }
  .under .equipment_icon_list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex-wrap: wrap; }
    .under .equipment_icon_list img {
      margin: 0; }
    @media (min-width: 760px) {
      .under .equipment_icon_list {
        max-width: 300px;
        height: 120px;
        line-height: 2; } }
    .under .equipment_icon_list li {
      display: flex;
      align-items: center;
      gap: 10px; }
  .under .lwp {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 15px 35px;
    margin-bottom: 133px; }
    @media (min-width: 760px) {
      .under .lwp {
        padding: 51px 100px 57px;
        border: 1px solid #1E3779; } }
    @media (max-width: 760px) {
      .under .lwp {
        gap: 4vw;
        margin-bottom: 16vw; } }
    .under .lwp a {
      display: flex;
      align-items: center;
      border-bottom: 1px solid #BDC5DC;
      font-weight: 500;
      padding: 13px 10px;
      font-size: 14px;
      letter-spacing: .04em;
      position: relative;
      background: url(../img/common/icon_lwp.svg) no-repeat right 5px center;
      color: #1E3779;
      text-decoration: none; }
      @media (max-width: 760px) {
        .under .lwp a {
          font-size: 3.7333333333vw !important;
          padding: 3.6vw 3vw; } }
    .under .lwp li {
      width: 100%;
      max-width: 239px; }
      @media (max-width: 760px) {
        .under .lwp li {
          max-width: 73vw; } }
  .under#equipment .lwp {
    padding: 51px 14.5vw 57px;
    margin-top: 100px; }
    #facility .under#equipment .lwp {
      margin-top: 0; }
    @media (max-width: 899px) {
      .under#equipment .lwp {
        padding: 51px 5vw 57px; } }
  .under .equipment_feature_txt,
  .under .about_txt,
  .under .way_txt {
    width: 640px;
    font-size: 18px;
    line-height: calc(37/18);
    letter-spacing: .04em; }
    @media (max-width: 760px) {
      .under .equipment_feature_txt,
      .under .about_txt,
      .under .way_txt {
        width: auto;
        font-size: 4.2666666667vw !important; } }
  @media (min-width: 760px) {
    .under .equipment_feature_img, .under .about_img, .under .way_img {
      width: 485px; } }
  @media (max-width: 760px) {
    .under .equipment_feature_img, .under .about_img, .under .way_img {
      width: 80vw;
      margin: 0 auto 20vw; }
      #recruit .under .equipment_feature_img,
      #recruit .under .about_img,
      #recruit .under .way_img {
        width: auto; }
      #urasoeno-yu .under .equipment_feature_img, #urasoeno-yu .under .about_img, #urasoeno-yu .under .way_img {
        margin-bottom: 10vw; } }
  @media (max-width: 760px) {
    .under .way_img {
      margin-bottom: 5vw; } }
  .under .feature_box {
    padding: 100px 90px;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    background: #E8ECF7; }
    @media (max-width: 760px) {
      .under .feature_box {
        padding: 14vw 5vw 5vw;
        margin: 0 -5vw 10vw; } }
    @media (min-width: 760px) {
      .under .feature_box .feature_box_img {
        min-width: 344px; } }
    @media (max-width: 760px) {
      .under .feature_box .feature_box_img {
        width: 80vw;
        margin: 0 auto 4vw; } }
    .under .feature_box .feature_box_txt {
      max-width: 615px;
      padding-top: 12px;
      letter-spacing: .04em;
      line-height: 2; }
      @media (max-width: 760px) {
        .under .feature_box .feature_box_txt {
          padding-top: 3vw; } }
    .under .feature_box h3 {
      line-height: 1.5; }
      @media (min-width: 760px) {
        #golf .under .feature_box h3 {
          min-height: 3em; } }
      @media (max-width: 760px) {
        .under .feature_box h3 {
          font-size: 4.8vw !important;
          margin-bottom: 5vw; } }
  .under .equipment_list {
    background: #E8ECF7;
    padding: 40px 40px 25px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 25px 4%; }
    @media (max-width: 760px) {
      .under .equipment_list {
        padding: 6vw;
        gap: 5vw;
        margin-bottom: 15vw; } }
    @media (min-width: 760px) {
      .under .equipment_list li:not([class]) {
        width: 48%; } }
  .under .anchor_link {
    display: flex;
    width: 100%;
    z-index: 1; }
    @media (max-width: 760px) {
      .under .anchor_link {
        font-size: 3.7333333333vw !important; } }
    .under .anchor_link li {
      width: 25%;
      border-top: 1px solid #1E3779;
      border-left: 1px solid #1E3779; }
      .under .anchor_link li a {
        display: flex;
        width: 100%;
        justify-content: center;
        align-items: center;
        position: relative;
        color: #000;
        text-decoration: none;
        padding: 3.4vw;
        background: url(../img/common/icon_lwp.svg) #fff no-repeat right 1vw center/3vw;
        border-right: 1px solid #1E3779;
        border-bottom: 1px solid #1E3779; }
  #studio .under .btn_program.calender {
    margin: 38px auto 140px; }
    @media (max-width: 760px) {
      #studio .under .btn_program.calender {
        margin: 8vw auto 10vw; } }
    #studio .under .btn_program.calender a {
      margin: 0 auto 10px; }
  .under .btn_program a {
    margin: 38px auto 140px;
    max-width: 761px;
    display: flex;
    padding: 10px;
    height: 75px;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    background: #1E3779;
    color: white;
    text-decoration: none; }
    @media (max-width: 760px) {
      .under .btn_program a {
        font-size: 4.2666666667vw !important;
        padding: 3.5vw;
        margin: 8vw auto 10vw;
        height: auto; } }
    .under .btn_program a span {
      position: relative; }
      @media (max-width: 760px) {
        .under .btn_program a span {
          padding-right: 5vw; } }
      .under .btn_program a span:after {
        content: "";
        margin: auto;
        border: solid transparent;
        border-width: 8px 0 8px 12px;
        border-left-color: white;
        position: absolute;
        top: 0;
        bottom: 0;
        width: 0;
        height: 0;
        right: -52px; }
        @media (max-width: 760px) {
          .under .btn_program a span:after {
            right: 0; } }
  .under .pool_detailes {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 30px; }
    .under .pool_detailes dt {
      padding: 4px 10px;
      background: #2B2790;
      color: white;
      width: 70px;
      text-align: center; }
      @media (max-width: 760px) {
        .under .pool_detailes dt {
          width: 18.666666666666668vw; } }
    @media (min-width: 760px) {
      .under .pool_detailes dd + dt {
        margin-left: 10px; } }
    @media (max-width: 760px) {
      .under .pool_detailes dd {
        width: calc(100% - 22vw); } }
  .under .manners {
    padding: 65px 100px 80px;
    font-size: 15px;
    background: #2B2790;
    margin-bottom: 120px; }
    @media (max-width: 760px) {
      .under .manners {
        font-size: 4vw !important;
        padding: 10vw 5vw;
        margin: 0 -5vw; } }
    .under .manners h2 {
      color: white; }
      @media (max-width: 760px) {
        .under .manners h2 {
          font-size: 4.8vw !important; } }
    .under .manners .manners_list {
      justify-content: center; }
      .under .manners .manners_list li {
        background: white;
        border-radius: 10px;
        line-height: calc(23/15);
        padding: 25px; }
        @media (min-width: 760px) {
          .under .manners .manners_list li {
            width: 300px;
            min-height: 296px; } }
        @media (max-width: 859px) {
          .under .manners .manners_list li {
            width: 100%; } }
        @media (max-width: 760px) {
          .under .manners .manners_list li {
            padding: 6vw; } }
        .under .manners .manners_list li .manners_icon {
          display: flex;
          align-items: center;
          justify-content: center;
          height: 94px; }
          @media (max-width: 760px) {
            .under .manners .manners_list li .manners_icon {
              margin-bottom: 2vw; } }
  .under .box_border {
    border: 1px solid #1E3779;
    border-radius: 5px;
    padding: 20px;
    line-height: 1.5;
    font-size: 16px;
    margin-bottom: 5vw; }
    @media (max-width: 760px) {
      .under .box_border {
        font-size: 4.2666666667vw !important; } }
  .under .box_blue {
    border-radius: 5px;
    padding: 20px 23px;
    line-height: 1.5;
    margin-bottom: 5vw;
    background: #BDC5DC; }
  .under .btn_blue02 a {
    display: inline-block;
    padding: 13px 53px 13px 13px;
    min-width: 240px;
    text-decoration: none;
    color: white;
    background: url(../img/common/icon_arrow_circle.svg) #1E3779 no-repeat center right 22px;
    letter-spacing: 0; }
    @media (max-width: 760px) {
      .under .btn_blue02 a {
        margin: auto;
        display: table; } }
  .under .instructor {
    margin-bottom: 100px; }
    @media (max-width: 760px) {
      .under .instructor {
        margin-bottom: 10vw; }
        .under .instructor .instructor_img {
          width: 100%; } }
    .under .instructor dt, .under .instructor dd {
      padding-left: 1.5em;
      position: relative; }
    .under .instructor dt {
      margin-bottom: 5px; }
      .under .instructor dt:before {
        content: "■";
        position: absolute;
        left: 0; }
    .under .instructor dd {
      margin-bottom: 20px; }
  .under .about .about_ttl {
    position: relative; }
    @media (max-width: 760px) {
      .under .about .about_ttl {
        text-align: center;
        margin-top: 10vw; }
        .under .about .about_ttl .about_txt {
          margin-bottom: 10vw; } }
    .under .about .about_ttl:before {
      content: "";
      position: absolute;
      left: 0;
      top: -38px;
      background: #1E3779;
      width: 13px;
      height: 4px; }
      @media (max-width: 760px) {
        .under .about .about_ttl:before {
          top: -6vw;
          right: 0;
          margin: auto; } }
  .under .difference_box {
    background: #BDC5DC;
    padding: 55px 50px 50px;
    margin-bottom: 100px; }
    @media (max-width: 760px) {
      .under .difference_box {
        margin: 0 -5vw 15vw;
        padding: 10vw 5vw 15vw; }
        .under .difference_box h2 {
          font-size: 5.3333333333vw !important; } }
    .under .difference_box .difference_box_head {
      margin-bottom: 10px; }
      @media (min-width: 995px) {
        .under .difference_box .difference_box_head {
          display: flex;
          justify-content: space-between;
          align-items: center; } }
      @media (max-width: 760px) {
        .under .difference_box .difference_box_head .temperature {
          gap: 5vw 11vw; }
        .under .difference_box .difference_box_head .temperature_ttl {
          font-size: 4.8vw !important;
          width: 100%; } }
      .under .difference_box .difference_box_head dd {
        line-height: 1.3; }
        @media (max-width: 760px) {
          .under .difference_box .difference_box_head dd {
            font-size: 6.4vw !important; }
            .under .difference_box .difference_box_head dd .fs55 {
              font-size: 12.8vw !important; }
            .under .difference_box .difference_box_head dd .fs30 {
              font-size: 6.9333333333vw !important; } }
      .under .difference_box .difference_box_head dt {
        text-align: center;
        padding: 3px;
        font-size: 18px;
        color: white;
        border-radius: 20px;
        background: #2B2790; }
        @media (max-width: 760px) {
          .under .difference_box .difference_box_head dt {
            font-size: 4vw !important; } }
      .under .difference_box .difference_box_head .sauna dt {
        width: 5em; }
      .under .difference_box .difference_box_head .jjimjilbang dt {
        width: 9em; }
    .under .difference_box .difference_list {
      display: flex;
      flex-wrap: wrap;
      gap: 20px 1.9%;
      counter-reset: section; }
      .under .difference_box .difference_list li {
        position: relative;
        padding: 20px 20px 20px 83px;
        letter-spacing: .04em;
        background: white;
        border-radius: 10px; }
        @media (min-width: 760px) {
          .under .difference_box .difference_list li {
            font-size: 18px;
            width: 49.05%;
            min-height: 88px; } }
        @media (max-width: 760px) {
          .under .difference_box .difference_list li {
            font-size: 4.2666666667vw !important;
            padding: 5.333333333333334vw 5.333333333333334vw 5.333333333333334vw 22.133333333333333vw; } }
        .under .difference_box .difference_list li .point {
          position: absolute;
          width: 56px;
          height: 56px;
          display: flex;
          flex-wrap: wrap;
          align-content: center;
          justify-content: center;
          text-align: center;
          background: #2B2790;
          color: white;
          border-radius: 50%;
          top: 14px;
          left: 19px;
          line-height: 1;
          padding-top: 0.3em; }
          @media (max-width: 760px) {
            .under .difference_box .difference_list li .point {
              width: 14.933333333333335vw;
              height: 14.933333333333335vw;
              top: 3.733333333333334vw;
              left: 5.066666666666666vw;
              font-size: 2.9333333333vw !important; }
              .under .difference_box .difference_list li .point .fs24 {
                font-size: 6.4vw !important; } }
          .under .difference_box .difference_list li .point .num {
            width: 100%; }
            .under .difference_box .difference_list li .point .num:before {
              counter-increment: section;
              content: counter(section,decimal-leading-zero); }
  .under .way {
    padding: 142px 0;
    counter-reset: section; }
    @media (max-width: 760px) {
      .under .way {
        padding: 15vw 0 10vw; }
        .under .way .fs25 {
          font-size: 4.8vw !important; }
        .under .way .fs23 {
          font-size: 5.6vw !important; }
        .under .way .fs51 {
          font-size: 12.8vw !important; } }
    .under .way .way_ttl {
      position: relative; }
      @media (max-width: 760px) {
        .under .way .way_ttl {
          position: relative; }
          .under .way .way_ttl .about_txt {
            margin-bottom: 10vw; } }
      .under .way .way_ttl:before {
        content: "";
        position: absolute;
        left: 0;
        top: -38px;
        background: #1E3779;
        width: 13px;
        height: 4px;
        right: 0;
        margin: auto; }
        @media (max-width: 760px) {
          .under .way .way_ttl:before {
            top: -6vw; } }
    .under .way h3 {
      display: flex;
      align-items: center;
      gap: 20px;
      border-bottom: 1px solid;
      margin-bottom: 13px;
      padding: 0px 0 6px; }
      .under .way h3 .step {
        display: flex;
        align-items: center;
        gap: 8px;
        transform: translateY(3px); }
        .under .way h3 .step .num:before {
          counter-increment: section;
          content: counter(section,decimal-leading-zero); }
    .under .way .flex + .flex {
      margin-top: 40px; }
  .under .room {
    padding: 120px 0 0; }
    @media (max-width: 760px) {
      .under .room {
        padding: 15vw 0 0; }
        .under .room .mb80 {
          margin-bottom: 10vw; }
        .under .room .fs18 {
          font-size: 4.2666666667vw !important; } }
  @media (max-width: 760px) and (max-width: 760px) {
    .under .room .rooms_img {
      width: 80vw;
      margin: 0 auto 5vw; }
      #recruit .under .room .rooms_img {
        width: auto; } }
    @media (max-width: 760px) {
        .under .room .rooms_txt {
          margin-bottom: 10vw; } }
    .under .room .bg_blue_radius {
      color: white;
      border-radius: 20px;
      background: #2B2790;
      display: inline-block;
      padding: 2px 20px;
      margin-bottom: 20px; }
      @media (max-width: 760px) {
        .under .room .bg_blue_radius {
          font-size: 4.2666666667vw !important; } }
    .under .room .flex + .flex {
      margin-top: 32px; }
  .under .store {
    padding: 140px 0 100px;
    background: #E8ECF7; }
    @media (max-width: 760px) {
      .under .store {
        padding: 20vw 0 10vw; } }
  .under .efficacy {
    background: #E8ECF7;
    margin: 60px  0 102px;
    padding: 75px 50px 50px; }
    @media (max-width: 760px) {
      .under .efficacy {
        margin: 5vw -5vw;
        padding: 10vw 5vw; } }
    .under .efficacy h3 {
      margin-bottom: 60px; }
      @media (max-width: 760px) {
        .under .efficacy h3 {
          font-size: 5.3333333333vw !important;
          line-height: inherit;
          margin-bottom: 10vw; } }
    .under .efficacy span {
      margin-left: 30px;
      letter-spacing: .04em; }
      @media (max-width: 760px) {
        .under .efficacy span {
          margin: 5vw 0 0 0;
          display: block;
          font-size: 4.8vw !important; } }
    .under .efficacy .efficacy_list {
      display: flex;
      flex-wrap: wrap;
      gap: 20px; }
      @media (max-width: 760px) {
        .under .efficacy .efficacy_list {
          gap: 4vw; } }
      .under .efficacy .efficacy_list li {
        width: 204px;
        height: 88px;
        display: flex;
        justify-content: center;
        align-items: center;
        background: white;
        border-radius: 10px;
        font-weight: 500; }
        @media (max-width: 760px) {
          .under .efficacy .efficacy_list li {
            width: 43vw;
            min-height: 62px;
            padding: 5vw; } }
  .under .box_timeservice {
    margin: 75px 0;
    padding: 50px;
    background: white; }
    @media (max-width: 760px) {
      .under .box_timeservice {
        margin: 10vw 0;
        padding: 10vw 5vw; } }
    .under .box_timeservice h3 {
      margin-bottom: 40px; }
      @media (max-width: 760px) {
        .under .box_timeservice h3 {
          font-size: 4.8vw !important;
          margin-bottom: 5vw;
          text-align: center; } }
    .under .box_timeservice .timeservice_list {
      display: flex;
      flex-wrap: wrap;
      gap: 21px;
      justify-content: center; }
      .under .box_timeservice .timeservice_list li {
        width: 226px;
        border-radius: 10px;
        overflow: hidden;
        display: flex; }
        @media (max-width: 760px) {
          .under .box_timeservice .timeservice_list li {
            width: 100%; } }
        .under .box_timeservice .timeservice_list li dl {
          display: flex;
          flex-wrap: wrap;
          background: #E8ECF7; }
          @media (max-width: 760px) {
            .under .box_timeservice .timeservice_list li dl {
              width: 100%; } }
        .under .box_timeservice .timeservice_list li dt {
          width: 226px;
          height: 55px;
          color: white;
          display: flex;
          align-items: center;
          justify-content: center;
          background: #2B2790; }
          @media (max-width: 760px) {
            .under .box_timeservice .timeservice_list li dt {
              width: 100%;
              height: 13.4vw; } }
        .under .box_timeservice .timeservice_list li dd {
          padding: 13px 10px 30px;
          width: 100%; }
          @media (max-width: 760px) {
            .under .box_timeservice .timeservice_list li dd .fs20 {
              font-size: 4.8vw !important; }
            .under .box_timeservice .timeservice_list li dd .fs16 {
              font-size: 4.2666666667vw !important; }
            .under .box_timeservice .timeservice_list li dd .fs13 {
              font-size: 3.4666666667vw !important; } }
          .under .box_timeservice .timeservice_list li dd * + * {
            margin-top: 8px; }
  .under .lesson-program_btn {
    background: #BDC5DC;
    padding: 50px;
    margin-bottom: 60px; }
    @media (max-width: 760px) {
      .under .lesson-program_btn {
        padding: 5vw; } }
    .under .lesson-program_btn label {
      border: 1px solid white;
      color: white;
      padding: 1px 26px;
      display: flex;
      align-items: center;
      cursor: pointer; }
      @media (max-width: 760px) {
        .under .lesson-program_btn label {
          padding: 1vw 3vw; } }
      .under .lesson-program_btn label:has(:checked) {
        background: #1E3779;
        border-color: #1E3779; }
    .under .lesson-program_btn input {
      display: none; }
    .under .lesson-program_btn .lesson-program_btn_list {
      display: flex;
      flex-wrap: wrap;
      gap: 10px; }
      .under .lesson-program_btn .lesson-program_btn_list dt {
        width: 116px;
        font-size: 18px;
        font-weight: 700;
        color: #1E3779;
        background: white;
        text-align: center; }
        @media (max-width: 760px) {
          .under .lesson-program_btn .lesson-program_btn_list dt {
            font-size: 4.8vw !important;
            width: 38%; } }
      .under .lesson-program_btn .lesson-program_btn_list dd {
        width: calc(100% - 126px);
        display: flex;
        flex-wrap: wrap;
        gap: 10px; }
        @media (max-width: 760px) {
          .under .lesson-program_btn .lesson-program_btn_list dd {
            width: 57%; } }
  .under .lesson-program_list {
    display: flex;
    flex-wrap: wrap;
    gap: 40px 4%; }
    @media (min-width: 760px) {
      .under .lesson-program_list li {
        width: 48%; } }
    .under .lesson-program_list li a {
      color: inherit;
      text-decoration: none;
      display: block; }
      @media (max-width: 760px) {
        .under .lesson-program_list li a .title {
          font-size: 4.8vw !important; } }
  .under .modal {
    position: fixed;
    inset: 0;
    margin: auto;
    z-index: 99;
    background: #00000080;
    display: none;
    padding-top: 60px; }
    @media (max-width: 760px) {
      .under .modal {
        padding: 8vw; }
        .under .modal .modal_ttl {
          font-size: 4.8vw !important; } }
    .under .modal.open {
      display: flex;
      justify-content: center;
      overflow: auto; }
  .under .modal_inner {
    max-width: 720px;
    position: relative; }
    @media (min-width: 760px) {
      .under .modal_inner {
        margin-bottom: 60px; } }
    .under .modal_inner .modal_close {
      position: absolute;
      top: 0;
      right: 0;
      transform: translate(120%, -120%);
      cursor: pointer; }
  .under .modal_box {
    position: relative; }
  .under iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9; }
  .under .calendar_iframe iframe {
    height: 600px; }
  .under .img iframe {
    pointer-events: none; }
  .under .modal_img {
    line-height: 0; }
  .under .modal_txt {
    background: white;
    padding: 55px; }
    @media (max-width: 760px) {
      .under .modal_txt {
        padding: 5vw; } }
  .under .is-hide {
    display: none; }
  .under .modal_list {
    border: 1px solid #1E3779;
    padding: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px; }
    @media (max-width: 760px) {
      .under .modal_list {
        gap: 1.9vw;
        padding: 5vw; } }
    .under .modal_list dt {
      width: 108px;
      background: #1E3779;
      color: white;
      text-align: center; }
      @media (max-width: 760px) {
        .under .modal_list dt {
          width: 44%; } }
    .under .modal_list dd {
      width: 150px; }
      @media (max-width: 760px) {
        .under .modal_list dd {
          width: 53%; } }
  .under .facility_list {
    flex-wrap: wrap;
    gap: 40px 5%; }
    @media (min-width: 760px) {
      .under .facility_list li {
        width: 47.5%; } }
  #facility .under #urasoe, #facility .under #misato, #facility .under #uruma {
    margin-top: 180px; }
    @media (max-width: 760px) {
      #facility .under #urasoe, #facility .under #misato, #facility .under #uruma {
        margin-top: 20vw; } }

.detailes_area {
  width: 100%;
  max-width: 821px; }
  @media (max-width: 760px) {
    .detailes_area {
      line-height: 2;
      letter-spacing: .04em; }
      .detailes_area mb70 {
        margin-bottom: 11vw; } }

.flex .ttl_area {
  position: relative; }
  @media (min-width: 760px) {
    .flex .ttl_area {
      width: calc(100% - 821px);
      min-width: fit-content;
      padding-right: 10px; } }
  @media (max-width: 760px) {
    .flex .ttl_area {
      background: #1E3779;
      width: auto;
      margin: 0 -5vw 9vw;
      height: 44vw;
      color: white;
      display: flex;
      flex-wrap: wrap;
      align-content: center;
      justify-content: center;
      padding-top: 6vw;
      font-size: 9.0666666667vw !important; }
      .flex .ttl_area .fs18, .flex .ttl_area .fs20 {
        font-size: 4.5333333333vw !important;
        width: 100%;
        text-align: center; } }
  .flex .ttl_area:before {
    content: "";
    position: absolute;
    left: 0;
    top: -38px;
    background: #1E3779;
    width: 13px;
    height: 4px; }
    @media (max-width: 760px) {
      .flex .ttl_area:before {
        top: 10vw;
        right: 0;
        margin: auto;
        background: #fff; } }

.btn_schedule a {
  display: flex;
  padding: 10px;
  height: 75px;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  background: #1E3779;
  color: white !important;
  text-decoration: none !important;
  position: relative; }
  @media (min-width: 760px) {
    #studio .btn_schedule a, #golf .btn_schedule a, #swimming .btn_schedule a {
      max-width: 725px; } }
  @media (max-width: 760px) {
    .btn_schedule a {
      font-size: 4.2666666667vw !important;
      padding: 3.5vw;
      height: auto; } }
  @media (max-width: 760px) {
    .btn_schedule a span {
      padding-right: 4vw; } }
  .btn_schedule a span:after {
    content: "";
    margin: auto;
    border: solid transparent;
    border-width: 8px 0 8px 12px;
    border-left-color: white;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 0;
    height: 0;
    right: 30px; }

.btn_program_cal {
  margin-top: 20px; }
  .btn_program_cal a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 65px;
    position: relative;
    border: 1px solid #1E3779;
    text-decoration: none !important;
    color: inherit !important;
    padding: 10px 70px 10px 70px; }
    @media (min-width: 760px) {
      #studio .btn_program_cal a {
        max-width: 724px; } }
    @media (max-width: 760px) {
      .btn_program_cal a {
        height: auto;
        padding: 4vw 4vw 4vw 90px; } }
    .btn_program_cal a:before {
      content: "";
      position: absolute;
      background: url(../img/common/icon_cal.svg) no-repeat;
      width: 39px;
      height: 37px;
      top: 0;
      left: 30px;
      bottom: 0;
      margin: auto; }
    .btn_program_cal a:after {
      content: "";
      margin: auto;
      border: solid transparent;
      border-width: 8px 0 8px 12px;
      border-left-color: initial;
      position: absolute;
      top: 0;
      bottom: 0;
      width: 0;
      height: 0;
      right: 30px; }
      @media (max-width: 760px) {
        .btn_program_cal a:after {
          right: 0; } }
  .btn_program_cal li + li {
    margin-top: 20px; }

.btn_border a {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid;
  position: relative;
  height: 50px;
  width: 100%; }
  .under .btn_border a {
    color: #1E3779;
    text-decoration: none;
    height: 65px;
    margin: 0 auto 40px; }
    @media screen and (min-width: 760px) {
      .under .btn_border a {
        max-width: 480px;
        font-size: 18px;
        margin-bottom: 100px; }
        #swimming .under .btn_border a {
          margin: 0 0 20px;
          max-width: 725px; } }
    @media (max-width: 760px) {
      .under .btn_border a {
        height: 16vw;
        margin: 0 auto 5vw; } }
  .btn_border a:after {
    content: "";
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    width: 0;
    height: 0;
    margin: auto;
    border: solid transparent;
    border-width: 6px  0 7px 8px;
    border-left-color: #1E3779; }
    #swimming .btn_border a:after {
      right: 30px;
      border-width: 8px 0 8px 12px; }

.info {
  padding: 110px 0; }
  @media (max-width: 760px) {
    .info {
      padding: 0 0 10vw; } }
  .info .map {
    margin-top: 40px; }
    @media (max-width: 760px) {
      .info .map {
        margin-top: 8vw; }
        .info .map iframe {
          height: 48vw; } }

.tbl01 {
  border-collapse: collapse; }
  .tbl01 th, .tbl01 td {
    border-bottom: 1px solid #BDC5DC;
    padding: 16px 27px; }
    @media (max-width: 760px) {
      .tbl01 th, .tbl01 td {
        padding: 4vw 3vw;
        font-size: 3.4666666667vw !important;
        letter-spacing: .04em; } }
  .tbl01 th {
    width: 18.5%;
    text-align: left;
    vertical-align: top;
    font-weight: 500;
    font-size: 18px; }
    @media (max-width: 760px) {
      .tbl01 th {
        width: 34%;
        font-size: 4vw !important; } }

.tbl02, .tbl03 {
  border-collapse: collapse;
  border-left: 1px solid #707070;
  border-top: 1px solid #707070;
  background: white;
  width: 100%;
  font-weight: 500; }
  #facility .tbl02, #facility .tbl03 {
    table-layout: fixed; }
    #facility .tbl02 td, #facility .tbl03 td {
      font-weight: 400; }
  .tbl02 th, .tbl02 td, .tbl03 th, .tbl03 td {
    border-bottom: 1px solid #707070;
    border-right: 1px solid #707070;
    vertical-align: baseline;
    padding: 15px; }
    @media (min-width: 760px) {
      body:not(#admission) .tbl02 th, body:not(#admission) .tbl02 td, body:not(#admission) .tbl03 th, body:not(#admission) .tbl03 td {
        word-break: auto-phrase; } }
    @media (max-width: 760px) {
      .tbl02 th, .tbl02 td, .tbl03 th, .tbl03 td {
        padding: 4vw 3vw;
        font-size: 3.4666666667vw !important;
        letter-spacing: .04em; } }

.bg_none {
  background: none; }

body:not(#kids) .tbl02, body:not(#facility) .tbl02 {
  color: #000000; }
.tbl02 th {
  background: #2B2790;
  color: white; }

.tbl03 th {
  background: #BDC5DC; }

.tbl_border {
  border-collapse: collapse;
  border-top: 1px solid #BDC5DC;
  border-left: 1px solid #BDC5DC;
  width: 100%; }
  .tbl_border thead th {
    font-weight: 400;
    font-size: inherit; }
  .tbl_border tbody th {
    font-weight: 500; }
  .tbl_border th, .tbl_border td {
    border-bottom: 1px solid #BDC5DC;
    border-right: 1px solid #BDC5DC;
    padding: 14px 20px;
    text-align: left; }
    @media (min-width: 760px) {
      .tbl_border th, .tbl_border td {
        word-break: auto-phrase; } }
    @media (max-width: 760px) {
      .tbl_border th, .tbl_border td {
        padding: 4vw 3vw;
        font-size: 3.4666666667vw !important;
        letter-spacing: .04em; } }

.disabled {
  pointer-events: none;
  opacity: .7; }

.breadcrumbs {
  border-bottom: 1px solid #1e377933; }
  @media (max-width: 760px) {
    .breadcrumbs {
      order: 1;
      width: 100%;
      z-index: 1;
      background: #E8ECF7;
      position: relative;
      border: none;
      height: fit-content; } }
  .breadcrumbs ul {
    font-size: 12px;
    display: flex;
    align-items: center;
    height: 47px;
    white-space: nowrap; }
    @media (max-width: 760px) {
      .breadcrumbs ul {
        font-size: 3.7333333333vw !important;
        height: 10vw;
        overflow: auto; }
        .breadcrumbs ul li:last-child {
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis; } }
    .breadcrumbs ul li + li:before {
      content: "";
      margin: 0 10px;
      display: inline-block;
      width: 5px;
      height: 5px;
      rotate: 45deg;
      transform: translate(-1px, -1px);
      border: 1px solid;
      border-left: none;
      border-bottom: none; }
  .breadcrumbs a {
    color: inherit !important;
    text-decoration: none !important; }

.mainvisual_under {
  position: relative;
  overflow: hidden;
  min-height: 291px; }
  @media (max-width: 760px) {
    .mainvisual_under {
      display: flex;
      flex-wrap: wrap; }
      .mainvisual_under > .inner1200 {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 10vw;
        inset: 0;
        bottom: 35vw; }
        #confirm .mainvisual_under > .inner1200 {
          height: calc(291px - 38px); }
        body:not(#confirm) .mainvisual_under > .inner1200 {
          height: calc(100% - 38px);
          position: absolute; }
      .mainvisual_under .mb70 {
        margin-bottom: 11vw; } }
  .mainvisual_under:before {
    content: "";
    background: #bdc5dcbd;
    height: 1365px;
    width: 960px;
    position: absolute;
    rotate: 36deg;
    top: -500px;
    left: -695px; }
    @media (max-width: 760px) {
      .mainvisual_under:before {
        width: 50vw;
        left: -50%; } }
  .mainvisual_under:after {
    content: "";
    background: #2b279094;
    height: 1365px;
    width: 960px;
    position: absolute;
    top: 120px;
    bottom: 0;
    left: -290px;
    rotate: -47.5deg; }
    @media (max-width: 760px) {
      .mainvisual_under:after {
        height: 220vw;
        width: 80vw;
        position: absolute;
        top: -20vw;
        bottom: 0;
        left: -10vw;
        rotate: -43.5deg; } }
  .mainvisual_under .main_img {
    margin-left: auto;
    width: fit-content;
    overflow: hidden; }
    @media (max-width: 760px) {
      .mainvisual_under .main_img {
        z-index: 1;
        width: 100%; }
        .mainvisual_under .main_img img {
          max-width: fit-content;
          height: 72.8vw; } }
  .mainvisual_under .main_txt .bebas {
    line-height: 1.1; }
  @media (min-width: 760px) {
    .mainvisual_under .main_txt {
      position: absolute;
      top: 55px; }
      .single .mainvisual_under .main_txt {
        font-size: 1.65em; } }
  @media (max-width: 760px) {
    .mainvisual_under .main_txt {
      z-index: 2;
      width: 100%; }
      body:not(#confirm):not(#recruit):not(#privacypolicy):not(#custom_post) .mainvisual_under .main_txt {
        color: white; }
      .mainvisual_under .main_txt .fs84 {
        font-size: 16vw !important; }
      .mainvisual_under .main_txt .fs20 {
        font-size: 3.7333333333vw !important; } }
  @media (min-width: 760px) {
    .mainvisual_under:has(.main_img) + * {
      margin-top: -150px; } }

.form_box {
  padding: 117px 20px;
  background: #F6F7FA; }
  @media (max-width: 760px) {
    .form_box {
      padding: 16vw 2vw 10vw; }
      .form_box .form_ttl {
        font-size: 5.3333333333vw !important;
        margin-bottom: 9vw; } }
  .form_box .form_step {
    display: flex;
    justify-content: center;
    gap: 232px;
    margin-bottom: 117px; }
    @media (max-width: 760px) {
      .form_box .form_step {
        gap: 15vw;
        margin-bottom: 15vw;
        font-size: 3.7333333333vw !important; } }
    .form_box .form_step li {
      position: relative;
      text-align: center; }
      .form_box .form_step li:not(.active) {
        color: #BDC5DC; }
    .form_box .form_step li + li:before {
      content: "";
      position: absolute;
      top: 30px;
      left: -190px;
      width: 140px;
      height: 1px;
      background: #CCCCCC; }
      @media screen and (max-width: 760px) {
        .form_box .form_step li + li:before {
          top: 6vw;
          left: -11vw;
          width: 8vw; } }
    .form_box .form_step .num {
      display: block;
      margin-bottom: 10px; }
      @media screen and (max-width: 760px) {
        .form_box .form_step .num {
          font-size: 7.2vw !important; } }
  .form_box .form_input {
    letter-spacing: .06em;
    max-width: 800px;
    margin: 0 auto 80px;
    justify-content: space-between;
    margin-bottom: 80px; }
    @media (max-width: 760px) {
      .form_box .form_input {
        margin-bottom: 10vw; } }
    @media (min-width: 760px) {
      #confirm .form_box .form_input {
        display: flex;
        flex-wrap: wrap;
        align-items: center; } }
    @media (min-width: 760px) {
      #confirm .form_box .form_input dt {
        display: flex;
        align-items: center;
        width: 191px;
        margin: 0; } }
    #confirm .form_box .form_input dd {
      border-bottom: 1px solid #BDC5DC;
      padding-bottom: 4vw; }
      @media (min-width: 760px) {
        #confirm .form_box .form_input dd {
          width: calc(100% - 155px);
          max-width: 609px;
          padding: 10px 0px;
          min-height: 85px;
          display: flex;
          align-items: center; }
          #confirm .form_box .form_input dd p {
            display: flex; } }
    @media (max-width: 760px) {
      #confirm .form_box .form_input + .flex {
        flex-wrap: wrap; } }
    .form_box .form_input dt {
      position: relative;
      margin-bottom: 15px;
      font-weight: 700;
      display: flex;
      align-items: center; }
      .form_box .form_input dt .required {
        background: #EE8A8A;
        color: white;
        font-size: 10px;
        display: inline-block;
        margin-left: 10px;
        padding: 0 4px;
        border-radius: 3px; }
      .form_box .form_input dt p {
        margin-bottom: 0; }
    .form_box .form_input dd p {
      margin-bottom: 0; }
    .form_box .form_input dd + dt {
      margin-top: 20px; }
      @media (max-width: 760px) {
        .form_box .form_input dd + dt {
          margin: 6vw 0 4vw; } }
    .form_box .form_input input:not([type="checkbox"]):not([type="radio"]), .form_box .form_input select {
      border: none;
      width: 100%;
      height: 40px;
      padding: 10px;
      border-radius: 3px;
      margin-bottom: 10px;
      appearance: none; }
      @media (min-width: 760px) {
        .form_box .form_input input:not([type="checkbox"]):not([type="radio"]), .form_box .form_input select {
          max-width: 364px; } }
      @media (max-width: 760px) {
        .form_box .form_input input:not([type="checkbox"]):not([type="radio"]), .form_box .form_input select {
          height: 13vw; } }
    .form_box .form_input input[name="age"] {
      max-width: 4em !important; }
      .form_box .form_input input[name="age"] #application-form {
        background: none; }
    .form_box .form_input select {
      background: url(../img/common/icon_arrowB.svg) #fff no-repeat right 22px center;
      margin-right: 10px; }
    .form_box .form_input [name="sex"], .form_box .form_input [name="birth-date-year"], .form_box .form_input [name="birth-date-month"], .form_box .form_input [name="birth-date-day"], .form_box .form_input [name="address"], .form_box .form_input [name="address01"], .form_box .form_input [name="address02"], .form_box .form_input [name="address03"] {
      max-width: 180px; }
    .form_box .form_input .complement {
      background: #2B2790;
      color: white;
      font-size: 10px;
      display: inline-block;
      margin-left: 10px;
      padding: 0 4px;
      border-radius: 3px;
      letter-spacing: 0em; }
    .form_box .form_input #zip-button {
      background: #2B2790;
      color: white;
      font-size: 13px;
      display: inline-block;
      margin-left: 3px;
      padding: 3px 9px;
      border-radius: 3px;
      letter-spacing: 0em;
      font-weight: 700;
      text-decoration: none; }
    @media (max-width: 760px) {
      .form_box .form_input [name="birth-date-year"], .form_box .form_input [name="birth-date-month"], .form_box .form_input [name="birth-date-day"] {
        max-width: 20vw;
        margin-right: 1vw; }
      .form_box .form_input [name="address"] {
        width: 47vw; }
      .form_box .form_input .wpcf7-radio .wpcf7-list-item {
        width: 27vw;
        margin-bottom: 3vw; }
      .form_box .form_input [name="confirmation_documents_other"],
      .form_box .form_input [name="addressee_other"] {
        max-width: 40vw; } }
    .form_box .form_input a {
      color: #0C47E6;
      text-decoration: underline; }
  .form_box .submit {
    line-height: 1; }
    .form_box .submit > * {
      margin: 0 !important; }
    .form_box .submit br {
      display: none; }
  .form_box [type="submit"], .form_box .wpcf7-previous, .form_box .btn {
    background: #55BCB3;
    color: white;
    border: none;
    padding: 10px;
    width: 229px;
    height: 63px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center; }
    @media (max-width: 760px) {
      .form_box [type="submit"], .form_box .wpcf7-previous, .form_box .btn {
        width: 61.07vw;
        height: 16.8vw; } }
  .form_box .wpcf7-previous {
    background: #1E3779; }
  .form_box label {
    cursor: pointer; }
  .form_box .wpcf7-radio input {
    position: absolute;
    white-space: nowrap;
    width: 1px;
    height: 1px;
    overflow: hidden;
    padding: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    margin: -1px; }
  .form_box .wpcf7-radio label {
    padding-left: 30px;
    position: relative; }
  .form_box .wpcf7-radio label::before,
  .form_box .wpcf7-radio label::after {
    content: "";
    display: block;
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%; }
  .form_box .wpcf7-radio label::before {
    background-color: #fff;
    border: 1px solid #B9B9B9;
    height: 17px;
    width: 17px;
    left: 5px; }
  .form_box .wpcf7-radio label::after {
    background-color: #2B2790;
    opacity: 0;
    height: 13px;
    width: 13px;
    left: 7px; }
  .form_box .wpcf7-radio .wpcf7-list-item:has(input:checked) label::after {
    opacity: 1; }
  .form_box .wpcf7-list-item {
    display: inline-block;
    margin: 0 1em 0 0em; }
  .form_box .wpcf7-spinner {
    position: absolute; }

.faq_list {
  border-bottom: 1px solid #BDC5DC;
  font-size: 18px;
  letter-spacing: .04em;
  margin-bottom: 120px; }
  @media (max-width: 760px) {
    .faq_list {
      font-size: 4.2666666667vw !important; } }
  .faq_list dl {
    border-top: 1px solid #BDC5DC; }
  .faq_list dt:before, .faq_list dd:before {
    position: absolute;
    left: 6px;
    top: 44px;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 29px; }
    @media (max-width: 760px) {
      .faq_list dt:before, .faq_list dd:before {
        font-size: 7.7333333333vw !important; } }
  .faq_list dt {
    padding: 48px 46px; }
    @media screen and (max-width: 760px) {
      .faq_list dt {
        padding: 13.5vw 12vw 7vw 0;
        line-height: 1.6; } }
    .faq_list dt:before {
      content: "Q"; }
      @media screen and (max-width: 760px) {
        .faq_list dt:before {
          top: 2.5vw;
          left: 0; } }
  .faq_list dd {
    padding: 0px 46px 43px;
    position: relative; }
    @media screen and (max-width: 760px) {
      .faq_list dd {
        padding: 13.5vw 12vw 7vw 0;
        line-height: 1.6; } }
    .faq_list dd:before {
      content: "A";
      top: -5px; }
      @media screen and (max-width: 760px) {
        .faq_list dd:before {
          left: 0; } }

.toggle {
  position: relative;
  cursor: pointer; }
  .toggle span {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    background: #2B2790;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    margin: auto; }
    @media screen and (max-width: 760px) {
      .toggle span {
        width: 34px;
        height: 34px; } }
    .toggle span:before, .toggle span:after {
      content: "";
      position: absolute;
      inset: 0;
      margin: auto;
      width: 17px;
      height: 3px;
      background: white; }
      @media screen and (max-width: 760px) {
        .toggle span:before, .toggle span:after {
          width: 12px; } }
    .toggle span:after {
      rotate: 90deg; }
  .toggle + * {
    display: none; }
  .toggle.active span:before, .toggle.active span:after {
    rotate: 180deg; }
  .toggle.active + * {
    display: block; }

.liststyle_none li {
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 4px; }

.list_square li {
  position: relative;
  padding-left: 10px; }
  .list_square li:before {
    content: "";
    position: absolute;
    top: 0.6em;
    left: 0;
    width: 6px;
    height: 6px;
    background: #1E3779; }

.swim {
  padding: 130px 0; }
  @media (max-width: 760px) {
    .swim {
      padding: 10vw 0; } }
  .swim .kids_list {
    display: flex;
    justify-content: space-between;
    gap: 20px 1.9%;
    letter-spacing: .04em;
    counter-reset: section; }
    @media (max-width: 760px) {
      .swim .kids_list {
        flex-wrap: wrap; } }
    .swim .kids_list li {
      max-width: 32%;
      padding: 20px 29px;
      line-height: 1.5;
      border-radius: 10px;
      background: white; }
      @media (max-width: 760px) {
        .swim .kids_list li {
          padding: 6vw;
          max-width: 100%; } }
      .swim .kids_list li dt {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin-bottom: 10px; }
        @media (min-width: 1257px) {
          .swim .kids_list li dt {
            white-space: nowrap; } }
        @media (max-width: 760px) {
          .swim .kids_list li dt {
            font-size: 4.8vw !important; } }
        .swim .kids_list li dt .point {
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          align-content: center;
          width: 56px;
          height: 56px;
          background: #2B2790;
          color: white;
          border-radius: 50%;
          margin: 0 auto 10px;
          line-height: 1;
          font-weight: 400;
          font-size: 11px; }
          @media (max-width: 760px) {
            .swim .kids_list li dt .point {
              font-size: 2.9333333333vw !important;
              width: 14.933333333333335vw;
              height: 14.933333333333335vw; } }
          .swim .kids_list li dt .point .num {
            width: 100%;
            font-size: 24px; }
            @media (max-width: 760px) {
              .swim .kids_list li dt .point .num {
                font-size: 6.4vw !important; } }
            .swim .kids_list li dt .point .num:before {
              counter-increment: section;
              content: counter(section,decimal-leading-zero); }

.kids_img {
  width: 41%; }
  @media (max-width: 760px) {
    .kids_img {
      width: auto; } }

.kids_txt {
  position: relative;
  max-width: 53.25%;
  font-size: 18px;
  letter-spacing: .04em;
  line-height: 2; }
  @media (max-width: 760px) {
    .kids_txt {
      font-size: 4.2666666667vw !important;
      max-width: 100%; } }
  .kids_txt .kids_ttl {
    position: relative;
    margin-bottom: 20px; }
    @media (max-width: 760px) {
      .kids_txt .kids_ttl {
        text-align: center;
        margin: 20vw 0 10vw;
        font-size: 8vw !important; }
        .kids_txt .kids_ttl .fs20 {
          font-size: 4.5333333333vw !important; } }
    .kids_txt .kids_ttl:before {
      content: "";
      position: absolute;
      left: 0;
      top: -38px;
      background: #1E3779;
      width: 13px;
      height: 4px; }
      @media (max-width: 760px) {
        .kids_txt .kids_ttl:before {
          top: -6vw;
          right: 0;
          margin: auto; } }
  .kids_txt .target {
    font-size: 20px;
    gap: 10px;
    letter-spacing: .04em;
    margin-bottom: 5vw; }
    @media (min-width: 952px) {
      .kids_txt .target {
        display: flex;
        align-items: baseline;
        position: absolute;
        top: 0;
        left: 190px; } }
    @media (max-width: 760px) {
      .kids_txt .target {
        font-size: 5.3333333333vw !important; } }
    .kids_txt .target dt {
      text-align: center;
      padding: 3px 20px;
      font-size: 18px;
      color: white;
      border-radius: 20px;
      background: #2B2790;
      min-width: 92px;
      display: inline-block; }
      @media (max-width: 760px) {
        .kids_txt .target dt {
          font-size: 4.8vw !important; } }

.kids_box {
  padding: 46px 50px 50px;
  background: #E8ECF7;
  margin-bottom: 150px; }
  @media (max-width: 760px) {
    .kids_box {
      margin: 0 -5vw 10vw;
      padding: 10vw 5vw; }
      .kids_box .fs28 {
        font-size: 5.3333333333vw !important; } }

@media (max-width: 760px) {
  .btn_box {
    gap: 0; } }
.btn_box li {
  width: 100%; }
  @media (min-width: 760px) {
    .btn_box li {
      width: 480px; } }

.dance {
  padding: 100px 0; }
  @media (max-width: 760px) {
    .dance h3 {
      font-size: 4.8vw !important; } }
  @media (max-width: 840px) {
    .dance .instructor_box {
      gap: 50px; } }
  .dance .instructor_img {
    width: 42.65%; }
    @media (max-width: 840px) {
      .dance .instructor_img {
        width: 100%; }
        .dance .instructor_img img {
          margin: auto; } }
    @media (max-width: 760px) {
      .dance .instructor_img {
        width: 80vw;
        margin: 0 auto 0vw; } }
  .dance .instructor_txt {
    width: 51%;
    line-height: calc(25/16); }
    @media (max-width: 840px) {
      .dance .instructor_txt {
        width: auto; } }
  .dance th {
    text-align: left; }
    @media (max-width: 760px) {
      .dance th {
        font-size: 4.2666666667vw !important;
        width: 33%; } }
  @media (max-width: 760px) {
    .dance td {
      font-size: 4.2666666667vw !important; } }

.btn_white a {
  display: flex;
  align-items: center;
  justify-content: center;
  background: white;
  position: relative;
  height: 90px;
  width: 100%;
  font-weight: 700; }
  .under .btn_white a {
    color: #1E3779;
    text-decoration: none; }
    @media screen and (min-width: 760px) {
      .under .btn_white a {
        max-width: 480px;
        font-size: 20px; } }
    @media (max-width: 760px) {
      .under .btn_white a {
        height: 16vw;
        margin: 0 auto 5vw; } }
  .btn_white a:after {
    content: "";
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;
    width: 0;
    height: 0;
    margin: auto;
    border: solid transparent;
    border-width: 6px  0 7px 8px;
    border-left-color: #1E3779; }
    #swimming .btn_white a:after {
      right: 30px;
      border-width: 8px 0 8px 12px; }

.cate_btn {
  border: 1px solid #1E3779;
  padding: 48px;
  display: flex;
  justify-content: center;
  gap: 35px;
  margin-bottom: 60px; }
  .cate_btn.news {
    margin-bottom: 195px; }
  .cate_btn .select {
    border: 1px solid #1E3779;
    font-size: 14px;
    color: #1E3779;
    max-width: 249px;
    width: 100%;
    height: 49px;
    padding: 10px 15px;
    cursor: pointer;
    color: white;
    appearance: none;
    background: url(../img/common/icon_arrowR_white.svg) no-repeat #1E3779 center right 15px; }
    .cate_btn .select:has(.selected) {
      color: #1E3779;
      background-color: white;
      background-image: url(../img/common/icon_arrowR.svg); }

.archive .under .news_list {
  margin-bottom: 60px; }
  .archive .under .news_list li {
    border-bottom: 1px solid #E0E0E0;
    padding-bottom: 21px;
    margin-bottom: 15px; }
.archive .under a {
  color: #000;
  text-decoration: none; }
  .archive .under a .date {
    color: #1E3779;
    height: 24px;
    margin-bottom: 12px;
    display: inline-block; }
  .archive .under a .cate {
    min-width: 101px;
    height: 24px;
    border: 1px solid #1E3779;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 12px 15px; }

.home .blog {
  background: #F0F0F0;
  padding: 50px 0 80px; }
  .home .blog .blog_list {
    margin-bottom: 55px; }
  .home .blog .more {
    margin: auto; }
  .home .blog .slick-arrow {
    transform: translateY(-90px); }
  .home .blog li {
    width: 100%; }
    @media (max-width: 760px) {
      .home .blog li:nth-child(n + 4) {
        display: none; } }

ul.blog_list {
  max-width: 1000px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 40px 20px; }
  ul.blog_list a {
    color: #000;
    text-decoration: none; }
    ul.blog_list a img {
      height: fit-content; }
    ul.blog_list a .date {
      color: #1E3779;
      height: 24px;
      margin-bottom: 12px;
      display: inline-block; }
    ul.blog_list a .cate {
      min-width: 101px;
      height: 24px;
      border: 1px solid #1E3779;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      margin: 0 0 12px 15px; }
  @media (min-width: 760px) {
    ul.blog_list li {
      width: 320px; } }
  @media (max-width: 760px) {
    ul.blog_list .fs15 {
      font-size: 4vw !important; }
    ul.blog_list .fs13 {
      font-size: 3.4666666667vw !important; } }
  ul.blog_list .img {
    display: block;
    margin-bottom: 17px; }
    ul.blog_list .img:empty {
      min-height: 220px;
      background: #D6D5D5; }

.nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px; }
  .nav-links .page-numbers:not(.prev):not(.next):not(.dots) {
    border: 1px solid #1E3779;
    color: #1E3779;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center; }
    .nav-links .page-numbers:not(.prev):not(.next):not(.dots).current {
      background: #1E3779;
      color: white; }
  .nav-links .prev {
    background: url(../img/common/icon_arrowR.svg) no-repeat center;
    width: 30px;
    height: 30px;
    transform: scale(-1, 1); }
  .nav-links .next {
    background: url(../img/common/icon_arrowR.svg) no-repeat center;
    width: 30px;
    height: 30px; }

.single .inner800 {
  line-height: calc(42/ 16);
  color: #000000; }
.single .date {
  margin-bottom: 10px;
  line-height: 1.5;
  color: #1E3779;
  height: 24px;
  margin-bottom: 12px;
  display: inline-block; }
.single .cate {
  min-width: 101px;
  height: 24px;
  border: 1px solid #1E3779;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 12px 15px;
  padding: 0 10px; }
.single h1 {
  line-height: calc(36 / 22);
  margin-bottom: 30px;
  font-size: 22px;
  color: #1E3779; }
.single.single-blog h1 {
  border-bottom: 1px solid;
  padding-bottom: 15px; }
.single h2 {
  line-height: calc(32 / 22);
  border-left: 4px solid;
  padding-left: 20px;
  font-size: 22px;
  margin-bottom: 45px; }
  @media (max-width: 760px) {
    .single h2 {
      font-size: 5.8666666667vw !important; } }
.single h3 {
  font-size: 20px;
  margin-bottom: 45px; }
  @media (max-width: 760px) {
    .single h3 {
      font-size: 5.3333333333vw !important; } }
.single .wp-block-list {
  margin-bottom: 45px; }
  .single .wp-block-list li {
    position: relative;
    padding-left: 1em; }
    .single .wp-block-list li::before {
      content: "";
      position: absolute;
      left: 0;
      width: 8px;
      height: 8px;
      background: #1E3779;
      top: 17px; }
.single .wp-block-quote {
  padding: 32px 40px;
  background: #E8ECF7;
  border-radius: 5px;
  margin-bottom: 45px; }
  .single .wp-block-quote p:last-child {
    margin-bottom: 0; }
.single .wp-block-image {
  margin-bottom: 65px; }

@media (min-width: 760px) {
  .pc_none {
    display: none !important; }

  .flex_img {
    width: 50%; }

  .flex_txt {
    max-width: 50%;
    width: 100%; } }
@media (max-width: 760px) {
  .sp_none {
    display: none !important; }

  .sp_block {
    display: block !important; }

  .flex_img.first {
    margin: 0 -15px; }

  .sp_tbl th, .sp_tbl td {
    display: block;
    width: 100%; }

  .tl_fixed {
    table-layout: fixed; }

  img {
    margin: auto;
    height: auto; }

  .sp_scroll {
    margin-bottom: 10vw; }
    .sp_scroll .sp_scroll_inner {
      padding-bottom: 10vw;
      overflow: auto; }
    .sp_scroll table {
      width: 1000px;
      margin-bottom: 10px; }
      #kids .sp_scroll table {
        width: 200vw; }
    .sp_scroll .pc_none {
      position: absolute;
      left: 0;
      right: 0;
      pointer-events: none; }
      .sp_scroll .pc_none span {
        position: relative; }
        .sp_scroll .pc_none span:before {
          content: "";
          position: absolute;
          right: 105%;
          top: 0;
          bottom: 0;
          margin: auto;
          background: url(../img/common/icon_arrow_scroll.svg) no-repeat;
          width: 25px;
          height: 9px; }
        .sp_scroll .pc_none span:after {
          content: "";
          position: absolute;
          left: 105%;
          top: 0;
          bottom: 0;
          margin: auto;
          background: url(../img/common/icon_arrow_scroll.svg) no-repeat;
          width: 25px;
          height: 9px;
          scale: -1.1; } }
