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

img{ width:100%; display: block;}
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


.sp{
    display: none;
}
a{
    text-decoration: none;
    transition: 0.5s ;
    color: #000000;
}
img.object-fit-img{
    object-fit: cover;
    object-position:center; 
    font-family: 'object-fit: cover; object-position: center;'
}

input::placeholder {
    color: #dddddd;
  }

p{
  text-align:justify; 
  text-justify:inter-ideograph; 
  text-justify:inter-character; 
  word-wrap:break-word; 
  overflow-wrap:break-word;
}



  .popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: .6s;
  }
  .popup.is-show {
    opacity: 1;
    visibility: visible;
  }
  .popup-inner {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 80%;
    max-width: 600px;
    padding: 50px;
    background-color: #fff;
    z-index: 2;
  }
  .popup-inner img {
    width: 100%;
  }
  .close-btn {
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    cursor: pointer;
  }
  .close-btn i {
    font-size: 20px;
    color: #333;
  }
  .black-background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.8);
    z-index: 1;
    cursor: pointer;
  }


/*font*/
.min{font-family: 'BIZ UDPMincho', serif;}
.gos{font-family: 'BIZ UDPGothic', sans-serif;}

html{
    font-size: 62.5%;
    font-family: 'Zen Maru Gothic', sans-serif;
}
body{
    font-size:1.6rem;
    color: #000000;
    overflow: hidden;
}


/*COMMON*/


.overflow-wrap {
  position: relative;
  overflow-x: scroll;
  overflow-y: hidden;
  margin: 0 auto;
  scrollbar-width: auto; /* Firefox用 */
}

/* 強制的にスクロールバーを可視化したいときに */
.overflow-wrap::-webkit-scrollbar {
  height: 12px; /* スクロールバーの高さ */
}
.overflow-wrap::-webkit-scrollbar-track {
  background: #f1f1f1;
}
.overflow-wrap::-webkit-scrollbar-thumb {
  background: #ffe31c;
}
.overflow-wrap::-webkit-scrollbar-thumb:hover {
  background: #ffe31c;
}

/*CONTENT*/


body{ background-color: #faf8f5; }

body {
  background-color: #faf8f5;
}

.mv {
  width: min(100%, 1080px);
  margin: 0 auto;
}

.intro {
  padding: min(calc(48.5 / 1080 * 100vw), 48.5px) 0 min(calc(80 / 1080 * 100vw), 80px);
  background-image: url(images/dec_intro05.png), url(images/dec_intro04.png), url(images/dec_intro03.png), url(images/dec_intro02.png), url(images/dec_intro01.png);
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left calc(50% + 365px) bottom 157px,
  calc(50% - 408px) 832px,
  calc(50% + 423px) 590px,
  calc(50% - 426px) 346px,
  calc(50% + 422px) 50px;
  background-size: 80px auto,
  88px auto,
  155px auto,
  155px auto,
  155px auto;
  background-color: #faf8f5;
}
.intro .intro-lead {
  width: min(calc(672 / 1080 * 100%),672px);
  margin: 0 auto min(calc(66 / 1080 * 100vw), 66px);
}
.intro .intro-text {
  width: min(calc(800 / 1080 * 100%),800px);
  margin: 0 auto min(calc(100 / 1080 * 100vw), 100px);
}
.intro .inpage-navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 min(calc(60 / 830 * 100%), 60px);
  width: min(100%,830px);
  margin: 0 auto;
}
.intro .inpage-navi > li:nth-of-type(1) {
  width: min(calc(224 / 830 * 100%), 224px);
}
.intro .inpage-navi > li:nth-of-type(2) {
  width: min(calc(241 / 830 * 100%), 241px);
}
.intro .inpage-navi > li:nth-of-type(3) {
  width: min(calc(234 / 830 * 100%), 234px);
}
.intro .inpage-navi > li:nth-of-type(4) {
  width: min(calc(225 / 830 * 100%), 225px);
  margin-top: min(calc(-3 / 1080 * 100vw), -3px);
}
.intro .inpage-navi > li:nth-of-type(5) {
  width: min(calc(224 / 830 * 100%), 224px);
  margin-top: min(calc(-3 / 1080 * 100vw), -3px);
}

