/* =======================================================
about
======================================================= */
.ly-about {
  padding: 6rem 0 6.75rem;
}

.bl-about {
  display: grid;
  place-content: center;
  padding: 4rem 0;
  text-align: center;
  background: url("../images/guide/about-bg.webp") top center/cover no-repeat;
}
.bl-about-box .bl-box-ttl {
  margin-bottom: 2.25rem;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: calc(56/40);
  letter-spacing: 0.08em;
}
.bl-about-box .bl-box-ttl-deco {
  font-size: 1.75rem;
  line-height: 2;
}
.bl-about-box .bl-box-txt {
  font-size: 1.25rem;
  line-height: 2;
}
.bl-about-box .bl-box-txt + .bl-box-txt {
  margin-top: 2em;
}

@media screen and (max-width: 750px) {
  .bl-about {
    align-content: start;
    width: 43.125rem;
    height: 67.125rem;
    margin: 0 auto;
    background: url("../images/guide/about-bg-sp.png") top center/cover no-repeat;
  }
  .bl-about-box .bl-box-ttl {
    margin-bottom: 1.5rem;
  }
  .bl-about-box .bl-box-txt {
    font-size: 1.625rem;
  }
  .bl-about-box .bl-box-txt + .bl-box-txt {
    margin-top: 1.5rem;
  }
}
/* =======================================================
feature
======================================================= */
.ly-feature {
  padding: 8rem 0;
  background: var(--color-contrast);
}

