@media screen and (max-width: 600px) {
  .theme-multi .l-global-navi:not(:has(.l-search-area)) {
    border-radius: 3px;
  }
}

.theme-multi .l-global-navi:not(:has(.l-search-area)) li {
  background: transparent;
}

.theme-multi .dl-menuwrapper:not(:has(.l-search-area)) li:last-of-type {
  border-bottom: 0;
}

@media (min-width: 769px) {
  .l-global-area {
    width: auto;
    margin: 0 20px 0 25px;
  }
}

.l-footer {
  border-top: 0;
  height: auto;
}

@media (min-width: 769px) {
  .l-footer .l-footer-logo {
    width: 145px;
    left: 15px;
    top: 9px;
  }
}

@media (max-width: 768px) {
  .l-pagetop p {
    width: 100%;
  }
}

@media (min-width: 769px) {
  .l-global-area-warp:before, .l-footer {
    min-width: 990px;
  }
}

#main-contents {
  background: #f3efe6;
}
@media (min-width: 769px) {
  #main-contents {
    min-width: 990px;
  }
}
@media (max-width: 768px) {
  #main-contents .pc-only {
    display: none !important;
  }
}
@media (min-width: 769px) {
  #main-contents .sp-only {
    display: none !important;
  }
}
#main-contents h1, #main-contents h2, #main-contents h3, #main-contents h4, #main-contents h5, #main-contents p, #main-contents dl, #main-contents dt, #main-contents dd, #main-contents ul, #main-contents ol {
  position: relative;
  border: 0;
  margin: 0;
  padding: 0;
  color: inherit;
}
#main-contents .l-contents {
  background: none;
  width: 100%;
}
#main-contents .l-contents .l-main {
  margin: 0;
}
#main-contents .outline_section {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@media (min-width: 769px) {
  #main-contents .outline_section {
    padding: 80px 0 35px;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_section {
    padding: 8.4% 0 12%;
  }
}
#main-contents .outline_inner {
  position: relative;
  margin: 0 auto;
}
@media (min-width: 769px) {
  #main-contents .outline_inner {
    max-width: 948px;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_inner {
    max-width: 77.334%;
  }
}
#main-contents .outline_bg {
  position: relative;
}
#main-contents .outline_bg::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  pointer-events: none;
}
#main-contents .outline_bg.top {
  z-index: 2;
}
@media (min-width: 769px) {
  #main-contents .outline_bg.top {
    padding: 60px 83px 45px;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_bg.top {
    padding: 1.725% 8.621%;
  }
}
#main-contents .outline_bg.top::before {
  background: #fff;
}
@media (min-width: 769px) {
  #main-contents .outline_bg.top::before {
    border-radius: 100px;
    left: 0;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_bg.top::before {
    border-radius: 25px 0 0 25px;
    width: 100vw;
    left: -6.034%;
  }
}
@media (min-width: 769px) {
  #main-contents .outline_bg.bottom {
    height: 359px;
    margin: -215px 169px 0 0;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_bg.bottom {
    margin-top: -75.172%;
    padding: 94.311% 0 0;
  }
}
#main-contents .outline_bg.bottom::before {
  width: 100vw;
  background: #cc0022;
}
@media (min-width: 769px) {
  #main-contents .outline_bg.bottom::before {
    min-width: 990px;
  }
}
@media (min-width: 769px) {
  #main-contents .outline_bg.bottom::before {
    border-radius: 0 100px 100px 0;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_bg.bottom::before {
    border-radius: 0 25px 25px 0;
    right: -6.034%;
  }
}
#main-contents .outline_links {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
@media (min-width: 769px) {
  #main-contents .outline_links {
    gap: 23px 0;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_links {
    flex-direction: column;
  }
}
#main-contents .outline_links > li {
  display: flex;
  list-style: none;
}
@media (min-width: 769px) {
  #main-contents .outline_links > li {
    width: 50%;
    padding: 15px 0 15px 80px;
  }
  #main-contents .outline_links > li:nth-of-type(n+3) {
    border-top: 1px solid #f0f0f0;
    padding-top: 33px;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_links > li {
    padding: 9.434% 0;
  }
  #main-contents .outline_links > li:nth-of-type(n+2) {
    border-top: 1px solid #f0f0f0;
  }
}
#main-contents .outline_link {
  display: flex;
  align-items: center;
  column-gap: 0.389em;
  color: #6666aa;
}
@media (min-width: 769px) {
  #main-contents .outline_link {
    line-height: 1.5;
    font-size: 18px;
  }
}
@media (max-width: 768px) {
  #main-contents .outline_link {
    line-height: 1.667;
    font-size: 12px;
  }
}
#main-contents .outline_link::before {
  content: "";
  aspect-ratio: 6/5;
  display: block;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: #cc0022;
  width: 0.667em;
  translate: 0 -5%;
}