.Library {
  color: #fff;
}
.Library-inner {
  max-width: 77.5rem /* 1240px (基準16px) */;
  margin: 0 auto;
  padding: 0 1.25rem /* 20px (基準16px) */;
}
.Library-title h1 > span {
  text-align: center;
  display: block;
  color: #fff;
  font-weight: 400;
  font-family: 'Montserrat', sans-serif;
  line-height: 1;
}

.Library-title h1 > span:nth-child(1) {
  font-size: clamp(
    3.75rem /* 60px (基準16px) */,
    0.893rem + 5.952vw /* 768px-1440px間で3.750rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
  margin-top: 1.875rem /* 30px (基準16px) */;
  line-height: 0.8;
}
.s .Library-title h1 > span:nth-child(1) {
  margin-top: 1rem /* 16px (基準16px) */ /* 20px (基準16px) */;
}
.Library-title h1 > span:nth-child(2) {
  font-weight: 600;
  font-size: clamp(
    1.125rem /* 18px (基準16px) */,
    0.624rem + 1.043vw /* 768px-1440px間で1.125rem-1.563remの線形補間 */,
    1.563rem /* 25px (基準16px) */
  );
  margin-top: 1.5rem /* 24px (基準16px) */;
}
.Library-title h1 > span:nth-child(2) {
  margin-top: 1.25rem /* 20px (基準16px) */;
}

.Library-title > p {
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    0.446rem + 0.893vw /* 768px-1440px間で0.875rem-1.250remの線形補間 */,
    1.25rem /* 20px (基準16px) */
  );
  text-align: center;
  margin-top: 1.75rem /* 28px (基準16px) */;
  line-height: 1.8;
}
.Library-title > p {
  line-height: 1.857;
}

