@charset "UTF-8";

#contentsContainer .page-workshop .kv__inner {
  align-items: stretch;
  padding: 20px 40px 0 40px;
  border-radius: 0 0 16px 16px;
  max-width: 1400px;
}
.kv__box-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.kv__info {
  width: calc(50% - 16px);
  background-image: linear-gradient(to bottom, #EFF1F2, #ffffff);
  border-radius: 0 0 0 16px;
}
.l-reservation {
  width: 50%;
  background-image: linear-gradient(to bottom, #EFF1F2, #ffffff);
  border-radius: 0 0 16px 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 30px;
}
#contentsContainer .page-workshop .l-sec-theme {
  background-color: #fff;
  padding: 30px 20px 0;
}
#contentsContainer .page-workshop .l-sec-info {
  background-color: #fff;
  padding: 30px 20px;
}
#contentsContainer .page-workshop .l-sec-info .info__data {
  gap: 20px;
}
#contentsContainer .page-workshop .l-sec-info .info__img {
  max-width: 38%;
}
#contentsContainer .page-workshop .l-sec-info .info__name {
  font-size: 18px;
}
#contentsContainer .page-workshop .l-sec-info .info__address {
  font-size: 14px;
  margin-top: 10px;
}
.p-calendar-wrap {
  width: 100%;
  flex: 1;
}
.p-calendar {
  width: 100%;
  height: 100%;
}
.p-calendar-ttl {
  font-size: 24px;
  font-weight: 900;
  color: #2e67ce;
  text-align: center;
}
.p-calendar-txt {
  width: fit-content;
  padding: 10px 20px;
  margin-inline: auto;
}
#contentsContainer .page-workshop .l-sec-theme .theme__tab-support-head {
  margin-top: 0;
}
#contentsContainer .page-workshop .l-sec-theme .theme__tab-support-contents>.theme__tab-support-contents-image {
  width: 130px;
}

.icon-new {
  position: relative;
}
.icon-new::before {
  content: "\05cnew/";
  position: absolute;
  top: -16px;
  left: -4px;
  color: #d7063b;
  font-size: 18px;
  font-weight: bold;
}
    
@media (min-width: 769px) {
  body {
    background-color: #EFF1F2;
  }
  #page-wrapper {
    width: 100%;
    min-width: 1260px;
    min-height: 100vh;
    position: relative;
    box-sizing: border-box;
    overflow-x: hidden;
    padding-bottom: 52px;
  }
  #footer-container {
    position: absolute;
    bottom: 0;
  }
  #contentsContainer .page-workshop .kv {
    padding-bottom: 40px;
  }
  #contentsContainer .page-workshop .kv__box {
    width: 54%;
  }
  #contentsContainer .page-workshop .kv__lead-value {
    font-size: 18px;
  }
  #contentsContainer .page-workshop .kv__ttl {
    font-size: 36px;
  }
  #contentsContainer .page-workshop .kv__ttl .rt {
    font-size: 12px;
  }
  #contentsContainer .c-btn > span {
    font-size: 14px;
  }
  #contentsContainer .page-workshop .kv__img {
    width: 40%;
    margin-right: 20px;
  }
  #contentsContainer .page-workshop .l-sec-about {
    width: 100%;
    margin-top: 32px;
    padding: 30px 0;
  }
  #contentsContainer .page-workshop .l-sec-about .ws-sec-ttl--l, #contentsContainer .page-workshop .l-sec-about .ws-sec-ttl--r {
    padding: 8px 22px;
  }
  #contentsContainer .page-workshop .ws-sec-ttl {
    font-size: 20px;
  }
  #contentsContainer .page-workshop .l-sec-about .ws-sec-txt {
    width: 90%;
    margin: 20px auto 0;
    text-align: left;
    font-size: 16px;
  }
  #contentsContainer .page-workshop .kv__info section:last-child {
    border-radius: 0 0 0 16px;
  }
  #contentsContainer .page-workshop .l-sec-theme .c-sec_ttl,
  #contentsContainer .page-workshop .l-sec-info .c-sec_ttl {
    font-size: 24px;
  }
  #contentsContainer .c-sec_txt2 {
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  letter-spacing: 0.05em;
  }
}

@media (max-width: 768px) {
  .kv__box-wrapper {
    display: block;
  }
  #page-wrapper .page-workshop .kv__inner {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
    border-radius: 0;
    row-gap: 0;
  }
  .kv__info {
    width: 100%;
    border-radius: 0;
  }
  .kv__box-wrapper {
    padding: 0 20px 60px;
  }
  #contentsContainer .page-workshop .l-sec-theme {
    padding: 56px 20px 0;
  }
  #contentsContainer .page-workshop .l-sec-info .info__img {
    max-width: 100%;
  }
  .l-reservation {
    width: 100%;
    padding: 56px 0 0;
  }
  .p-calendar-wrap {
    padding: 20px 10px 40px;
  }
  .p-calendar {
    height: 600px;
  }
  .p-theme-list {
    flex-direction: column;
  }
  .p-theme-listItem {
    padding: 20px 12px;
  }
  .p-implementation-list {
    flex-direction: column;
  }
}

