#top-page {
  padding-top: 180px;
  background: var(--color-bg) url(../images/common/bg.png) center;
}
@media screen and (max-width: 600px) {
  #top-page {
    padding-top: 108px;
  }
}
#top-page .top_inner {
  width: min(90%, 1152px);
  margin: 0 auto;
}
#top-page .top_heading {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#top-page .top_heading .en {
  margin-bottom: 48px;
  color: var(--color-grn);
  font-size: 28px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .top_heading .en {
    margin-bottom: 24px;
    font-size: 24px;
  }
}
#top-page .top_heading .ja {
  color: var(--color-grn);
  font-size: 36px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .top_heading .ja {
    font-size: 24px;
  }
}
#top-page .top_heading::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 19px;
  margin-bottom: 13px;
  background-image: url(../images/top/top_heading_icon.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
#top-page .top_heading._center {
  text-align: center;
}
#top-page .mv {
  position: relative;
  margin-bottom: 171px;
}
@media screen and (max-width: 600px) {
  #top-page .mv {
    margin-bottom: 0;
  }
}
#top-page .mv h2 {
  font-size: 33px;
  font-weight: 300;
  line-height: 160%;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 600px) {
  #top-page .mv h2 {
    font-size: 20px;
    line-height: 187%;
  }
}
#top-page .mv h2 br._pc_none {
  display: none;
}
@media screen and (max-width: 600px) {
  #top-page .mv h2 br._pc_none {
    display: inline;
  }
}
#top-page .mv .splide {
  margin-top: 28px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide {
    margin-top: 33px;
  }
}
#top-page .mv .splide__slide {
  position: relative;
}
#top-page .mv .splide__slide span {
  display: inline-block;
  position: absolute;
  z-index: 1;
  padding: 12px 21px 14px;
  background-color: var(--color-wht);
  border-radius: 100vh;
  color: var(--color-grn);
  font-size: 18px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide span {
    padding: 7px 17px 8px;
    font-size: 16px;
  }
}
#top-page .mv .splide__slide span::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 23px;
  height: 17px;
  background-image: url(../images/common/fukidashi_wht.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide span::before {
    width: 16px;
    height: 12px;
  }
}
#top-page .mv .splide__slide span._vertical {
  padding: 26px 14px;
  letter-spacing: 0.1em;
  writing-mode: vertical-rl;
  text-orientation: upright;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide span._vertical {
    padding: 13px 7px;
  }
}
#top-page .mv .splide__slide span._grn {
  background-color: var(--color-grn);
  color: var(--color-wht);
}
#top-page .mv .splide__slide span._grn::before {
  background-image: url(../images/common/fukidashi_grn.svg);
}
#top-page .mv .splide__slide._01 {
  width: 468px;
  height: 469px;
  margin-right: 49px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._01 {
    width: 334px;
    height: 334px;
    margin-right: 28px;
  }
}
#top-page .mv .splide__slide._01 img {
  clip-path: path("M147.691 30.2301C182.552 9.54754 225.469 -0.402195 267.207 0.828735C308.294 2.04054 348.199 14.0852 378.134 37.3424L379.551 38.4586H379.552C472.229 112.261 483.919 247.97 450.307 347.812L449.505 350.165C427.693 413.234 370.146 457.303 272.692 467.118L270.384 467.343C190.597 474.881 126.679 451.014 75.291 410.8L74.0801 409.847C25.1132 371.084 0.601476 325.381 0.5 265.921C3.85688 231.979 19.4386 185.634 44.8037 141.472C69.777 97.9927 104.203 56.6825 145.71 31.4205L147.691 30.2301Z");
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._01 img {
    clip-path: path("M0.747925 190.209C5.54611 141.629 45.3236 57.6712 105.982 21.6975C155.875 -7.90376 228.782 -6.7616 271.877 27.5984C338.709 80.8189 346.641 178.98 321.921 250.476C306.173 296.013 264.425 327.67 193.769 334.351C136.273 339.783 90.2917 322.402 53.4015 293.238C18.371 265.507 0.814876 232.782 0.747925 190.209Z");
  }
}
#top-page .mv .splide__slide._01 span:nth-of-type(1) {
  top: 53px;
  right: -15px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._01 span:nth-of-type(1) {
    top: 35px;
    right: -15px;
  }
}
#top-page .mv .splide__slide._01 span:nth-of-type(1)::before {
  top: 35px;
  left: 36px;
  transform: rotate(90deg) scale(-1, 1);
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._01 span:nth-of-type(1)::before {
    top: 29px;
    left: 28px;
  }
}
#top-page .mv .splide__slide._01 span:nth-of-type(2) {
  top: 274px;
  right: 2px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._01 span:nth-of-type(2) {
    top: 196px;
    right: -14px;
  }
}
#top-page .mv .splide__slide._01 span:nth-of-type(2)::before {
  top: -9px;
  left: 18px;
  transform: rotate(-90deg) scale(-1, 1);
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._01 span:nth-of-type(2)::before {
    top: -8px;
    left: 14px;
  }
}
#top-page .mv .splide__slide._02 {
  width: 407px;
  height: 445px;
  margin-top: 18px;
  margin-right: 48px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._02 {
    width: 290px;
    height: 317px;
    margin-right: 24px;
  }
}
#top-page .mv .splide__slide._02 img {
  clip-path: path("M276.709 20.7625C246.049 0.814144 207.2 -3.16567 169.344 3.66579C132.08 10.3903 95.8333 27.5818 69.4043 50.2439L68.1533 51.3269C-13.4804 122.617 -9.91201 219.986 19.9395 315.991L20.6494 318.259C30.3533 349.03 45.617 377.993 69.3116 400.387C92.6299 422.427 124.14 438.131 166.624 442.92L168.655 443.139C238.375 450.363 294.341 427.73 339.429 389.432L341.567 387.597C384.706 350.148 406.31 305.982 406.398 248.51C403.44 215.706 389.708 170.92 367.357 128.247C345.351 86.2295 315.019 46.317 278.455 21.9129L276.709 20.7625Z");
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._02 img {
    clip-path: path("M290.441 177.348C286.213 130.403 251.162 49.2716 197.712 14.509C153.748 -14.0956 86.3987 3.15183 48.4253 36.3551C-10.4654 87.7838 -7.36885 158.167 14.4136 227.255C28.2907 271.259 58.0969 310.181 120.357 316.637C171.021 321.886 211.538 305.09 244.044 276.908C274.912 250.111 290.382 218.487 290.441 177.348Z");
  }
}
#top-page .mv .splide__slide._02 span:nth-of-type(1) {
  bottom: 59px;
  left: 58px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._02 span:nth-of-type(1) {
    bottom: 28px;
    left: 53px;
  }
}
#top-page .mv .splide__slide._02 span:nth-of-type(1)::before {
  top: -7px;
  left: 8px;
  transform: rotate(-90deg) scale(-1, 1);
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._02 span:nth-of-type(1)::before {
    top: -6px;
    left: 8px;
  }
}
#top-page .mv .splide__slide._02 span:nth-of-type(2) {
  top: 136px;
  right: -8px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._02 span:nth-of-type(2) {
    top: 98px;
    right: -3px;
  }
}
#top-page .mv .splide__slide._02 span:nth-of-type(2)::before {
  top: 43px;
  left: -12px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._02 span:nth-of-type(2)::before {
    top: 21px;
    left: -9px;
  }
}
#top-page .mv .splide__slide._03 {
  width: 454px;
  height: 475px;
  margin-top: 15px;
  margin-right: 86px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._03 {
    width: 324px;
    height: 339px;
    margin-right: 34px;
  }
}
#top-page .mv .splide__slide._03 img {
  clip-path: path("M143.289 30.6031C210.418 -10.9765 308.255 -9.68517 366.804 37.8053L368.18 38.9362C458.086 113.683 469.43 251.138 436.82 352.267L436.042 354.649C414.88 418.533 359.054 463.159 264.531 473.097L262.291 473.326C184.293 481.019 121.929 456.407 71.8809 415.099H71.8818C24.3816 375.842 0.597767 329.55 0.5 269.317C3.75688 234.937 18.8737 187.996 43.4805 143.268C67.7079 99.2303 101.105 57.3926 141.367 31.8092L143.289 30.6031Z");
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._03 img {
    clip-path: path("M0.596375 192.342C5.25102 143.14 43.8386 58.1077 102.682 21.6738C151.083 -8.30612 221.809 -7.14934 263.615 27.6503C328.448 81.5516 336.142 180.969 312.162 253.379C296.885 299.499 256.386 331.561 187.843 338.327C132.067 343.829 87.4615 326.226 51.6748 296.688C17.6923 268.603 0.661323 235.458 0.596375 192.342Z");
  }
}
#top-page .mv .splide__slide._03 span:nth-of-type(1) {
  top: 38px;
  left: -35px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._03 span:nth-of-type(1) {
    top: 22px;
    left: 0;
  }
}
#top-page .mv .splide__slide._03 span:nth-of-type(1)::before {
  bottom: -7px;
  left: 94px;
  transform: rotate(90deg) scale(-1, 1);
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._03 span:nth-of-type(1)::before {
    bottom: -6px;
    left: 72px;
  }
}
#top-page .mv .splide__slide._03 span:nth-of-type(2) {
  top: 26px;
  right: -120px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._03 span:nth-of-type(2) {
    top: 10px;
    right: -90px;
  }
}
#top-page .mv .splide__slide._03 span:nth-of-type(2)::before {
  top: 35px;
  left: 17px;
  transform: rotate(-90deg);
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._03 span:nth-of-type(2)::before {
    top: 27px;
    left: 17px;
  }
}
#top-page .mv .splide__slide._04 {
  width: 387px;
  height: 430px;
  margin-top: 15px;
  margin-right: 49px;
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._04 {
    width: 283px;
    height: 310px;
    margin-right: 28px;
  }
}
#top-page .mv .splide__slide._04 img {
  clip-path: path("M56.3404 377.4C78.4379 405.38 113.076 421.166 150.169 426.658C186.681 432.064 225.518 427.485 256.991 414.793L258.485 414.183C356.103 373.789 383.161 282.75 385.519 184.771L385.57 182.455C386.2 151.01 381.131 119.503 366.228 91.4336C351.563 63.8105 327.357 39.4838 289.613 21.8171L287.805 20.9811C224.677 -7.87529 165.056 -3.84977 110.791 18.3769L110.79 18.3766C59.274 39.5168 25.554 73.5718 7.55656 126.624C0.0636195 157.843 -1.21542 203.488 6.12435 249.869C13.3514 295.537 28.9243 341.856 55.0862 375.793L56.3404 377.4Z");
}
@media screen and (max-width: 600px) {
  #top-page .mv .splide__slide._04 img {
    clip-path: path("M283.608 172.985C279.486 127.222 245.317 48.1325 193.213 14.2448C150.354 -13.64 84.7003 3.1734 47.6824 35.541C-9.72614 85.6755 -6.70753 154.287 14.5267 221.637C28.0546 264.534 57.1106 302.475 117.804 308.769C167.193 313.886 206.69 297.513 238.378 270.04C268.469 243.917 283.55 213.089 283.608 172.985Z");
  }
}
#top-page .mv .splide__slide img {
  width: 100%;
  object-fit: cover;
}
#top-page .mvNews {
  display: flex;
  align-items: center;
  position: absolute;
  bottom: 44px;
  right: 60px;
  width: 576px;
  padding: 23px 35px;
  border-radius: 100vh;
  background-color: var(--color-wht);
}
@media screen and (max-width: 600px) {
  #top-page .mvNews {
    bottom: 0;
    right: 0;
    width: calc(100% - 36px);
    padding: 24px 18px;
    border-radius: 100vh 0 0 100vh;
    box-sizing: border-box;
  }
}
#top-page .mvNews_heading {
  padding-right: 16px;
  border-right: solid 1px var(--color-gry);
  color: var(--color-grn);
  font-size: 24px;
  font-weight: 700;
  line-height: 100%;
}
@media screen and (max-width: 600px) {
  #top-page .mvNews_heading {
    font-size: 16px;
  }
}
#top-page .mvNews_title {
  flex: 1;
  width: 100%;
  margin-left: 16px;
  color: var(--color-blk);
  font-size: 16px;
  line-height: 100%;
}
@media screen and (max-width: 600px) {
  #top-page .mvNews_title {
    font-size: 15px;
    line-height: 120%;
  }
}
#top-page .mvNews_link {
  display: inline-block;
  margin-left: auto;
  color: var(--color-grn);
  font-size: 16px;
  line-height: 100%;
}
@media screen and (max-width: 600px) {
  #top-page .mvNews_link {
    display: none;
  }
}
@media screen and (max-width: 600px) {
  #top-page .about {
    position: relative;
    padding-bottom: 186px;
  }
}
@media screen and (max-width: 600px) {
  #top-page .about::before, #top-page .about::after {
    content: "";
    display: inline-block;
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@media screen and (max-width: 600px) {
  #top-page .about::before {
    top: 28px;
    right: 22px;
    transform: rotate(-14.7deg);
    width: 146px;
    height: 102px;
    background-image: url(../images/top/sp_about_foot_01.svg);
  }
}
@media screen and (max-width: 600px) {
  #top-page .about::after {
    bottom: 24px;
    left: -22px;
    width: 211px;
    height: 160px;
    background-image: url(../images/top/sp_about_foot_02.svg);
  }
}
#top-page .about_inner {
  position: relative;
  padding-bottom: 185px;
}
@media screen and (max-width: 600px) {
  #top-page .about_inner {
    overflow: hidden;
    width: 100%;
    padding-top: 144px;
    padding-right: 18px;
    padding-bottom: 210px;
    box-sizing: border-box;
  }
}
#top-page .about_inner::before, #top-page .about_inner::after {
  content: "";
  display: inline-block;
  position: absolute;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 600px) {
  #top-page .about_inner::before, #top-page .about_inner::after {
    display: none;
  }
}
#top-page .about_inner::before {
  top: -48px;
  right: -71px;
  width: 379px;
  height: 194px;
  background-image: url(../images/top/about_foot_01.svg);
}
#top-page .about_inner::after {
  bottom: -171px;
  left: -189px;
  width: 442px;
  height: 315px;
  background-image: url(../images/top/about_foot_02.svg);
}
#top-page .aboutText {
  max-width: 768px;
  padding: 144px 120px 77px;
  border-radius: 216px;
  box-sizing: border-box;
  background-color: var(--color-wht);
}
@media screen and (max-width: 600px) {
  #top-page .aboutText {
    padding: 103px 47px 253px 36px;
    border-radius: 0;
    border-top-right-radius: 216px;
  }
}
#top-page .aboutText h2 {
  display: inline-flex;
  flex-direction: column;
  margin-bottom: 32px;
  color: var(--color-grn);
}
#top-page .aboutText h2 .en {
  margin-bottom: 32px;
  font-size: 24px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .aboutText h2 .en {
    margin-bottom: 24px;
  }
}
#top-page .aboutText h2 .ja {
  font-size: 36px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .aboutText h2 .ja {
    font-size: 24px;
    line-height: 160%;
  }
}
#top-page .aboutText h2 .ja br._pc_none {
  display: none;
}
@media screen and (max-width: 600px) {
  #top-page .aboutText h2 .ja br._pc_none {
    display: inline;
  }
}
#top-page .aboutText p {
  margin-bottom: 20px;
  color: var(--color-grn);
  font-size: 16px;
  letter-spacing: 0.02em;
  line-height: 235%;
}
@media screen and (max-width: 600px) {
  #top-page .aboutText p {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 220%;
  }
}
#top-page .aboutText p br._pc_none {
  display: none;
}
@media screen and (max-width: 600px) {
  #top-page .aboutText p br._pc_none {
    display: inline;
  }
}
@media screen and (max-width: 600px) {
  #top-page .aboutText p br._sp_none {
    display: none;
  }
}
#top-page .aboutText .logo {
  display: inline-block;
  width: 100%;
  padding-right: 34px;
  text-align: right;
  box-sizing: border-box;
}
@media screen and (max-width: 600px) {
  #top-page .aboutText .logo {
    display: none;
  }
}
#top-page .aboutText .logo img {
  width: 120px;
}
#top-page .aboutImage {
  position: absolute;
  right: -70px;
  bottom: 0;
  width: 544px;
  height: 571px;
}
@media screen and (max-width: 600px) {
  #top-page .aboutImage {
    right: auto;
    left: 30px;
    width: 411px;
    height: 432px;
  }
}
#top-page .aboutImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  clip-path: path("M171.818 36.4688C252.366 -13.5876 369.764 -12.0387 440.028 45.1426L441.68 46.5039C549.563 136.492 563.165 301.959 524.043 423.682L523.108 426.549C497.71 503.475 430.71 557.196 317.305 569.159L314.617 569.434C221.764 578.622 147.374 549.529 87.5654 500.504L86.1562 499.342C29.1593 452.081 0.615729 396.342 0.5 323.82C4.4074 282.429 22.5455 225.924 52.0664 172.087C81.3617 118.662 121.836 67.9203 170.663 37.1904L171.818 36.4688Z");
}
@media screen and (max-width: 600px) {
  #top-page .aboutImage img {
    clip-path: path("M0 244.706C5.9037 182.013 54.846 73.6643 129.48 27.2398C190.869 -10.9609 280.574 -9.48696 333.598 34.8551C415.828 103.537 425.588 230.215 395.172 322.481C375.795 381.247 324.429 422.101 237.493 430.723C166.75 437.733 110.175 415.303 64.785 377.666C21.6835 341.879 0.0823772 299.646 0 244.706Z");
  }
}
#top-page .feature {
  overflow: hidden;
  position: relative;
  padding: 144px 0;
}
@media screen and (max-width: 600px) {
  #top-page .feature {
    padding-top: 0;
    padding-bottom: 201px;
  }
}
#top-page .feature::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 42px;
  right: calc(50% - 805px);
  transform: translate(50%, 0);
  width: 345px;
  height: 274px;
  background-image: url(../images/top/top_feature_deco.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 600px) {
  #top-page .feature::before {
    display: none;
  }
}
#top-page .featureList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 64px 36px;
  position: relative;
  margin-top: 107px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 62px;
  }
}
#top-page .featureList::before {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: -27px;
  right: -63px;
  width: 373px;
  height: 193px;
  background-image: url(../images/top/top_feature_foot.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 600px) {
  #top-page .featureList::before {
    display: none;
  }
}
#top-page .featureList .item {
  position: relative;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item {
    margin-bottom: 24px;
  }
}
#top-page .featureList .item .image {
  overflow: hidden;
  border-radius: 120px;
}
#top-page .featureList .item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
#top-page .featureList .item .fukidashi {
  position: absolute;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(1) {
    margin-bottom: 64px;
  }
}
#top-page .featureList .item:nth-of-type(1) .fukidashi {
  bottom: -16px;
  right: -22px;
  width: 267px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(1) .fukidashi {
    bottom: -9px;
    right: -1px;
    width: 226px;
  }
}
#top-page .featureList .item:nth-of-type(2) .fukidashi {
  top: -33px;
  right: -21px;
  width: 299px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(2) .fukidashi {
    top: -30;
    right: -3px;
    width: 258px;
  }
}
#top-page .featureList .item:nth-of-type(3) .fukidashi {
  bottom: -41px;
  right: 21px;
  width: 54px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(3) .fukidashi {
    bottom: -25px;
    right: 19px;
    width: 60px;
  }
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(4) {
    margin-bottom: 55px;
  }
}
#top-page .featureList .item:nth-of-type(4) .fukidashi {
  bottom: -16px;
  right: -23px;
  width: 336px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(4) .fukidashi {
    bottom: -13px;
    right: -1px;
    width: 287px;
  }
}
#top-page .featureList .item:nth-of-type(5) .fukidashi {
  top: -23px;
  right: -31px;
  width: 336px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(5) .fukidashi {
    top: -21px;
    right: -8px;
    width: 287px;
  }
}
#top-page .featureList .item:nth-of-type(6) .fukidashi {
  bottom: -23px;
  left: 25px;
  width: 54px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(6) .fukidashi {
    bottom: 0;
    right: auto;
    left: 23px;
    width: 60px;
  }
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(7) {
    margin-bottom: 45px;
  }
}
#top-page .featureList .item:nth-of-type(7) .fukidashi {
  bottom: 24px;
  right: -10px;
  width: 207px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(7) .fukidashi {
    bottom: 24px;
    right: -4px;
    width: 164px;
  }
}
#top-page .featureList .item:nth-of-type(8) .fukidashi {
  top: -24px;
  right: -15px;
  width: 281px;
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:nth-of-type(8) .fukidashi {
    top: -22px;
    bottom: auto;
    right: auto;
    left: -14px;
    width: 241px;
  }
}
@media screen and (max-width: 600px) {
  #top-page .featureList .item:last-of-type {
    margin-bottom: 0;
  }
}
#top-page .plan {
  position: relative;
  padding: 147px 0 90px;
  background-image: url(../images/common/bg_color_sub.png);
  background-position: center;
}
@media screen and (max-width: 600px) {
  #top-page .plan {
    padding: 0 0 145px;
    background: transparent;
  }
}
#top-page .plan .text {
  margin-top: 48px;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 600px) {
  #top-page .plan .text {
    margin-top: 24px;
  }
}
#top-page .planList {
  margin-top: 64px;
  margin-bottom: 31px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 9px 24px;
}
@media screen and (max-width: 600px) {
  #top-page .planList {
    grid-template-columns: 1fr;
    gap: 11px;
    margin-bottom: 24px;
  }
}
#top-page .plan .noto {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.02em;
  text-align: right;
}
@media screen and (max-width: 600px) {
  #top-page .plan .noto {
    margin-bottom: 12px;
  }
}
#top-page .plan::before, #top-page .plan::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: -6px;
  left: 0;
  width: 100%;
  height: 6px;
  background-image: url(../images/common/boundary-line.svg);
}
#top-page .cafe {
  padding: 144px 0 151px;
}
@media screen and (max-width: 600px) {
  #top-page .cafe {
    padding: 0 0 96px;
  }
}
@media screen and (max-width: 600px) {
  #top-page .cafe_inner {
    width: 100%;
  }
}
#top-page .cafeMenu {
  margin-top: 72px;
  margin-bottom: 120px;
  padding: 108px 96px;
  border-radius: 216px;
  background-color: var(--color-wht);
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu {
    margin-top: 62px;
    margin-bottom: 64px;
    padding: 48px 36px 66px;
    border-radius: 108px 108px 64px 64px;
  }
}
#top-page .cafeMenu .content {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  margin-bottom: 64px;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content {
    flex-direction: column-reverse;
    margin-bottom: 38px;
  }
}
#top-page .cafeMenu .content .text {
  flex: 1;
}
#top-page .cafeMenu .content .text h3 {
  margin-bottom: 12px;
  font-size: 24px;
  line-height: 140%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .text h3 {
    font-size: 20px;
  }
}
#top-page .cafeMenu .content .text p {
  margin-bottom: 18px;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .text p {
    font-size: 15px;
  }
}
#top-page .cafeMenu .content .text .menuList {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 44px;
  align-items: center;
  padding: 16px 42px;
  border-radius: 24px;
  background-color: #F1F0EA;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .text .menuList {
    display: block;
    padding: 18px 24px;
  }
}
#top-page .cafeMenu .content .text .menuList h4 {
  color: var(--color-grn);
  font-size: 18px;
  line-height: 100%;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .text .menuList h4 {
    margin-bottom: 12px;
    font-size: 15px;
  }
}
#top-page .cafeMenu .content .text .menuList p {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 200%;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .text .menuList p {
    font-size: 12px;
  }
}
#top-page .cafeMenu .content .image {
  position: relative;
  width: 432px;
  height: 336px;
  margin-right: 72px;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .image {
    width: 100%;
    height: auto;
    margin-right: 0;
    margin-bottom: 24px;
  }
}
#top-page .cafeMenu .content .image img {
  width: 100%;
  height: 100%;
  border-radius: 120px;
  object-fit: cover;
  object-position: center;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .image img {
    border-radius: 96px;
  }
}
#top-page .cafeMenu .content .image p {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 143px;
}
@media screen and (max-width: 600px) {
  #top-page .cafeMenu .content .image p {
    bottom: -22px;
    right: 8px;
    left: auto;
    width: 115px;
  }
}
#top-page .cafeMenu .content:last-of-type {
  margin-bottom: 0;
}
#top-page .cafeOther {
  width: min(81.8%, 864px);
  margin: 0 auto;
}
#top-page .cafeOther .content {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  margin-bottom: 64px;
}
@media screen and (max-width: 600px) {
  #top-page .cafeOther .content {
    flex-direction: column-reverse;
  }
}
#top-page .cafeOther .content .text {
  flex: 1;
}
#top-page .cafeOther .content .text h3 {
  margin-bottom: 12px;
  font-size: 24px;
  line-height: 140%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .cafeOther .content .text h3 {
    margin-bottom: 8px;
    font-size: 22px;
    line-height: 150%;
  }
}
#top-page .cafeOther .content .text p {
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .cafeOther .content .text p {
    font-size: 15px;
    line-height: 175%;
  }
}
#top-page .cafeOther .content .text .menuList {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 44px;
  align-items: center;
  padding: 16px 42px;
  border-radius: 24px;
  background-color: #F1F0EA;
}
#top-page .cafeOther .content .text .menuList h4 {
  color: var(--color-grn);
  font-size: 18px;
  line-height: 100%;
}
#top-page .cafeOther .content .text .menuList p {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 200%;
}
#top-page .cafeOther .content .image {
  position: relative;
  width: 336px;
  aspect-ratio: 1/1;
  margin-right: 101px;
}
@media screen and (max-width: 600px) {
  #top-page .cafeOther .content .image {
    width: 100%;
    margin-right: auto;
    margin-bottom: 36px;
  }
}
#top-page .cafeOther .content .image img {
  width: 100%;
  height: 100%;
  border-radius: 120px;
  object-fit: cover;
  object-position: center;
}
#top-page .cafeOther .content .image p {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 97px;
  height: 102px;
}
@media screen and (max-width: 600px) {
  #top-page .cafeOther .content .image p {
    right: -19px;
  }
}
#top-page .cafeOther .content:last-of-type {
  margin-bottom: 0;
}
#top-page .cafeOther .content:nth-of-type(even) {
  flex-direction: row;
}
#top-page .cafeOther .content:nth-of-type(even) .image {
  margin-right: 0;
  margin-left: 97px;
}
@media screen and (max-width: 600px) {
  #top-page .cafeOther .content:nth-of-type(even) .image {
    margin-left: 0;
  }
}
@media screen and (max-width: 600px) {
  #top-page .cafeOther .content:nth-of-type(even) {
    flex-direction: column-reverse;
  }
}
#top-page .instagram {
  padding: 144px 0 135px;
  background-image: url(../images/common/bg_color_sub.png);
  background-position: center;
}
@media screen and (max-width: 600px) {
  #top-page .instagram {
    padding: 96px 0;
  }
}
#top-page .instagram .text {
  margin-top: 48px;
  margin-bottom: 64px;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 600px) {
  #top-page .instagram .text {
    margin-top: 24px;
    margin-bottom: 36px;
    font-size: 14px;
    line-height: 175%;
  }
}
#top-page .instagram .text br._pc_none {
  display: none;
}
@media screen and (max-width: 600px) {
  #top-page .instagram .text br._pc_none {
    display: inline;
  }
}
#top-page .instagram .button {
  margin-bottom: 48px;
  text-align: center;
}
#top-page .instagram .button a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  width: 274px;
  height: 60px;
  border-radius: 21px;
  background-color: var(--color-wht);
  color: var(--color-grn);
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .instagram .button a {
    width: 324px;
    height: 48px;
    border-radius: 18px;
  }
}
#top-page .instagram .button a img {
  width: 16px;
}
#top-page .instagramList #sbi_images{
  display: flex;
  justify-content: center;
  gap: 30px;
}
@media screen and (max-width: 600px) {
  #top-page .instagramList #sbi_images {
    align-items: center;
    flex-direction: column;
  }
}
#top-page .instagramList #sbi_images .sbi_item {
  overflow: hidden;
  aspect-ratio: 1/1;
  border-radius: 120px;
}
@media screen and (max-width: 600px) {
  #top-page .instagramList #sbi_images .sbi_item {
    width: 240px;
    border-radius: 89px;
  }
}
#top-page .calender {
  padding-top: 144px;
  margin-bottom: 108px;
}
@media screen and (max-width: 600px) {
  #top-page .calender {
    padding-top: 96px;
    margin-bottom: 144px;
  }
}
#top-page .calender .content {
  margin-top: 64px;
  padding: 84px 154px;
  background-color: var(--color-wht);
  border-radius: 120px;
}
@media screen and (max-width: 600px) {
  #top-page .calender .content {
    padding: 0;
    background-color: transparent;
  }
}
#top-page .calender .content .fc-theme-standard td,
#top-page .calender .content .fc-theme-standard th {
  border: none;
}
#top-page .calender .content .fc .fc-toolbar-title {
  color: var(--color-grn);
  font-family: "Caveat", cursive;
  font-size: 28px;
  font-weight: 500;
}
@media screen and (max-width: 600px) {
  #top-page .calender .content .fc .fc-toolbar-title {
    font-size: 18px;
  }
}
#top-page .calender .content .fc .fc-scrollgrid {
  border: none;
}
#top-page .calender .content .fc .fc-scrollgrid-sync-table {
  border: solid 2px #DADADA;
}
@media screen and (max-width: 600px) {
  #top-page .calender .content .fc .fc-scrollgrid-sync-table {
    border-width: 1px;
  }
}
#top-page .calender .content .fc .fc-scrollgrid-sync-table tr {
  border-bottom: solid 1px #DADADA;
}
#top-page .calender .content .fc .fc-scrollgrid-sync-table td {
  max-height: 90px;
  border-right: solid 1px #DADADA;
}
#top-page .calender .content .fc .fc-col-header {
  margin-bottom: 7px;
}
@media screen and (max-width: 600px) {
  #top-page .calender .content .fc .fc-col-header {
    margin-bottom: 4px;
  }
}
#top-page .calender .content .fc .fc-col-header thead tr th {
  border: none;
}
#top-page .calender .content .fc .fc-col-header thead tr th .fc-scrollgrid-sync-inner {
  text-align: center;
  line-height: 0;
}
#top-page .calender .content .fc .fc-col-header thead tr th .fc-scrollgrid-sync-inner a {
  padding: 0;
  color: var(--color-blk);
  font-weight: 500;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .calender .content .fc .fc-col-header thead tr th .fc-scrollgrid-sync-inner a {
    font-size: 7px;
  }
}
@media screen and (max-width: 600px) {
  #top-page .calender .content .fc .fc-view-harness {
    padding: 13px 11px;
    border-radius: 24px;
    background-color: var(--color-wht);
  }
}
#top-page .calender .content .fc .fc-daygrid-day-frame {
  max-height: 90px;
  padding: 12px 10px;
  box-sizing: border-box;
}
@media screen and (max-width: 600px) {
  #top-page .calender .content .fc .fc-daygrid-day-frame {
    max-height: 63px;
    padding: 5px 4px;
  }
}
#top-page .calender .content .fc .fc-daygrid-day-top {
  flex-direction: row;
}
#top-page .calender .content .fc .fc-daygrid-day-top a {
  padding: 0;
  color: var(--color-blk);
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
}
@media screen and (max-width: 600px) {
  #top-page .calender .content .fc .fc-daygrid-day-top a {
    font-size: 6px;
  }
}
#top-page .calender .content .fc .fc-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-color: #D9D9D9;
  background-color: transparent;
}
#top-page .calender .content .fc .fc-button::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 15px;
  background-image: url(../images/top/top_calender_arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
#top-page .calender .content .fc .fc-button .fc-icon {
  display: none;
}
#top-page .calender .content .fc .fc-button.fc-prev-button {
  transform: rotate(180deg);
}
#top-page .access {
  margin-bottom: 80px;
}
#top-page .access_inner {
  position: relative;
  margin-top: 66px;
  padding-bottom: 60px;
}
@media screen and (max-width: 600px) {
  #top-page .access_inner {
    width: 100%;
    padding-bottom: 221px;
  }
}
#top-page .accessText {
  width: 912px;
  padding: 84px 0 62px 156px;
  border-radius: 120px;
  box-sizing: border-box;
  background-color: var(--color-wht);
}
@media screen and (max-width: 600px) {
  #top-page .accessText {
    width: 95.4%;
    padding: 66px 18px 157px 36px;
    border-radius: 0 65px 0 0;
  }
}
#top-page .accessText h3 {
  display: inline-flex;
  flex-direction: column;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