.Library-anchorList {
  margin-top: clamp(
    2.5rem /* 40px (基準16px) */,
    -1.786rem + 8.929vw /* 768px-1440px間で2.500rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 1.188rem /* 19px (基準16px) */;
  width: 100%;
  padding-top: clamp(
    1.75rem /* 28px (基準16px) */,
    0.179rem + 3.274vw /* 768px-1440px間で1.750rem-3.125remの線形補間 */,
    3.125rem /* 50px (基準16px) */
  );
}
.s .Library-anchorList {
  column-gap: 0.625rem /* 10px (基準16px) */;
}

.Library-anchorList > li {
  display: block;
  width: 100%;
}

.Library-contactus {
  position: relative;
  margin-top: 15rem /* 240px (基準16px) */;
  padding-bottom: 6.25rem /* 100px (基準16px) */;
  background-color: rgba(255, 255, 255, 0.22);
}

.s .Library-contactus {
  margin-top: 7.5rem /* 120px (基準16px) */;
  padding-bottom: 5rem /* 80px (基準16px) */;
}

.Library-contactus ._deco {
  position: absolute;
  top: -9rem /* 144px (基準16px) */;
  width: 100%;
  height: 9rem /* 144px (基準16px) */;
}

.s .Library-contactus ._deco {
  height: 4.375rem /* 70px (基準16px) */;
  top: -4.375rem /* 70px (基準16px) */;
}
.Library-contact p {
  font-size: clamp(
    1.5rem /* 24px (基準16px) */,
    0.357rem + 2.381vw /* 768px-1440px間で1.500rem-2.500remの線形補間 */,
    2.5rem /* 40px (基準16px) */
  );
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: -0.04em;
}
.s .Library-contact p {
  margin-top: 1.875rem /* 30px (基準16px) */;
}

.Library-about {
  margin-top: clamp(
    5.625rem /* 90px (基準16px) */,
    4.911rem + 1.488vw /* 768px-1440px間で5.625rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
}
.Library h2 {
  font-weight: 500;
  font-size: clamp(
    2rem /* 32px (基準16px) */,
    0rem + 4.167vw /* 768px-1440px間で2.000rem-3.750remの線形補間 */,
    3.75rem /* 60px (基準16px) */
  );
}

.Library-about > div > p {
  margin-top: 1.25rem /* 20px (基準16px) */;
  line-height: 2.4;
}
.s .Library-about > div > p {
  margin-top: 1.5rem /* 24px (基準16px) */;
  line-height: 1.786;
}

.Library-about ul {
  --library-about-column-gap: clamp(
    0.625rem /* 10px (基準16px) */,
    -1.518rem + 4.464vw /* 768px-1440px間で0.625rem-2.500remの線形補間 */,
    2.5rem /* 40px (基準16px) */
  );
  padding-inline: clamp(
    0rem /* 0px (基準16px) */,
    -2.857rem + 5.952vw /* 768px-1440px間で0.000rem-2.500remの線形補間 */,
    2.5rem /* 40px (基準16px) */
  );
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: var(--library-about-column-gap);
  row-gap: 3.75rem /* 60px (基準16px) */;
  padding-top: 2.5rem /* 40px (基準16px) */;
}
.s .Library-about ul {
  row-gap: 2.5rem /* 40px (基準16px) */;
  padding-top: 2rem /* 32px (基準16px) */;
}

.Library-about ul > li {
  position: relative;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  row-gap: 1.5rem /* 24px (基準16px) */;
  padding-block: 2rem /* 32px (基準16px) */;
  padding-inline: 1.25rem /* 20px (基準16px) */;
  border-radius: 20px;
}
.s .Library-about ul > li {
  row-gap: 1rem /* 16px (基準16px) */;
  padding-block: 1.5rem /* 24px (基準16px) */;
}

.Library-about ul > li:nth-child(1),
.Library-about ul > li:nth-child(2) {
  width: calc((100% - var(--library-about-column-gap)) / 2);
}
.Library-about ul > li:nth-child(1) {
}
.Library-about ul > li:nth-child(2) {
}
.Library-about ul > li:nth-child(3) {
  width: 100%;
  max-width: 44.875rem /* 718px (基準16px) */;
}

.Library-about .Library-aboutTitle {
  color: #0047c5;
  font-weight: 700;
  font-size: clamp(
    1rem /* 16px (基準16px) */,
    0.429rem + 1.19vw /* 768px-1440px間で1.000rem-1.500remの線形補間 */,
    1.5rem /* 24px (基準16px) */
  );
}
.Library-about .Library-aboutImage {
  height: auto;
}
.Library-about ul > li:nth-child(1) .Library-aboutImage {
  padding-block: 1.5rem /* 24px (基準16px) */;
  width: clamp(
    7.063rem /* 113px (基準16px) */,
    3.206rem + 8.036vw /* 768px-1440px間で7.063rem-10.438remの線形補間 */,
    10.438rem /* 167px (基準16px) */
  );
}
.s .Library-about ul > li:nth-child(1) .Library-aboutImage {
  padding-block: 0.813rem; /* 13px (基準16px) */
}

.Library-about ul > li:nth-child(2) .Library-aboutImage {
  width: clamp(
    2.625rem /* 42px (基準16px) */,
    -0.232rem + 5.952vw /* 768px-1440px間で2.625rem-5.125remの線形補間 */,
    5.125rem /* 82px (基準16px) */
  );
}
.Library-about ul > li:nth-child(3) .Library-aboutImage {
  width: 5.625rem; /* 90px (基準16px) */
}

.Library-about .Library-aboutDescription {
  color: #003c8f;
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    0.446rem + 0.893vw /* 768px-1440px間で0.875rem-1.250remの線形補間 */,
    1.25rem /* 20px (基準16px) */
  );
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}
.s .Library-about .Library-aboutDescription {
  line-height: 1.714;
}