.borderBox {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
  background: #fff;
  border-radius: 8px;
  border: 2px solid #DADDE0;
  padding: 18px 10px 26px;
}
@media screen and (max-width: 768px) {
  .borderBox {
    width: 100%;
  }
}
.borderBox_ttl {
  margin: 0 auto 24px;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .borderBox_ttl {
    margin-bottom: 18px;
    font-size: 14px;
  }
}
.borderBox_ttlLead {
  display: inline-block;
  padding-bottom: 0.6em;
  font-size: 16px;
  font-weight: bold;
}

.borderBox_ttl .mailIcon {
  vertical-align: middle;
  display: inline-block;
  width: 32px;
  height: 32px;
  margin-right: 12px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%3E%20%3Cdefs%3E%20%3CclipPath%20id%3D%22clip-path%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_962%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%20962%22%20width%3D%2231.999%22%20height%3D%2222.153%22%20fill%3D%22%23d7063b%22%2F%3E%20%3C%2FclipPath%3E%20%3C%2Fdefs%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_15879%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2015879%22%20transform%3D%22translate(-1128%20-592)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_906%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%20906%22%20width%3D%2231.999%22%20height%3D%2231.999%22%20transform%3D%22translate(1128%20592)%22%20fill%3D%22%23d7063b%22%20opacity%3D%220%22%2F%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_746%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20746%22%20transform%3D%22translate(1128%20596.923)%22%20clip-path%3D%22url(%23clip-path)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_272%22%20data-name%3D%22%E3%83%91%E3%82%B9%20272%22%20d%3D%22M31.738%2C102.583l-8.277%2C8.431a.149.149%2C0%2C0%2C0%2C0%2C.215l5.792%2C6.169a1%2C1%2C0%2C0%2C1%2C0%2C1.415%2C1%2C1%2C0%2C0%2C1-1.415%2C0l-5.769-6.146a.158.158%2C0%2C0%2C0-.223%2C0L20.438%2C114.1a6.193%2C6.193%2C0%2C0%2C1-4.415%2C1.861%2C6.317%2C6.317%2C0%2C0%2C1-4.508-1.915l-1.354-1.377a.158.158%2C0%2C0%2C0-.223%2C0l-5.769%2C6.146a1%2C1%2C0%2C0%2C1-1.415%2C0%2C1%2C1%2C0%2C0%2C1%2C0-1.415l5.792-6.169a.164.164%2C0%2C0%2C0%2C0-.215L.262%2C102.583a.152.152%2C0%2C0%2C0-.262.108V119.56a2.469%2C2.469%2C0%2C0%2C0%2C2.461%2C2.462H29.538A2.469%2C2.469%2C0%2C0%2C0%2C32%2C119.56V102.691a.154.154%2C0%2C0%2C0-.262-.108%22%20transform%3D%22translate(0%20-99.868)%22%20fill%3D%22%23d7063b%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_273%22%20data-name%3D%22%E3%83%91%E3%82%B9%20273%22%20d%3D%22M50.839%2C14.084a4.182%2C4.182%2C0%2C0%2C0%2C3.008-1.262L65.916.538A2.418%2C2.418%2C0%2C0%2C0%2C64.393%2C0h-27.1A2.4%2C2.4%2C0%2C0%2C0%2C35.77.538L47.839%2C12.823a4.182%2C4.182%2C0%2C0%2C0%2C3%2C1.262%22%20transform%3D%22translate(-34.839)%22%20fill%3D%22%23d7063b%22%2F%3E%20%3C%2Fg%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") center center/contain no-repeat;
}

ol.-circle {
  counter-reset: number 0;
  list-style: none;
  padding: 0;
  margin: 0 auto 21px;
}

ol.-circle > li {
  position: relative;
  padding-left: 2.75em;
  font-size: 14px;
}

ol.-circle > li:not(:last-child) {
  margin-bottom: 21px;
}

ol.-circle > li::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.3em;
  height: 2.3em;
  margin: 0;
  line-height: 1;
  color: #333;
  font-size: inherit;
  font-weight: bold;
  text-align: center;
  transform: translateY(-50%);
  content: "" counter(number);
  counter-increment: number 1;
  background: #EFF1F2;
  border-radius: 50%;
}