.bl-feature {
  width: 113rem;
}
.bl-feature-ttl {
  margin-bottom: 3rem;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.08em;
}
.bl-feature-ttl-deco {
  display: block;
  margin-bottom: 1rem;
  font-size: 1.25rem;
  line-height: calc(28/20);
}
.bl-feature-list {
  display: grid;
  gap: 3.5rem;
}
.bl-feature-item {
  background: var(--color-white);
}
.bl-feature-item:first-of-type {
  padding: 4rem 15.125rem;
}
.bl-feature-item:first-of-type .bl-item-ttl {
  margin-bottom: 2.5rem;
}
.bl-feature-item:first-of-type .bl-item-txt {
  margin-bottom: 4rem;
}
.bl-feature-item:first-of-type .bl-item-cont {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  gap: 0;
}
.bl-feature-item:first-of-type .bl-item-conts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}
.bl-feature-item:first-of-type .bl-item-cont .bl-cont-imgwrapper {
  margin-bottom: 1.25rem;
}
.bl-feature-item:first-of-type .bl-item-cont .bl-cont-ttl {
  position: relative;
  display: inline-block;
  justify-self: start;
  font-size: 1.75rem;
  font-weight: 400;
  line-height: calc(34/28);
}
.bl-feature-item:first-of-type .bl-item-cont .bl-cont-ttl-deco {
  position: relative;
  z-index: 2;
}
.bl-feature-item:first-of-type .bl-item-cont .bl-cont-ttl::before {
  position: absolute;
  bottom: 0.5625rem;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 0.625rem;
  content: "";
  background: var(--color-contrast);
}
.bl-feature-item:first-of-type .bl-item-cont .bl-cont-txt {
  margin-top: 1em;
}
.bl-feature-item:first-of-type .bl-item-cont .bl-cont-btn {
  justify-self: end;
  padding: 0.6875rem 2.25rem 0.8125rem;
  margin-top: 2.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: calc(17/14);
  background: var(--color-white);
  border: 0.0625rem solid var(--color-black02);
}
.bl-feature-item:nth-of-type(2) {
  padding: 4rem 0 4rem 7rem;
}
.bl-feature-item:nth-of-type(2) .bl-item-ttl {
  margin-bottom: 2.5rem;
}
.bl-feature-item:nth-of-type(2) .bl-item-txt {
  margin-bottom: 3rem;
}
.bl-feature-item:nth-of-type(2) .bl-item-box {
  padding: 8rem 0 1.1875rem 8rem;
  background: url("../images/guide/feature02-bg.webp") top center/cover no-repeat;
}
.bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-ttl {
  margin-bottom: 7.6875rem;
  font-size: 2.25rem;
  font-weight: 400;
  line-height: calc(56/36);
  letter-spacing: 0.08em;
}
.bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-list {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 1rem;
  justify-content: start;
  margin: 0 0 3.5rem 6.125rem;
}
.bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
  width: 21.25rem;
  padding: 3.8125rem 1.5rem 2.5rem;
  background: rgba(255, 255, 255, 0.8);
  border: 0.0625rem solid rgba(50, 25, 14, 0.8);
  border-radius: 50%;
}
.bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-ttl {
  align-self: center;
  margin-bottom: 1.25rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: calc(30/16);
  text-align: center;
}
.bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-ttl-deco {
  font-size: 1.25rem;
  line-height: calc(30/20);
  color: var(--color-accent);
}
.bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-txt {
  font-size: 0.875rem;
  line-height: calc(26/14);
  text-align: center;
}
.bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-btn {
  margin-left: 29.4375rem;
}
.bl-feature-item:nth-of-type(3) {
  padding: 4rem 16.5rem;
}
.bl-feature-item:nth-of-type(3) .bl-item-ttl {
  margin-bottom: 3rem;
}
.bl-feature-item:nth-of-type(3) .bl-item-column {
  display: flex;
  flex-direction: row-reverse;
  gap: 2.125rem;
  align-items: center;
}
.bl-feature-item:nth-of-type(3) .bl-item-column .bl-column-imgwrapper {
  width: 37.5rem;
}
.bl-feature-item:nth-of-type(3) .bl-item-column .bl-column-txt {
  margin-bottom: 3.5rem;
}
.bl-feature-item:nth-of-type(4) {
  padding: 4rem 16.5rem;
}
.bl-feature-item:nth-of-type(4) .bl-item-ttl {
  margin-bottom: 2.5rem;
}
.bl-feature-item:nth-of-type(4) .bl-item-txt {
  margin-bottom: 3rem;
}
.bl-feature-item:nth-of-type(4) .bl-item-column {
  display: grid;
  grid-template-columns: 36rem 1fr;
  gap: 2.125rem;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-iframe-wrapper {
  position: relative;
  display: flex;
  align-self: start;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-iframe-wrapper::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  content: "";
  border: 1px solid var(--color-gray02);
  transform: translate(-50%, -50%);
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-iframe-wrapper > iframe {
  position: relative;
  z-index: 2;
  width: 100%;
  height: auto;
  aspect-ratio: 16/13.5;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-def {
  display: grid;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-dttl::before {
  background: url("../images/common/icon-car.svg") top center/contain no-repeat;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .bl-ditem-txt {
  margin-top: 1rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: calc(22/18);
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .el-att {
  margin-top: 0.5rem;
  letter-spacing: 0.03em;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .bl-bullet-list {
  margin-top: 1rem;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--train .bl-column-dttl::before {
  background: url("../images/common/icon-train.svg") top center/contain no-repeat;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--train .bl-bullet-item {
  margin-top: 0.5rem;
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dttl {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.5rem;
  align-items: center;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: calc(22/18);
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dttl::before {
  width: 1.875rem;
  height: 1.875rem;
  margin-top: 0.125rem;
  content: "";
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-address .bl-column-ttl {
  margin-bottom: 0.5rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: calc(22/18);
}
.bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-address .bl-bullet-item-inner a {
  color: var(--color-accent);
  text-decoration: underline;
}
.bl-feature-item .bl-item-ttl {
  text-align: center;
}
.bl-feature-item .bl-item-ttl-deco {
  display: block;
  margin-bottom: 1rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: calc(20/14);
  color: var(--color-accent);
}
.bl-feature-item .bl-item-ttl-deco-num {
  font-size: 1.25rem;
  line-height: 1;
}
.bl-feature-item .bl-item-ttl-underline {
  display: inline-block;
  padding-bottom: 0.5625rem;
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1;
  border-bottom: 0.0625rem solid;
}
.bl-feature-item .bl-item-txt {
  text-align: center;
}

@media screen and (min-width: 751px) {
  .ly-feature {
    padding: min(calc(128 / 1808 * 100vw), 128px) 0;
  }
  .bl-feature {
    width: min(calc(1808 / 1808 * 100vw), 1808px);
  }
  .bl-feature-ttl {
    margin-bottom: min(calc(48 / 1808 * 100vw), 48px);
    font-size: min(calc(40 / 1808 * 100vw), 40px);
  }
  .bl-feature-ttl-deco {
    margin-bottom: min(calc(16 / 1808 * 100vw), 16px);
    font-size: min(calc(20 / 1808 * 100vw), 20px);
  }
  .bl-feature-list {
    gap: min(calc(56 / 1808 * 100vw), 56px);
  }
  .bl-feature-item:first-of-type {
    padding: min(calc(64 / 1808 * 100vw), 64px) min(calc(242 / 1808 * 100vw), 242px);
  }
  .bl-feature-item:first-of-type .c-map {
    grid-template-columns: min(calc(678 / 1808 * 100vw), 678px) 1fr;
    gap: min(calc(64 / 1808 * 100vw), 64px);
    padding-left: 0;
    margin-bottom: min(calc(64 / 1808 * 100vw), 64px);
  }
  .bl-feature-item:first-of-type .c-map-list {
    gap: min(calc(8 / 1808 * 100vw), 8px) min(calc(40 / 1808 * 100vw), 40px);
  }
  .bl-feature-item:first-of-type .c-map-item-link {
    gap: min(calc(7 / 1808 * 100vw), 7px);
    font-size: min(calc(17 / 1808 * 100vw), 17px);
  }
  .bl-feature-item:first-of-type .c-map-item-num {
    width: min(calc(22 / 1808 * 100vw), 22px);
    height: min(calc(22 / 1808 * 100vw), 22px);
    padding: 0 0 min(calc(2 / 1808 * 100vw), 2px) min(calc(1 / 1808 * 100vw), 1px);
    font-size: min(calc(14 / 1808 * 100vw), 14px);
  }
  .bl-feature-item:first-of-type .bl-item-ttl {
    margin-bottom: min(calc(40 / 1808 * 100vw), 40px);
  }
  .bl-feature-item:first-of-type .bl-item-txt {
    margin-bottom: min(calc(64 / 1808 * 100vw), 64px);
  }
  .bl-feature-item:first-of-type .bl-item-conts {
    gap: min(calc(40 / 1808 * 100vw), 40px);
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-imgwrapper {
    margin-bottom: min(calc(20 / 1808 * 100vw), 20px);
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-ttl {
    font-size: min(calc(28 / 1808 * 100vw), 28px);
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-ttl::before {
    bottom: min(calc(9 / 1808 * 100vw), 9px);
    height: min(calc(10 / 1808 * 100vw), 10px);
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-btn {
    padding: min(calc(11 / 1808 * 100vw), 11px) min(calc(36 / 1808 * 100vw), 36px) min(calc(13 / 1808 * 100vw), 13px);
    margin-top: min(calc(40 / 1808 * 100vw), 40px);
    font-size: min(calc(14 / 1808 * 100vw), 14px);
    border: min(calc(1 / 1808 * 100vw), 1px) solid var(--color-black02);
  }
  .bl-feature-item:nth-of-type(2) {
    padding: min(calc(64 / 1808 * 100vw), 64px) 0 min(calc(64 / 1808 * 100vw), 64px) min(calc(112 / 1808 * 100vw), 112px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-ttl {
    padding-right: min(calc(64 / 1808 * 100vw), 64px);
    margin-bottom: min(calc(40 / 1808 * 100vw), 40px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-txt {
    padding-right: min(calc(64 / 1808 * 100vw), 64px);
    margin-bottom: min(calc(48 / 1808 * 100vw), 48px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box {
    padding: min(calc(128 / 1808 * 100vw), 128px) 0 min(calc(19 / 1808 * 100vw), 19px) min(calc(128 / 1808 * 100vw), 128px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-ttl {
    margin-bottom: min(calc(123 / 1808 * 100vw), 123px);
    font-size: min(calc(36 / 1808 * 100vw), 36px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-list {
    gap: min(calc(16 / 1808 * 100vw), 16px);
    margin: 0 0 min(calc(56 / 1808 * 100vw), 56px) min(calc(98 / 1808 * 100vw), 98px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item {
    width: min(calc(340 / 1808 * 100vw), 340px);
    padding: min(calc(61 / 1808 * 100vw), 61px) min(calc(24 / 1808 * 100vw), 24px) min(calc(40 / 1808 * 100vw), 40px);
    border: min(calc(1 / 1808 * 100vw), 1px) solid rgba(50, 25, 14, 0.8);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-ttl {
    margin-bottom: min(calc(20 / 1808 * 100vw), 20px);
    font-size: min(calc(16 / 1808 * 100vw), 16px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-ttl-deco {
    font-size: min(calc(20 / 1808 * 100vw), 20px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-txt {
    font-size: min(calc(14 / 1808 * 100vw), 14px);
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-btn {
    margin-left: min(calc(471 / 1808 * 100vw), 471px);
  }
  .bl-feature-item:nth-of-type(3) {
    padding: min(calc(64 / 1808 * 100vw), 64px) min(calc(264 / 1808 * 100vw), 264px);
  }
  .bl-feature-item:nth-of-type(3) .bl-item-ttl {
    margin-bottom: min(calc(48 / 1808 * 100vw), 48px);
  }
  .bl-feature-item:nth-of-type(3) .bl-item-column {
    gap: min(calc(34 / 1808 * 100vw), 34px);
  }
  .bl-feature-item:nth-of-type(3) .bl-item-column .bl-column-imgwrapper {
    width: min(calc(600 / 1808 * 100vw), 600px);
  }
  .bl-feature-item:nth-of-type(3) .bl-item-column .bl-column-txt {
    margin-bottom: min(calc(56 / 1808 * 100vw), 56px);
  }
  .bl-feature-item:nth-of-type(4) {
    padding: min(calc(64 / 1808 * 100vw), 64px) min(calc(264 / 1808 * 100vw), 264px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-ttl {
    margin-bottom: min(calc(40 / 1808 * 100vw), 40px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-txt {
    margin-bottom: min(calc(48 / 1808 * 100vw), 48px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column {
    grid-template-columns: min(calc(576 / 1808 * 100vw), 576px) 1fr;
    gap: min(calc(34 / 1808 * 100vw), 34px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-def {
    gap: min(calc(24 / 1808 * 100vw), 24px);
    margin-bottom: min(calc(24 / 1808 * 100vw), 24px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .bl-ditem-txt {
    margin-top: min(calc(16 / 1808 * 100vw), 16px);
    font-size: min(calc(18 / 1808 * 100vw), 18px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .el-att {
    margin-top: min(calc(8 / 1808 * 100vw), 8px);
    font-size: min(calc(14 / 1808 * 100vw), 14px);
    letter-spacing: 0;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .bl-bullet-list {
    margin-top: min(calc(16 / 1808 * 100vw), 16px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--train .bl-bullet-item {
    margin-top: min(calc(8 / 1808 * 100vw), 8px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dttl {
    gap: min(calc(8 / 1808 * 100vw), 8px);
    font-size: min(calc(18 / 1808 * 100vw), 18px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dttl::before {
    width: min(calc(30 / 1808 * 100vw), 30px);
    height: min(calc(30 / 1808 * 100vw), 30px);
    margin-top: min(calc(2 / 1808 * 100vw), 2px);
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-address .bl-column-ttl {
    margin-bottom: min(calc(8 / 1808 * 100vw), 8px);
    font-size: min(calc(18 / 1808 * 100vw), 18px);
  }
  .bl-feature-item .bl-item-ttl-deco {
    margin-bottom: min(calc(16 / 1808 * 100vw), 16px);
    font-size: min(calc(14 / 1808 * 100vw), 14px);
  }
  .bl-feature-item .bl-item-ttl-deco-num {
    font-size: min(calc(20 / 1808 * 100vw), 20px);
  }
  .bl-feature-item .bl-item-ttl-underline {
    padding-bottom: min(calc(9 / 1808 * 100vw), 9px);
    font-size: min(calc(28 / 1808 * 100vw), 28px);
    border-bottom: min(calc(1 / 1808 * 100vw), 1px) solid;
  }
  .bl-feature .c-btn.--normal {
    width: min(calc(310 / 1808 * 100vw), 310px);
    padding: min(calc(17 / 1808 * 100vw), 17px) 0 min(calc(19 / 1808 * 100vw), 19px);
    font-size: min(calc(16 / 1808 * 100vw), 16px);
  }
}
@media screen and (max-width: 750px) {
  .bl-feature {
    width: 100%;
  }
  .bl-feature-ttl {
    margin-bottom: 4rem;
    font-size: 3rem;
  }
  .bl-feature-ttl-deco {
    margin-bottom: 1.5rem;
    font-size: 1.875rem;
  }
  .bl-feature-list {
    gap: 4rem;
  }
  .bl-feature-item:first-of-type {
    padding: 6rem 2.5rem;
  }
  .bl-feature-item:first-of-type .bl-item-ttl {
    margin-bottom: 3rem;
  }
  .bl-feature-item:first-of-type .bl-item-cont {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    gap: 0;
  }
  .bl-feature-item:first-of-type .bl-item-conts {
    grid-template-columns: auto;
    gap: 3.5rem;
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-imgwrapper {
    margin-bottom: 1.875rem;
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-ttl {
    font-size: 2.25rem;
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-ttl::before {
    bottom: 0.84375rem;
    height: 0.9375rem;
  }
  .bl-feature-item:first-of-type .bl-item-cont .bl-cont-btn {
    padding: 1.03125rem 2.25rem 1.21875rem;
    margin-top: 3.5rem;
    font-size: 1.5rem;
    border-width: 0.125rem;
  }
  .bl-feature-item:first-of-type .c-map-item-link {
    font-size: 1.375rem;
  }
  .bl-feature-item:nth-of-type(2) {
    padding: 6rem 0 0;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-txt {
    padding: 0 2.5rem;
    padding-left: 2.5rem;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box {
    padding: 6rem 0;
    background: url("../images/guide/feature02-bg-sp.webp") top center/cover no-repeat;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-ttl {
    margin: 0 0 2rem 4rem;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-list {
    grid-template-columns: auto;
    gap: 1.5rem;
    margin: 0 1.875rem 4rem 3.75rem;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item {
    grid-template-rows: auto;
    grid-row: auto;
    place-content: center;
    width: 33.125rem;
    height: 33.125rem;
    padding: 0 2.875rem;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item:nth-of-type(odd) {
    margin-left: 4.125rem;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-ttl {
    margin-bottom: 1rem;
    font-size: 1.5rem;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-ttl-deco {
    font-size: 2rem;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-item-txt {
    font-size: 1.5rem;
    line-height: calc(38.4/24);
    letter-spacing: 0.03em;
  }
  .bl-feature-item:nth-of-type(2) .bl-item-box .bl-box-btn {
    margin: 0 auto;
  }
  .bl-feature-item:nth-of-type(3) {
    padding: 6rem 2.5rem;
  }
  .bl-feature-item:nth-of-type(3) .bl-item-ttl {
    margin-bottom: 3.5rem;
  }
  .bl-feature-item:nth-of-type(3) .bl-item-column {
    flex-direction: column;
    gap: 3rem;
  }
  .bl-feature-item:nth-of-type(3) .bl-item-column .bl-column-imgwrapper {
    width: 100%;
  }
  .bl-feature-item:nth-of-type(4) {
    padding: 6rem 2.5rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column {
    grid-template-columns: auto;
    gap: 3rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-def {
    gap: 2.25rem;
    margin-bottom: 2.25rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .bl-ditem-txt {
    margin-top: 1.5rem;
    font-size: 1.875rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .el-att {
    margin-top: 0.75rem;
    letter-spacing: 0.04em;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--car .bl-column-ditem .bl-bullet-list {
    margin-top: 1.5rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dwrap.--train .bl-bullet-item {
    margin-top: 0.75rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dttl {
    gap: 0.75rem;
    font-size: 1.875rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-dttl::before {
    width: 2.8125rem;
    height: 2.8125rem;
    margin-top: 0.1875rem;
  }
  .bl-feature-item:nth-of-type(4) .bl-item-column .bl-column-address .bl-column-ttl {
    margin-bottom: 0.75rem;
    font-size: 1.875rem;
  }
  .bl-feature-item .bl-item-ttl-deco {
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
  }
  .bl-feature-item .bl-item-ttl-deco-num {
    font-size: 1.875rem;
  }
  .bl-feature-item .bl-item-ttl-underline {
    padding-bottom: 0;
    font-size: 2.5rem;
    line-height: 1.3;
    border-bottom: none;
  }
  .bl-feature-item .bl-item-txt {
    text-align: left;
  }
}
/* =======================================================
course
======================================================= */
.ly-course {
  padding: 8rem 0;
}

.bl-course-intro {
  margin-bottom: 1.5rem;
  text-align: center;
}
.bl-course-intro-lbl {
  display: block;
  margin-bottom: 1rem;
}
.bl-course-intro-lbl-inner {
  display: inline-block;
  padding: 0.375rem 0.875rem 0.4375rem;
  font-weight: 700;
  color: var(--color-white);
  background: var(--color-main);
}
.bl-course-ttl {
  margin-bottom: 3rem;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.08em;
}
.bl-course-list {
  display: grid;
  gap: 2.5rem;
  width: 75rem;
  margin: 0 auto;
}
.bl-course-item {
  display: grid;
  grid-template-columns: 33.125rem 1fr;
  gap: 2.5rem;
  padding: 2.5rem;
  background: var(--color-contrast);
}
.bl-course-item .bl-item-ttl {
  display: inline-grid;
  margin-bottom: 1rem;
  font-size: 1.5rem;
  line-height: calc(32/24);
}
.bl-course-item .bl-item-ttl-lbl {
  justify-self: start;
  padding: 0.6875rem 0.5rem 0.8125rem;
  margin-bottom: 1rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  color: var(--color-white);
  background: var(--color-main);
}

@media screen and (max-width: 750px) {
  .bl-course-intro {
    margin-bottom: 3rem;
  }
  .bl-course-intro-lbl {
    margin-bottom: 1.5rem;
  }
  .bl-course-intro-lbl-inner {
    padding: 0.5625rem 1.3125rem 0.65625rem;
  }
  .bl-course-ttl {
    margin-bottom: 4rem;
    font-size: 3rem;
  }
  .bl-course-list {
    gap: 3rem;
    width: 100%;
  }
  .bl-course-item {
    grid-template-columns: auto;
    gap: 1.5rem;
  }
  .bl-course-item .bl-item-ttl {
    margin-bottom: 1.5rem;
    font-size: 2rem;
  }
  .bl-course-item .bl-item-ttl-lbl {
    padding: 1.03125rem 0.75rem 1.21875rem;
    margin-bottom: 1.5rem;
    font-size: 1.625rem;
  }
}
/* =======================================================
service
======================================================= */
.ly-service {
  padding: 8rem 0;
  background: var(--color-contrast);
}

.bl-service {
  width: 77.5rem;
}
.bl-service-ttl {
  margin-bottom: 2rem;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: calc(48/40);
  text-align: center;
  letter-spacing: 0.08em;
}
.bl-service-intro {
  margin-bottom: 3.5rem;
  text-align: center;
}
.bl-service-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
  margin-bottom: 6rem;
}
.bl-service-item .bl-item-imgwrapper {
  margin-bottom: 2rem;
  overflow: hidden;
  border-radius: 50%;
}
.bl-service-item .bl-item-ttl {
  margin-bottom: 1.5rem;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.bl-service-item .bl-item-txt {
  text-align: center;
}
.bl-service-box:not(:first-of-type) {
  margin-top: 40px;
}

@media screen and (max-width: 750px) {
  .bl-service {
    width: 100%;
  }
  .bl-service-ttl {
    margin-bottom: 3rem;
    font-size: 3rem;
  }
  .bl-service-intro {
    margin-bottom: 4rem;
    text-align: left;
  }
  .bl-service-list {
    grid-template-columns: auto;
    gap: 2.5rem;
    justify-content: center;
  }
  .bl-service-item .bl-item-imgwrapper {
    width: 25rem;
    margin: 0 auto 2rem;
  }
  .bl-service-item .bl-item-ttl {
    margin-bottom: 2rem;
    font-size: 2.5rem;
  }
  .bl-service-useful {
    width: 39.375rem;
  }
}