#top-page .accessText h3 img {
  width: 133px;
  margin-top: 18px;
}
#top-page .accessText .info {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px 18px;
  width: 428px;
  margin-top: 48px;
  margin-bottom: 36px;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  #top-page .accessText .info {
    align-items: center;
    width: 100%;
  }
}
#top-page .accessText .info dt {
  color: var(--color-grn);
}
@media screen and (max-width: 600px) {
  #top-page .accessText .info dd {
    line-height: 160%;
  }
}
#top-page .accessText .info dd br._pc_none {
  display: none;
}
@media screen and (max-width: 600px) {
  #top-page .accessText .info dd br._pc_none {
    display: inline;
  }
}
#top-page .accessText .route li {
  margin-bottom: 22px;
}
#top-page .accessText .route li h4 {
  margin-bottom: 8px;
  color: var(--color-grn);
  font-size: 12px;
  line-height: 100%;
  letter-spacing: 0.02em;
}
#top-page .accessText .route li p {
  font-size: 14px;
  line-height: 170%;
  letter-spacing: 0.02em;
}
#top-page .accessText .route li:last-of-type {
  margin-bottom: 0;
}
#top-page .accessMap {
  overflow: hidden;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 528px;
  height: 588px;
  border-radius: 108px;
}
@media screen and (max-width: 600px) {
  #top-page .accessMap {
    width: 90%;
    height: 330px;
    border-radius: 64px 0 0 64px;
  }
}
#top-page .accessMap iframe {
  width: 100%;
  height: 100%;
}
#top-page .company {
  padding-bottom: 168px;
}
@media screen and (max-width: 600px) {
  #top-page .company {
    padding-bottom: 162px;
  }
}
#top-page .company_inner {
  width: 1040px;
  display: flex;
  flex-direction: row-reverse;
  column-gap: 60px;
  margin-top: 48px;
}
@media screen and (max-width: 600px) {
  #top-page .company_inner {
    flex-direction: column;
    width: 90%;
  }
}
#top-page .companyText {
  flex: 1;
}
@media screen and (max-width: 600px) {
  #top-page .companyText {
    margin-bottom: 36px;
  }
}
#top-page .companyText .item {
  display: flex;
  padding: 24px 12px;
  border-top: solid 1px #D9D9D9;
}
#top-page .companyText .item dt {
  width: 6.12em;
  font-size: 16px;
}
@media screen and (max-width: 600px) {
  #top-page .companyText .item dt {
    margin-right: 24px;
    font-size: 14px;
  }
}
#top-page .companyText .item dd {
  font-size: 16px;
}
@media screen and (max-width: 600px) {
  #top-page .companyText .item dd {
    font-size: 14px;
  }
}
#top-page .companyText .item:last-of-type {
  border-bottom: solid 1px #D9D9D9;
}
#top-page .companyImage {
  width: 499px;
}
@media screen and (max-width: 600px) {
  #top-page .companyImage {
    width: 100%;
  }
}