.Library-about ul > li:nth-child(3) .Library-aboutDescription {
  display: block;
  width: max-content;
  padding-block: 1.75rem /* 28px (基準16px) */;
  padding-inline: clamp(
    0.625rem /* 10px (基準16px) */,
    -2.946rem + 7.44vw /* 768px-1440px間で0.625rem-3.750remの線形補間 */,
    3.75rem /* 60px (基準16px) */
  );
  border-radius: 20px;
  background: #e7f0ff;
}
.s .Library-about ul > li:nth-child(3) .Library-aboutDescription {
  width: 100%;
  padding-block: 1.25rem; /* 20px (基準16px) */
}
.Library-about ul > li:nth-child(3) .Library-aboutDescription > span {
  display: block;
  text-align: center;
}
.Library-about ul > li:nth-child(3) .Library-aboutDescription > span:nth-child(1) {
  color: #0047c5;
  font-weight: 700;
  font-size: clamp(
    1rem /* 16px (基準16px) */,
    0.714rem + 0.595vw /* 768px-1440px間で1.000rem-1.250remの線形補間 */,
    1.25rem /* 20px (基準16px) */
  );
}
.Library-about ul > li:nth-child(3) .Library-aboutDescription > span br {
  display: none;
}
.s .Library-about ul > li:nth-child(3) .Library-aboutDescription > span br {
  display: block;
}
.Library-about ul > li:nth-child(3) .Library-aboutDescription > span:nth-child(2) {
  font-weight: 400;
  color: #003c8f;
  font-size: clamp(
    0.75rem /* 12px (基準16px) */,
    0.607rem + 0.298vw /* 768px-1440px間で0.750rem-0.875remの線形補間 */,
    0.875rem /* 14px (基準16px) */
  );
  margin-top: 0.5rem /* 8px (基準16px) */;
}
.s .Library-about ul > li:nth-child(3) .Library-aboutDescription > span:nth-child(2) {
  line-height: 1.8333;
}

.Library-about img._decoration {
  display: block;
  height: auto;
  position: absolute;
}
.s .Library-about img._decoration {
  display: none;
}
.Library-about img._decoration._01 {
  top: 25.862% /* 60px (基準232px) */;
  left: 18.302% /* 97px (基準530px) */;
  width: 6.604%; /* 35px (基準530px) */
}
.Library-about img._decoration._02 {
  top: 40.517% /* 94px (基準232px) */;
  right: 15.283% /* 81px (基準530px) */;
  width: 7.358%; /* 39px (基準530px) */
}
.Library-about img._decoration._03 {
  top: 31.466% /* 73px (基準232px) */;
  left: 18.679% /* 99px (基準530px) */;
  width: 11.321%; /* 60px (基準530px) */
}
.Library-about img._decoration._04 {
  top: 38.793% /* 90px (基準232px) */;
  right: 22.453% /* 119px (基準530px) */;
  width: 6.415% /* 34px (基準530px) */;
}

.Library-about span._anchor {
  position: absolute;
  top: 0;
  display: block;
  width: 50%;
  height: 0;
}
.Library-about span._anchor._left {
  left: 0;
}
.Library-about span._anchor._right {
  right: 0;
}

.Library-howToUse {
  margin-top: clamp(
    5.625rem /* 90px (基準16px) */,
    3.482rem + 4.464vw /* 768px-1440px間で5.625rem-7.500remの線形補間 */,
    7.5rem /* 120px (基準16px) */
  );
}

.Library-howToUse a {
  display: block;
  margin-top: 1.75rem /* 28px (基準16px) */;
}
.s .Library-howToUse a {
  margin-top: 2.5rem /* 40px (基準16px) */;
}

.Library-wave {
  margin-top: 7.5rem /* 120px (基準16px) */;
  display: block;
  width: 100%;
  height: auto;
}
.s .Library-wave {
  margin-top: 5rem /* 80px (基準16px) */;
}

.Library-btn {
  display: block;
  margin-inline: auto;
  width: clamp(
    17.938rem /* 287px (基準16px) */,
    12.724rem + 10.862vw /* 768px-1440px間で17.938rem-22.500remの線形補間 */,
    22.5rem /* 360px (基準16px) */
  );
}
.Library-contact .Library-btn {
  margin-top: 2.5rem /* 40px (基準16px) */;
}
.s .Library-contact .Library-btn {
  margin-top: 1.75rem /* 28px (基準16px) */;
}