.junior {
  background-color: #faf8f5;
}
.junior h2 {
  position: relative;
  width: min(100%, 1080px);
  margin: 0 auto min(calc(93 / 1080 * 100vw), 93px);
}
.junior h2::before, .junior h2::after {
  content: "";
  position: absolute;
}
.junior h2::before {
  top: max(-118px, calc(-118 / 1080 * 100vw));
  left: min(calc(139 / 1080 * 100%), 139px);
  width: min(calc(95 / 1080 * 100%), 95px);
  height: auto;
  aspect-ratio: 95 / 125;
  background: url(images/dec_junior01.png) no-repeat 0 0 / 100% auto;
}
.junior h2::after {
  top: max(-124px, calc(-124 / 1080 * 100vw));
  right: min(calc(140 / 1080 * 100%), 140px);
  width: min(calc(71 / 1080 * 100%), 71px);
  height: auto;
  aspect-ratio: 71 / 129;
  background: url(images/dec_junior02.png) no-repeat 0 0 / 100% auto
}
.junior .junior-text01 {
  display: none;
}
.junior .junior-trial {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: min(calc(900 / 1080 * 100%), 900px);
  margin: 0 auto;
}
.junior .junior-trial .junior-trial__item {
  width: min(calc(438 / 900 * 100%), 438px);
}
.junior .junior-calendar {
  margin-top: min(calc(78 / 1080 * 100vw), 78px);
  padding-bottom: min(calc(79 / 1080 * 100vw), 79px);
}
.junior .junior-calendar-title {
  width: min(calc(1001 / 1080 * 100%), 1001px);
  margin: 0 auto min(calc(49 / 750 * 100vw), 49px);
}
.junior .junior-swimming-calendar {
  width: min(calc(798 / 1080 * 100%), 798px);
  margin: 0 auto;
}
.junior .junior-management {
  position: relative;
  padding: min(calc(79 / 1080 * 100vw), 79px) 0 min(calc(90 / 1080 * 100vw), 90px);
 background: linear-gradient(166.85deg, #f6c17a 0%, #f6c17a 56.75%, #faf8f5 56.75%, #faf8f5 100%);
}
.junior .junior-benefits  {
  width: min(calc(801 / 1080 * 100%), 801px);
  margin: 0 auto;
}
.junior .junior-schedule  {
  width: min(100%, 1080px);
  margin: min(calc(100 / 1080 * 100vw), 100px) auto 0;
}
.junior .junior-schedule .junior-calendar-title {
  width: min(calc(773 / 1080 * 100%), 773px);
  margin: 0 auto min(calc(74 / 1080 * 100vw), 74px);
}
.junior .junior-schedule .junior-schedule-box {
  position: relative;
  width: min(calc(900 / 1080 * 100%), 900px);
  margin: 0 auto;
  padding: min(calc(78 / 1080 * 100vw), 78px) 0 min(calc(140 / 1080 * 100vw), 140px);
  background-color: #f6e66c;
  border: 3px solid #231815;
  border-radius: 20px;
}
.junior .junior-schedule .junior-schedule-table {
  width: min(calc(703 / 900 * 100%), 703px);
  margin: 0 auto;
}
.junior .junior-schedule .junior-fee {
  width: min(calc(704 / 900 * 100%), 704px);
  margin: min(calc(78 / 1080 * 100vw), 78px) auto 0;
}
.junior .junior-bus {
  position: absolute;
  bottom: max(-3px, calc(-3 / 1080 * 100vw));
  right: min(calc(39 / 900 * 100%), 39px);
  width: min(calc(336 / 900 * 100%), 336px);
}

.baby {
  padding-bottom: min(calc(83 / 1080 * 100vw), 83px);
  background-image: url(images/dec_baby03.png),
  url(images/dec_baby02.png),
  url(images/dec_baby01.png);
  background-repeat: no-repeat,
  no-repeat,
  no-repeat;
  background-position: left calc(50% + 408px) bottom 338px,
  calc(50% + 436px) 636px,
  calc(50% - 436px) 692px;
  background-size: 53px auto,
  67px auto,
  76px auto;
  background-color: #faf8f5;
}
.baby h2 {
  width: min(100%, 1080px);
  margin: 0 auto min(calc(57 / 1080 * 100vw), 57px);
}
.baby .baby-text01 {
  width: min(calc(760 / 1080 * 100%), 760px);
  margin: 0 auto min(calc(74 / 1080 * 100vw), 74px);
}
.baby .baby-trial {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: 0 auto min(calc(79 / 1080 * 100vw), 79px);
}
.baby .baby-schedule {
  width: min(calc(902 / 1080 * 100%), 902px);
  margin: 0 auto;
}

.maternity {
  padding-bottom: min(calc(28 / 1080 * 100vw), 28px);
  background-image: url(images/dec_maternity03.png),
  url(images/dec_maternity02.png),
  url(images/dec_maternity01.png);
  background-repeat: no-repeat,
  no-repeat,
  no-repeat;
  background-position: left calc(50% + 392px) bottom 360px,
  calc(50% - 442px) 694px,
  calc(50% + 438px) 665px;
  background-size: 58px auto,
  51px auto,
  51px auto;

  /*background: url(images/maternity.png) no-repeat 50% 0 / 100% auto;*/
}
.maternity h2 {
  width: min(100%, 1080px);
  margin: 0 auto min(calc(61 / 1080 * 100vw), 61px);
}
.maternity .maternity-text01 {
  width: min(calc(716 / 1080 * 100%), 716px);
  margin: 0 auto min(calc(74 / 1080 * 100vw), 74px);
}
.maternity .maternity-trial {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: 0 auto min(calc(78 / 1080 * 100vw), 78px);
}
.maternity .maternity-schedule {
  width: min(calc(902 / 1080 * 100%), 902px);
  margin: 0 auto min(calc(49 / 1080 * 100vw), 49px);
}

.adult {
  padding-bottom: min(calc(80 / 1080 * 100vw), 80px);
  background-image: url(images/dec_adult03.png),
  url(images/dec_adult02.png),
  url(images/dec_adult01.png);
  background-repeat: no-repeat,
  no-repeat,
  no-repeat;
  background-position: calc(50% - 392px) calc(50% + 120px),
  calc(50% - 428px) 732px,
  calc(50% + 392px) 618px;
  background-size: 67px auto,
  53px auto,
  94px auto;

  /*background: url(images/adult.png) no-repeat 50% 0 / 100% auto;*/
}
.adult h2 {
  width: min(100%, 1080px);
  margin: 0 auto min(calc(63 / 1080 * 100vw), 63px);
}
.adult .adult-text01 {
  width: min(calc(727 / 1080 * 100%), 727px);
  margin: 0 auto min(calc(75 / 1080 * 100vw), 75px);
}
.adult .adult-trial {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: 0 auto;
}
.adult .program {
  margin: min(calc(75 / 1080 * 100vw), 75px) auto min(calc(92 / 1080 * 100vw), 92px);
}
.adult .program-subtitle {
  width: min(calc(234 / 1080 * 100%), 234px);
  margin: 0 auto min(calc(30 / 1080 * 100vw), 30px);
}
.adult .program-table {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: 0 auto;
}
.adult .adult-schedule {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: 0 auto;
}

.swimming-management {
  position: relative;
  padding: min(calc(78 / 1080 * 100vw), 78px) 0 min(calc(82 / 1080 * 100vw), 82px);
  background: linear-gradient(-169.5deg, #f6c17a 0%, #f6c17a 73.5%, #faf8f5 73.5%, #faf8f5 100%);
}
.swimming-calendar {
  width: min(100%, 1080px);
  margin: 0 auto;
}
.swimming-calendar-title {
  width: min(calc(1001 / 1080 * 100%), 1001px);
  margin: 0 auto min(calc(51 / 1080 * 100vw), 51px);
}
.swimming-course {
  width: min(calc(798 / 1080 * 100%), 798px);
  margin: 0 auto;
}
.swimming-calendar-class + .swimming-calendar-class {
    margin-top: min(calc(78 / 1080 * 100vw), 78px);
}
.swimming-benefits {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: 0 auto;
}

.ecc {
  padding-bottom: min(calc(78 / 1080 * 100vw), 78px);
  background-image: url(images/dec_ecc04.png),
  url(images/dec_ecc03.png),
  url(images/dec_ecc02.png),
  url(images/dec_ecc01.png);
  background-repeat: no-repeat,
  no-repeat,
  no-repeat,
  no-repeat;
  background-position: left calc(50% + 470px) bottom min(calc(46 / 1080 * 100vw), 46px),
  left calc(50% - 422px) bottom min(calc(854 / 1080 * 100vw), 854px),
  calc(50% - 396px) 738px,
  calc(50% + 436px) 594px;
  background-size: 43px auto,
  57px auto,
  124px auto,
  60px auto;
}
.ecc h2 {
  width: min(100%, 1080px);
  margin: 0 auto min(calc(75 / 1080 * 100vw), 75px);
}
.ecc .ecc-text01 {
  width: min(calc(820 / 1080 * 100%), 820px);
  margin: 0 auto min(calc(2 / 1080 * 100vw), 2px);
}
.ecc .ecc-features {
  width: min(calc(807 / 1080 * 100%), 807px);
  margin: 0 auto min(calc(65 / 1080 * 100vw), 65px);
}
.ecc .ecc-text02 {
  width: min(calc(702 / 1080 * 100%), 702px);
  margin: 0 auto;
}
.ecc .ecc-goldenage {
  position: relative;
  width: min(calc(964 / 1080 * 100%), 964px);
  margin: min(calc(46 / 1080 * 100vw), 46px) auto 0;
}
.ecc .ecc-box {
  margin: max(-55px, calc(-55 / 1080 * 100vw)) auto 0;
  padding: min(calc(80 / 1080 * 100vw), 80px) 0 min(calc(77 / 1080 * 100vw), 77px);
  background-color: #f6e66e;
}
.ecc .ecc-fees {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: 0 auto;
}
.ecc .ecc-schedule {
  position: relative;
  width: min(calc(801 / 1080 * 100%), 801px);
  margin: min(calc(78 / 1080 * 100vw), 78px) auto 0;
  padding: min(calc(248 / 1080 * 100vw), 248px) 0 min(calc(50 / 1080 * 100vw), 50px);
  background: url(./images/ecc_schedule_bg_pc.png) no-repeat 50% 0 / 100% auto;
}
.ecc .ecc-schedule .ecc-eiken {
  position: absolute;
  top: min(calc(92 / 1080 * 100vw), 92px);
  left: min(calc(36 / 801 * 100%), 36px);
  width: min(calc(354 / 801 * 100%), 354px);
}
.ecc .ecc-schedule .ecc-bus {
  position: absolute;
  top: min(calc(63 / 1080 * 100vw), 63px);
  right: min(calc(33 / 801 * 100%), 33px);
  width: min(calc(318 / 801 * 100%), 318px);
}
.ecc .ecc-schedule .program-subtitle {
  width: min(calc(516 / 801 * 100%), 516px);
  margin: 0 auto min(calc(24 / 1080 * 100vw), 24px);
}
.ecc .ecc-schedule .program-table {
  width: min(calc(747 / 801 * 100%), 747px);
  margin: 0 auto;
}

.access {
  padding-bottom: min(calc(80 / 1080 * 100vw), 80px);
}
.access h2 {
  width: min(100%, 1080px);
  margin: 0 auto min(calc(84 / 1080 * 100vw), 84px);
}
.access .access-map {
  position: relative;
  width: min(100%, 900px);
  margin: 0 auto;
}
.access .access-map-class {
  position: absolute;
  top: min(calc(36 / 1080 * 100vw), 36px);
  right: min(calc(50 / 900 * 100%), 50px);
  width: min(calc(352 / 900 * 100%), 352px);
}
.access .map {
  width: min(calc(498 / 900 * 100%), 498px);
  margin: 0;
}
.access .map iframe {
  width: min(100%, 498px);
  height: auto;
  aspect-ratio: 498 / 393;
}
.access .access-parking {
  display: none;
}
.access .access-class {
  display: flex;
  justify-content: space-between;
  width: min(100%, 900px);
  margin: min(calc(25 / 1080 * 100vw), 25px) auto 0;
}
.access .access-class .access-class-item {
  width: min(calc(428 / 900 * 100%), 428px);
}
.access .access-class .access-contact {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 min(calc(44 / 428 * 100%), 44px);
  margin-bottom: min(calc(30 / 1080 * 100vw), 30px);
}
.access .access-class .contact-item {
  width: min(calc(71 / 428 * 100%), 71px);
}
.access .access-class .access-school01 {
  margin-bottom: min(calc(9 / 1080 * 100vw), 9px);
}

.footer {
  padding: min(calc(78 / 1080 * 100vw), 78px) 0 min(calc(173 / 1080 * 100vw), 173px);
  background-color: #f08c50;
  border-top: 3px solid #231815;
  color: #fff;
}
.footer .footer-text {
  width: fit-content;
  margin: 0 auto;
  font-size: 17px;
  font-weight: bold;
}
.footer .phone {
  width: min(calc(800 / 1080 * 100%), 800px);
  margin: min(calc(19 / 1080 * 100vw), 19px) auto min(calc(9 / 1080 * 100vw), 9px);
  padding: min(calc(10 / 1080 * 100vw), 10px) 0 min(calc(15 / 1080 * 100vw), 15px);
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  font-size: 50px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
}
.footer .phone strong {
  font-size: 84px;
  font-weight: bold;
}
.footer .phone a {
  color: #fff;
}
.footer .location {
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 0.127em;
  text-align: center;
}
.footer .location .postcode {
  font-size: 23.4px;
  font-weight: bold;
}

.footer .copyright {
  margin-top: min(calc(10 / 1080 * 100vw), 10px);
  font-size: 12px;
  font-weight: bold;
  text-align: center;
}
.footer .copyright small {
  font-size: 12px;
  font-weight: bold;
}

.fix-bottom{
  position: fixed;
  left:0;
  right:0;
  bottom:max(-10px,calc(-10 / 1080 * 100vw));
  z-index: 5;
  width: min(100%, 820px);
  margin: 0 auto; 
}

/*responsive*/
@media screen and (max-width:1000px){
  html{font-size:1vw}
}
@media screen and (max-width:769px){
}
@media screen and (max-width:750px){
  .access .school {
    border-width: 1px;
  }
  .parking {
    border-width: 2px;
  }
  
}
@media screen and (max-width:599px){
  html{ font-size:2vw;line-height: 1.5;}
  .pc{ display: none!important;}
  .sp{ display: block!important;}

  .intro {
    padding: min(calc(97 / 750 * 100vw), 97px) 0 min(calc(64 / 750 * 100vw), 64px);
    background-image: url(images/dec_intro09.png), url(images/dec_intro08.png), url(images/dec_intro05.png), url(images/dec_intro04_sp.png), url(images/dec_intro03.webp), url(images/dec_intro02.webp), url(images/dec_intro01.webp);
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: calc(50% - 321 / 750 * 100%) calc(100% - 464 / 750 * 100vw),
    calc(50% - 276 / 750 * 100%) calc(100% - 568 / 750 * 100vw),
    calc(50% + 292 / 750 * 100%) calc(100% - 202 / 750 * 100vw),
    calc(50% - 206 / 750 * 100%) calc(100% - 754 / 750 * 100vw),
    calc(50% + 350 / 750 * 100%) calc(639 / 750 * 100vw),
    calc(50% - 347 / 750 * 100%) calc(972 / 750 * 100vw),
    calc(50% - 347 / 750 * 100%) calc(58 / 750 * 100vw);
    background-size: calc(48 / 750 * 100%) auto,
    calc(49 / 750 * 100%) auto,
    calc(80 / 750 * 100%) auto,
    calc(83 / 750 * 100%) auto,
    calc(126 / 750 * 100%) auto,
    calc(126 / 750 * 100%) auto,
    calc(126 / 750 * 100%) auto;
  }
  .intro .intro-lead {
    width: min(calc(633 / 750 * 100%),633px);
    margin: 0 auto min(calc(64 / 750 * 100vw), 64px);
  }
  .intro .intro-text {
    width: min(calc(657 / 750 * 100%),657px);
    margin: 0 auto min(calc(80 / 750 * 100vw), 80px);
  }
  .intro .inpage-navi {
    justify-content: flex-start;
    gap: 0 min(calc(60 / 830 * 100%), 60px);
    margin: 0 auto;
  }
  .intro .inpage-navi > li:nth-of-type(1) {
    width: 100%;
  }
  .intro .inpage-navi > li:nth-of-type(1) a {
    display: block;
    width: min(calc(224 / 750 * 100%), 224px);
    margin: 0 0 0 min(calc(322 / 750 * 100vw), 322px);
  }
  .intro .inpage-navi > li:nth-of-type(2) {
    width: min(calc(241 / 750 * 100%), 241px);
    margin-left: min(calc(169 / 750 * 100vw), 169px);
  }
  .intro .inpage-navi > li:nth-of-type(3) {
    width: min(calc(235 / 750 * 100%), 235px);
  }
  .intro .inpage-navi > li:nth-of-type(4) {
    width: min(calc(225 / 750 * 100%), 225px);
    margin-top: min(calc(-3 / 750 * 100vw), -3px);
    margin-left: min(calc(35 / 750 * 100vw), 35px);
  }
  .intro .inpage-navi > li:nth-of-type(5) {
    width: min(calc(224 / 750 * 100%), 224px);
    margin-top: min(calc(-3 / 750 * 100vw), -3px);
  }

  .junior h2 {
    margin-bottom: min(calc(35 / 750 * 100vw), 35px);
  }
  .junior .junior-text01 {
    display: block;
    width: min(calc(561 / 750 * 100%), 561px);
    margin: 0 auto min(calc(49 / 750 * 100vw), 49px);
  }
  .junior .junior-trial {
    justify-content: center;
    gap: min(calc(48 / 750 * 100vw), 48px) 0;
    width: min(calc(650 / 750 * 100%), 650px);
    margin: 0 auto;
  }
  .junior .junior-trial .junior-trial__item {
    width: 100%;
  }
  .junior .junior-calendar {
    margin-top: min(calc(76 / 750 * 100vw), 76px);
    padding-bottom: min(calc(75 / 750 * 100vw), 75px);
  }
  .junior .junior-calendar-title {
    width: min(calc(742 / 750 * 100%), 742px);
    margin: 0 auto min(calc(67 / 750 * 100vw), 67px);
  }
  .junior .junior-swimming-calendar {
    width: min(calc(701 / 750 * 100%), 701px);
    margin: 0 auto;
  }
  .junior .junior-management {
    padding: min(calc(79 / 750 * 100vw), 79px) 0 min(calc(79 / 750 * 100vw), 79px);
  }
  .junior .junior-benefits  {
    width: min(calc(654 / 750 * 100%), 654px);
    margin: 0 auto;
  }
  .junior .junior-schedule  {
    width: min(100%, 750px);
    margin: min(calc(52 / 750 * 100vw), 52px) auto 0;
  }
  .junior .junior-schedule .junior-calendar-title {
    width: min(calc(700 / 750 * 100%), 700px);
    margin: 0 auto min(calc(46 / 750 * 100vw), 46px);
  }
  .junior .junior-schedule .junior-schedule-box {
    width: min(calc(650 / 750 * 100%), 650px);
    padding: min(calc(46 / 750 * 100vw), 46px) 0 min(calc(168 / 750 * 100vw), 168px);
    border-width: 3px;
    border-radius: min(calc(14 / 750 * 100%), 14px);
  }
  .junior .junior-schedule .junior-schedule-table {
    width: min(calc(583 / 650 * 100%), 583px);
  }
  .junior .junior-schedule .junior-fee {
    width: min(calc(584 / 650 * 100%), 584px);
    margin: min(calc(48 / 750 * 100vw), 48px) auto 0;
  }
  .junior .junior-bus {
    position: absolute;
    bottom: max(-3px, calc(-3 / 750 * 100vw));
    right: min(calc(16 / 650 * 100%), 15px);
    width: min(calc(337 / 650 * 100%), 336px);
  }

  .baby {
    padding-bottom: min(calc(80 / 750 * 100vw), 80px);
    background-position: left calc(50% + 310 / 750 * 100%) bottom calc(362 / 750 * 100vw),
    calc(50% + 340 / 750 * 100%) calc(617 / 750 * 100vw),
    calc(50% - 349 / 750 * 100%) calc(686 / 750 * 100vw);
    background-size: calc(53 / 750 * 100%) auto,
    calc(67 / 750 * 100%) auto,
    calc(76 / 750 * 100%) auto;
  }
  .baby h2 {
    width: min(100%, 750px);
    margin-bottom: min(calc(39 / 750 * 100vw), 39px);
  }
  .baby .baby-text01 {
    width: min(calc(633 / 750 * 100%), 633px);
    margin-bottom: min(calc(49 / 750 * 100vw), 49px);
  }
  .baby .baby-trial {
    width: min(calc(653 / 750 * 100%), 653px);
    margin-bottom: min(calc(47 / 750 * 100vw), 47px);
  }
  .baby .baby-schedule {
    width: min(calc(700 / 750 * 100%), 700px);
  }

  .maternity {
    padding-bottom: min(calc(28 / 750 * 100vw), 28px);
    background-position: left calc(50% + 319 / 750 * 100%) bottom calc(354 / 750 * 100vw),
    calc(50% - 347 / 750 * 100%) calc(671 / 750 * 100vw),
    calc(50% + 343 / 750 * 100%) calc(613 / 750 * 100vw);
    background-size: calc(58 / 750 * 100%) auto,
    calc(51 / 750 * 100%) auto,
    calc(51 / 750 * 100%) auto;
  }
  .maternity h2 {
    width: min(100%, 750px);
    margin-bottom: min(calc(42 / 750 * 100vw), 42px);
  }
  .maternity .maternity-text01 {
    width: min(calc(671 / 750 * 100%), 671px);
    margin-bottom: min(calc(49 / 750 * 100vw), 49px);
  }
  .maternity .maternity-trial {
    width: min(calc(653 / 750 * 100%), 653px);
    margin-bottom: min(calc(46 / 750 * 100vw), 46px);
  }
  .maternity .maternity-schedule {
    width: min(calc(700 / 750 * 100%), 700px);
    margin-bottom: min(calc(49 / 750 * 100vw), 49px);
  }


  .adult {
    padding-bottom: min(calc(80 / 750 * 100vw), 80px);
    background-position: calc(50% - 344 / 750 * 100%) calc(1232 / 750 * 100vw),
    calc(50% - 344 / 750 * 100%) calc(718 / 750 * 100vw),
    calc(50% + 348 / 750 * 100%) calc(722 / 750 * 100vw);
    background-size: calc(68 / 750 * 100%) auto,
    calc(46 / 750 * 100%) auto,
    calc(76 / 750 * 100%) auto;
  }
  .adult h2 {
    width: min(100%, 750px);
    margin-bottom: min(calc(35 / 750 * 100vw), 35px);
  }
  .adult .adult-text01 {
    width: min(calc(632 / 750 * 100%), 632px);
    margin-bottom: min(calc(48 / 750 * 100vw), 48px);
  }
  .adult .adult-trial {
    width: min(calc(653 / 750 * 100%), 653px);
  }
  .adult .program {
    margin-top: min(calc(80 / 750 * 100vw), 80px);
    margin-bottom: min(calc(100 / 750 * 100vw), 100px);
  }
  .adult .program-subtitle {
    width: min(calc(234 / 750 * 100%), 234px);
    margin: 0 auto min(calc(30 / 750 * 100vw), 30px);
  }
  .adult .program-table {
    width: min(calc(653 / 750 * 100%), 653px);
    margin: 0 auto;
    overflow-x: scroll;
  }
  .adult .program-table::-webkit-scrollbar {
    height: min(calc(12 / 750 * 100vw), 12px);
  }
  .adult .program-table::-webkit-scrollbar-track {
    background-color: transparent;
    border-radius: 7px;
    /*border: 2px solid transparent;*/
  }
  .adult .program-table::-webkit-scrollbar-thumb {
    background-color: #ffe31c;
    border-radius: 8px;
    border: 2px solid transparent;
  }
  .adult .program-table img {
    width: min(calc(959 / 653 * 100%), 959px);
  }
  .adult .adult-schedule {
    width: min(calc(653 / 750 * 100%), 653px);
  }

  .swimming-management {
    padding: min(calc(74 / 750 * 100vw), 74px) 0 min(calc(48 / 750 * 100vw), 48px);
  }
  .swimming-calendar {
    width: min(100%, 750px);
    margin: 0 auto;
  }
  .swimming-calendar-title {
    width: min(calc(743 / 750 * 100%), 743px);
    margin: 0 auto min(calc(66 / 750 * 100vw), 66px);
  }
  .swimming-course {
    width: min(calc(701 / 750 * 100%), 701px);
    margin: 0 auto;
  }
  .swimming-calendar-class + .swimming-calendar-class {
      margin-top: min(calc(78 / 750 * 100vw), 78px);
  }
  .swimming-benefits {
    width: min(calc(654 / 750 * 100%), 654px);
    margin: 0 auto;
  }
  
  .ecc {
    padding-bottom: min(calc(95 / 750 * 100vw), 95px);
    background-image: url(images/dec_ecc04.png),
    url(images/dec_ecc03.png),
    url(images/dec_ecc02_sp.png),
    url(images/dec_ecc01_sp.png);
    background-position: left calc(710 / 750 * 100%) bottom min(calc(951 / 750 * 100vw), 951px),
    left calc(28 / 750 * 100%) bottom min(calc(886 / 750 * 100vw), 886px),
    calc(50% + 347 / 750 * 100%) calc(955 / 750 * 100vw),
    calc(50% - 348 / 750 * 100%) calc(803 / 750 * 100vw);
    background-size: calc(42 / 750 * 100%) auto,
    calc(57 / 750 * 100%) auto,
    calc(85 / 750 * 100%) auto,
    calc(68 / 750 * 100%) auto;
  }
  .ecc h2 {
    width: min(100%, 750px);
    margin: 0 auto min(calc(52 / 750 * 100vw), 52px);
  }
  .ecc .ecc-text01 {
    width: min(calc(652 / 750 * 100%), 652px);
    margin: 0 auto min(calc(50 / 750 * 100vw), 50px);
  }
  .ecc .ecc-features {
    width: min(calc(704 / 750 * 100%), 704px);
    margin: 0 auto min(calc(48 / 750 * 100vw), 48px);
  }
  .ecc .ecc-text02 {
    width: min(calc(612 / 750 * 100%), 612px);
    margin: 0 auto;
  }
  .ecc .ecc-goldenage {
    position: relative;
    width: 100%;
    margin: min(calc(104 / 750 * 100vw), 104px) auto 0;
  }
  .ecc .ecc-box {
    margin: max(-32px, calc(-32 / 750 * 100vw)) auto 0;
    padding: min(calc(80 / 750 * 100vw), 80px) 0 min(calc(80 / 750 * 100vw), 80px);
  }
  .ecc .ecc-fees {
    width: min(calc(651 / 750 * 100%), 651px);
    margin: 0 auto;
  }
  .ecc .ecc-schedule {
    width: min(100%, 750px);
    margin: min(calc(81 / 750 * 100vw), 81px) auto 0;
    padding: min(calc(248 / 750 * 100vw), 248px) 0 min(calc(18 / 750 * 100vw), 18px);
    background-image: url(./images/ecc_schedule_bg_sp.png);
  }
  .ecc .ecc-schedule .ecc-eiken {
    top: min(calc(92 / 750 * 100vw), 92px);
    left: min(calc(24 / 750 * 100%), 24px);
    width: min(calc(307 / 750 * 100%), 307px);
  }
  .ecc .ecc-schedule .ecc-bus {
    top: min(calc(63 / 750 * 100vw), 63px);
    right: min(calc(51 / 750 * 100%), 51px);
    width: min(calc(314 / 750 * 100%), 314px);
  }
  .ecc .ecc-schedule .program-subtitle {
    width: min(calc(426 / 750 * 100%), 426px);
    margin: 0 auto min(calc(24 / 750 * 100vw), 24px);
  }
  .ecc .ecc-schedule .program-table {
    width: min(calc(670 / 750 * 100%), 670px);
    margin: 0 auto;
    overflow-x: scroll;
  }
  .ecc .ecc-schedule .program-table::-webkit-scrollbar {
    height: min(calc(12 / 750 * 100vw), 12px);
  }
  .ecc .ecc-schedule .program-table::-webkit-scrollbar-track {
    background-color: transparent;
    border-radius: 7px;
    /*border: 2px solid transparent;*/
  }
  .ecc .ecc-schedule .program-table::-webkit-scrollbar-thumb {
    background-color: #ffe31c;
    border-radius: 8px;
    border: 2px solid transparent;
  }
  .ecc .ecc-schedule .program-table img {
    width: min(calc(832 / 670 * 100%), 832px);
  }

  .access {
    padding-bottom: min(calc(50 / 750 * 100vw), 50px);
  }
  .access h2 {
    width: min(100%, 750px);
    margin-bottom: min(calc(105 / 750 * 100vw), 105px);
  }
  .access .access-map {
    position: relative;
    width: min(calc(650 / 750 * 100%), 650px);
    margin: 0 auto;
  }
  .access .access-map-class {
    position: absolute;
    top: max(-32px, calc(-32 / 750 * 100vw));
    right: 0;
    left: max(-50px, calc(-50 / 650 * 100%));
    width: min(calc(222 / 650 * 100%), 222px);
    z-index: 1;
  }
  .access .map {
    width: 100%;
    margin: 0;
  }
  .access .map iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 650 / 511;
  }
  .access .access-parking {
    position: relative;
    display: block;
    border-bottom: 3px solid #231815;
  }
  .access .access-parking::after {
    content: "";
    display: block;
    position: absolute;
    bottom: max(-40px, calc(-40 / 750 * 100vw));
    left: 0;
    width: 100%;
    height: auto;
    aspect-ratio: 750 / 40;
    background-color: #f08c50;
  }
  .access-parking-item {
    width: min(calc(439 / 750 * 100%), 439px);
    margin: min(calc(45 / 750 * 100vw), 45px) auto 0;
  }
  .access .access-class {
    flex-direction: column;
    gap: min(calc(91 / 750 * 100vw), 91px) 0;
    width: min(calc(651 / 750 * 100%), 651px);
    margin: min(calc(124 / 750 * 100vw), 124px) auto 0;
  }
  .access .access-class .access-class-item {
    width: 100%;
  }
  .access .access-class .access-contact {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 min(calc(75 / 651 * 100%), 75px);
    margin-bottom: min(calc(24 / 750 * 100vw), 24px);
  }
  .access .access-class .contact-item {
    width: min(calc(99 / 651 * 100%), 99px);
  }
  .access .access-class .access-school01 {
    margin-bottom: min(calc(12 / 750 * 100vw), 12px);
  }

  .footer {
    padding: min(calc(44 / 750 * 100vw), 44px) 0 min(calc(157 / 750 * 100vw), 157px);
    /*background-color: #f08c50;*/
    border-top: 3px solid #231815;
    color: #fff;
  }
  .footer .footer-text {
    width: fit-content;
    margin: 0 auto;
    font-size: 17px;
    font-weight: bold;
  }
  .footer .phone {
    width: min(calc(650 / 750 * 100%), 650px);
    margin: max(-18px, calc(-18 / 750 * 100vw)) auto min(calc(10 / 750 * 100vw), 10px);
    padding: min(calc(10 / 750 * 100vw), 10px) 0 min(calc(15 / 750 * 100vw), 15px);
    border-top: none;
    border-bottom: 2px solid #fff;
    font-size: clamp(1.563rem, 0.4rem + 5.81vw, 3.125rem);
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
  }
  .footer .phone strong {
    font-size: clamp(2.625rem, 0.672rem + 9.77vw, 5.25rem);
    font-weight: bold;
  }
  .footer .copyright {
    margin-top: min(calc(69 / 750 * 100vw), 69px);
  }

  .fix-bottom{
    bottom:max(-10px,calc(-10 / 750 * 100vw));
    width: min(100%, 719px);
  }


  .footer .footer-text {
    border-width: 1px;
    font-size: clamp(0.531rem, 2.27vw, 1.063rem);
  }
  .footer .copyright {
    font-size: clamp(0.375rem, 1.6vw, 0.75rem);
  }


  /*.fix-bottom{ width:95%}*/
}
@media screen and (max-width:340px){
}




/*ハンバーガーメニュー*url(http://127.0.0.1:5500/images/pic_school_02.png)/
.hamburger {
background-color: #ffffff;
display : block;
position: fixed;
z-index : 3000;
right : 0;
top   : 0;
width : 42px;
height: 42px;
cursor: pointer;
text-align: center;
}
.hamburger span {
display : block;
position: absolute;
width   : 30px;
height  : 3px ;
left    : 6px;
background : #070030;
-webkit-transition: 0.3s ease-in-out;
-moz-transition   : 0.3s ease-in-out;
transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
top: 10px;
}
.hamburger span:nth-child(2) {
top: 20px;
}
.hamburger span:nth-child(3) {
top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
top : 20px;
left: 6px;
-webkit-transform: rotate(-45deg);
-moz-transform   : rotate(-45deg);
transform        : rotate(-45deg);
}  
.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
top: 20px;
-webkit-transform: rotate(45deg);
-moz-transform   : rotate(45deg);
transform        : rotate(45deg);
}
nav.globalMenuSp {
position: fixed;
z-index : 2999;
top  : 0;
left : 0;
color: #070030;
background: rgba(255, 255, 255, 0.95);
text-align: center;
transform: translateY(-100%);
transition: all 0.6s;
width: 100%;
}
  /* このクラスを、jQueryで付与・削除する */
  nav.globalMenuSp.active {
  transform: translateY(0%);
  }
  /*メニューレイアウト*/
  
  .globalMenuSp .wrap{ z-index:99999; overflow-y: scroll; height: 100vh; position: relative; -webkit-overflow-scrolling: touch;}
  .globalMenuSp .wrap .block{ width:80%; margin:0 auto;}
  .globalMenuSp .wrap .branding{ width:80%; margin:5.0rem auto;}
  .globalMenuSp .wrap .branding img{ display: block; width:100%}
  .globalMenuSp .wrap .tel{ display: flex; justify-content: space-around; flex-wrap: wrap;}
  .globalMenuSp .wrap .tel li{ width:85%; margin-bottom:1.5rem}
  .globalMenuSp .wrap .tel li img{ width:100%; display: block;}
  .globalMenuSp .wrap .navigation{ width:75%; margin:0 auto; padding:5.0rem 0}
  .globalMenuSp .wrap .navigation a{ font-size:1.8rem; display: block; text-align: left; padding: 1.5rem; background-color: #184e77; color: #ffffff; border-radius:0.5rem; margin:0.5rem 0; display: flex; align-items: center; justify-content: space-between;}
  .globalMenuSp .wrap .navigation a small{ font-weight: bold; font-size: 1.2rem;}



