.schedule {
  overflow: hidden;
}
.schedule-bg {
  background: url(../img/cmn/bg01.png) no-repeat center top, url(../img/cmn/bg.svg) no-repeat center bottom, hsl(194, 100%, 95%);
  background-size: 100%, contain;
  background-blend-mode: normal;
}
.schedule #tab1 {
  width: min(1792px, 98%);
  margin-inline: auto;
}
.schedule #tab2 {
  width: min(1352px, 98%);
  margin-inline: auto;
}
.schedule__tab {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 2rem;
  margin-block-end: clamp(2.5rem, 0.23rem + 9.7vw, 7.5rem);
}
.schedule__li::after {
  content: "";
  display: block;
  background-color: hsl(26, 54%, 25%);
  width: min(70px, 3.6458333333vw);
  height: min(30px, 1.5625vw);
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  margin-inline: auto;
  margin-block-start: 1.25rem;
}
.schedule__li a {
  display: block;
  color: hsl(0, 0%, 100%);
  font-size: clamp(1.125rem, 0.73rem + 1.7vw, 2rem);
  padding-inline: 5.2083333333vw;
  padding-block: 1rem;
  border-radius: 40px;
  filter: drop-shadow(5px 5px 0px hsl(26, 54%, 25%));
}
.schedule__li:first-child a {
  background-color: #69bd83;
}
.schedule__li:last-child a {
  background-color: #f6ad3c;
}
.schedule__h3 {
  font-size: clamp(2rem, 1.55rem + 1.94vw, 3rem);
  font-weight: 800;
  margin-block-end: clamp(1.125rem, 0.73rem + 1.7vw, 2rem);
  letter-spacing: normal;
  position: relative;
  line-height: 1.6;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: column;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.schedule__h3 > small {
  font-size: clamp(1.125rem, 0.95rem + 0.73vw, 1.5rem);
}
.schedule__h3 > span {
  font-size: clamp(0.875rem, 0.82rem + 0.24vw, 1rem);
}
.schedule__h3::after {
  content: "";
  display: inline-block;
  width: min(100px, 10vw);
  height: min(100px, 10vw);
  background: url(../img/schedule/icon.png) no-repeat center/contain;
  position: absolute;
  top: 0;
  right: 105%;
}
.schedule__ol {
  position: relative;
  padding-bottom: 3%;
}
.schedule__ol::after {
  content: "";
  display: block;
  width: 12px;
  height: 100%;
  background-color: #69bd83;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 3;
}

.schedule__ol li {
  min-height:45px;
  margin-bottom: 4%;
}
.schedule__ol li.distance2x{
  margin-bottom: 10%;
}
.schedule__ol li:last-child{
  min-height:130px;
}
.schedule__ol li .txt{
  position: relative;
  z-index: 50;
}
.schedule__ol li .time{
  font-size: clamp(19px, calc(24 / 1700 * 100vw), 24px);
  font-weight: 600;
  background-color: white;
  border: 3px solid #69bd83;
  border-radius: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height:45px;
  width:120px;
  position: absolute;
  top:0;
  left:50%;
  translate: -50% 0%;
}
.schedule__ol li .time.t01{
  z-index: 3;
}
.schedule__ol li .time.t02{
  translate: -50% 100%;
z-index: 2;
}
.schedule__ol li .time.t03{
  translate: -50% 200%;
  z-index: 1;
}
.schedule__ol li .ti{
  font-size:clamp(16px,calc(22 / 1700 * 100vw),22px);
  position:absolute;
  left:50%;
  top:0%;
  translate: 70px 20%;
}

.schedule__ol li .ti.left{
  position:absolute;
  left:auto;
  right:50%;
  top:0%;
  translate: -70px 20%;
}
.schedule__ol li .ti.center{
  top:50%;
  translate: -70px -50%;
}
.schedule__ol li small {
  display: block;
  font-size: 14px;
}
.schedule__ol2 li{
  margin-bottom: 2%;
}
.schedule__ol2 li .time{
  border-color: #f6ad3c;
}
.schedule__ol2::after {
  background-color: #f6ad3c;
}

.schedule__box {
  position: relative;
  margin-block-end: clamp(7.5rem, 3.98rem + 15.03vw, 15.25rem);
}
.schedule [class*="img_"] img {
  border-radius: 10px;
  height: auto;
}

.schedule .img_AL01 {
  width: min(35%,632px);
  position: absolute;
  top: 0%;
  left: 6%;
}
.schedule .img_AR01 {
  width: min(25%,420px);
  position: absolute;
  right: 7%;
  top: 6%;
}

.schedule .img_AR02 {
  width: min(18%,336px);
  position: absolute;
  top: 17%;
  right: 15%;
}

.schedule .img_AL02 {
  width: min(22%,336px);
  position: absolute;
  z-index: 3;
  top: 44%;
  left: 14%;
}

.schedule .img_AL03 {
  width: min(18%,270px);
  margin-inline: auto;
  position: absolute;
  top: 54%;
  left: 10%;
}

.schedule .img_AR03 {
  width: min(22%,336px);
  margin-inline: auto;
  position: absolute;
  top: 34%;
  right: 14%;
}

.schedule .img_AR04 {
  width: min(22%,336px);
  margin-inline: auto;
  position: absolute;
  top: 55%;
  right: 13%;
}
.schedule .img_AL04 {
  width: min(25%,420px);
  margin-inline: auto;
  position: absolute;
  top: 80%;
  left: 10%;
}
.schedule .img_AR05 {
  width: min(26%,420px);
  margin-inline: auto;
  position: absolute;
  top: 76%;
  right: 15%;
}

.schedule .img_AR01::before {
  content: "";
  display: block;
  width: 65%;
  aspect-ratio: 280/142;
  background: url(../img/schedule/icon_a2.png) no-repeat center/contain;
  position: absolute;
  right: -17%;
  top: -33%;
}
.schedule .img_AR02::after {
  content: "";
  display: block;
  width: 25%;
  aspect-ratio: 80/163;
  background: url(../img/schedule/icon_a4.png) no-repeat center/contain;
  position: absolute;
  right: -50%;
  top: -5%;
}
.schedule .img_AL02::before {
  content: "";
  display: block;
  width: 33%;
  aspect-ratio: 97/202;
  background: url(../img/schedule/icon_a3.png) no-repeat center/contain;
  position: absolute;
  top: 10%;
  translate: 0 -100%;
}
.schedule .img_AL03::after {
  content: "";
  display: block;
  width: 70%;
  aspect-ratio: 187/191;
  background: url(../img/schedule/icon_a6.png) no-repeat center/contain;
  position: absolute;
  right: -55%;
  bottom: -22%;
}
.schedule .img_AR03::before {
  content: "";
  display: block;
  width: 52%;
  aspect-ratio: 169/96;
  background: url(../img/schedule/icon_a5.png) no-repeat center/contain;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(50%, 50%);
}
.schedule .img_AR04::before {
  content: "";
  display: block;
  width: 35%;
  aspect-ratio: 134/103;
  background: url(../img/schedule/icon_a7.png) no-repeat center/contain;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(0%, -50%);
}
.schedule .img_AR04::after {
  content: "";
  display: block;
  width: 35%;
  aspect-ratio: 146/110;
  background: url(../img/schedule/icon_a8.png) no-repeat center/contain;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(50%, 50%);
}

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

.schedule .img_cut_b01{
  position:absolute;
  right:0;
  top:0;
  width:min(30%, 130px);
  translate: 0 -50%;
}
.schedule .img_BL01{
  width:min(25%,420px);
  position:absolute;
  top: 1%;
  left: 9%;
}
.schedule .img_BL02{
  width: min(18%,270px);
  position:absolute;
  top: 44%;
  left: 3%;
}
.schedule .img_BL03{
  width: min(18%,270px);
  position:absolute;
  top: 55%;
  left: 18%;
}
.schedule .img_BR01{
  width:min(25%,420px);
  position:absolute;
  top: 23%;
  right: 9%;
}
.schedule .img_BR02{
  width:min(25%,420px);
  position:absolute;
  top: 47%;
  right: 9%;
}
.schedule .img_BR03{
  width: min(18%,270px);
  position:absolute;
  top: 73%;
  right: 7%;
}
.schedule .img_BR04{
  width: min(18%,270px);
  position:absolute;
  top: 82%;
  right: 22%;
}
/*--------------------------*/
.schedule .img_BL01 .icon{
  position: absolute;
  bottom:0;
  left:7%;
  translate:0% 50%;
  width:min(38% ,160px);
}
.schedule .img_BL03 .icon{
  position: absolute;
  bottom: 0;
  left: -4%;
  translate: -100% -20%;
  width: min(55% ,188px);
}
.schedule .img_BR01 .icon{
  position: absolute;
  top:0;
  right:-5%;
  translate:0% -90%;
  width:min(43% ,180px);
}
.schedule .img_BR01 .icon2{
  position: absolute;
  top:0;
  right:50%;
  translate:0% -50%;
  width:min(23% ,93px);
}
.schedule .img_BR02 .icon{
  position: absolute;
  bottom:0;
  right:0%;
  translate:50% 40%;
  width:min(30% ,144px);
}
.schedule .img_BR03 .icon{
  position: absolute;
  bottom:0;
  right:35%;
  translate:0% 40%;
  width:min(40% ,125px);
  z-index: 40;
}
/*--------------------------------------*/
@media screen and (max-width: 1200px) {
  .schedule [class*="img_AR"],
  .schedule [class*="img_BR"]:not(.img_BR04){
    right:2%;
  }
  .schedule [class*="img_AL"],
  .schedule [class*="img_BL"]:not(.img_BL03){
    left:2%;
  }
}
@media screen and (max-width: 1024px) {
.schedule .img_AR01,
.schedule .img_AR02,
.schedule .img_AR03,
.schedule .img_AR04,
.schedule .img_AR05,
.schedule .img_BR01,
.schedule .img_BR02,
.schedule .img_BR03,
.schedule .img_BR04{
    position: relative;
    left:auto;
    right:auto;
    top:auto;
    translate:unset;
    width:40%;
    margin-left:57%;
    z-index: 40;
  }
  .schedule .img_AL01,
  .schedule .img_AL02,
  .schedule .img_AL03,
  .schedule .img_AL04,
  .schedule .img_AL05,
  .schedule .img_BL01,
  .schedule .img_BL02,
  .schedule .img_BL03{
      position: relative;
      left:auto;
      right:auto;
      top:auto;
      translate:unset;
      width:40%;
      margin-left:4%;
      z-index: 40;
      text-align: right;
    }
  .schedule .img_AL01{
    position: absolute;
    top:0;
    left:0;
  }
  .schedule .img_AL02{
    float: left;
    margin:auto;
    width: 38%;

  }
  .schedule .img_AL03{
    width: 30%;
    margin: auto;
    translate: 5% 80%;
    position: absolute;
    left: 0;
    top: auto;
  }
  .schedule .img_BL03 {
    margin : 0 4% 0 auto;
  }
  .schedule .img_BL03 .icon{
    translate:unset;
    bottom: -15%;
    left: -4%;
  }
  .schedule .img_AL04{
    float: left;
    margin-top:-9%;
  }
  .schedule .img_BR03{
    margin:0 0 0 4%;
    text-align: right;
  }
  .schedule .img_BR04{
    translate: 0 -100%;
    margin-bottom: -30%;
  }
  .schedule .img_AR01::before{
    display: none;
  }
  .schedule .img_AR02::before{
      content: "";
      display: block;
      width: 50%;
      aspect-ratio: 280/142;
      background: url(../img/schedule/icon_a2.png) no-repeat center/contain;
      position: absolute;
      right: -3%;
      top: -22%;
  }
  .schedule .img_AR02::after{
    width: 20%;
    right: -7%;
    top: 40%;
  }
  .schedule .img_AL03::after {
    width: 58%;
    right: -27%;
    bottom: -37%;
  }
  .schedule__ol li .txt{
    width: 50%;
    margin-left: 50%;
  }

  .schedule__ol li .time{
    position: static;
    translate: unset;
    height: min(45px,9vw);
    font-size: clamp(15px,4vw,19px);
    width: min(120px,20vw);
    translate: -50% 0;
  }
  .schedule__ol li .time.t01,
  .schedule__ol li .time.t02,
  .schedule__ol li .time.t03{
    translate:unset;
    translate: -50% 0;
  }

  .schedule__ol li .ti{
    position: static;
    translate:unset;
    padding-left:1rem;
    margin: .3em 0 .5em 0;
  }
  .schedule__ol li .ti.left{
    position: static;
    translate:unset;
  }
  .schedule__ol li .ti span.sp_left{
    translate: calc((100% + 30px) * -1) 0;
    display: inline-block;
  }
}

@media screen and (max-width: 640px) {
.schedule .img_AR04::before{
  top: 19%;
  left: -24%;
}
}
