@charset "UTF-8";
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../font/noto-sans/nsjp-light.woff2") format("woff2"), url("../font/noto-sans/nsjp-light.woff") format("woff"), url("../font/noto-sans/nsjp-light.otf") format("opentype");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../font/noto-sans/nsjp-regular.woff2") format("woff2"), url("../font/noto-sans/nsjp-regular.woff") format("woff"), url("../font/noto-sans/nsjp-regular.otf") format("opentype");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../font/noto-sans/nsjp-medium.woff2") format("woff2"), url("../font/noto-sans/nsjp-medium.woff") format("woff"), url("../font/noto-sans/nsjp-medium.otf") format("opentype");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../font/noto-sans/nsjp-bold.woff2") format("woff2"), url("../font/noto-sans/nsjp-bold.woff") format("woff"), url("../font/noto-sans/nsjp-bold.otf") format("opentype");
}
@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../font/en/Outfit-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../font/en/Outfit-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../font/en/Outfit-Bold.ttf") format("truetype");
}
@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
/*! purgecss start ignore */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  padding: 0;
  margin: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  border: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

strong,
b {
  font-weight: 500;
}

/*! purgecss end ignore */
/*! purgecss start ignore */
html {
  height: 100%;
  font-size: 62.5%;
}
html.is-chrome img {
  image-rendering: -webkit-optimize-contrast;
}

body {
  width: 100%;
  min-height: 100%;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
  line-height: 1.6;
  color: #333333;
  letter-spacing: 0;
  font-size: 1.6rem;
  word-wrap: break-word;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media only screen and (max-width: 47.9375em) {
  body {
    font-size: 3.7333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  body {
    text-size-adjust: none;
  }
}
@media print {
  body {
    zoom: 0.5;
    -webkit-print-color-adjust: exact;
  }
}

a {
  color: inherit;
  text-decoration: none;
}

a[href^="tel:"] {
  cursor: default;
}

b,
strong {
  font-weight: 700;
}

em {
  font-style: italic;
}

sup {
  vertical-align: super;
}

sub {
  vertical-align: sub;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

input,
textarea,
button,
select {
  font: inherit;
  border-radius: 0;
  outline: none;
}

button {
  padding: 0;
  margin: 0;
  color: inherit;
  cursor: pointer;
  background-color: transparent;
  border: none;
  box-shadow: none;
  appearance: none;
}

option {
  min-height: inherit;
  padding: 0;
  margin: 0;
}

select::-ms-expand {
  display: none;
}

input::placeholder {
  color: rgba(51, 51, 51, 0.5);
}

/*! purgecss end ignore */
/* IE */
.l-page {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.6s ease, visibility 0.6s ease;
  overflow-x: clip;
}

.l-container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

.l-container02 {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.l-header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  transition: 0.3s;
  contain: none;
  background: rgba(255, 255, 255, 0.8);
}

.l-header a {
  transition: 0.3s;
}

.l-header a:hover {
  opacity: 0.7;
}

.l-header__inner {
  padding: 2rem 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  column-gap: 2rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .l-header__inner {
    padding: 5.3333333333vw;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .l-header__inner {
    padding: 2rem;
  }
}

.l-header__inner h1 {
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 47.9375em) {
  .l-header__inner h1 {
    width: 21.8666666667vw;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .l-header__inner h1 {
    width: 26rem;
  }
}

@media only screen and (max-width: 47.9375em) {
  .l-header__title {
    width: 9.7rem;
  }
}

.l-header__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #26a69a;
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
  padding: 1.3rem 2.8rem;
  white-space: nowrap;
  border-radius: 10rem;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .l-header__nav-btn {
    background-color: #26a69a;
    padding: 2.2rem 0;
    width: 100%;
    font-size: 1.5rem;
    margin-top: 2rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .l-header__nav-btn {
    margin-top: 3rem;
  }
}

/* ヘッダーのナビ部分 */
.l-header__nav {
  display: flex;
  column-gap: 2.8rem;
}
@media only screen and (max-width: 64em) {
  .l-header__nav {
    position: absolute;
    right: -100%;
    top: 0;
    width: 100%;
    height: 100vh;
    background-color: #fff;
    transition: ease 0.4s;
    display: block;
    padding: 0 2rem;
    padding-top: 12rem;
    padding-bottom: 4rem;
    overflow: auto;
    height: 100vh;
  }
}
@media only screen and (max-width: 47.9375em) {
  .l-header__nav {
    padding-top: 21.3333333333vw;
  }
}

.nav__items {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 2.8rem;
}
@media only screen and (max-width: 64em) {
  .nav__items {
    display: block;
  }
}

.nav-items__item {
  position: relative;
}

/* ナビのリンク */
.nav-items__item a {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  transition: 0.3s;
  position: relative;
}
@media only screen and (max-width: 64em) {
  .nav-items__item a {
    color: #333333;
    padding: 1.2rem 0;
    display: flex;
    align-items: flex-end;
    column-gap: 1rem;
    font-size: 3rem;
    font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  }
}

@media only screen and (max-width: 64em) {
  .nav-items__item a span {
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: #adadad;
  }
}

.nav-items__item a::after {
  background-color: #333333;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
  width: 100%;
  z-index: 1;
}

@media all and (min-width: 64.0625em) {
  .nav-items__item a:hover {
    opacity: 1;
  }

  .nav-items__item a:hover::after {
    transform: scale(1, 1);
  }
}
@media print {
  .nav-items__item a:hover {
    opacity: 1;
  }

  .nav-items__item a:hover::after {
    transform: scale(1, 1);
  }
}
@media only screen and (max-width: 64em) {
  .nav__items li:first-child a {
    padding-top: 0;
  }
}

.l-header__under .nav-items__item a {
  color: #333333;
}

/* ハンバーガーメニュー */
.hamburger {
  z-index: 9999;
  width: 8vw;
  height: 8vw;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .hamburger {
    width: 4rem;
    height: 4rem;
  }
}
@media all and (min-width: 64.0625em) {
  .hamburger {
    display: none;
  }
}
@media print {
  .hamburger {
    display: none;
  }
}

/* ハンバーガーメニューの線 */
.hamburger span {
  width: 8vw;
  height: 0.2666666667vw;
  background-color: #333333;
  position: relative;
  transition: ease 0.4s;
  display: block;
  margin: 0 auto;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .hamburger span {
    width: 4rem;
    height: 0.1rem;
  }
}

.l-header__under .hamburger span {
  background-color: #333333;
}

.hamburger span:nth-child(1) {
  top: -2.1333333333vw;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .hamburger span:nth-child(1) {
    top: -0.8rem;
  }
}

.hamburger span:nth-child(2) {
  top: 0;
}

.hamburger span:nth-child(3) {
  top: 2.1333333333vw;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .hamburger span:nth-child(3) {
    top: 0.8rem;
  }
}

/* ハンバーガーメニュークリック後のスタイル */
.l-header__nav.active {
  right: 0;
}

.hamburger.active span:nth-child(1) {
  top: 1px;
  transform: rotate(45deg);
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .hamburger.active span:nth-child(1) {
    top: 0.1rem;
  }
}

.hamburger.active span:nth-child(2) {
  top: -1px;
  transform: rotate(-45deg);
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .hamburger.active span:nth-child(2) {
    top: -0.1rem;
  }
}

.l-header__ham-logo {
  position: fixed;
  top: 5.8666666667vw;
  left: 5.3333333333vw;
  z-index: 1;
  display: none;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .l-header__ham-logo {
    top: 2.2rem;
    left: 2rem;
  }
}

.l-header__ham-logo.active {
  display: block;
}

.l-header.change-color {
  background-color: #ffffff;
}

.l-header.change-color .nav-items__item a {
  color: #333333;
}

.l-header.change-color .l-header__inner {
  padding: 2rem 4rem;
}
@media only screen and (max-width: 64em) {
  .l-header.change-color .l-header__inner {
    padding: 1.8rem 2rem;
  }
}

@media only screen and (max-width: 47.9375em) {
  .l-header__under.change-color {
    background-color: #ffffff;
  }
}

@media only screen and (max-width: 64em) {
  .l-header.change-color .l-header__logo img:first-child {
    display: block;
  }
}

@media only screen and (max-width: 64em) {
  .l-header.change-color .l-header__logo img:nth-child(2) {
    display: none;
  }
}

.l-header.change-color .header__hamburger span {
  background-color: #333333;
}

.pagetop {
  width: 7rem;
  height: 7rem;
  position: fixed;
  right: 6rem;
  bottom: 6rem;
  background-color: #333333;
  border-radius: 50%;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em) {
  .pagetop {
    width: 13.3333333333vw;
    height: 13.3333333333vw;
    right: 5.3333333333vw;
    bottom: 5.3333333333vw;
  }
}

.pagetop__arrow {
  display: block;
  height: 1.5rem;
  width: 1.5rem;
  border-top: 0.2rem solid #ffffff;
  border-right: 0.2rem solid #ffffff;
  transform: translateY(20%) rotate(-45deg);
}
@media only screen and (max-width: 47.9375em) {
  .pagetop__arrow {
    height: 3.2vw;
    width: 3.2vw;
    border-top: 0.5333333333vw solid #ffffff;
    border-right: 0.5333333333vw solid #ffffff;
  }
}

.details-summary {
  position: relative;
  padding: 1rem 0;
  font-size: 2.2rem;
  font-weight: 700;
}
.details-summary .btn {
  position: absolute;
  top: 37%;
  right: 0;
  width: 1.8rem;
  height: 1.8rem;
  transform-origin: center center;
  transition-duration: 0.2s;
}
.details-summary .btn:before, .details-summary .btn:after {
  content: "";
  background: #26a69a;
  width: 1.8rem;
  height: 0.2rem;
  position: absolute;
  top: 0.8rem;
  left: 0;
  transform-origin: center center;
}
.details-summary .btn:before {
  width: 0.2rem;
  height: 1.8rem;
  top: 0;
  left: 0.8rem;
}
.details-summary.is-active .btn {
  transform: rotate(-180deg);
}
.details-summary.is-active .btn:before {
  content: none;
}

.details-summary {
  list-style: none;
  /* マーカーを消す */
  -webkit-appearance: none;
  /* iOS Safari対策 */
}

.details-summary::-webkit-details-marker {
  display: none;
}

.details-summary span {
  font-size: 1.4rem;
  font-weight: 500;
  color: #adadad;
  margin-left: 1rem;
}

.details-content {
  padding: 0 2rem;
}

.details-content ul {
  margin-top: 1rem;
}

.details-content ul li a {
  font-size: 1.4rem;
  font-weight: 400;
  padding: 0;
}

.details-content ul li {
  margin-top: 1rem;
}

.details-content ul li:first-child {
  margin-top: 0;
}

.details-content ul ul {
  margin-left: 2rem;
}

.details-content ul ul li a {
  color: #adadad;
}

@media only screen and (max-width: 64em) {
  .nav-items__item a.u-dn-tb.u-dn-sp {
    display: none;
  }
}

.megaMenu {
  margin-top: 1rem;
  background-color: #f8f8f8;
  opacity: 0;
  position: absolute;
  text-align: center;
  transition: opacity 0.3s, visibility 0.3s;
  visibility: hidden;
  width: auto;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 1rem;
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.15);
}
@media only screen and (max-width: 47.9375em) {
  .megaMenu {
    position: static;
    opacity: 1;
    visibility: visible;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.6s ease;
    transform: none;
    border-radius: 0;
  }
}

.megaMenu.is-open {
  max-height: 1000px;
}

.megaMenu-list {
  padding: 3rem 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .megaMenu-list {
    padding: 5.3333333333vw 8vw 0;
    background-color: #f3f3f3;
    border-bottom: 0.2666666667vw solid #d9d9d9;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .megaMenu-list {
    padding: 2rem 3rem 0;
    background-color: #f3f3f3;
    border-bottom: 0.1rem solid #d9d9d9;
  }
}

.megaMenu-item {
  margin-top: 2rem;
}

.megaMenu-item:first-child {
  margin-top: 0;
}

.megaMenu a {
  white-space: nowrap;
  width: fit-content;
  margin: 0 auto;
  padding: 0;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  color: #26a69a;
}

.megaMenu-item ul li {
  margin-top: 1rem;
}

.megaMenu-item ul li a {
  color: #333333;
  font-weight: 400;
}

@media only screen and (max-width: 64em) {
  .megaMenu-item:last-child a {
    border-bottom: 0;
  }
}

.megaMenu a::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 0.1rem;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform 0.3s;
  width: 100%;
}
@media only screen and (max-width: 64em) {
  .megaMenu a::before {
    background-color: inherit;
    background-image: url(../../assets/images/common/arrow03.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 0.8rem;
    height: 1.3rem;
    transform: scale(1);
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    left: auto;
    right: 0;
  }
}

.megaMenu-item.megaMenu-item-none a::before {
  content: none;
}

.megaMenu-item.megaMenu-item-none a {
  cursor: auto;
  color: #c5c5c5;
}

/* メニューをhoverした時のスタイル */
.nav-items__item:hover .megaMenu {
  opacity: 1;
  visibility: visible;
}

@media only screen and (max-width: 47.9375em) {
  .nav-items__item a:hover {
    opacity: 1;
  }
}
@media all and (min-width: 64.0625em) {
  .megaMenu a:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
  }

  .megaMenu-item.megaMenu-item-none a:hover {
    color: #c5c5c5;
  }
}
@media print {
  .megaMenu a:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
  }

  .megaMenu-item.megaMenu-item-none a:hover {
    color: #c5c5c5;
  }
}
.l-footer {
  background: #333333;
}

.l-footer__inner {
  padding: 11rem 6rem 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__inner {
    padding: 10.6666666667vw 5.3333333333vw 5.3333333333vw;
  }
}

.l-footer__content {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__content {
    flex-wrap: wrap;
    row-gap: 8vw;
  }
}

.l-footer__item {
  width: 32%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__item {
    width: 100%;
  }
}

.l-footer__item-img {
  width: fit-content;
  margin: 0 auto;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__item-img {
    width: 10.6666666667vw;
  }
}

.l-footer__item h3 {
  font-size: 2.2rem;
  font-weight: 500;
  text-align: center;
  margin-top: 0.8rem;
  color: #ffffff;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__item h3 {
    font-size: 4.8vw;
    margin-top: 1.0666666667vw;
  }
}

.l-footer__item-txt {
  text-align: center;
  max-width: 34rem;
  margin: 0 auto;
  margin-top: 1.4rem;
  color: #ffffff;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__item-txt {
    margin-top: 2.6666666667vw;
  }
}

.l-footer__item .c-btn02 {
  margin: 0 auto;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__item .c-btn02 {
    display: none;
  }
}

.l-footer_line {
  display: block;
  width: 0.1rem;
  height: 28.8rem;
  background-color: #ffffff;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer_line {
    width: 100%;
    height: 0.2666666667vw;
    background-color: #858585;
  }
}

.l-footer .text {
  color: #ffffff;
  font-size: 18.8rem;
  line-height: 1;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer .text {
    font-size: 20.8vw;
  }
}

.l-footer__content02 {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__content02 {
    flex-wrap: wrap;
    margin-top: 21.3333333333vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .l-footer__item02 {
    width: 100%;
    margin-top: 8vw;
  }
}

.l-footer__link {
  display: flex;
  flex-wrap: wrap;
  column-gap: 2.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__link {
    margin: 0 auto;
    column-gap: 5.3333333333vw;
    justify-content: center;
  }
}

.l-footer__link a {
  font-size: 1.4rem;
  font-weight: 500;
  color: #ffffff;
  position: relative;
  width: fit-content;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__link a {
    font-size: 3.2vw;
  }
}

.l-footer__link a::after {
  background-color: #ffffff;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
  width: 100%;
}

.l-footer__link02 {
  display: flex;
  justify-content: flex-end;
  column-gap: 2rem;
  margin-top: 2.5rem;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer__link02 {
    justify-content: center;
    column-gap: 5.3333333333vw;
    margin-top: 7.4666666667vw;
  }
}

.l-footer__link02 a {
  transition: 0.3s;
}

.l-footer small p {
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 500;
  opacity: 0.3;
  text-align: right;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .l-footer small p {
    font-size: 3.2vw;
    text-align: center;
    margin-top: 10.6666666667vw;
  }
}

@media all and (min-width: 64.0625em) {
  .l-footer__link a:hover::after {
    transform: scale(1, 1);
  }

  .l-footer__link02 a:hover {
    opacity: 0.7;
  }
}
@media print {
  .l-footer__link a:hover::after {
    transform: scale(1, 1);
  }

  .l-footer__link02 a:hover {
    opacity: 0.7;
  }
}
.c-btn01 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 24rem;
  padding: 2.4rem 3rem;
  background-color: #333333;
  border-radius: 10rem;
  color: #ffffff;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn01 {
    margin: 0 auto;
    width: 64vw;
    padding: 4.2666666667vw 8vw;
    border-radius: 26.6666666667vw;
  }
}

.c-btn01-txt {
  overflow: hidden;
  position: relative;
  width: fit-content;
  height: 2.4rem;
  transition: 0.3s;
  font-size: 1.6rem;
  font-weight: 500;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn01-txt {
    height: auto;
    font-size: 3.7333333333vw;
  }
}

.c-btn01-txt p {
  transition: 0.3s;
}

.c-btn01 span {
  width: 0.8rem;
  height: 0.8rem;
  background-color: #ffffff;
  border-radius: 100%;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn01 span {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
}

.c-btn02 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 24rem;
  padding: 2.4rem 3rem;
  background-color: #ffffff;
  border-radius: 10rem;
}

.c-btn02-txt {
  overflow: hidden;
  position: relative;
  width: fit-content;
  height: 2.4rem;
  transition: 0.3s;
  font-size: 1.6rem;
  font-weight: 500;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn02-txt {
    height: auto;
  }
}

.c-btn02-txt p {
  transition: 0.3s;
}

.c-btn02 span {
  width: 0.8rem;
  height: 0.8rem;
  background-color: #333333;
  border-radius: 100%;
  transition: 0.3s;
}

@media all and (min-width: 64.0625em) {
  .c-btn01:hover .c-btn01-txt p {
    transform: translateY(-24px);
  }

  .c-btn01:hover span {
    transform: scale(1.5);
  }

  .c-btn02:hover .c-btn02-txt p {
    transform: translateY(-24px);
  }

  .c-btn02:hover span {
    transform: scale(1.5);
  }
}
@media print {
  .c-btn01:hover .c-btn01-txt p {
    transform: translateY(-24px);
  }

  .c-btn01:hover span {
    transform: scale(1.5);
  }

  .c-btn02:hover .c-btn02-txt p {
    transform: translateY(-24px);
  }

  .c-btn02:hover span {
    transform: scale(1.5);
  }
}
.c-btn03 {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn03 {
    flex-wrap: wrap;
    row-gap: 5.3333333333vw;
  }
}

.c-btn03 a {
  width: 47%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4rem;
  border: 1px solid #d9e0de;
  border-radius: 2rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn03 a {
    width: 100%;
    padding: 8vw 5.3333333333vw;
    border: 0.2666666667vw solid #d9e0de;
    border-radius: 4.8vw;
  }
}

.c-btn03 a h3 {
  font-size: 2.4rem;
  font-weight: 700;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn03 a h3 {
    font-size: 5.3333333333vw;
  }
}

.c-btn03 a p {
  font-size: 1.4rem;
  font-weight: 500;
  color: #26a69a;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn03 a p {
    font-size: 3.2vw;
  }
}

.c-btn03-btn {
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 100%;
  background: #333333;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn03-btn {
    width: 9.3333333333vw;
    height: 9.3333333333vw;
  }
}

.c-btn03-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0.1rem;
  height: 0.1rem;
  background: #ffffff;
  border-radius: 100%;
  transition: 1s;
}

.c-btn03-btn img {
  position: relative;
  z-index: 1;
  transition: 0.5s;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn03-btn img {
    width: 2.6666666667vw;
  }
}

@media all and (min-width: 64.0625em) {
  .c-btn03 a:hover {
    background: #26a69a;
  }

  .c-btn03 a:hover h3 {
    color: #ffffff;
  }

  .c-btn03 a:hover p {
    color: #ffffff;
  }

  .c-btn03 a:hover .c-btn03-btn {
    background: #ffffff;
  }

  .c-btn03 a:hover .c-btn03-btn::after {
    transform: scale(200);
  }

  .c-btn03 a:hover .c-btn03-btn img {
    filter: invert(1);
  }
}
@media print {
  .c-btn03 a:hover {
    background: #26a69a;
  }

  .c-btn03 a:hover h3 {
    color: #ffffff;
  }

  .c-btn03 a:hover p {
    color: #ffffff;
  }

  .c-btn03 a:hover .c-btn03-btn {
    background: #ffffff;
  }

  .c-btn03 a:hover .c-btn03-btn::after {
    transform: scale(200);
  }

  .c-btn03 a:hover .c-btn03-btn img {
    filter: invert(1);
  }
}
.c-btn04 {
  display: flex;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04 {
    flex-wrap: wrap;
  }
}

.c-btn04-txt-wrap {
  background: #26a69a;
  border-bottom-left-radius: 2rem;
  border-top-left-radius: 2rem;
  color: #ffffff;
  width: 72%;
  padding: 6rem 6rem 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-txt-wrap {
    width: 100%;
    border-bottom-left-radius: 0;
    border-top-right-radius: 5.3333333333vw;
    border-top-left-radius: 5.3333333333vw;
    padding: 10.6666666667vw 5.3333333333vw;
  }
}

.c-btn04-txt-wrap h3 {
  font-size: 3.2rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-txt-wrap h3 {
    font-size: 7.4666666667vw;
    line-height: 1.4;
  }
}

.c-btn04-txt-wrap h3 span {
  position: relative;
}

.c-btn04-txt-wrap h3 span::after {
  content: "（SCCM）";
  position: absolute;
  bottom: 88%;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-txt-wrap h3 span::after {
    font-size: 3.7333333333vw;
  }
}

.c-btn04-txt-wrap div {
  margin-top: 2rem;
  display: flex;
  column-gap: 0.5rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-txt-wrap div {
    margin-top: 5.3333333333vw;
    flex-wrap: wrap;
    row-gap: 2.6666666667vw;
  }
}

.c-btn04-txt-wrap div span {
  border: 1px solid #ffffff;
  border-radius: 0.5rem;
  padding: 0.4rem 1.2rem;
  font-size: 1.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-txt-wrap div span {
    border-radius: 1.3333333333vw;
    border: 0.2666666667vw solid #ffffff;
    padding: 1.6vw 3.2vw;
    font-size: 3.7333333333vw;
  }
}

.c-btn04-txt-wrap a {
  display: flex;
  align-items: center;
  background: #ffffff;
  margin-top: 4rem;
  border-radius: 10rem;
  color: #26a69a;
  width: 24rem;
  padding: 2.6rem 3rem;
  position: relative;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-txt-wrap a {
    margin-top: 8vw;
    width: 100%;
    padding: 4.8vw 8vw;
  }
}

.c-btn04-txt-wrap a::after {
  content: "";
  position: absolute;
  right: 3rem;
  top: 50%;
  transform: translateY(-50%);
  background-image: url(../../assets/images/common/icon04.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.2rem;
  height: 1.2rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-txt-wrap a::after {
    width: 3.7333333333vw;
    height: 3.7333333333vw;
    right: 8vw;
  }
}

.c-btn04-img {
  width: 28%;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-img {
    width: 100%;
  }
}

.c-btn04-img img {
  border-top-right-radius: 2rem;
  border-bottom-right-radius: 2rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04-img img {
    border-top-right-radius: 0;
    border-bottom-right-radius: 5.3333333333vw;
    border-bottom-left-radius: 5.3333333333vw;
  }
}

.c-btn04 .c-btn01-txt {
  margin-top: 0;
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-btn04 .c-btn01-txt {
    font-size: 4vw;
  }
}

@media all and (min-width: 64.0625em) {
  .c-btn04-txt-wrap a:hover::after {
    width: 1.6rem;
    height: 1.6rem;
  }
}
@media print {
  .c-btn04-txt-wrap a:hover::after {
    width: 1.6rem;
    height: 1.6rem;
  }
}
.c-title01 h2 {
  font-size: 10rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  line-height: 1.2;
  position: relative;
  width: fit-content;
}
@media only screen and (max-width: 47.9375em) {
  .c-title01 h2 {
    font-size: 12.8vw;
  }
}

.c-title01 h2::after {
  content: "";
  position: absolute;
  top: 1.4rem;
  left: 100%;
  width: 2rem;
  height: 2rem;
  background-color: #26a69a;
  border-radius: 100%;
}
@media only screen and (max-width: 47.9375em) {
  .c-title01 h2::after {
    width: 3.7333333333vw;
    height: 3.7333333333vw;
    top: 2.1333333333vw;
  }
}

.c-title01 p {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 47.9375em) {
  .c-title01 p {
    font-size: 3.7333333333vw;
  }
}

.c-title01-center h2 {
  font-size: 10rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  line-height: 1.2;
  position: relative;
  width: fit-content;
  margin: 0 auto;
}
@media only screen and (max-width: 47.9375em) {
  .c-title01-center h2 {
    font-size: 12.8vw;
  }
}

.c-title01-center h2::after {
  content: "";
  position: absolute;
  top: 1.4rem;
  left: 100%;
  width: 2rem;
  height: 2rem;
  background-color: #26a69a;
  border-radius: 100%;
}
@media only screen and (max-width: 47.9375em) {
  .c-title01-center h2::after {
    width: 3.7333333333vw;
    height: 3.7333333333vw;
    top: 2.1333333333vw;
  }
}

.c-title01-center p {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 47.9375em) {
  .c-title01-center p {
    font-size: 3.7333333333vw;
  }
}

.c-title02 h2 {
  font-size: 8rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  line-height: 1.2;
  position: relative;
  width: fit-content;
}
@media only screen and (max-width: 47.9375em) {
  .c-title02 h2 {
    font-size: 12.8vw;
  }
}

.c-title02 h2::after {
  content: "";
  position: absolute;
  top: 1.4rem;
  left: 100%;
  width: 2rem;
  height: 2rem;
  background-color: #26a69a;
  border-radius: 100%;
}
@media only screen and (max-width: 47.9375em) {
  .c-title02 h2::after {
    width: 3.7333333333vw;
    height: 3.7333333333vw;
    top: 2.1333333333vw;
  }
}

.c-title02 p {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 47.9375em) {
  .c-title02 p {
    font-size: 3.7333333333vw;
  }
}

.c-title03 {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .c-title03 {
    font-size: 6.4vw;
  }
}

.c-title04 {
  font-size: 4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-title04 {
    font-size: 6.4vw;
  }
}

.c-title05 {
  font-size: 3.2rem;
  font-weight: 700;
  color: #26a69a;
  line-height: 1.4;
}
@media only screen and (max-width: 47.9375em) {
  .c-title05 {
    font-size: 5.3333333333vw;
  }
}

.c-title06 {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: right;
}
@media only screen and (max-width: 47.9375em) {
  .c-title06 {
    font-size: 5.3333333333vw;
  }
}

.c-title07 {
  display: flex;
  align-items: flex-end;
  column-gap: 1.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-title07 {
    display: block;
    column-gap: 3.7333333333vw;
  }
}

.c-title07 h2 {
  font-size: 5rem;
  font-weight: 500;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  line-height: 1;
}
@media only screen and (max-width: 47.9375em) {
  .c-title07 h2 {
    font-size: 8.5333333333vw;
  }
}

.c-title07 p {
  font-size: 1.4rem;
  font-weight: 700;
  color: #adadad;
}
@media only screen and (max-width: 47.9375em) {
  .c-title07 p {
    font-size: 3.4666666667vw;
    margin-top: 2.1333333333vw;
  }
}

.c-title08 {
  font-size: 2.4rem;
  font-weight: 700;
  position: relative;
  padding-left: 1.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-title08 {
    font-size: 5.3333333333vw;
    padding-left: 3.7333333333vw;
  }
}

.c-title08::after {
  content: "";
  position: absolute;
  top: 0.5rem;
  left: 0;
  width: 0.8rem;
  height: 0.8rem;
  background: #26a69a;
  border-radius: 100%;
}
@media only screen and (max-width: 47.9375em) {
  .c-title08::after {
    width: 1.6vw;
    height: 1.6vw;
    top: 1.6vw;
  }
}

.c-title09 {
  display: flex;
  column-gap: 0.6rem;
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-title09 {
    font-size: 5.3333333333vw;
    column-gap: 1.0666666667vw;
  }
}

.c-title10 {
  font-size: 1.6rem;
  font-weight: 700;
  color: #26a69a;
}
@media only screen and (max-width: 47.9375em) {
  .c-title10 {
    font-size: 3.7333333333vw;
  }
}

.c-title11 {
  font-size: 2.8rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-title11 {
    font-size: 6.4vw;
  }
}

.c-title12 {
  font-size: 2rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-title12 {
    font-size: 4.2666666667vw;
  }
}

.c-list01 {
  display: flex;
  justify-content: space-between;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list01 {
    column-gap: 2.6666666667vw;
  }
}

.c-list01 a {
  width: 48%;
}

.c-list01 a p {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 700;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-list01 a p {
    font-size: 3.2vw;
    margin-top: 3.7333333333vw;
  }
}

.c-list01 a span {
  display: block;
  font-size: 1.6rem;
  font-weight: 500;
  color: #858585;
  margin-top: 1.4rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-list01 a span {
    font-size: 3.2vw;
    margin-top: 1.0666666667vw;
  }
}

.c-list01-img {
  overflow: hidden;
}

.c-list01-img img {
  transition: 0.3s;
}

@media all and (min-width: 64.0625em) {
  .c-list01 a:hover .c-list01-img img {
    transform: scale(1.1);
  }

  .c-list01 a:hover p {
    color: #26a69a;
  }

  .c-list01 a:hover span {
    color: #26a69a;
  }
}
@media print {
  .c-list01 a:hover .c-list01-img img {
    transform: scale(1.1);
  }

  .c-list01 a:hover p {
    color: #26a69a;
  }

  .c-list01 a:hover span {
    color: #26a69a;
  }
}
.c-list-news li {
  padding: 2.4rem 0;
  border-bottom: 1px solid #d9e0de;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-news li {
    padding: 5.3333333333vw 0;
    border-bottom: 0.2666666667vw solid #d9e0de;
  }
}

.c-list-news li:first-child {
  padding-top: 0;
}

.c-list01-item {
  display: flex;
  align-items: center;
  column-gap: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list01-item {
    column-gap: 3.7333333333vw;
  }
}

.c-list01-item time {
  font-size: 1.4rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 300;
  color: #858585;
}
@media only screen and (max-width: 47.9375em) {
  .c-list01-item time {
    font-size: 3.2vw;
  }
}

.c-list01-item span {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  border-radius: 10rem;
  padding: 0.6rem 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list01-item span {
    font-size: 2.9333333333vw;
    border-radius: 26.6666666667vw;
    padding: 1.0666666667vw 4.2666666667vw;
  }
}

.p-news__sec01 .c-list01-item span {
  background: #f2f2f2;
}

.c-list-news li a {
  display: block;
  font-size: 1.4rem;
  margin-top: 1.2rem;
  position: relative;
  width: fit-content;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-news li a {
    font-size: 3.7333333333vw;
    margin-top: 3.2vw;
  }
}

.c-list-news li a::after {
  background-color: #333333;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
  width: 100%;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-news li a::after {
    height: 0.2666666667vw;
  }
}

.c-list-news li a:hover::after {
  transform: scale(1, 1);
}

.c-list-blog li a {
  display: flex;
  column-gap: 2rem;
  padding: 2rem 0;
  border-bottom: 1px solid #d9e0de;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-blog li a {
    padding: 5.3333333333vw 0;
    border-bottom: 0.2666666667vw solid #d9e0de;
    column-gap: 2.6666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .c-list-blog li:first-child a {
    padding-top: 0;
  }
}

.c-list-blog-img {
  width: 40%;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-blog-img {
    width: 26.6666666667vw;
  }
}

.c-list-blog-txt {
  width: 60%;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-blog-txt {
    width: 60vw;
  }
}

.c-list-blog-txt {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.c-list-blog-txt time {
  font-size: 1.4rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 300;
  color: #858585;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-blog-txt time {
    font-size: 2.9333333333vw;
  }
}

.c-list-blog-txt p {
  font-size: 1.4rem;
  margin-top: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-blog-txt p {
    font-size: 3.2vw;
    margin-top: 1.0666666667vw;
  }
}

.c-list-blog-txt span {
  width: fit-content;
  font-size: 1.2rem;
  font-weight: 700;
  background-color: #f2f2f2;
  border-radius: 10rem;
  padding: 0.6rem 2rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-list-blog-txt span {
    font-size: 2.6666666667vw;
    border-radius: 26.6666666667vw;
    padding: 1.0666666667vw 4.2666666667vw;
    margin-top: 1.0666666667vw;
  }
}

@media all and (min-width: 64.0625em) {
  .c-list-blog li a:hover {
    background-color: #f2f2f2;
  }

  .c-list-blog li a:hover span {
    background-color: #ffffff;
  }
}
@media print {
  .c-list-blog li a:hover {
    background-color: #f2f2f2;
  }

  .c-list-blog li a:hover span {
    background-color: #ffffff;
  }
}
.c-list02 {
  counter-reset: number;
}

.c-list02 li {
  position: relative;
  padding-left: 2.4rem;
  margin-top: 2rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .c-list02 li {
    padding-left: 4.8vw;
    margin-top: 4.2666666667vw;
  }
}

.c-list02 li::before {
  counter-increment: number;
  content: counter(number) ".";
  position: absolute;
  left: 0;
}

.c-list02 li:first-child {
  margin-top: 0;
}

.c-list03 {
  display: flex;
  flex-wrap: wrap;
  row-gap: 1.6rem;
  column-gap: 2%;
}
@media only screen and (max-width: 47.9375em) {
  .c-list03 {
    row-gap: 2.6666666667vw;
    column-gap: 4%;
  }
}

.c-list03-item {
  width: 32%;
  background: #ffffff;
  border-radius: 1rem;
  padding: 2rem;
  display: flex;
  align-items: center;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list03-item {
    width: 48%;
    padding: 3.7333333333vw;
    border-radius: 1.3333333333vw;
    height: 13.3333333333vw;
  }
}

.c-list03-item p {
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-list03-item p {
    line-height: 1.3;
  }
}

@media only screen and (max-width: 47.9375em) {
  .c-list03-item img {
    width: 5.3333333333vw;
  }
}

.c-list04 {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .c-list04 {
    flex-wrap: wrap;
    row-gap: 8vw;
  }
}

.c-list04-item {
  width: 32%;
  border-radius: 1rem;
  border: 1px solid #d9e0de;
}
@media only screen and (max-width: 47.9375em) {
  .c-list04-item {
    width: 100%;
    border: 0.2666666667vw solid #d9e0de;
    border-radius: 2.6666666667vw;
  }
}

.c-list04-item div {
  padding: 1.6rem 2rem 3rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list04-item div {
    padding: 4.2666666667vw 5.3333333333vw 8vw;
  }
}

.c-list04-item h3 {
  background: #26a69a;
  color: #ffffff;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  padding: 1.4rem 0;
  border-top-right-radius: 1rem;
  border-top-left-radius: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list04-item h3 {
    font-size: 5.3333333333vw;
    padding: 3.7333333333vw 0;
    border-top-right-radius: 2.6666666667vw;
    border-top-left-radius: 2.6666666667vw;
  }
}

.c-list04-item div h4 {
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 47.9375em) {
  .c-list04-item div h4 {
    font-size: 3.7333333333vw;
  }
}

.c-list04-item div h4 span {
  font-size: 3.2rem;
  font-weight: 500;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  margin-right: 0.4rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list04-item div h4 span {
    font-size: 8.5333333333vw;
    margin-right: 1.0666666667vw;
  }
}

.c-list04-item div p {
  margin-top: 1.6rem;
  font-size: 1.4rem;
  text-align: center;
}
@media only screen and (max-width: 47.9375em) {
  .c-list04-item div p {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
  }
}

.c-list05-box {
  display: flex;
  justify-content: space-between;
  column-gap: 4rem;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-box {
    column-gap: 5.3333333333vw;
    margin-top: 8vw;
  }
}

.c-list05-box:first-child {
  margin-top: 0;
}

.c-list05-icon {
  width: 10rem;
  position: relative;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-icon {
    width: 18.6666666667vw;
  }
}

.c-list05-icon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0.1rem;
  height: 20rem;
  background: #d9e0de;
  z-index: -1;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-icon::after {
    height: 65.6vw;
    width: 0.2666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .c-list05-box:first-child .c-list05-icon::after {
    height: 80vw;
  }
}

.c-list05-box:last-child .c-list05-icon::after {
  content: none;
}

.c-list05-item {
  padding-bottom: 4rem;
  border-bottom: 1px solid #d9e0de;
  width: 85%;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-item {
    padding-bottom: 8vw;
    border-bottom: 0.2666666667vw solid #d9e0de;
    width: 73%;
  }
}

.c-list05-title {
  display: flex;
  align-items: center;
  column-gap: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-title {
    column-gap: 2.6666666667vw;
  }
}

.c-list05-title span {
  font-size: 2rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  color: #26a69a;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-title span {
    font-size: 4.2666666667vw;
  }
}

.c-list05-title h3 {
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-title h3 {
    font-size: 5.3333333333vw;
  }
}

.c-list05-item p {
  margin-top: 1.4rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .c-list05-item p {
    margin-top: 2.6666666667vw;
  }
}

.c-txt01 {
  font-size: 1.6rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .c-txt01 {
    font-size: 3.7333333333vw;
  }
}

.c-txt01-right {
  font-size: 1.6rem;
  line-height: 2;
  text-align: right;
}
@media only screen and (max-width: 47.9375em) {
  .c-txt01-right {
    font-size: 3.7333333333vw;
  }
}

.c-txt01 a {
  text-decoration: underline;
}

.c-txt02 {
  font-size: 1.4rem;
  line-height: 2;
}

.c-box01 {
  display: flex;
  flex-wrap: wrap;
  column-gap: 6%;
  row-gap: 8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01 {
    row-gap: 10.6666666667vw;
  }
}

.c-box01 a {
  display: block;
  width: 47%;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01 a {
    width: 100%;
  }
}

.c-box01-img {
  overflow: hidden;
  border-radius: 2rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01-img {
    border-radius: 4.8vw;
  }
}

.c-box01-img img {
  transition: 0.3s;
}

.c-box01-txt-wrap {
  margin-top: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid #d9e0de;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01-txt-wrap {
    margin-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
    border-bottom: 0.2666666667vw solid #d9e0de;
  }
}

.c-box01-txt-wrap h3 {
  font-size: 2.4rem;
  font-weight: 700;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01-txt-wrap h3 {
    font-size: 5.3333333333vw;
  }
}

.c-box01-txt-wrap p {
  font-size: 1.4rem;
  font-weight: 500;
  color: #26a69a;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01-txt-wrap p {
    font-size: 3.2vw;
  }
}

.c-box01-btn {
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 100%;
  background: #333333;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01-btn {
    width: 9.3333333333vw;
    height: 9.3333333333vw;
  }
}

.c-box01-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0.1rem;
  height: 0.1rem;
  background: #26a69a;
  border-radius: 100%;
  transition: 1s;
}

.c-box01-btn img {
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 47.9375em) {
  .c-box01-btn img {
    width: 2.6666666667vw;
  }
}

@media all and (min-width: 64.0625em) {
  .c-box01 a:hover .c-box01-img img {
    transform: scale(1.2);
  }

  .c-box01 a:hover .c-box01-txt-wrap h3 {
    color: #26a69a;
  }

  .c-box01 a:hover .c-box01-btn::after {
    transform: scale(300);
  }
}
@media print {
  .c-box01 a:hover .c-box01-img img {
    transform: scale(1.2);
  }

  .c-box01 a:hover .c-box01-txt-wrap h3 {
    color: #26a69a;
  }

  .c-box01 a:hover .c-box01-btn::after {
    transform: scale(300);
  }
}
.c-box02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box02 {
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}

.c-box02-img {
  width: 36rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box02-img {
    width: 100%;
  }
}

.c-box02-txt {
  width: 56rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box02-txt {
    width: 100%;
  }
}

.c-box02-txt .c-txt01 {
  margin-top: 3.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box02-txt .c-txt01 {
    margin-top: 5.3333333333vw;
  }
}

.c-box02-txt .c-txt02 {
  text-align: right;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box02-txt .c-txt02 {
    margin-top: 5.3333333333vw;
  }
}

.c-box02-txt .c-title06 {
  margin-top: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box02-txt .c-title06 {
    margin-top: 1.6vw;
  }
}

.c-box03 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box03 {
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}

.c-box03-img {
  width: 44rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box03-img {
    width: 100%;
  }
}

.c-box03-txt {
  width: 48rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box03-txt {
    width: 100%;
  }
}

.c-box03-txt .c-txt01 {
  margin-top: 3.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box03-txt .c-txt01 {
    margin-top: 5.3333333333vw;
  }
}

.c-box03-txt .c-txt02 {
  text-align: right;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box03-txt .c-txt02 {
    margin-top: 5.3333333333vw;
  }
}

.c-box03-txt .c-title06 {
  margin-top: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box03-txt .c-title06 {
    margin-top: 1.6vw;
  }
}

.c-box04 {
  display: flex;
  flex-wrap: wrap;
  row-gap: 4rem;
  column-gap: 3.4%;
}
@media only screen and (max-width: 47.9375em) {
  .c-box04 {
    row-gap: 10.6666666667vw;
  }
}

.p-service__sec07 .c-box04,
.p-service__sec08 .c-box04 {
  row-gap: 5.3333333333vw;
}

.c-box04-item {
  width: 31%;
}
@media only screen and (max-width: 47.9375em) {
  .c-box04-item {
    width: 100%;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-service__sec07 .c-box04-item,
.p-service__sec08 .c-box04-item {
    width: 47%;
  }
}

.c-box04-item h3 {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box04-item h3 {
    font-size: 4.8vw;
    margin-top: 5.3333333333vw;
  }
}

.c-box04-item h4 {
  font-weight: bold;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box04-item h4 {
    margin-top: 2.6666666667vw;
    font-size: 3.2vw;
  }
}

.c-box04-item p {
  font-size: 1.4rem;
  line-height: 2;
  margin-top: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box04-item p {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}

.c-box04 a {
  transition: 0.3s;
}

@media all and (min-width: 64.0625em) {
  .c-box04 a:hover {
    opacity: 0.7;
  }
}
@media print {
  .c-box04 a:hover {
    opacity: 0.7;
  }
}
.c-box05 {
  display: flex;
  flex-wrap: wrap;
  row-gap: 2.8rem;
  column-gap: 2.7%;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 {
    row-gap: 5.3333333333vw;
  }
}

.c-box05 a {
  width: 31.5%;
  background: #f2f2f2;
  border-radius: 1rem;
  padding: 3rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 a {
    width: 100%;
    padding: 5.3333333333vw;
    border-radius: 2.6666666667vw;
  }
}

.c-box05 div {
  width: 31.5%;
  background: #f2f2f2;
  border-radius: 1rem;
  padding: 3rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 div {
    width: 100%;
    padding: 5.3333333333vw;
    border-radius: 2.6666666667vw;
  }
}

@media all and (min-width: 64.0625em) {
  .c-box05 a:hover {
    opacity: 0.7;
  }
}
@media print {
  .c-box05 a:hover {
    opacity: 0.7;
  }
}
.c-box05 a span {
  font-size: 1.2rem;
  font-weight: 700;
  color: #26a69a;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 a span {
    font-size: 3.2vw;
  }
}

.c-box05 div span {
  font-size: 1.2rem;
  font-weight: 700;
  color: #26a69a;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 div span {
    font-size: 3.2vw;
  }
}

.c-box05 a h5 {
  font-size: 1.8rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 a h5 {
    font-size: 4.8vw;
  }
}

.c-box05 div h5 {
  font-size: 1.8rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 div h5 {
    font-size: 4.8vw;
  }
}

.c-box05 a p {
  font-size: 1.4rem;
  margin-top: 0.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 a p {
    font-size: 3.7333333333vw;
    margin-top: 2.1333333333vw;
  }
}

.c-box05 div p {
  font-size: 1.4rem;
  margin-top: 0.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box05 div p {
    font-size: 3.7333333333vw;
    margin-top: 2.1333333333vw;
  }
}

.c-box06-item {
  margin-top: 4rem;
  display: flex;
  column-gap: 2rem;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .c-box06-item {
    flex-wrap: wrap;
    margin-top: 10.6666666667vw;
    row-gap: 5.3333333333vw;
  }
}

.c-box06-item:first-child {
  margin-top: 0;
}

.c-box06-item-img {
  width: 36rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box06-item-img {
    width: 100%;
  }
}

.c-box06-item-txt {
  width: 58rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box06-item-txt {
    width: 100%;
  }
}

.c-box06-item span {
  font-size: 1.4rem;
  font-weight: 700;
  color: #26a69a;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 47.9375em) {
  .c-box06-item span {
    font-size: 3.7333333333vw;
  }
}

.c-box06-item h3 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-top: 0.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box06-item h3 {
    font-size: 5.3333333333vw;
    margin-top: 2.1333333333vw;
  }
}

.c-box06-item h4 {
  font-size: 1.4rem;
  font-weight: 500;
  color: #858585;
  margin-top: 0.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box06-item h4 {
    font-size: 3.7333333333vw;
    margin-top: 2.1333333333vw;
  }
}

.c-box06-item p {
  font-size: 1.4rem;
  line-height: 2;
  margin-top: 1.4rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-box06-item p {
    font-size: 3.7333333333vw;
    margin-top: 3.7333333333vw;
  }
}

.c-table01 {
  width: 100%;
}

.c-table01 tr th,
.c-table01 tr td {
  padding: 3.2rem 0;
  border-bottom: 1px solid #d9e0de;
  text-align: left;
}
@media only screen and (max-width: 47.9375em) {
  .c-table01 tr th,
.c-table01 tr td {
    display: block;
    padding: 5.3333333333vw 0;
    border-bottom: 0.2666666667vw solid #d9e0de;
  }
}

.c-table01 tr:first-child th,
.c-table01 tr:first-child td {
  border-top: 1px solid #d9e0de;
}
@media only screen and (max-width: 47.9375em) {
  .c-table01 tr:first-child th,
.c-table01 tr:first-child td {
    border-top: 0.2666666667vw solid #d9e0de;
  }
}

@media only screen and (max-width: 47.9375em) {
  .c-table01 tr:first-child td {
    border-top: 0;
  }
}

.c-table01 tr th {
  width: 22%;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-table01 tr th {
    width: 100%;
    padding-bottom: 1.0666666667vw;
    border-bottom: 0;
  }
}

.c-table01 tr td {
  width: 78%;
}
@media only screen and (max-width: 47.9375em) {
  .c-table01 tr td {
    width: 100%;
    padding-top: 0;
  }
}

.c-table02 {
  width: 100%;
}

.c-table02 tr th,
.c-table02 tr td {
  padding: 3.2rem 0;
  border-bottom: 1px solid #d9e0de;
  text-align: left;
}
@media only screen and (max-width: 47.9375em) {
  .c-table02 tr th,
.c-table02 tr td {
    padding: 5.3333333333vw 0;
    border-bottom: 0.2666666667vw solid #d9e0de;
  }
}

.c-table02 tr:first-child th,
.c-table02 tr:first-child td {
  border-top: 1px solid #d9e0de;
}
@media only screen and (max-width: 47.9375em) {
  .c-table02 tr:first-child th,
.c-table02 tr:first-child td {
    border-top: 0.2666666667vw solid #d9e0de;
  }
}

@media only screen and (max-width: 47.9375em) {
  .c-table02 tr:first-child td {
    border-top: 0;
  }
}

.c-table02 tr th {
  width: 18%;
  font-size: 4rem;
  font-weight: 500;
  color: #adadad;
  line-height: 1;
}
@media only screen and (max-width: 47.9375em) {
  .c-table02 tr th {
    font-size: 8vw;
    width: 100%;
    display: block;
    border-bottom: 0;
  }
}

.c-table02 tr td {
  width: 82%;
  vertical-align: middle;
}
@media only screen and (max-width: 47.9375em) {
  .c-table02 tr td {
    width: 100%;
    display: block;
    padding-top: 0;
  }
}

.c-table02 tr td ul li {
  display: flex;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-table02 tr td ul li {
    margin-top: 2.6666666667vw;
  }
}

.c-table02 tr td ul li:first-child {
  margin-top: 0.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-table02 tr td ul li:first-child {
    margin-top: 0;
  }
}

.c-table02 tr td ul li span {
  font-weight: 700;
  color: #26a69a;
  width: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-table02 tr td ul li span {
    width: 18%;
  }
}

@media only screen and (max-width: 47.9375em) {
  .c-table02 tr td ul li p {
    width: 82%;
  }
}

@media only screen and (max-width: 47.9375em) {
  .c-table03-wrap {
    overflow: scroll;
  }
}

.c-table03 {
  width: 100%;
}
@media only screen and (max-width: 47.9375em) {
  .c-table03 {
    width: 213.3333333333vw;
  }
}

.c-table03 tr th {
  width: 33%;
  background: #26a69a;
  color: #ffffff;
  text-align: center;
  font-weight: 700;
  padding: 2rem;
  font-size: 2rem;
  border: 1px solid #ffffff;
  border-top-right-radius: 1rem;
  border-top-left-radius: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .c-table03 tr th {
    padding: 3.7333333333vw;
    font-size: 4.8vw;
    border: 0.2666666667vw solid #ffffff;
    border-top-right-radius: 2.6666666667vw;
    border-top-left-radius: 2.6666666667vw;
  }
}

.c-table03 tr td {
  padding: 2rem;
  border: 1px solid #d9e0de;
  text-align: center;
  vertical-align: middle;
}
@media only screen and (max-width: 47.9375em) {
  .c-table03 tr td {
    padding: 3.7333333333vw;
    border: 0.2666666667vw solid #d9e0de;
  }
}

.c-table03 tr:last-child td {
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .c-table03 tr:last-child td {
    font-size: 4.2666666667vw;
    border-bottom-left-radius: 2.6666666667vw;
    border-bottom-right-radius: 2.6666666667vw;
  }
}

.wapper_img {
  transition: 1s;
  opacity: 0;
}
@media only screen and (max-width: 47.9375em) {
  .wapper_img {
    margin-top: 5.3333333333vw;
  }
}

.wapper_img .slider {
  height: 38.4333821376vw;
  width: 100%;
  margin: 0 auto;
}
@media only screen and (max-width: 47.9375em) {
  .wapper_img .slider {
    height: 74.6666666667vw;
  }
}

.wapper_img canvas {
  max-width: 100%;
  width: 100% !important;
  object-fit: cover;
  height: 38.4333821376vw !important;
}
@media only screen and (max-width: 47.9375em) {
  .wapper_img canvas {
    height: 74.6666666667vw !important;
    filter: none;
  }
}

.slider__nav.js-slider__nav,
.scroll {
  display: none;
}

.p-home__mv {
  margin-top: 16rem;
  padding-left: 4.39238653vw;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__mv {
    margin-top: 28.8vw;
    padding-left: 0;
    padding: 0 5.3333333333vw;
  }
}

.text,
.text02 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 4.5387994143vw;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
}
@media only screen and (max-width: 47.9375em) {
  .text,
.text02 {
    font-size: 8.5333333333vw;
  }
}

.text02 {
  margin-top: -1.4641288433vw;
}

.text.is-active,
.text02.is-active {
  --x: 0;
}

.char {
  overflow: hidden;
}

.char-text {
  display: inline-block;
  transform: translateX(var(--x, -101%));
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
  transition-delay: calc(0.05s * var(--char-index));
}

/* 初期CSS */
.container {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #3c3c3c;
}

.visuallyHidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

#box1 {
  animation: 36s linear infinite rotation1;
  display: inline-block;
  width: 140rem;
  height: 140rem;
  position: absolute;
  top: -63rem;
  right: -34rem;
  z-index: -1;
}
@media only screen and (max-width: 47.9375em) {
  #box1 {
    width: 234.6666666667vw;
    height: 234.6666666667vw;
    top: -98.6666666667vw;
    right: -149.3333333333vw;
  }
}

#box1 img {
  width: 100%;
  height: 100%;
}

@keyframes rotation1 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.p-home__sec01 {
  position: relative;
  margin-top: 10rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01 {
    margin-top: 16vw;
  }
}

.p-home__sec01 .l-container {
  position: relative;
  padding-bottom: 45rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01 .l-container {
    padding-bottom: 112vw;
  }
}

.p-home__sec01-title {
  margin-top: 22.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-title {
    margin-top: 16vw;
  }
}

.p-home__sec01-title span {
  font-size: 2.2rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  position: relative;
  padding-left: 1.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-title span {
    font-size: 4.2666666667vw;
    padding-left: 2.6666666667vw;
  }
}

.p-home__sec01-title span::before {
  position: absolute;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  background-color: #26a69a;
  border-radius: 100%;
  top: 1rem;
  left: 0;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-title span::before {
    width: 1.6vw;
    height: 1.6vw;
    top: 1.8666666667vw;
  }
}

.p-home__sec01-title span::after {
  position: absolute;
  content: "";
  width: 19rem;
  height: 0.1rem;
  background-color: #333333;
  top: 1.4rem;
  left: 100%;
  margin-left: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-title span::after {
    width: 26.6666666667vw;
    top: 2.9333333333vw;
    margin-left: 2.6666666667vw;
  }
}

.p-home__sec01-title h2 {
  margin-top: 4rem;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-title h2 {
    font-size: 7.4666666667vw;
    margin-top: 8vw;
  }
}

.p-home__sec01-txt-wrap {
  margin-top: 8rem;
  width: 80rem;
  margin-left: auto;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-txt-wrap {
    width: 100%;
    margin-top: 10.6666666667vw;
  }
}

.p-home__sec01-txt-wrap p {
  font-size: 2rem;
  font-weight: 700;
  line-height: 2.2;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-txt-wrap p {
    font-size: 4.2666666667vw;
    margin-top: 8vw;
  }
}

.p-home__sec01-txt-wrap p:first-child {
  margin-top: 0;
}

.p-home__sec01-img01 {
  width: 43.6rem;
  position: absolute;
  top: -12rem;
  right: -21rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-img01 {
    width: 53.3333333333vw;
    right: -8vw;
    top: 200vw;
  }
}

.p-home__sec01-img02 {
  width: 45rem;
  position: absolute;
  left: -24rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-img02 {
    width: 67.2vw;
    left: -18.6666666667vw;
    top: 229.3333333333vw;
  }
}

.p-home__sec01-img03 {
  width: 37.6rem;
  position: absolute;
  bottom: 0;
  right: -4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec01-img03 {
    width: 45.8666666667vw;
    right: 5.3333333333vw;
    top: 280vw;
  }
}

.p-home__sec02 {
  margin-top: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec02 {
    margin-top: 26.6666666667vw;
  }
}

.p-home__sec02-inner {
  margin: 0 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec02-inner {
    margin: 0;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-home__sec02-inner .c-title01 {
    margin: 0 5.3333333333vw;
  }
}

.p-home__sec02-content {
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec02-content {
    margin-top: 10.6666666667vw;
  }
}

.fade {
  opacity: 0;
  visibility: hidden;
  transition: all 2s;
  transform: translateY(20px);
}

.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.fade-kv {
  opacity: 0;
  transform: translateY(0);
  /* ← 明示的にゼロにする */
  transition: opacity 2s ease;
  will-change: opacity;
  /* ← 最適化のために追加 */
}

.fade-kv.is-visible {
  opacity: 1;
}

.card-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.card-contents {
  position: relative;
  width: 100%;
  height: 49.7803806735vw;
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}
@media only screen and (max-width: 47.9375em) {
  .card-contents {
    height: 118.1333333333vw;
  }
}

.card-wrapper img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.spacer {
  width: 100%;
  height: 53.2942898975vw;
}

.pin-spacer {
  margin: 0 !important;
}

#blotter-container {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
}

.glitch {
  color: #ffffff;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-size: 8.1259150805vw;
  font-weight: 700;
  position: relative;
  opacity: 0.8;
  line-height: 1;
}
@media only screen and (max-width: 47.9375em) {
  .glitch {
    font-size: 14.9333333333vw;
  }
}

@keyframes noise-anim {
  0% {
    clip: rect(66px, 9999px, 98px, 0);
  }
  5% {
    clip: rect(55px, 9999px, 58px, 0);
  }
  10% {
    clip: rect(66px, 9999px, 59px, 0);
  }
  15% {
    clip: rect(2px, 9999px, 60px, 0);
  }
  20% {
    clip: rect(29px, 9999px, 72px, 0);
  }
  25% {
    clip: rect(31px, 9999px, 39px, 0);
  }
  30% {
    clip: rect(33px, 9999px, 87px, 0);
  }
  35% {
    clip: rect(31px, 9999px, 99px, 0);
  }
  40% {
    clip: rect(27px, 9999px, 54px, 0);
  }
  45% {
    clip: rect(95px, 9999px, 87px, 0);
  }
  50% {
    clip: rect(6px, 9999px, 98px, 0);
  }
  55% {
    clip: rect(45px, 9999px, 3px, 0);
  }
  60% {
    clip: rect(33px, 9999px, 11px, 0);
  }
  65% {
    clip: rect(65px, 9999px, 23px, 0);
  }
  70% {
    clip: rect(56px, 9999px, 93px, 0);
  }
  75% {
    clip: rect(37px, 9999px, 9px, 0);
  }
  80% {
    clip: rect(52px, 9999px, 96px, 0);
  }
  85% {
    clip: rect(45px, 9999px, 74px, 0);
  }
  90% {
    clip: rect(87px, 9999px, 37px, 0);
  }
  95% {
    clip: rect(56px, 9999px, 23px, 0);
  }
  100% {
    clip: rect(94px, 9999px, 81px, 0);
  }
}
.glitch:after {
  content: attr(data-text);
  position: absolute;
  left: 2px;
  text-shadow: -1px 0 red;
  top: 0;
  color: white;
  background: inherit;
  overflow: hidden;
  clip: rect(0, 900px, 0, 0);
  animation: noise-anim 2s infinite linear alternate-reverse;
}

@keyframes noise-anim-2 {
  0% {
    clip: rect(79px, 9999px, 74px, 0);
  }
  5% {
    clip: rect(99px, 9999px, 9px, 0);
  }
  10% {
    clip: rect(63px, 9999px, 28px, 0);
  }
  15% {
    clip: rect(61px, 9999px, 57px, 0);
  }
  20% {
    clip: rect(46px, 9999px, 10px, 0);
  }
  25% {
    clip: rect(3px, 9999px, 9px, 0);
  }
  30% {
    clip: rect(17px, 9999px, 80px, 0);
  }
  35% {
    clip: rect(18px, 9999px, 4px, 0);
  }
  40% {
    clip: rect(38px, 9999px, 70px, 0);
  }
  45% {
    clip: rect(8px, 9999px, 58px, 0);
  }
  50% {
    clip: rect(39px, 9999px, 1px, 0);
  }
  55% {
    clip: rect(88px, 9999px, 28px, 0);
  }
  60% {
    clip: rect(89px, 9999px, 26px, 0);
  }
  65% {
    clip: rect(45px, 9999px, 2px, 0);
  }
  70% {
    clip: rect(70px, 9999px, 94px, 0);
  }
  75% {
    clip: rect(96px, 9999px, 52px, 0);
  }
  80% {
    clip: rect(42px, 9999px, 15px, 0);
  }
  85% {
    clip: rect(20px, 9999px, 79px, 0);
  }
  90% {
    clip: rect(28px, 9999px, 92px, 0);
  }
  95% {
    clip: rect(89px, 9999px, 80px, 0);
  }
  100% {
    clip: rect(69px, 9999px, 95px, 0);
  }
}
.glitch:before {
  content: attr(data-text);
  position: absolute;
  left: -2px;
  text-shadow: 1px 0 blue;
  top: 0;
  color: white;
  background: inherit;
  overflow: hidden;
  clip: rect(0, 900px, 0, 0);
  animation: noise-anim-2 3s infinite linear alternate-reverse;
}

.p-home__sec02-card-title-txt {
  margin-left: 5.8565153734vw;
  margin-top: 7.3206442167vw;
  position: relative;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec02-card-title-txt {
    margin-top: 16vw;
    margin-left: 5.3333333333vw;
  }
}

.service02 .p-home__sec02-card-title-txt img {
  width: 56.9546120059vw;
  height: auto;
}
@media only screen and (max-width: 47.9375em) {
  .service02 .p-home__sec02-card-title-txt img {
    width: 84.8vw;
  }
}

.service04 .p-home__sec02-card-title-txt img {
  width: 43.9238653001vw;
  height: auto;
  position: relative;
  display: inline-block;
  background-size: 120% 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
  -ms-background-clip: text;
  -ms-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  animation: 1s shake infinite alternate;
}
@media only screen and (max-width: 47.9375em) {
  .service04 .p-home__sec02-card-title-txt img {
    width: 80.2666666667vw;
  }
}

@keyframes shake {
  0% {
    transform: skewX(-6deg);
  }
  5% {
    transform: skewX(6deg);
  }
  10% {
    transform: skewX(-6deg);
  }
  15% {
    transform: skewX(6deg);
  }
  20% {
    transform: skewX(0deg);
  }
  100% {
    transform: skewX(0deg);
  }
}
.target {
  animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}

@keyframes floating-y {
  0% {
    transform: translateY(-3%);
  }
  100% {
    transform: translateY(3%);
  }
}
.service01-text,
.service01-text > * {
  position: absolute;
  line-height: 1;
  top: 3.6603221083vw;
  left: 29.6%;
}

.service01-text > * {
  font-size: 8.1259150805vw;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 700;
  animation: giggle 1s ease infinite;
  mix-blend-mode: difference;
}
@media only screen and (max-width: 47.9375em) {
  .service01-text > * {
    font-size: 10.6666666667vw;
  }
}
.service01-text .r {
  color: #f00;
  left: -0.5px;
}
.service01-text .g {
  color: #0f0;
  animation-delay: -0.67s;
}
.service01-text .b {
  color: #00f;
  animation-delay: -0.33s;
  left: 0.5px;
}

@keyframes giggle {
  0%, 100% {
    transform: translate(-50%, -50%) translateY(-2px);
  }
  50% {
    transform: translate(-50%, -50%) translateY(2px);
  }
}
@keyframes lines {
  0% {
    background-position: 0px 0px;
  }
  100% {
    background-position: 0px 25px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .service01 .service01-text {
    left: 34.6666666667vw;
    top: 4.8vw;
  }
}

.service01 .p-home__sec02-btn-wrap,
.service02 .p-home__sec02-btn-wrap {
  position: relative;
  margin-left: 5.8565153734vw;
  margin-top: 24.8901903367vw;
}
@media only screen and (max-width: 47.9375em) {
  .service01 .p-home__sec02-btn-wrap,
.service02 .p-home__sec02-btn-wrap {
    margin-left: 5.3333333333vw;
    margin-top: 44.8vw;
  }
}

.service03 .p-home__sec02-btn-wrap,
.service04 .p-home__sec02-btn-wrap {
  position: relative;
  margin-left: 5.8565153734vw;
  margin-top: 2.196193265vw;
}

.p-home__sec02-btn {
  width: 21.9619326501vw;
  height: 21.9619326501vw;
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec02-btn {
    width: 26.6666666667vw;
    height: 26.6666666667vw;
  }
}

.p-home__sec02-btn img {
  width: 2.196193265vw;
  height: auto;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec02-btn img {
    width: 2.6666666667vw;
  }
}

.p-home__sec02-btn-txt {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 20%;
  color: #ffffff;
}

.p-home__sec02-btn-txt h3 {
  font-size: 3.6603221083vw;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec02-btn-txt h3 {
    font-size: 5.3333333333vw;
  }
}

.card-contents p {
  font-size: 1.1713030747vw;
  font-weight: 700;
  margin-top: 1rem;
  color: #ffffff;
  position: relative;
}
@media only screen and (max-width: 47.9375em) {
  .card-contents p {
    font-size: 3.7333333333vw;
    margin: 2.6666666667vw 5.3333333333vw 0;
  }
}

.p-home__sec03 {
  position: relative;
  width: 100%;
  padding: 16rem 0;
  overflow: hidden;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec03 {
    padding: 21.3333333333vw 0;
  }
}

.p-home__sec03-video-bg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.p-home__sec03-video-bg video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-home__sec03 .l-container {
  position: relative;
  z-index: 1;
  /* コンテンツを前面に */
}

.p-home__sec03-content {
  margin-top: 7rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec03-content {
    margin-top: 10.6666666667vw;
  }
}

.p-home__sec04 {
  padding: 16rem 0 14rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec04 {
    padding: 21.3333333333vw 0 26.6666666667vw;
  }
}

.p-home__sec04-content {
  display: flex;
  justify-content: space-between;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec04-content {
    flex-direction: column-reverse;
    row-gap: 10.6666666667vw;
  }
}

.p-home__sec04-item01 {
  width: 46%;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec04-item01 {
    width: 100%;
  }
}

.p-home__sec04-item02 {
  width: 50%;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec04-item02 {
    width: 100%;
  }
}

.p-home__sec04-item01 .c-title03 {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec04-item01 .c-title03 {
    margin-top: 10.6666666667vw;
  }
}

.p-home__sec04-item01 .c-txt02 {
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec04-item01 .c-txt02 {
    margin-top: 3.7333333333vw;
  }
}

.p-home__sec05 {
  padding: 13rem 0 11rem;
  background-color: #f2f2f2;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec05 {
    padding: 21.3333333333vw 0 26.6666666667vw;
  }
}

.p-home__sec05-content {
  display: flex;
  justify-content: space-between;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec05-content {
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}

.p-home__sec05-item02 {
  width: 72rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec05-item02 {
    width: 100%;
  }
}

.p-home__sec06 {
  padding: 14rem 0 16rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec06 {
    padding: 21.3333333333vw 0 0;
  }
}

.p-home__sec06-content {
  display: flex;
  justify-content: space-between;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec06-content {
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}

.p-home__sec06-item02 {
  width: 72rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec06-item02 {
    width: 100%;
  }
}

.p-home__sec07 {
  padding: 14rem 0 16rem;
  position: relative;
  height: 278.1844802343vw;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07 {
    padding: 16vw 0;
    height: 533.3333333333vw;
  }
}

.p-home__sec07 .l-container {
  height: 100%;
}

.p-home__sec07 canvas {
  /* 背景にする */
}

.p-home__sec07-title-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  position: sticky;
  z-index: 2;
  top: 0;
  left: 0;
  height: 100vh;
}

.p-home__sec07-title {
  color: #ffffff;
}

.p-home__sec07-title h2 {
  font-size: 12rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-title h2 {
    font-size: 21.3333333333vw;
  }
}

.p-home__sec07-title-txt {
  font-size: 2.8rem;
  font-weight: 700;
  text-align: center;
  margin-top: 4rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-title-txt {
    font-size: 3.7333333333vw;
    margin-top: 8vw;
  }
}

.p-home__sec07-title .c-btn01 {
  margin: 0 auto;
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-title .c-btn01 {
    margin-top: 10.6666666667vw;
  }
}

.p-home__sec07-img-wrap {
  position: relative;
  z-index: 1;
}

.p-home__sec07-img01 {
  width: 30.6rem;
  margin-left: auto;
  margin-right: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-img01 {
    width: 38.6666666667vw;
    margin-right: 5.3333333333vw;
  }
}

.p-home__sec07-img02 {
  width: 35.7rem;
  margin-top: -6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-img02 {
    width: 44.8vw;
    margin-top: 13.3333333333vw;
    margin-left: -2.6666666667vw;
  }
}

.p-home__sec07-img03 {
  width: 33.8rem;
  margin-left: auto;
  margin-right: -12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-img03 {
    width: 42.6666666667vw;
    margin-right: -10.6666666667vw;
    margin-top: -5.3333333333vw;
  }
}

.p-home__sec07-img04 {
  width: 35.7rem;
  margin-left: -10rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-img04 {
    width: 44.8vw;
    margin-top: 10.6666666667vw;
    margin-left: -16vw;
  }
}

.p-home__sec07-img05 {
  width: 38rem;
  margin-left: auto;
  margin-right: -2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-home__sec07-img05 {
    width: 47.2vw;
    margin-top: -2.6666666667vw;
    margin-right: -5.3333333333vw;
  }
}

canvas {
  z-index: -2 !important;
}
@media only screen and (max-width: 47.9375em) {
  canvas {
    filter: blur(50px);
    top: -106.6666666667vw;
  }
}

.p-home__bg01 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
  opacity: 0;
  transition: 0.3s;
}

.p-home__bg01.is-active {
  opacity: 1;
}

.p-home__bg01 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-under__mv {
  margin-top: 17rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv {
    margin-top: 26.6666666667vw;
  }
}

.p-under__mv-img {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  margin-top: 2rem;
  height: 47rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-img {
    height: auto;
  }
}

.p-under__mv-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-under__mv-title {
  width: fit-content;
  position: relative;
}

.p-under__mv-title::after {
  content: "";
  position: absolute;
  top: 2.6rem;
  right: -1.4rem;
  width: 1.6rem;
  height: 1.6rem;
  background-color: #26a69a;
  border-radius: 100%;
  opacity: 0;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-title::after {
    width: 3.2vw;
    height: 3.2vw;
    top: 2.1333333333vw;
    right: -2.1333333333vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-company .p-under__mv-title::after {
    top: 15.4666666667vw;
    right: 47.4666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-infra .p-under__mv-title::after {
    top: 15.4666666667vw;
    right: 12.8vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-app .p-under__mv-title::after {
    top: 15.4666666667vw;
    right: 8vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-web .p-under__mv-title::after {
    top: 15.4666666667vw;
    right: 23.4666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-e-spo .p-under__mv-title::after {
    top: 15.4666666667vw;
    right: 37.3333333333vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-philo .p-under__mv-title::after {
    top: 15.4666666667vw;
    right: 24vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-contact .p-under__mv-title::after {
    right: -4.8vw;
    top: 0;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-infra02 .p-under__mv-title::after {
    top: 0;
  }
}

.p-under__mv-title.is-active::after {
  opacity: 1;
}

.p-under__mv-title h2.text {
  font-size: 8rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-title h2.text {
    font-size: 12.8vw;
    flex-wrap: wrap;
    line-height: 1.1;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-title h2.text .char-sp {
    width: 30%;
  }
}

@media only screen and (max-width: 47.9375em) {
  .char-ap {
    width: 26.6666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .char-web {
    width: 42.6666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .char-espo {
    width: 40vw;
  }
}

.p-under__mv-title p.text02 {
  font-size: 1.4rem;
  font-weight: 700;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  margin-top: -1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-title p.text02 {
    font-size: 3.7333333333vw;
    margin-top: 2.1333333333vw;
  }
}

.p-under__main {
  margin-top: 10rem;
  padding-bottom: 14rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__main {
    margin-top: 16vw;
    padding-bottom: 32vw;
  }
}

.p-under__main02 {
  margin-top: 6rem;
  padding-bottom: 14rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__main02 {
    margin-top: 16vw;
    padding-bottom: 32vw;
  }
}

.p-under__main03 {
  margin-top: 17rem;
  padding-bottom: 14rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__main03 {
    margin-top: 16vw;
    padding-bottom: 32vw;
  }
}

.p-under__content {
  display: flex;
  justify-content: space-between;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__content {
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}

.p-under__content-head {
  width: 18%;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__content-head {
    display: none;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__content-news .p-under__content-head {
    display: block;
    width: 100%;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__content-news .p-under__content-head ul {
    column-gap: 5.3333333333vw;
    display: flex;
    flex-wrap: wrap;
    row-gap: 2.6666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__content-news .p-under__content-head ul li {
    margin-top: 0;
    padding-left: 0;
  }
}

.p-under__content-body {
  width: 81%;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__content-body {
    width: 100%;
  }
}

.p-under__content-nav {
  position: sticky;
  top: 14rem;
  left: 0;
  z-index: 1;
}

.p-under__content-nav ul li {
  position: relative;
  padding-left: 1.6rem;
  font-size: 1.4rem;
  transition: 0.3s;
  margin-top: 1.6rem;
  color: #adadad;
}

.p-under__content-nav ul li:first-child {
  padding: 0;
  margin-top: 0;
  font-size: 1.8rem;
  color: #333333;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__content-nav ul li:first-child {
    font-size: 3.7333333333vw;
    color: #adadad;
  }
}

.p-under__content-nav ul li:first-child a {
  position: relative;
  display: block;
  text-decoration: underline;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__content-nav ul li:first-child a {
    text-decoration: none;
    font-weight: 400;
  }
}

.p-under__content-nav ul li a {
  transition: 0.3s;
  position: relative;
}

.p-under__content-nav ul li.active {
  font-weight: 700;
  color: #333333;
}

@media only screen and (max-width: 47.9375em) {
  .p-under__content-nav ul li.is-active a {
    color: #333333;
    font-weight: 700;
  }
}

.p-under__content-nav ul li.active::after {
  content: "";
  position: absolute;
  top: 0.9rem;
  left: 0;
  width: 0.6rem;
  height: 0.6rem;
  background: #26a69a;
  border-radius: 100%;
}

@media all and (min-width: 64.0625em) {
  .p-under__content-nav ul li a:hover {
    opacity: 0.7;
  }
}
@media print {
  .p-under__content-nav ul li a:hover {
    opacity: 0.7;
  }
}
.p-under__pan {
  margin-top: 2.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__pan {
    margin-top: 4.8vw;
  }
}

.p-under__pan.p-under__pan02 {
  margin-top: 11rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__pan.p-under__pan02 {
    margin-top: 21.3333333333vw;
  }
}

.p-under__pan.p-under__pan03 {
  padding-top: 11rem;
  margin-top: 0;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__pan.p-under__pan03 {
    padding-top: 21.3333333333vw;
  }
}

.p-under__pan ul {
  display: flex;
  justify-content: flex-end;
  column-gap: 3rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__pan ul {
    flex-wrap: wrap;
    column-gap: 5.3333333333vw;
  }
}

.p-under__pan ul li {
  position: relative;
  font-size: 1.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__pan ul li {
    font-size: 2.6666666667vw;
  }
}

.p-under__pan ul li:last-child::after {
  content: none;
}

.p-under__pan ul li::after {
  content: "";
  position: absolute;
  left: 100%;
  width: 1rem;
  height: 0.1rem;
  background: #adadad;
  border-radius: 1rem;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__pan ul li::after {
    width: 2.1333333333vw;
    height: 0.2666666667vw;
    margin-left: 1.6vw;
  }
}

.p-under__pan ul li a {
  color: #7e8081;
  transition: 0.3s;
}

@media all and (min-width: 64.0625em) {
  .p-under__pan ul li a:hover {
    opacity: 0.7;
  }
}
@media print {
  .p-under__pan ul li a:hover {
    opacity: 0.7;
  }
}
.p-under__section-bg {
  position: relative;
  background: #f2f2f2;
}

.p-under__section-bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  width: 100%;
  height: 100%;
  background: #f2f2f2;
}

.p-under__section-bg::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  width: 100%;
  height: 100%;
  background: #f2f2f2;
}

.p-under__mv-img-infra {
  position: absolute;
  top: 0;
  right: 0;
  width: 54.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-img-infra {
    position: relative;
    width: 94.6666666667vw;
    margin-top: 10.6666666667vw;
  }
}

.p-under__mv-img-infra img {
  border-bottom-left-radius: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-img-infra img {
    border-top-left-radius: 5.3333333333vw;
    border-bottom-left-radius: 5.3333333333vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-img-infra .p-under__pan {
    margin-top: 2.6666666667vw;
    margin-left: -3.4666666667vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-under__mv-img-infra .p-under__pan ul {
    justify-content: flex-start;
  }
}

.p-under__mv-wrap {
  width: 64rem;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-wrap {
    width: 100%;
  }
}

.p-under__mv-txt01 {
  margin-top: 6rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv-txt01 {
    margin-top: 8vw;
  }
}

.p-under__mv02 {
  margin-top: 15rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-under__mv02 {
    margin-top: 29.3333333333vw;
  }
}

.p-company__sec02-content {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec02-content {
    margin-top: 10.6666666667vw;
  }
}

.p-company__sec02-content .c-box02 {
  margin-top: 10rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec02-content .c-box02 {
    margin-top: 21.3333333333vw;
  }
}

.p-company__sec02-content .c-box02:first-child {
  margin-top: 0;
}

.p-company__sec02-content .c-box02:nth-child(2) {
  flex-direction: row-reverse;
}

.p-company__sec02-content .c-box02:nth-child(3) {
  flex-direction: column-reverse;
  row-gap: 4.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec02-content .c-box02:nth-child(3) {
    row-gap: 10.6666666667vw;
  }
}

.p-company__sec02-content .c-box02:nth-child(3) .c-box02-img {
  width: 100%;
}

.p-company__sec02-content .c-box02:nth-child(3) .c-box02-txt {
  width: 100%;
}

.p-company__sec03 {
  padding-bottom: 14rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec03 {
    padding-bottom: 21.3333333333vw;
  }
}

.p-company__sec04 {
  padding: 12rem 0 14rem;
  position: relative;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec04 {
    padding: 21.3333333333vw 0;
  }
}

.p-company__sec05 {
  padding-top: 14rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec05 {
    padding-top: 21.3333333333vw;
  }
}

.p-company__sec05-content {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec05-content {
    margin-top: 10.6666666667vw;
  }
}

.p-company__sec05-item {
  margin-top: 8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec05-item {
    margin-top: 16vw;
  }
}

.p-company__sec05-item:first-child {
  margin-top: 0;
}

.p-company__map {
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__map {
    margin-top: 5.3333333333vw;
  }
}

.p-company__map iframe {
  display: block;
  width: 100%;
  height: 49rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__map iframe {
    height: 44.8vw;
  }
}

.p-company__sec05-item p {
  margin-top: 3.2rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec05-item p {
    margin-top: 5.3333333333vw;
  }
}

.p-company__sec06-item {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec06-item {
    margin-top: 10.6666666667vw;
  }
}

.p-company__sec06-item:first-child {
  margin-top: 0;
}

.p-company__sec07 {
  padding-bottom: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec07 {
    padding-bottom: 16vw;
  }
}

.p-company__sec07-img01 {
  width: 40rem;
  margin: 0 auto;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec07-img01 {
    width: 100%;
    margin-top: 2.6666666667vw;
  }
}

.p-company__sec08 {
  padding: 10rem 0 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec08 {
    padding: 21.3333333333vw 0;
  }
}

.p-company__sec08-item {
  margin-top: 6rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec08-item {
    flex-direction: column-reverse;
    margin-top: 10.6666666667vw;
    row-gap: 5.3333333333vw;
  }
}

.p-company__sec08-txt {
  width: 44rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec08-txt {
    width: 100%;
  }
}

.p-company__sec08-txt h3 {
  font-size: 3.2rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec08-txt h3 {
    font-size: 5.3333333333vw;
  }
}

.p-company__sec08-txt p {
  margin-top: 3.2rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec08-txt p {
    margin-top: 2.6666666667vw;
  }
}

.p-company__sec08-img {
  width: 48rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec08-img {
    width: 100%;
  }
}

.p-company__sec09 {
  margin-top: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec09 {
    margin-top: 21.3333333333vw;
  }
}

.p-company__sec09-box {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec09-box {
    margin-top: 10.6666666667vw;
  }
}

.p-company__sec09-item {
  margin-top: 4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec09-item {
    flex-wrap: wrap;
    row-gap: 5.3333333333vw;
    margin-top: 10.6666666667vw;
  }
}

.p-company__sec09-item:first-child {
  margin-top: 0;
}

.p-company__sec09-head {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24rem;
  min-width: 24rem;
  height: 24rem;
  border-radius: 100%;
  background: #333333;
  color: #ffffff;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec09-head {
    margin: 0 auto;
    width: 40vw;
    height: 40vw;
    min-width: 0;
    font-size: 4.8vw;
  }
}

.p-company__sec09-body {
  width: 68rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec09-body {
    width: 100%;
  }
}

.p-company__sec09-body h4 {
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec09-body h4 {
    font-size: 5.3333333333vw;
    text-align: center;
  }
}

.p-company__sec09-body p {
  line-height: 2;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-company__sec09-body p {
    margin-top: 4.2666666667vw;
  }
}

.p-news__nav {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__nav {
    margin-top: 10.6666666667vw;
  }
}

.p-news__nav .wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 1.6rem;
  color: #d9e0de;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__nav .wp-pagenavi {
    column-gap: 2.6666666667vw;
  }
}

.p-news__nav .wp-pagenavi .current {
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 100%;
  background: #333333;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__nav .wp-pagenavi .current {
    width: 9.0666666667vw;
    height: 9.0666666667vw;
  }
}

.p-news__nav .wp-pagenavi a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 100%;
  border: 1px solid #d9e0de;
  transition: 0.3s;
  color: #333333;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__nav .wp-pagenavi a {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    border: 0.2666666667vw solid #d9e0de;
  }
}

@media all and (min-width: 64.0625em) {
  .p-news__nav .wp-pagenavi a:hover {
    opacity: 0.7;
  }

  .p-news__sec01-item:hover {
    opacity: 0.7;
  }
}
@media print {
  .p-news__nav .wp-pagenavi a:hover {
    opacity: 0.7;
  }

  .p-news__sec01-item:hover {
    opacity: 0.7;
  }
}
.wp-pagenavi a,
.wp-pagenavi span {
  font-size: 1.8rem;
  font-weight: 500;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  border: none;
  padding: 0;
  margin: 0;
}
@media only screen and (max-width: 47.9375em) {
  .wp-pagenavi a,
.wp-pagenavi span {
    font-size: 3.7333333333vw;
  }
}

.wp-pagenavi a.previouspostslink {
  text-indent: -9999px;
  background-image: url(../../assets/images/news/prev.svg);
  width: 5.6rem;
  height: 5.6rem;
  background-repeat: no-repeat;
  background-size: contain;
  border: 0;
}
@media only screen and (max-width: 47.9375em) {
  .wp-pagenavi a.previouspostslink {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}

.wp-pagenavi a.nextpostslink {
  text-indent: -9999px;
  background-image: url(../../assets/images/news/next.svg);
  width: 5.6rem;
  height: 5.6rem;
  background-repeat: no-repeat;
  background-size: contain;
  border: 0;
}
@media only screen and (max-width: 47.9375em) {
  .wp-pagenavi a.nextpostslink {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
}

.p-news__sec02 {
  margin-top: 2rem;
  padding-bottom: 14rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02 {
    margin-top: 16vw;
    padding-bottom: 32vw;
  }
}

.p-news__sec02-head {
  display: flex;
  align-items: center;
  column-gap: 2rem;
}

.p-news__sec02-head time {
  font-size: 1.6rem;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 300;
  color: #858585;
}

.p-news__sec02-head span {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 0.5rem 2rem;
  border-radius: 10rem;
  background: #f2f2f2;
}

.p-news__sec02-title {
  font-size: 2.8rem;
  font-weight: 700;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-title {
    font-size: 6.4vw;
    margin-top: 5.3333333333vw;
  }
}

.p-news__sec02-img01 {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-img01 {
    margin-top: 10.6666666667vw;
  }
}

.p-news__sec02-img01 img {
  width: 100%;
}

.p-news__sec02-content {
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content {
    margin-top: 10.6666666667vw;
  }
}

.p-news__sec02-content h2 {
  font-size: 2.4rem;
  font-weight: 700;
  position: relative;
  padding-left: 1.8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content h2 {
    font-size: 5.3333333333vw;
    padding-left: 3.7333333333vw;
  }
}

.p-news__sec02-content h2::after {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: 0;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 100%;
  background: #26a69a;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content h2::after {
    width: 1.6vw;
    height: 1.6vw;
    top: 1.0666666667vw;
  }
}

.p-news__sec02-content h3 {
  font-size: 2rem;
  font-weight: 700;
  position: relative;
  padding-left: 1.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content h3 {
    font-size: 4.2666666667vw;
    padding-left: 3.2vw;
  }
}

.p-news__sec02-content h3::after {
  content: "";
  position: absolute;
  top: 0.6rem;
  left: 0;
  width: 0.2rem;
  height: 2.3rem;
  background: #d3d3d3;
  border-radius: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content h3::after {
    width: 0.5333333333vw;
    height: 4.8vw;
    top: 1.0666666667vw;
    border-radius: 2.6666666667vw;
  }
}

.p-news__sec02-content p {
  font-size: 1.6rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content p {
    font-size: 3.7333333333vw;
  }
}

.p-news__sec02-content a {
  display: block;
  transition: 0.3s;
  position: relative;
  text-decoration: underline;
  width: fit-content;
}

@media all and (min-width: 64.0625em) {
  .p-news__sec02-content a:hover {
    opacity: 0.7;
  }
}
@media print {
  .p-news__sec02-content a:hover {
    opacity: 0.7;
  }
}
.p-news__sec02-content ul li {
  position: relative;
  padding-left: 1.8rem;
  margin-top: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content ul li {
    padding-left: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}

.p-news__sec02-content ul li:first-child {
  margin-top: 0;
}

.p-news__sec02-content ul li::after {
  content: "";
  position: absolute;
  top: 0.8rem;
  left: 0;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 100%;
  background: #26a69a;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content ul li::after {
    width: 1.6vw;
    height: 1.6vw;
    top: 2.1333333333vw;
  }
}

.p-news__sec02-content ol {
  counter-reset: number;
}

.p-news__sec02-content ol li {
  position: relative;
  padding-left: 2rem;
  margin-top: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02-content ol li {
    padding-left: 4.2666666667vw;
    margin-top: 2.6666666667vw;
  }
}

.p-news__sec02-content ol li::before {
  counter-increment: number;
  content: counter(number);
  position: absolute;
  left: 0;
  font-weight: 700;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  color: #26a69a;
}

.p-news__sec02-content ol li:first-child {
  margin-top: 0;
}

.p-news__sec02 .c-btn01 {
  margin: 0 auto;
  margin-top: 8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-news__sec02 .c-btn01 {
    margin-top: 16vw;
  }
}

.p-service__sec01 .card-contents {
  height: 52rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec01 .card-contents {
    height: auto;
    padding-bottom: 10.6666666667vw;
  }
}

.card-wrapper02 {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 {
    margin-top: 5.3333333333vw;
  }
}

.card-wrapper02 .service01-text,
.card-wrapper02 .service01-text > * {
  top: 6rem;
  left: 27%;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .card-wrapper02 .service01-text,
.card-wrapper02 .service01-text > * {
    left: 34%;
  }
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .service01-text,
.card-wrapper02 .service01-text > * {
    top: 11.7333333333vw;
    left: 50%;
  }
}

.card-wrapper02 .service01-text > * {
  font-size: 7rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .service01-text > * {
    font-size: 11.7333333333vw;
  }
}

.card-wrapper02.service01 .p-home__sec02-btn-wrap,
.card-wrapper02.service02 .p-home__sec02-btn-wrap {
  margin-left: 6rem;
  margin-top: 22rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02.service01 .p-home__sec02-btn-wrap,
.card-wrapper02.service02 .p-home__sec02-btn-wrap {
    margin-left: 5.3333333333vw;
    margin-top: 40vw;
  }
}

.card-wrapper02 .p-home__sec02-card-title-txt {
  margin-left: 0;
  margin-top: 0;
}

.card-wrapper02.service03 .p-home__sec02-card-title-txt {
  margin-left: 6rem;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02.service03 .p-home__sec02-card-title-txt {
    margin-left: 5.3333333333vw;
    margin-top: 10.6666666667vw;
  }
}

.card-wrapper02 img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.card-wrapper02 .p-home__sec02-btn img {
  width: 1.8rem;
  height: auto;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .p-home__sec02-btn img {
    width: 2.6666666667vw;
  }
}

.card-wrapper02:first-child {
  margin-top: 0;
}

.card-wrapper02 .p-home__sec02-btn {
  width: 18rem;
  height: 18rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .p-home__sec02-btn {
    width: 26.6666666667vw;
    height: 26.6666666667vw;
  }
}

.card-wrapper02 .p-home__sec02-btn-txt h3 {
  font-size: 3.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .p-home__sec02-btn-txt h3 {
    font-size: 4.8vw;
  }
}

.card-wrapper02 .card-contents p {
  font-size: 1.4rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .card-contents p {
    font-size: 3.7333333333vw;
  }
}

.card-wrapper02.service02 .p-home__sec02-card-title-txt img {
  width: 48.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02.service02 .p-home__sec02-card-title-txt img {
    width: 77.3333333333vw;
  }
}

.card-wrapper02.service02 .p-home__sec02-card-title-txt {
  margin-left: 6rem;
  margin-top: 5rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02.service02 .p-home__sec02-card-title-txt {
    margin-left: 5.3333333333vw;
    margin-top: 10.6666666667vw;
  }
}

.card-wrapper02.service03 .p-home__sec02-btn-wrap,
.card-wrapper02.service04 .p-home__sec02-btn-wrap {
  margin-left: 6rem;
  margin-top: 5rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02.service03 .p-home__sec02-btn-wrap,
.card-wrapper02.service04 .p-home__sec02-btn-wrap {
    margin-left: 5.3333333333vw;
    margin-top: 10.6666666667vw;
  }
}

.card-wrapper02 .glitch {
  font-size: 8rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .glitch {
    font-size: 14.4vw;
  }
}

.card-wrapper02 .p-home__sec02-btn-txt {
  top: 64%;
  left: 16%;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02 .p-home__sec02-btn-txt {
    top: 50%;
    left: 25%;
  }
}

.card-wrapper02.service04 .p-home__sec02-card-title-txt {
  margin-left: 6rem;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02.service04 .p-home__sec02-card-title-txt {
    margin-left: 5.3333333333vw;
    margin-top: 10.6666666667vw;
  }
}

.card-wrapper02.service04 .p-home__sec02-card-title-txt img {
  width: 44rem;
}
@media only screen and (max-width: 47.9375em) {
  .card-wrapper02.service04 .p-home__sec02-card-title-txt img {
    width: 76.5333333333vw;
  }
}

.p-service__tag {
  position: relative;
  display: flex;
  align-items: center;
  margin-left: 6rem;
  margin-top: 3rem;
  column-gap: 1.5rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__tag {
    margin-left: 5.3333333333vw;
    margin-right: 5.3333333333vw;
    margin-top: 5.3333333333vw;
    column-gap: 1.3333333333vw;
    flex-wrap: wrap;
    row-gap: 1.3333333333vw;
  }
}

.p-service__tag span {
  color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 10rem;
  padding: 0.4rem 2rem;
  font-size: 1.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__tag span {
    font-size: 2.6666666667vw;
    border: 0.2666666667vw solid #ffffff;
    border-radius: 26.6666666667vw;
    padding: 1.0666666667vw 2.6666666667vw;
    line-height: 1.3;
  }
}

.p-service__sec02 {
  padding-bottom: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec02 {
    padding-bottom: 21.3333333333vw;
  }
}

.p-service__sec02 .c-txt01 {
  margin-top: 3.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec02 .c-txt01 {
    margin-top: 5.3333333333vw;
  }
}

.p-service__sec02-content01 {
  margin-top: 6rem;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec02-content01 {
    margin-top: 10.6666666667vw;
    flex-wrap: wrap;
    row-gap: 5.3333333333vw;
  }
}

.p-service__sec02-item {
  width: 31%;
  background: #f2f2f2;
  border-radius: 1.5rem;
  padding: 3rem 3rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec02-item {
    width: 100%;
    padding: 5.3333333333vw;
    border-radius: 4vw;
    display: flex;
    align-items: center;
    column-gap: 4.2666666667vw;
  }
}

.p-service__sec02-item img {
  width: 12rem;
  margin: 0 auto;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec02-item img {
    width: 21.3333333333vw;
    margin: 0;
  }
}

.p-service__sec02-item h3 {
  text-align: center;
  font-weight: 700;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec02-item h3 {
    text-align: left;
    margin-top: 0;
  }
}

.p-service__sec02 .c-box03 {
  margin-top: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec02 .c-box03 {
    margin-top: 21.3333333333vw;
    flex-direction: column-reverse;
  }
}

.p-service__sec03 {
  padding: 10rem 0 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec03 {
    padding: 21.3333333333vw 0;
  }
}

.p-service__sec03-box {
  margin-top: 4rem;
  display: flex;
  justify-content: space-between;
  column-gap: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec03-box {
    margin-top: 10.6666666667vw;
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}

.p-service__sec03-item {
  width: 48%;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec03-item {
    width: 100%;
  }
}

.p-service__sec03-box a {
  transition: 0.3s;
}

@media all and (min-width: 64.0625em) {
  .p-service__sec03-box a:hover {
    opacity: 0.7;
  }
}
@media print {
  .p-service__sec03-box a:hover {
    opacity: 0.7;
  }
}
.p-service__sec03-item h3 {
  margin-top: 3.2rem;
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec03-item h3 {
    margin-top: 5.3333333333vw;
    font-size: 5.3333333333vw;
  }
}

.p-service__sec03-item p {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec03-item p {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
  }
}

.p-service__sec04 .c-box03 {
  margin-top: 8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec04 .c-box03 {
    margin-top: 16vw;
    flex-direction: column-reverse;
  }
}

.p-service__sec04 {
  padding-bottom: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec04 {
    padding-bottom: 21.3333333333vw;
  }
}

.p-service__sec05 {
  padding: 10rem 0 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec05 {
    padding: 21.3333333333vw 0;
  }
}

.p-service__sec05 .c-list03 {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec05 .c-list03 {
    margin-top: 10.6666666667vw;
  }
}

.p-service__sec06,
.p-service__sec07 {
  padding: 12rem 0;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec06,
.p-service__sec07 {
    padding: 21.3333333333vw 0;
  }
}

.p-service__sec06 .c-list04 {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec06 .c-list04 {
    margin-top: 10.6666666667vw;
  }
}

.p-service__sec07 .c-box04,
.p-service__sec08 .c-box04 {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec07 .c-box04,
.p-service__sec08 .c-box04 {
    margin-top: 10.6666666667vw;
  }
}

.p-service__sec08 {
  padding-top: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec08 {
    padding: 21.3333333333vw 0;
  }
}

.p-service__sec09-content {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec09-content {
    margin-top: 10.6666666667vw;
  }
}

.p-service__sec09-item {
  margin-top: 8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec09-item {
    margin-top: 16vw;
  }
}

.p-service__sec09-item:first-child {
  margin-top: 0;
}

.p-service__sec09 .c-btn01 {
  margin: 0 auto;
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec09 .c-btn01 {
    margin-top: 10.6666666667vw;
  }
}

.p-service__sec10 {
  padding-bottom: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec10 {
    padding-bottom: 21.3333333333vw;
  }
}

.p-service__sec11 {
  padding: 10rem 0;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec11 {
    padding: 21.3333333333vw 0;
  }
}

.p-service__sec11 .c-box06 {
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec11 .c-box06 {
    margin-top: 10.6666666667vw;
  }
}

.p-service__sec12 {
  padding-top: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-service__sec12 {
    padding-top: 21.3333333333vw;
  }
}

.p-contact__btn {
  width: 100%;
  background: #26a69a;
  color: #ffffff;
  border-radius: 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 1rem;
  padding: 6rem 8rem;
  position: relative;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__btn {
    padding: 10.6666666667vw;
    border-radius: 5.3333333333vw;
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}

.p-contact__btn-txt {
  position: relative;
  z-index: 1;
}

.p-contact__btn h3 {
  font-size: 6rem;
  font-weight: 500;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__btn h3 {
    font-size: 12.8vw;
    line-height: 1.3;
    margin-bottom: 5.3333333333vw;
  }
}

.p-contact__btn a {
  background: #ffffff;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__btn a {
    width: 100%;
  }
}

.p-contact__btn a p {
  color: #26a69a;
  font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.p-contact__btn a span {
  background: #26a69a;
}

.p-contact__btn::after {
  content: "";
  position: absolute;
  top: 0;
  left: 2.6rem;
  background-image: url(../../assets/images/common/bg01.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 30.9rem;
  height: 100%;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__btn::after {
    width: 60.8vw;
    left: 0;
    background-image: url(../../assets/images/common/bg01_sp.png);
  }
}

.p-contact__form-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  column-gap: 2rem;
  padding: 3.2rem 0;
  border-bottom: 1px solid #d9e0de;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-item {
    flex-wrap: wrap;
    row-gap: 2.6666666667vw;
    padding: 6.9333333333vw 0;
  }
}

.p-contact__form-item.item-first {
  padding-top: 0;
}

.p-contact__form-item label {
  display: flex;
  align-items: center;
  column-gap: 1.4rem;
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 1.6rem;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .p-contact__form-item label {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-item label {
    font-size: 4.2666666667vw;
    margin-top: 0;
    column-gap: 2.6666666667vw;
  }
}

.p-contact__form-confirm .p-contact__form-item label {
  margin-top: 0;
}

.p-contact__form-item label span {
  font-size: 1.2rem;
  font-weight: 700;
  color: #ffffff;
  background: #26a69a;
  border-radius: 0.3rem;
  padding: 0.1rem 1.4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-item label span {
    font-size: 2.9333333333vw;
    border-radius: 0.8vw;
    padding: 0.2666666667vw 3.2vw;
  }
}

.p-contact__form-input {
  width: 56rem;
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .p-contact__form-input {
    width: 46rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-input {
    width: 100%;
  }
}

.p-contact__form-input input,
.p-contact__form-input textarea {
  width: 100%;
  border-radius: 0.5rem;
  background: #f2f2f2;
  border: none;
  padding: 1.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-input input,
.p-contact__form-input textarea {
    padding: 3.7333333333vw;
    border-radius: 1.3333333333vw;
    font-size: 4.2666666667vw;
  }
}

.p-contact__form-input textarea {
  height: 24rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-input textarea {
    height: 53.3333333333vw;
  }
}

.p-contact__form-input input::placeholder,
.p-contact__form-input textarea::placeholder {
  font-size: 1.4rem;
  color: #b2b4b4;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-input input::placeholder,
.p-contact__form-input textarea::placeholder {
    font-size: 3.7333333333vw;
  }
}

.p-contact__form-priv {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 3.2rem;
  font-size: 1.6rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-priv {
    margin-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
}

.p-contact__form-priv a {
  text-decoration: underline;
  transition: 0.3s;
}

@media all and (min-width: 64.0625em) {
  .p-contact__form-priv a:hover {
    opacity: 0.7;
  }
}
@media print {
  .p-contact__form-priv a:hover {
    opacity: 0.7;
  }
}
.checkbox {
  margin: 0;
  top: 0.2rem;
  left: -1rem;
  appearance: none;
  position: relative;
  width: 1.8rem;
  height: 1.8rem;
  border: 1px solid #d9e0de;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em) {
  .checkbox {
    width: 3.7333333333vw;
    height: 3.7333333333vw;
    top: 0.5333333333vw;
    left: -2.1333333333vw;
  }
}

.checkbox:checked {
  background: #26a69a;
  border: none;
}

.checkbox:checked::after {
  content: "";
  position: absolute;
  top: 0.5rem;
  left: 0.3rem;
  width: 12px;
  height: 5px;
  border-bottom: 1px solid #ffffff;
  border-left: 1px solid #ffffff;
  transform: rotate(-45deg);
}
@media only screen and (max-width: 47.9375em) {
  .checkbox:checked::after {
    top: 0.5333333333vw;
    left: 0.2666666667vw;
    width: 3.2vw;
    height: 1.3333333333vw;
    border-bottom: 0.2666666667vw solid #ffffff;
    border-left: 0.2666666667vw solid #ffffff;
  }
}

.p-contact__form-btn {
  margin: 0 auto;
  margin-top: 8rem;
  width: 24rem;
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-btn {
    margin-top: 10.6666666667vw;
    width: 64vw;
  }
}

.p-contact__form-btn input {
  width: 100%;
  background: #333333;
  border-radius: 10rem;
  padding: 2rem 3rem;
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
  border: none;
  text-align: left;
  cursor: pointer;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-btn input {
    border-radius: 26.6666666667vw;
    padding: 5.3333333333vw 8vw;
    font-size: 4vw;
  }
}

.p-contact__form-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3rem;
  width: 0.8rem;
  height: 0.8rem;
  background: #ffffff;
  border-radius: 100%;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-btn::after {
    right: 8vw;
    width: 2.1333333333vw;
    height: 2.1333333333vw;
  }
}

@media all and (min-width: 64.0625em) {
  .p-contact__form-btn:hover::after {
    width: 1.2rem;
    height: 1.2rem;
  }
}
@media print {
  .p-contact__form-btn:hover::after {
    width: 1.2rem;
    height: 1.2rem;
  }
}
.p-contact__form-thanks h2 {
  font-size: 2.8rem;
  font-weight: 700;
  color: #26a69a;
  text-align: center;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-thanks h2 {
    font-size: 5.8666666667vw;
    text-align: left;
  }
}

.p-contact__form-thanks p {
  margin-top: 2rem;
  text-align: center;
}
@media only screen and (max-width: 47.9375em) {
  .p-contact__form-thanks p {
    text-align: left;
    margin-top: 5.3333333333vw;
  }
}

.wpcf7-spinner {
  display: none !important;
}

.p-intro__mv-video {
  position: absolute;
  top: 0;
  left: 0;
  height: 65.7rem;
  width: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__mv-video {
    height: 100.8vw;
  }
}

.p-intro__mv-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-intro__mv .l-container {
  position: relative;
}

.p-intro__mv h2 {
  font-size: 4rem;
  font-weight: 700;
  margin-top: 2.6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__mv h2 {
    font-size: 6.4vw;
    margin-top: 8vw;
  }
}

.p-intro__mv-txt {
  margin-top: 1.6rem;
  font-size: 1.8rem;
  font-weight: 500;
  color: #858585;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__mv-txt {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}

.p-intro__mv-img {
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__mv-img {
    margin-top: 8vw;
  }
}

.p-intro__mv-txt-wrap {
  margin-top: 2rem;
  display: flex;
  justify-content: space-between;
  font-size: 1.4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__mv-txt-wrap {
    margin-top: 2.6666666667vw;
    font-size: 3.2vw;
  }
}

.p-intro__mv-txt-wrap p:last-child {
  text-align: right;
}

.p-intro__sec01 {
  margin-top: 8rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01 {
    margin-top: 16vw;
  }
}

.p-intro__box01,
.p-intro__box02,
.p-intro__box03,
.p-intro__box04 {
  background: #f2f2f2;
  border-radius: 2rem;
  padding: 4rem 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box01,
.p-intro__box02,
.p-intro__box03,
.p-intro__box04 {
    border-radius: 4vw;
    padding: 5.3333333333vw;
  }
}

.p-intro__box03.p-intro__box03v2 {
  background: #26a69a;
}

.p-intro__box01 h3,
.p-intro__box02 h3,
.p-intro__box03 h3,
.p-intro__box04 h3 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box01 h3,
.p-intro__box02 h3,
.p-intro__box03 h3,
.p-intro__box04 h3 {
    font-size: 4.2666666667vw;
  }
}

.p-intro__box03.p-intro__box03v2 h3 {
  color: #ffffff;
}

.p-intro__box01 p {
  margin-top: 2rem;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box01 p {
    margin-top: 2.6666666667vw;
  }
}

.p-intro__sec01-content {
  margin-top: 8rem;
  padding-bottom: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01-content {
    margin-top: 16vw;
    padding-bottom: 21.3333333333vw;
  }
}

.p-intro__sec01-item {
  margin-top: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01-item {
    margin-top: 21.3333333333vw;
  }
}

.p-intro__sec01-item:first-child {
  margin-top: 0;
}

.p-intro__sec01-img01 {
  margin-top: 3.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01-img01 {
    margin-top: 5.3333333333vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01-img01 img {
    border-radius: 2.6666666667vw;
  }
}

.p-intro__sec01-txt01 {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01-txt01 {
    flex-wrap: wrap;
    row-gap: 1.0666666667vw;
  }
}

.p-intro__sec01-txt01 span {
  white-space: nowrap;
  font-size: 1.6rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01-txt01 span {
    font-size: 3.7333333333vw;
  }
}

.p-intro__sec01-txt01 p {
  width: 90%;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__sec01-txt01 p {
    width: 100%;
  }
}

.p-intro__box02 {
  background: #f2f2f2;
  border-radius: 2rem;
  padding: 4rem 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box02 {
    border-radius: 4vw;
    padding: 5.3333333333vw;
  }
}

.p-intro__box02 h3 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box02 h3 {
    font-size: 4.2666666667vw;
  }
}

.p-intro__box02-wrap {
  margin-top: 2rem;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box02-wrap {
    margin-top: 2.6666666667vw;
    flex-wrap: wrap;
    row-gap: 5.3333333333vw;
  }
}

.p-intro__box02-wrap div {
  width: 22%;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box02-wrap div {
    width: 100%;
  }
}

.p-intro__box02-wrap div p {
  font-size: 1.4rem;
  margin-top: 1.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box02-wrap div p {
    font-size: 3.7333333333vw;
    margin-top: 3.2vw;
  }
}

.p-intro__box02-wrap span {
  margin-top: 8%;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box02-wrap span {
    margin: 0 auto;
    transform: rotate(90deg);
    width: 5.3333333333vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-intro__box02-wrap span img {
    width: 100%;
  }
}

.p-intro__box03-wrap {
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  row-gap: 2rem;
  column-gap: 2%;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box03-wrap {
    margin-top: 2.6666666667vw;
    row-gap: 2.6666666667vw;
  }
}

.p-intro__box03-wrap div {
  width: 48%;
  background: #ffffff;
  border-radius: 1rem;
  padding: 1.2rem 2rem;
  display: flex;
  align-items: center;
  column-gap: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box03-wrap div {
    width: 100%;
    padding: 2.6666666667vw;
    border-radius: 2.6666666667vw;
    column-gap: 2.6666666667vw;
  }
}

.p-intro__box03-wrap div img {
  width: 5rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box03-wrap div img {
    width: 10.6666666667vw;
  }
}

.p-intro__box03-wrap div p {
  font-weight: 700;
}

.p-intro__box04-wrap {
  max-width: 73.5rem;
  margin: 0 auto;
  margin-top: 2rem;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap {
    margin-top: 2.6666666667vw;
    flex-wrap: wrap;
    row-gap: 5.3333333333vw;
  }
}

.p-intro__box04-wrap div {
  width: 46%;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap div {
    width: 100%;
  }
}

.p-intro__box04-wrap span {
  margin-top: 10rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap span {
    margin: 0 auto;
    transform: rotate(90deg);
    width: 5.3333333333vw;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap span img {
    width: 100%;
  }
}

.p-intro__box04-wrap div p {
  text-align: center;
  font-weight: 700;
  margin-top: 1.2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap div p {
    margin-top: 2.6666666667vw;
  }
}

.p-intro__box04-wrap02 {
  max-width: 73.5rem;
  margin: 0 auto;
  background: #26a69a;
  border-radius: 1rem;
  color: #ffffff;
  margin-top: 3.6rem;
  display: flex;
  align-items: center;
  column-gap: 4.8rem;
  padding: 2rem 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap02 {
    margin-top: 5.3333333333vw;
    padding: 2.6666666667vw 5.3333333333vw 5.3333333333vw;
    flex-wrap: wrap;
    row-gap: 1.0666666667vw;
  }
}

.p-intro__box04-wrap02 h4 {
  font-size: 2rem;
  font-weight: 700;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap02 h4 {
    margin: 0 auto;
    font-size: 3.7333333333vw;
    text-align: center;
  }
}

.p-intro__box04-wrap02 ul li {
  position: relative;
  padding-left: 2.3rem;
  font-size: 1.4rem;
  font-weight: 700;
  margin-top: 1rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap02 ul li {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
    padding-left: 6.1333333333vw;
  }
}

.p-intro__box04-wrap02 ul li:first-child {
  margin-top: 0;
}

.p-intro__box04-wrap02 ul li::after {
  content: "";
  position: absolute;
  top: 0.3rem;
  left: 0;
  width: 1.7rem;
  height: 1.7rem;
  background-image: url(../../assets/images/intro/icon.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box04-wrap02 ul li::after {
    width: 4.5333333333vw;
    height: 4.5333333333vw;
    top: 0.5333333333vw;
  }
}

.p-intro__box03v2 h4 {
  font-size: 2.4rem;
  font-weight: 700;
  color: #ffffff;
  position: relative;
  width: fit-content;
  margin: 0 auto;
  margin-top: 4.5rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box03v2 h4 {
    margin-top: 5.3333333333vw;
    font-size: 4.2666666667vw;
  }
}

.p-intro__box03v2 h4::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 0.4rem;
  width: 100%;
  background: #ffffff;
}
@media only screen and (max-width: 47.9375em) {
  .p-intro__box03v2 h4::after {
    height: 0.5333333333vw;
  }
}

.p-infra__sec01 {
  padding-bottom: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__sec01 {
    padding-bottom: 21.3333333333vw;
  }
}

.p-infra__content01 {
  margin-top: 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__content01 {
    margin-top: 10.6666666667vw;
  }
}

.p-infra__content01-box {
  margin-top: 4rem;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__content01-box {
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 10.6666666667vw;
    row-gap: 2.6666666667vw;
  }
}

.p-infra__content01-box:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 47.9375em) {
  .p-infra__content01-item-arrow {
    transform: rotate(90deg);
  }
}

.p-infra__content01-item {
  width: 47%;
  border-radius: 2rem;
  padding: 3rem 4rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__content01-item {
    width: 100%;
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw 8vw;
  }
}

.p-infra__content01-item.item01 {
  background: #f2f2f2;
}

.p-infra__content01-item.item02 {
  background: #eaf7f5;
}

.p-infra__content01-item img {
  margin: 0 auto;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__content01-item img {
    width: 8vw;
  }
}

.p-infra__content01-item div {
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__content01-item div {
    margin-top: 2.6666666667vw;
  }
}

.p-infra__content01-item div p {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__content01-item div p {
    font-size: 3.7333333333vw;
  }
}

.p-infra__sec02 {
  padding: 12rem 0;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__sec02 {
    padding: 21.3333333333vw 0;
  }
}

.p-infra__sec03 {
  padding: 12rem 0;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__sec03 {
    padding: 21.3333333333vw 0;
  }
}

.p-infra__sec04 {
  padding: 12rem 0;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__sec04 {
    padding: 21.3333333333vw 0;
  }
}

.p-infra__sec05 {
  padding-bottom: 12rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-infra__sec05 {
    padding-bottom: 21.3333333333vw;
  }
}

.p-recruit h2 {
  font-size: 3.6rem;
  color: #26a69a;
  font-weight: 700;
  text-align: center;
  margin-top: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-recruit h2 {
    font-size: 7.4666666667vw;
    margin-top: 5.3333333333vw;
  }
}

.p-recruit a {
  margin: 0 auto;
  margin-top: 6rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-recruit a {
    margin-top: 10.6666666667vw;
  }
}

.p-recruit h3 {
  text-align: center;
  font-size: 3.2rem;
  font-weight: 700;
}

.p-recruit__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 2rem;
}
@media only screen and (max-width: 47.9375em) {
  .p-recruit__btn {
    column-gap: 4.2666666667vw;
  }
}

.p-recruit__btn a {
  margin: 0;
  width: 20rem;
  transition: 0.3s;
}
@media only screen and (max-width: 47.9375em) {
  .p-recruit__btn a {
    width: 42.6666666667vw;
  }
}

@media all and (min-width: 64.0625em) {
  .p-recruit__btn a:hover {
    opacity: 0.7;
  }
}
@media print {
  .p-recruit__btn a:hover {
    opacity: 0.7;
  }
}
.u-dn-all {
  display: none;
}
@media all and (min-width: 64.0625em) {
  .u-dn-pc {
    display: none;
  }
}
@media print {
  .u-dn-pc {
    display: none;
  }
}
@media all and (min-width: 85.4375em) {
  .u-dn-pc-l {
    display: none;
  }
}
@media all and (min-width: 64.0625em) and (max-width: 85.375em) {
  .u-dn-pc-s {
    display: none;
  }
}
@media print {
  .u-dn-pc-s {
    display: none;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-dn-tb {
    display: none;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) and (orientation: landscape) {
  .u-dn-tb-l {
    display: none;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) and (orientation: portrait) {
  .u-dn-tb-p {
    display: none;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-dn-sp {
    display: none;
  }
}

.u-mt-0 {
  margin-top: 0rem;
}
.u-mb-0 {
  margin-bottom: 0rem;
}
.u-mr-0 {
  margin-right: 0rem;
}
.u-ml-0 {
  margin-left: 0rem;
}
.u-mt-5 {
  margin-top: 0.5rem;
}
.u-mb-5 {
  margin-bottom: 0.5rem;
}
.u-mr-5 {
  margin-right: 0.5rem;
}
.u-ml-5 {
  margin-left: 0.5rem;
}
.u-mt-10 {
  margin-top: 1rem;
}
.u-mb-10 {
  margin-bottom: 1rem;
}
.u-mr-10 {
  margin-right: 1rem;
}
.u-ml-10 {
  margin-left: 1rem;
}
.u-mt-15 {
  margin-top: 1.5rem;
}
.u-mb-15 {
  margin-bottom: 1.5rem;
}
.u-mr-15 {
  margin-right: 1.5rem;
}
.u-ml-15 {
  margin-left: 1.5rem;
}
.u-mt-20 {
  margin-top: 2rem;
}
.u-mb-20 {
  margin-bottom: 2rem;
}
.u-mr-20 {
  margin-right: 2rem;
}
.u-ml-20 {
  margin-left: 2rem;
}
.u-mt-25 {
  margin-top: 2.5rem;
}
.u-mb-25 {
  margin-bottom: 2.5rem;
}
.u-mr-25 {
  margin-right: 2.5rem;
}
.u-ml-25 {
  margin-left: 2.5rem;
}
.u-mt-30 {
  margin-top: 3rem;
}
.u-mb-30 {
  margin-bottom: 3rem;
}
.u-mr-30 {
  margin-right: 3rem;
}
.u-ml-30 {
  margin-left: 3rem;
}
.u-mt-35 {
  margin-top: 3.5rem;
}
.u-mb-35 {
  margin-bottom: 3.5rem;
}
.u-mr-35 {
  margin-right: 3.5rem;
}
.u-ml-35 {
  margin-left: 3.5rem;
}
.u-mt-40 {
  margin-top: 4rem;
}
.u-mb-40 {
  margin-bottom: 4rem;
}
.u-mr-40 {
  margin-right: 4rem;
}
.u-ml-40 {
  margin-left: 4rem;
}
.u-mt-45 {
  margin-top: 4.5rem;
}
.u-mb-45 {
  margin-bottom: 4.5rem;
}
.u-mr-45 {
  margin-right: 4.5rem;
}
.u-ml-45 {
  margin-left: 4.5rem;
}
.u-mt-50 {
  margin-top: 5rem;
}
.u-mb-50 {
  margin-bottom: 5rem;
}
.u-mr-50 {
  margin-right: 5rem;
}
.u-ml-50 {
  margin-left: 5rem;
}
.u-mt-55 {
  margin-top: 5.5rem;
}
.u-mb-55 {
  margin-bottom: 5.5rem;
}
.u-mr-55 {
  margin-right: 5.5rem;
}
.u-ml-55 {
  margin-left: 5.5rem;
}
.u-mt-60 {
  margin-top: 6rem;
}
.u-mb-60 {
  margin-bottom: 6rem;
}
.u-mr-60 {
  margin-right: 6rem;
}
.u-ml-60 {
  margin-left: 6rem;
}
.u-mt-65 {
  margin-top: 6.5rem;
}
.u-mb-65 {
  margin-bottom: 6.5rem;
}
.u-mr-65 {
  margin-right: 6.5rem;
}
.u-ml-65 {
  margin-left: 6.5rem;
}
.u-mt-70 {
  margin-top: 7rem;
}
.u-mb-70 {
  margin-bottom: 7rem;
}
.u-mr-70 {
  margin-right: 7rem;
}
.u-ml-70 {
  margin-left: 7rem;
}
.u-mt-75 {
  margin-top: 7.5rem;
}
.u-mb-75 {
  margin-bottom: 7.5rem;
}
.u-mr-75 {
  margin-right: 7.5rem;
}
.u-ml-75 {
  margin-left: 7.5rem;
}
.u-mt-80 {
  margin-top: 8rem;
}
.u-mb-80 {
  margin-bottom: 8rem;
}
.u-mr-80 {
  margin-right: 8rem;
}
.u-ml-80 {
  margin-left: 8rem;
}
.u-mt-85 {
  margin-top: 8.5rem;
}
.u-mb-85 {
  margin-bottom: 8.5rem;
}
.u-mr-85 {
  margin-right: 8.5rem;
}
.u-ml-85 {
  margin-left: 8.5rem;
}
.u-mt-90 {
  margin-top: 9rem;
}
.u-mb-90 {
  margin-bottom: 9rem;
}
.u-mr-90 {
  margin-right: 9rem;
}
.u-ml-90 {
  margin-left: 9rem;
}
.u-mt-95 {
  margin-top: 9.5rem;
}
.u-mb-95 {
  margin-bottom: 9.5rem;
}
.u-mr-95 {
  margin-right: 9.5rem;
}
.u-ml-95 {
  margin-left: 9.5rem;
}
.u-mt-100 {
  margin-top: 10rem;
}
.u-mb-100 {
  margin-bottom: 10rem;
}
.u-mr-100 {
  margin-right: 10rem;
}
.u-ml-100 {
  margin-left: 10rem;
}
.u-mt-105 {
  margin-top: 10.5rem;
}
.u-mb-105 {
  margin-bottom: 10.5rem;
}
.u-mr-105 {
  margin-right: 10.5rem;
}
.u-ml-105 {
  margin-left: 10.5rem;
}
.u-mt-110 {
  margin-top: 11rem;
}
.u-mb-110 {
  margin-bottom: 11rem;
}
.u-mr-110 {
  margin-right: 11rem;
}
.u-ml-110 {
  margin-left: 11rem;
}
.u-mt-115 {
  margin-top: 11.5rem;
}
.u-mb-115 {
  margin-bottom: 11.5rem;
}
.u-mr-115 {
  margin-right: 11.5rem;
}
.u-ml-115 {
  margin-left: 11.5rem;
}
.u-mt-120 {
  margin-top: 12rem;
}
.u-mb-120 {
  margin-bottom: 12rem;
}
.u-mr-120 {
  margin-right: 12rem;
}
.u-ml-120 {
  margin-left: 12rem;
}
.u-mt-125 {
  margin-top: 12.5rem;
}
.u-mb-125 {
  margin-bottom: 12.5rem;
}
.u-mr-125 {
  margin-right: 12.5rem;
}
.u-ml-125 {
  margin-left: 12.5rem;
}
.u-mt-130 {
  margin-top: 13rem;
}
.u-mb-130 {
  margin-bottom: 13rem;
}
.u-mr-130 {
  margin-right: 13rem;
}
.u-ml-130 {
  margin-left: 13rem;
}
.u-mt-135 {
  margin-top: 13.5rem;
}
.u-mb-135 {
  margin-bottom: 13.5rem;
}
.u-mr-135 {
  margin-right: 13.5rem;
}
.u-ml-135 {
  margin-left: 13.5rem;
}
.u-mt-140 {
  margin-top: 14rem;
}
.u-mb-140 {
  margin-bottom: 14rem;
}
.u-mr-140 {
  margin-right: 14rem;
}
.u-ml-140 {
  margin-left: 14rem;
}
.u-mt-145 {
  margin-top: 14.5rem;
}
.u-mb-145 {
  margin-bottom: 14.5rem;
}
.u-mr-145 {
  margin-right: 14.5rem;
}
.u-ml-145 {
  margin-left: 14.5rem;
}
.u-mt-150 {
  margin-top: 15rem;
}
.u-mb-150 {
  margin-bottom: 15rem;
}
.u-mr-150 {
  margin-right: 15rem;
}
.u-ml-150 {
  margin-left: 15rem;
}
.u-mt-155 {
  margin-top: 15.5rem;
}
.u-mb-155 {
  margin-bottom: 15.5rem;
}
.u-mr-155 {
  margin-right: 15.5rem;
}
.u-ml-155 {
  margin-left: 15.5rem;
}
.u-mt-160 {
  margin-top: 16rem;
}
.u-mb-160 {
  margin-bottom: 16rem;
}
.u-mr-160 {
  margin-right: 16rem;
}
.u-ml-160 {
  margin-left: 16rem;
}
.u-mt-165 {
  margin-top: 16.5rem;
}
.u-mb-165 {
  margin-bottom: 16.5rem;
}
.u-mr-165 {
  margin-right: 16.5rem;
}
.u-ml-165 {
  margin-left: 16.5rem;
}
.u-mt-170 {
  margin-top: 17rem;
}
.u-mb-170 {
  margin-bottom: 17rem;
}
.u-mr-170 {
  margin-right: 17rem;
}
.u-ml-170 {
  margin-left: 17rem;
}
.u-mt-175 {
  margin-top: 17.5rem;
}
.u-mb-175 {
  margin-bottom: 17.5rem;
}
.u-mr-175 {
  margin-right: 17.5rem;
}
.u-ml-175 {
  margin-left: 17.5rem;
}
.u-mt-180 {
  margin-top: 18rem;
}
.u-mb-180 {
  margin-bottom: 18rem;
}
.u-mr-180 {
  margin-right: 18rem;
}
.u-ml-180 {
  margin-left: 18rem;
}
.u-mt-185 {
  margin-top: 18.5rem;
}
.u-mb-185 {
  margin-bottom: 18.5rem;
}
.u-mr-185 {
  margin-right: 18.5rem;
}
.u-ml-185 {
  margin-left: 18.5rem;
}
.u-mt-190 {
  margin-top: 19rem;
}
.u-mb-190 {
  margin-bottom: 19rem;
}
.u-mr-190 {
  margin-right: 19rem;
}
.u-ml-190 {
  margin-left: 19rem;
}
.u-mt-195 {
  margin-top: 19.5rem;
}
.u-mb-195 {
  margin-bottom: 19.5rem;
}
.u-mr-195 {
  margin-right: 19.5rem;
}
.u-ml-195 {
  margin-left: 19.5rem;
}
.u-mt-200 {
  margin-top: 20rem;
}
.u-mb-200 {
  margin-bottom: 20rem;
}
.u-mr-200 {
  margin-right: 20rem;
}
.u-ml-200 {
  margin-left: 20rem;
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-0 {
    margin-top: 0rem;
  }
  .u-mb-pc-0 {
    margin-bottom: 0rem;
  }
  .u-mr-pc-0 {
    margin-right: 0rem;
  }
  .u-ml-pc-0 {
    margin-left: 0rem;
  }
}
@media print {
  .u-mt-pc-0 {
    margin-top: 0rem;
  }
  .u-mb-pc-0 {
    margin-bottom: 0rem;
  }
  .u-mr-pc-0 {
    margin-right: 0rem;
  }
  .u-ml-pc-0 {
    margin-left: 0rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-5 {
    margin-top: 0.5rem;
  }
  .u-mb-pc-5 {
    margin-bottom: 0.5rem;
  }
  .u-mr-pc-5 {
    margin-right: 0.5rem;
  }
  .u-ml-pc-5 {
    margin-left: 0.5rem;
  }
}
@media print {
  .u-mt-pc-5 {
    margin-top: 0.5rem;
  }
  .u-mb-pc-5 {
    margin-bottom: 0.5rem;
  }
  .u-mr-pc-5 {
    margin-right: 0.5rem;
  }
  .u-ml-pc-5 {
    margin-left: 0.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-10 {
    margin-top: 1rem;
  }
  .u-mb-pc-10 {
    margin-bottom: 1rem;
  }
  .u-mr-pc-10 {
    margin-right: 1rem;
  }
  .u-ml-pc-10 {
    margin-left: 1rem;
  }
}
@media print {
  .u-mt-pc-10 {
    margin-top: 1rem;
  }
  .u-mb-pc-10 {
    margin-bottom: 1rem;
  }
  .u-mr-pc-10 {
    margin-right: 1rem;
  }
  .u-ml-pc-10 {
    margin-left: 1rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-15 {
    margin-top: 1.5rem;
  }
  .u-mb-pc-15 {
    margin-bottom: 1.5rem;
  }
  .u-mr-pc-15 {
    margin-right: 1.5rem;
  }
  .u-ml-pc-15 {
    margin-left: 1.5rem;
  }
}
@media print {
  .u-mt-pc-15 {
    margin-top: 1.5rem;
  }
  .u-mb-pc-15 {
    margin-bottom: 1.5rem;
  }
  .u-mr-pc-15 {
    margin-right: 1.5rem;
  }
  .u-ml-pc-15 {
    margin-left: 1.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-20 {
    margin-top: 2rem;
  }
  .u-mb-pc-20 {
    margin-bottom: 2rem;
  }
  .u-mr-pc-20 {
    margin-right: 2rem;
  }
  .u-ml-pc-20 {
    margin-left: 2rem;
  }
}
@media print {
  .u-mt-pc-20 {
    margin-top: 2rem;
  }
  .u-mb-pc-20 {
    margin-bottom: 2rem;
  }
  .u-mr-pc-20 {
    margin-right: 2rem;
  }
  .u-ml-pc-20 {
    margin-left: 2rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-25 {
    margin-top: 2.5rem;
  }
  .u-mb-pc-25 {
    margin-bottom: 2.5rem;
  }
  .u-mr-pc-25 {
    margin-right: 2.5rem;
  }
  .u-ml-pc-25 {
    margin-left: 2.5rem;
  }
}
@media print {
  .u-mt-pc-25 {
    margin-top: 2.5rem;
  }
  .u-mb-pc-25 {
    margin-bottom: 2.5rem;
  }
  .u-mr-pc-25 {
    margin-right: 2.5rem;
  }
  .u-ml-pc-25 {
    margin-left: 2.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-30 {
    margin-top: 3rem;
  }
  .u-mb-pc-30 {
    margin-bottom: 3rem;
  }
  .u-mr-pc-30 {
    margin-right: 3rem;
  }
  .u-ml-pc-30 {
    margin-left: 3rem;
  }
}
@media print {
  .u-mt-pc-30 {
    margin-top: 3rem;
  }
  .u-mb-pc-30 {
    margin-bottom: 3rem;
  }
  .u-mr-pc-30 {
    margin-right: 3rem;
  }
  .u-ml-pc-30 {
    margin-left: 3rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-35 {
    margin-top: 3.5rem;
  }
  .u-mb-pc-35 {
    margin-bottom: 3.5rem;
  }
  .u-mr-pc-35 {
    margin-right: 3.5rem;
  }
  .u-ml-pc-35 {
    margin-left: 3.5rem;
  }
}
@media print {
  .u-mt-pc-35 {
    margin-top: 3.5rem;
  }
  .u-mb-pc-35 {
    margin-bottom: 3.5rem;
  }
  .u-mr-pc-35 {
    margin-right: 3.5rem;
  }
  .u-ml-pc-35 {
    margin-left: 3.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-40 {
    margin-top: 4rem;
  }
  .u-mb-pc-40 {
    margin-bottom: 4rem;
  }
  .u-mr-pc-40 {
    margin-right: 4rem;
  }
  .u-ml-pc-40 {
    margin-left: 4rem;
  }
}
@media print {
  .u-mt-pc-40 {
    margin-top: 4rem;
  }
  .u-mb-pc-40 {
    margin-bottom: 4rem;
  }
  .u-mr-pc-40 {
    margin-right: 4rem;
  }
  .u-ml-pc-40 {
    margin-left: 4rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-45 {
    margin-top: 4.5rem;
  }
  .u-mb-pc-45 {
    margin-bottom: 4.5rem;
  }
  .u-mr-pc-45 {
    margin-right: 4.5rem;
  }
  .u-ml-pc-45 {
    margin-left: 4.5rem;
  }
}
@media print {
  .u-mt-pc-45 {
    margin-top: 4.5rem;
  }
  .u-mb-pc-45 {
    margin-bottom: 4.5rem;
  }
  .u-mr-pc-45 {
    margin-right: 4.5rem;
  }
  .u-ml-pc-45 {
    margin-left: 4.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-50 {
    margin-top: 5rem;
  }
  .u-mb-pc-50 {
    margin-bottom: 5rem;
  }
  .u-mr-pc-50 {
    margin-right: 5rem;
  }
  .u-ml-pc-50 {
    margin-left: 5rem;
  }
}
@media print {
  .u-mt-pc-50 {
    margin-top: 5rem;
  }
  .u-mb-pc-50 {
    margin-bottom: 5rem;
  }
  .u-mr-pc-50 {
    margin-right: 5rem;
  }
  .u-ml-pc-50 {
    margin-left: 5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-55 {
    margin-top: 5.5rem;
  }
  .u-mb-pc-55 {
    margin-bottom: 5.5rem;
  }
  .u-mr-pc-55 {
    margin-right: 5.5rem;
  }
  .u-ml-pc-55 {
    margin-left: 5.5rem;
  }
}
@media print {
  .u-mt-pc-55 {
    margin-top: 5.5rem;
  }
  .u-mb-pc-55 {
    margin-bottom: 5.5rem;
  }
  .u-mr-pc-55 {
    margin-right: 5.5rem;
  }
  .u-ml-pc-55 {
    margin-left: 5.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-60 {
    margin-top: 6rem;
  }
  .u-mb-pc-60 {
    margin-bottom: 6rem;
  }
  .u-mr-pc-60 {
    margin-right: 6rem;
  }
  .u-ml-pc-60 {
    margin-left: 6rem;
  }
}
@media print {
  .u-mt-pc-60 {
    margin-top: 6rem;
  }
  .u-mb-pc-60 {
    margin-bottom: 6rem;
  }
  .u-mr-pc-60 {
    margin-right: 6rem;
  }
  .u-ml-pc-60 {
    margin-left: 6rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-65 {
    margin-top: 6.5rem;
  }
  .u-mb-pc-65 {
    margin-bottom: 6.5rem;
  }
  .u-mr-pc-65 {
    margin-right: 6.5rem;
  }
  .u-ml-pc-65 {
    margin-left: 6.5rem;
  }
}
@media print {
  .u-mt-pc-65 {
    margin-top: 6.5rem;
  }
  .u-mb-pc-65 {
    margin-bottom: 6.5rem;
  }
  .u-mr-pc-65 {
    margin-right: 6.5rem;
  }
  .u-ml-pc-65 {
    margin-left: 6.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-70 {
    margin-top: 7rem;
  }
  .u-mb-pc-70 {
    margin-bottom: 7rem;
  }
  .u-mr-pc-70 {
    margin-right: 7rem;
  }
  .u-ml-pc-70 {
    margin-left: 7rem;
  }
}
@media print {
  .u-mt-pc-70 {
    margin-top: 7rem;
  }
  .u-mb-pc-70 {
    margin-bottom: 7rem;
  }
  .u-mr-pc-70 {
    margin-right: 7rem;
  }
  .u-ml-pc-70 {
    margin-left: 7rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-75 {
    margin-top: 7.5rem;
  }
  .u-mb-pc-75 {
    margin-bottom: 7.5rem;
  }
  .u-mr-pc-75 {
    margin-right: 7.5rem;
  }
  .u-ml-pc-75 {
    margin-left: 7.5rem;
  }
}
@media print {
  .u-mt-pc-75 {
    margin-top: 7.5rem;
  }
  .u-mb-pc-75 {
    margin-bottom: 7.5rem;
  }
  .u-mr-pc-75 {
    margin-right: 7.5rem;
  }
  .u-ml-pc-75 {
    margin-left: 7.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-80 {
    margin-top: 8rem;
  }
  .u-mb-pc-80 {
    margin-bottom: 8rem;
  }
  .u-mr-pc-80 {
    margin-right: 8rem;
  }
  .u-ml-pc-80 {
    margin-left: 8rem;
  }
}
@media print {
  .u-mt-pc-80 {
    margin-top: 8rem;
  }
  .u-mb-pc-80 {
    margin-bottom: 8rem;
  }
  .u-mr-pc-80 {
    margin-right: 8rem;
  }
  .u-ml-pc-80 {
    margin-left: 8rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-85 {
    margin-top: 8.5rem;
  }
  .u-mb-pc-85 {
    margin-bottom: 8.5rem;
  }
  .u-mr-pc-85 {
    margin-right: 8.5rem;
  }
  .u-ml-pc-85 {
    margin-left: 8.5rem;
  }
}
@media print {
  .u-mt-pc-85 {
    margin-top: 8.5rem;
  }
  .u-mb-pc-85 {
    margin-bottom: 8.5rem;
  }
  .u-mr-pc-85 {
    margin-right: 8.5rem;
  }
  .u-ml-pc-85 {
    margin-left: 8.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-90 {
    margin-top: 9rem;
  }
  .u-mb-pc-90 {
    margin-bottom: 9rem;
  }
  .u-mr-pc-90 {
    margin-right: 9rem;
  }
  .u-ml-pc-90 {
    margin-left: 9rem;
  }
}
@media print {
  .u-mt-pc-90 {
    margin-top: 9rem;
  }
  .u-mb-pc-90 {
    margin-bottom: 9rem;
  }
  .u-mr-pc-90 {
    margin-right: 9rem;
  }
  .u-ml-pc-90 {
    margin-left: 9rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-95 {
    margin-top: 9.5rem;
  }
  .u-mb-pc-95 {
    margin-bottom: 9.5rem;
  }
  .u-mr-pc-95 {
    margin-right: 9.5rem;
  }
  .u-ml-pc-95 {
    margin-left: 9.5rem;
  }
}
@media print {
  .u-mt-pc-95 {
    margin-top: 9.5rem;
  }
  .u-mb-pc-95 {
    margin-bottom: 9.5rem;
  }
  .u-mr-pc-95 {
    margin-right: 9.5rem;
  }
  .u-ml-pc-95 {
    margin-left: 9.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-100 {
    margin-top: 10rem;
  }
  .u-mb-pc-100 {
    margin-bottom: 10rem;
  }
  .u-mr-pc-100 {
    margin-right: 10rem;
  }
  .u-ml-pc-100 {
    margin-left: 10rem;
  }
}
@media print {
  .u-mt-pc-100 {
    margin-top: 10rem;
  }
  .u-mb-pc-100 {
    margin-bottom: 10rem;
  }
  .u-mr-pc-100 {
    margin-right: 10rem;
  }
  .u-ml-pc-100 {
    margin-left: 10rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-105 {
    margin-top: 10.5rem;
  }
  .u-mb-pc-105 {
    margin-bottom: 10.5rem;
  }
  .u-mr-pc-105 {
    margin-right: 10.5rem;
  }
  .u-ml-pc-105 {
    margin-left: 10.5rem;
  }
}
@media print {
  .u-mt-pc-105 {
    margin-top: 10.5rem;
  }
  .u-mb-pc-105 {
    margin-bottom: 10.5rem;
  }
  .u-mr-pc-105 {
    margin-right: 10.5rem;
  }
  .u-ml-pc-105 {
    margin-left: 10.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-110 {
    margin-top: 11rem;
  }
  .u-mb-pc-110 {
    margin-bottom: 11rem;
  }
  .u-mr-pc-110 {
    margin-right: 11rem;
  }
  .u-ml-pc-110 {
    margin-left: 11rem;
  }
}
@media print {
  .u-mt-pc-110 {
    margin-top: 11rem;
  }
  .u-mb-pc-110 {
    margin-bottom: 11rem;
  }
  .u-mr-pc-110 {
    margin-right: 11rem;
  }
  .u-ml-pc-110 {
    margin-left: 11rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-115 {
    margin-top: 11.5rem;
  }
  .u-mb-pc-115 {
    margin-bottom: 11.5rem;
  }
  .u-mr-pc-115 {
    margin-right: 11.5rem;
  }
  .u-ml-pc-115 {
    margin-left: 11.5rem;
  }
}
@media print {
  .u-mt-pc-115 {
    margin-top: 11.5rem;
  }
  .u-mb-pc-115 {
    margin-bottom: 11.5rem;
  }
  .u-mr-pc-115 {
    margin-right: 11.5rem;
  }
  .u-ml-pc-115 {
    margin-left: 11.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-120 {
    margin-top: 12rem;
  }
  .u-mb-pc-120 {
    margin-bottom: 12rem;
  }
  .u-mr-pc-120 {
    margin-right: 12rem;
  }
  .u-ml-pc-120 {
    margin-left: 12rem;
  }
}
@media print {
  .u-mt-pc-120 {
    margin-top: 12rem;
  }
  .u-mb-pc-120 {
    margin-bottom: 12rem;
  }
  .u-mr-pc-120 {
    margin-right: 12rem;
  }
  .u-ml-pc-120 {
    margin-left: 12rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-125 {
    margin-top: 12.5rem;
  }
  .u-mb-pc-125 {
    margin-bottom: 12.5rem;
  }
  .u-mr-pc-125 {
    margin-right: 12.5rem;
  }
  .u-ml-pc-125 {
    margin-left: 12.5rem;
  }
}
@media print {
  .u-mt-pc-125 {
    margin-top: 12.5rem;
  }
  .u-mb-pc-125 {
    margin-bottom: 12.5rem;
  }
  .u-mr-pc-125 {
    margin-right: 12.5rem;
  }
  .u-ml-pc-125 {
    margin-left: 12.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-130 {
    margin-top: 13rem;
  }
  .u-mb-pc-130 {
    margin-bottom: 13rem;
  }
  .u-mr-pc-130 {
    margin-right: 13rem;
  }
  .u-ml-pc-130 {
    margin-left: 13rem;
  }
}
@media print {
  .u-mt-pc-130 {
    margin-top: 13rem;
  }
  .u-mb-pc-130 {
    margin-bottom: 13rem;
  }
  .u-mr-pc-130 {
    margin-right: 13rem;
  }
  .u-ml-pc-130 {
    margin-left: 13rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-135 {
    margin-top: 13.5rem;
  }
  .u-mb-pc-135 {
    margin-bottom: 13.5rem;
  }
  .u-mr-pc-135 {
    margin-right: 13.5rem;
  }
  .u-ml-pc-135 {
    margin-left: 13.5rem;
  }
}
@media print {
  .u-mt-pc-135 {
    margin-top: 13.5rem;
  }
  .u-mb-pc-135 {
    margin-bottom: 13.5rem;
  }
  .u-mr-pc-135 {
    margin-right: 13.5rem;
  }
  .u-ml-pc-135 {
    margin-left: 13.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-140 {
    margin-top: 14rem;
  }
  .u-mb-pc-140 {
    margin-bottom: 14rem;
  }
  .u-mr-pc-140 {
    margin-right: 14rem;
  }
  .u-ml-pc-140 {
    margin-left: 14rem;
  }
}
@media print {
  .u-mt-pc-140 {
    margin-top: 14rem;
  }
  .u-mb-pc-140 {
    margin-bottom: 14rem;
  }
  .u-mr-pc-140 {
    margin-right: 14rem;
  }
  .u-ml-pc-140 {
    margin-left: 14rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-145 {
    margin-top: 14.5rem;
  }
  .u-mb-pc-145 {
    margin-bottom: 14.5rem;
  }
  .u-mr-pc-145 {
    margin-right: 14.5rem;
  }
  .u-ml-pc-145 {
    margin-left: 14.5rem;
  }
}
@media print {
  .u-mt-pc-145 {
    margin-top: 14.5rem;
  }
  .u-mb-pc-145 {
    margin-bottom: 14.5rem;
  }
  .u-mr-pc-145 {
    margin-right: 14.5rem;
  }
  .u-ml-pc-145 {
    margin-left: 14.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-150 {
    margin-top: 15rem;
  }
  .u-mb-pc-150 {
    margin-bottom: 15rem;
  }
  .u-mr-pc-150 {
    margin-right: 15rem;
  }
  .u-ml-pc-150 {
    margin-left: 15rem;
  }
}
@media print {
  .u-mt-pc-150 {
    margin-top: 15rem;
  }
  .u-mb-pc-150 {
    margin-bottom: 15rem;
  }
  .u-mr-pc-150 {
    margin-right: 15rem;
  }
  .u-ml-pc-150 {
    margin-left: 15rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-155 {
    margin-top: 15.5rem;
  }
  .u-mb-pc-155 {
    margin-bottom: 15.5rem;
  }
  .u-mr-pc-155 {
    margin-right: 15.5rem;
  }
  .u-ml-pc-155 {
    margin-left: 15.5rem;
  }
}
@media print {
  .u-mt-pc-155 {
    margin-top: 15.5rem;
  }
  .u-mb-pc-155 {
    margin-bottom: 15.5rem;
  }
  .u-mr-pc-155 {
    margin-right: 15.5rem;
  }
  .u-ml-pc-155 {
    margin-left: 15.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-160 {
    margin-top: 16rem;
  }
  .u-mb-pc-160 {
    margin-bottom: 16rem;
  }
  .u-mr-pc-160 {
    margin-right: 16rem;
  }
  .u-ml-pc-160 {
    margin-left: 16rem;
  }
}
@media print {
  .u-mt-pc-160 {
    margin-top: 16rem;
  }
  .u-mb-pc-160 {
    margin-bottom: 16rem;
  }
  .u-mr-pc-160 {
    margin-right: 16rem;
  }
  .u-ml-pc-160 {
    margin-left: 16rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-165 {
    margin-top: 16.5rem;
  }
  .u-mb-pc-165 {
    margin-bottom: 16.5rem;
  }
  .u-mr-pc-165 {
    margin-right: 16.5rem;
  }
  .u-ml-pc-165 {
    margin-left: 16.5rem;
  }
}
@media print {
  .u-mt-pc-165 {
    margin-top: 16.5rem;
  }
  .u-mb-pc-165 {
    margin-bottom: 16.5rem;
  }
  .u-mr-pc-165 {
    margin-right: 16.5rem;
  }
  .u-ml-pc-165 {
    margin-left: 16.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-170 {
    margin-top: 17rem;
  }
  .u-mb-pc-170 {
    margin-bottom: 17rem;
  }
  .u-mr-pc-170 {
    margin-right: 17rem;
  }
  .u-ml-pc-170 {
    margin-left: 17rem;
  }
}
@media print {
  .u-mt-pc-170 {
    margin-top: 17rem;
  }
  .u-mb-pc-170 {
    margin-bottom: 17rem;
  }
  .u-mr-pc-170 {
    margin-right: 17rem;
  }
  .u-ml-pc-170 {
    margin-left: 17rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-175 {
    margin-top: 17.5rem;
  }
  .u-mb-pc-175 {
    margin-bottom: 17.5rem;
  }
  .u-mr-pc-175 {
    margin-right: 17.5rem;
  }
  .u-ml-pc-175 {
    margin-left: 17.5rem;
  }
}
@media print {
  .u-mt-pc-175 {
    margin-top: 17.5rem;
  }
  .u-mb-pc-175 {
    margin-bottom: 17.5rem;
  }
  .u-mr-pc-175 {
    margin-right: 17.5rem;
  }
  .u-ml-pc-175 {
    margin-left: 17.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-180 {
    margin-top: 18rem;
  }
  .u-mb-pc-180 {
    margin-bottom: 18rem;
  }
  .u-mr-pc-180 {
    margin-right: 18rem;
  }
  .u-ml-pc-180 {
    margin-left: 18rem;
  }
}
@media print {
  .u-mt-pc-180 {
    margin-top: 18rem;
  }
  .u-mb-pc-180 {
    margin-bottom: 18rem;
  }
  .u-mr-pc-180 {
    margin-right: 18rem;
  }
  .u-ml-pc-180 {
    margin-left: 18rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-185 {
    margin-top: 18.5rem;
  }
  .u-mb-pc-185 {
    margin-bottom: 18.5rem;
  }
  .u-mr-pc-185 {
    margin-right: 18.5rem;
  }
  .u-ml-pc-185 {
    margin-left: 18.5rem;
  }
}
@media print {
  .u-mt-pc-185 {
    margin-top: 18.5rem;
  }
  .u-mb-pc-185 {
    margin-bottom: 18.5rem;
  }
  .u-mr-pc-185 {
    margin-right: 18.5rem;
  }
  .u-ml-pc-185 {
    margin-left: 18.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-190 {
    margin-top: 19rem;
  }
  .u-mb-pc-190 {
    margin-bottom: 19rem;
  }
  .u-mr-pc-190 {
    margin-right: 19rem;
  }
  .u-ml-pc-190 {
    margin-left: 19rem;
  }
}
@media print {
  .u-mt-pc-190 {
    margin-top: 19rem;
  }
  .u-mb-pc-190 {
    margin-bottom: 19rem;
  }
  .u-mr-pc-190 {
    margin-right: 19rem;
  }
  .u-ml-pc-190 {
    margin-left: 19rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-195 {
    margin-top: 19.5rem;
  }
  .u-mb-pc-195 {
    margin-bottom: 19.5rem;
  }
  .u-mr-pc-195 {
    margin-right: 19.5rem;
  }
  .u-ml-pc-195 {
    margin-left: 19.5rem;
  }
}
@media print {
  .u-mt-pc-195 {
    margin-top: 19.5rem;
  }
  .u-mb-pc-195 {
    margin-bottom: 19.5rem;
  }
  .u-mr-pc-195 {
    margin-right: 19.5rem;
  }
  .u-ml-pc-195 {
    margin-left: 19.5rem;
  }
}
@media all and (min-width: 64.0625em) {
  .u-mt-pc-200 {
    margin-top: 20rem;
  }
  .u-mb-pc-200 {
    margin-bottom: 20rem;
  }
  .u-mr-pc-200 {
    margin-right: 20rem;
  }
  .u-ml-pc-200 {
    margin-left: 20rem;
  }
}
@media print {
  .u-mt-pc-200 {
    margin-top: 20rem;
  }
  .u-mb-pc-200 {
    margin-bottom: 20rem;
  }
  .u-mr-pc-200 {
    margin-right: 20rem;
  }
  .u-ml-pc-200 {
    margin-left: 20rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-0 {
    margin-top: 0rem;
  }
  .u-mb-tb-0 {
    margin-bottom: 0rem;
  }
  .u-mr-tb-0 {
    margin-right: 0rem;
  }
  .u-ml-tb-0 {
    margin-left: 0rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-5 {
    margin-top: 0.5rem;
  }
  .u-mb-tb-5 {
    margin-bottom: 0.5rem;
  }
  .u-mr-tb-5 {
    margin-right: 0.5rem;
  }
  .u-ml-tb-5 {
    margin-left: 0.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-10 {
    margin-top: 1rem;
  }
  .u-mb-tb-10 {
    margin-bottom: 1rem;
  }
  .u-mr-tb-10 {
    margin-right: 1rem;
  }
  .u-ml-tb-10 {
    margin-left: 1rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-15 {
    margin-top: 1.5rem;
  }
  .u-mb-tb-15 {
    margin-bottom: 1.5rem;
  }
  .u-mr-tb-15 {
    margin-right: 1.5rem;
  }
  .u-ml-tb-15 {
    margin-left: 1.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-20 {
    margin-top: 2rem;
  }
  .u-mb-tb-20 {
    margin-bottom: 2rem;
  }
  .u-mr-tb-20 {
    margin-right: 2rem;
  }
  .u-ml-tb-20 {
    margin-left: 2rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-25 {
    margin-top: 2.5rem;
  }
  .u-mb-tb-25 {
    margin-bottom: 2.5rem;
  }
  .u-mr-tb-25 {
    margin-right: 2.5rem;
  }
  .u-ml-tb-25 {
    margin-left: 2.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-30 {
    margin-top: 3rem;
  }
  .u-mb-tb-30 {
    margin-bottom: 3rem;
  }
  .u-mr-tb-30 {
    margin-right: 3rem;
  }
  .u-ml-tb-30 {
    margin-left: 3rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-35 {
    margin-top: 3.5rem;
  }
  .u-mb-tb-35 {
    margin-bottom: 3.5rem;
  }
  .u-mr-tb-35 {
    margin-right: 3.5rem;
  }
  .u-ml-tb-35 {
    margin-left: 3.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-40 {
    margin-top: 4rem;
  }
  .u-mb-tb-40 {
    margin-bottom: 4rem;
  }
  .u-mr-tb-40 {
    margin-right: 4rem;
  }
  .u-ml-tb-40 {
    margin-left: 4rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-45 {
    margin-top: 4.5rem;
  }
  .u-mb-tb-45 {
    margin-bottom: 4.5rem;
  }
  .u-mr-tb-45 {
    margin-right: 4.5rem;
  }
  .u-ml-tb-45 {
    margin-left: 4.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-50 {
    margin-top: 5rem;
  }
  .u-mb-tb-50 {
    margin-bottom: 5rem;
  }
  .u-mr-tb-50 {
    margin-right: 5rem;
  }
  .u-ml-tb-50 {
    margin-left: 5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-55 {
    margin-top: 5.5rem;
  }
  .u-mb-tb-55 {
    margin-bottom: 5.5rem;
  }
  .u-mr-tb-55 {
    margin-right: 5.5rem;
  }
  .u-ml-tb-55 {
    margin-left: 5.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-60 {
    margin-top: 6rem;
  }
  .u-mb-tb-60 {
    margin-bottom: 6rem;
  }
  .u-mr-tb-60 {
    margin-right: 6rem;
  }
  .u-ml-tb-60 {
    margin-left: 6rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-65 {
    margin-top: 6.5rem;
  }
  .u-mb-tb-65 {
    margin-bottom: 6.5rem;
  }
  .u-mr-tb-65 {
    margin-right: 6.5rem;
  }
  .u-ml-tb-65 {
    margin-left: 6.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-70 {
    margin-top: 7rem;
  }
  .u-mb-tb-70 {
    margin-bottom: 7rem;
  }
  .u-mr-tb-70 {
    margin-right: 7rem;
  }
  .u-ml-tb-70 {
    margin-left: 7rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-75 {
    margin-top: 7.5rem;
  }
  .u-mb-tb-75 {
    margin-bottom: 7.5rem;
  }
  .u-mr-tb-75 {
    margin-right: 7.5rem;
  }
  .u-ml-tb-75 {
    margin-left: 7.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-80 {
    margin-top: 8rem;
  }
  .u-mb-tb-80 {
    margin-bottom: 8rem;
  }
  .u-mr-tb-80 {
    margin-right: 8rem;
  }
  .u-ml-tb-80 {
    margin-left: 8rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-85 {
    margin-top: 8.5rem;
  }
  .u-mb-tb-85 {
    margin-bottom: 8.5rem;
  }
  .u-mr-tb-85 {
    margin-right: 8.5rem;
  }
  .u-ml-tb-85 {
    margin-left: 8.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-90 {
    margin-top: 9rem;
  }
  .u-mb-tb-90 {
    margin-bottom: 9rem;
  }
  .u-mr-tb-90 {
    margin-right: 9rem;
  }
  .u-ml-tb-90 {
    margin-left: 9rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-95 {
    margin-top: 9.5rem;
  }
  .u-mb-tb-95 {
    margin-bottom: 9.5rem;
  }
  .u-mr-tb-95 {
    margin-right: 9.5rem;
  }
  .u-ml-tb-95 {
    margin-left: 9.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-100 {
    margin-top: 10rem;
  }
  .u-mb-tb-100 {
    margin-bottom: 10rem;
  }
  .u-mr-tb-100 {
    margin-right: 10rem;
  }
  .u-ml-tb-100 {
    margin-left: 10rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-105 {
    margin-top: 10.5rem;
  }
  .u-mb-tb-105 {
    margin-bottom: 10.5rem;
  }
  .u-mr-tb-105 {
    margin-right: 10.5rem;
  }
  .u-ml-tb-105 {
    margin-left: 10.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-110 {
    margin-top: 11rem;
  }
  .u-mb-tb-110 {
    margin-bottom: 11rem;
  }
  .u-mr-tb-110 {
    margin-right: 11rem;
  }
  .u-ml-tb-110 {
    margin-left: 11rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-115 {
    margin-top: 11.5rem;
  }
  .u-mb-tb-115 {
    margin-bottom: 11.5rem;
  }
  .u-mr-tb-115 {
    margin-right: 11.5rem;
  }
  .u-ml-tb-115 {
    margin-left: 11.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-120 {
    margin-top: 12rem;
  }
  .u-mb-tb-120 {
    margin-bottom: 12rem;
  }
  .u-mr-tb-120 {
    margin-right: 12rem;
  }
  .u-ml-tb-120 {
    margin-left: 12rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-125 {
    margin-top: 12.5rem;
  }
  .u-mb-tb-125 {
    margin-bottom: 12.5rem;
  }
  .u-mr-tb-125 {
    margin-right: 12.5rem;
  }
  .u-ml-tb-125 {
    margin-left: 12.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-130 {
    margin-top: 13rem;
  }
  .u-mb-tb-130 {
    margin-bottom: 13rem;
  }
  .u-mr-tb-130 {
    margin-right: 13rem;
  }
  .u-ml-tb-130 {
    margin-left: 13rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-135 {
    margin-top: 13.5rem;
  }
  .u-mb-tb-135 {
    margin-bottom: 13.5rem;
  }
  .u-mr-tb-135 {
    margin-right: 13.5rem;
  }
  .u-ml-tb-135 {
    margin-left: 13.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-140 {
    margin-top: 14rem;
  }
  .u-mb-tb-140 {
    margin-bottom: 14rem;
  }
  .u-mr-tb-140 {
    margin-right: 14rem;
  }
  .u-ml-tb-140 {
    margin-left: 14rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-145 {
    margin-top: 14.5rem;
  }
  .u-mb-tb-145 {
    margin-bottom: 14.5rem;
  }
  .u-mr-tb-145 {
    margin-right: 14.5rem;
  }
  .u-ml-tb-145 {
    margin-left: 14.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-150 {
    margin-top: 15rem;
  }
  .u-mb-tb-150 {
    margin-bottom: 15rem;
  }
  .u-mr-tb-150 {
    margin-right: 15rem;
  }
  .u-ml-tb-150 {
    margin-left: 15rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-155 {
    margin-top: 15.5rem;
  }
  .u-mb-tb-155 {
    margin-bottom: 15.5rem;
  }
  .u-mr-tb-155 {
    margin-right: 15.5rem;
  }
  .u-ml-tb-155 {
    margin-left: 15.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-160 {
    margin-top: 16rem;
  }
  .u-mb-tb-160 {
    margin-bottom: 16rem;
  }
  .u-mr-tb-160 {
    margin-right: 16rem;
  }
  .u-ml-tb-160 {
    margin-left: 16rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-165 {
    margin-top: 16.5rem;
  }
  .u-mb-tb-165 {
    margin-bottom: 16.5rem;
  }
  .u-mr-tb-165 {
    margin-right: 16.5rem;
  }
  .u-ml-tb-165 {
    margin-left: 16.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-170 {
    margin-top: 17rem;
  }
  .u-mb-tb-170 {
    margin-bottom: 17rem;
  }
  .u-mr-tb-170 {
    margin-right: 17rem;
  }
  .u-ml-tb-170 {
    margin-left: 17rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-175 {
    margin-top: 17.5rem;
  }
  .u-mb-tb-175 {
    margin-bottom: 17.5rem;
  }
  .u-mr-tb-175 {
    margin-right: 17.5rem;
  }
  .u-ml-tb-175 {
    margin-left: 17.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-180 {
    margin-top: 18rem;
  }
  .u-mb-tb-180 {
    margin-bottom: 18rem;
  }
  .u-mr-tb-180 {
    margin-right: 18rem;
  }
  .u-ml-tb-180 {
    margin-left: 18rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-185 {
    margin-top: 18.5rem;
  }
  .u-mb-tb-185 {
    margin-bottom: 18.5rem;
  }
  .u-mr-tb-185 {
    margin-right: 18.5rem;
  }
  .u-ml-tb-185 {
    margin-left: 18.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-190 {
    margin-top: 19rem;
  }
  .u-mb-tb-190 {
    margin-bottom: 19rem;
  }
  .u-mr-tb-190 {
    margin-right: 19rem;
  }
  .u-ml-tb-190 {
    margin-left: 19rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-195 {
    margin-top: 19.5rem;
  }
  .u-mb-tb-195 {
    margin-bottom: 19.5rem;
  }
  .u-mr-tb-195 {
    margin-right: 19.5rem;
  }
  .u-ml-tb-195 {
    margin-left: 19.5rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mt-tb-200 {
    margin-top: 20rem;
  }
  .u-mb-tb-200 {
    margin-bottom: 20rem;
  }
  .u-mr-tb-200 {
    margin-right: 20rem;
  }
  .u-ml-tb-200 {
    margin-left: 20rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-0 {
    margin-top: 0vw;
  }
  .u-mb-sp-0 {
    margin-bottom: 0vw;
  }
  .u-mr-sp-0 {
    margin-right: 0vw;
  }
  .u-ml-sp-0 {
    margin-left: 0vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-5 {
    margin-top: 1.3333333333vw;
  }
  .u-mb-sp-5 {
    margin-bottom: 1.3333333333vw;
  }
  .u-mr-sp-5 {
    margin-right: 1.3333333333vw;
  }
  .u-ml-sp-5 {
    margin-left: 1.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-10 {
    margin-top: 2.6666666667vw;
  }
  .u-mb-sp-10 {
    margin-bottom: 2.6666666667vw;
  }
  .u-mr-sp-10 {
    margin-right: 2.6666666667vw;
  }
  .u-ml-sp-10 {
    margin-left: 2.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-15 {
    margin-top: 4vw;
  }
  .u-mb-sp-15 {
    margin-bottom: 4vw;
  }
  .u-mr-sp-15 {
    margin-right: 4vw;
  }
  .u-ml-sp-15 {
    margin-left: 4vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-20 {
    margin-top: 5.3333333333vw;
  }
  .u-mb-sp-20 {
    margin-bottom: 5.3333333333vw;
  }
  .u-mr-sp-20 {
    margin-right: 5.3333333333vw;
  }
  .u-ml-sp-20 {
    margin-left: 5.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-25 {
    margin-top: 6.6666666667vw;
  }
  .u-mb-sp-25 {
    margin-bottom: 6.6666666667vw;
  }
  .u-mr-sp-25 {
    margin-right: 6.6666666667vw;
  }
  .u-ml-sp-25 {
    margin-left: 6.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-30 {
    margin-top: 8vw;
  }
  .u-mb-sp-30 {
    margin-bottom: 8vw;
  }
  .u-mr-sp-30 {
    margin-right: 8vw;
  }
  .u-ml-sp-30 {
    margin-left: 8vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-35 {
    margin-top: 9.3333333333vw;
  }
  .u-mb-sp-35 {
    margin-bottom: 9.3333333333vw;
  }
  .u-mr-sp-35 {
    margin-right: 9.3333333333vw;
  }
  .u-ml-sp-35 {
    margin-left: 9.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-40 {
    margin-top: 10.6666666667vw;
  }
  .u-mb-sp-40 {
    margin-bottom: 10.6666666667vw;
  }
  .u-mr-sp-40 {
    margin-right: 10.6666666667vw;
  }
  .u-ml-sp-40 {
    margin-left: 10.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-45 {
    margin-top: 12vw;
  }
  .u-mb-sp-45 {
    margin-bottom: 12vw;
  }
  .u-mr-sp-45 {
    margin-right: 12vw;
  }
  .u-ml-sp-45 {
    margin-left: 12vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-50 {
    margin-top: 13.3333333333vw;
  }
  .u-mb-sp-50 {
    margin-bottom: 13.3333333333vw;
  }
  .u-mr-sp-50 {
    margin-right: 13.3333333333vw;
  }
  .u-ml-sp-50 {
    margin-left: 13.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-55 {
    margin-top: 14.6666666667vw;
  }
  .u-mb-sp-55 {
    margin-bottom: 14.6666666667vw;
  }
  .u-mr-sp-55 {
    margin-right: 14.6666666667vw;
  }
  .u-ml-sp-55 {
    margin-left: 14.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-60 {
    margin-top: 16vw;
  }
  .u-mb-sp-60 {
    margin-bottom: 16vw;
  }
  .u-mr-sp-60 {
    margin-right: 16vw;
  }
  .u-ml-sp-60 {
    margin-left: 16vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-65 {
    margin-top: 17.3333333333vw;
  }
  .u-mb-sp-65 {
    margin-bottom: 17.3333333333vw;
  }
  .u-mr-sp-65 {
    margin-right: 17.3333333333vw;
  }
  .u-ml-sp-65 {
    margin-left: 17.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-70 {
    margin-top: 18.6666666667vw;
  }
  .u-mb-sp-70 {
    margin-bottom: 18.6666666667vw;
  }
  .u-mr-sp-70 {
    margin-right: 18.6666666667vw;
  }
  .u-ml-sp-70 {
    margin-left: 18.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-75 {
    margin-top: 20vw;
  }
  .u-mb-sp-75 {
    margin-bottom: 20vw;
  }
  .u-mr-sp-75 {
    margin-right: 20vw;
  }
  .u-ml-sp-75 {
    margin-left: 20vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-80 {
    margin-top: 21.3333333333vw;
  }
  .u-mb-sp-80 {
    margin-bottom: 21.3333333333vw;
  }
  .u-mr-sp-80 {
    margin-right: 21.3333333333vw;
  }
  .u-ml-sp-80 {
    margin-left: 21.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-85 {
    margin-top: 22.6666666667vw;
  }
  .u-mb-sp-85 {
    margin-bottom: 22.6666666667vw;
  }
  .u-mr-sp-85 {
    margin-right: 22.6666666667vw;
  }
  .u-ml-sp-85 {
    margin-left: 22.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-90 {
    margin-top: 24vw;
  }
  .u-mb-sp-90 {
    margin-bottom: 24vw;
  }
  .u-mr-sp-90 {
    margin-right: 24vw;
  }
  .u-ml-sp-90 {
    margin-left: 24vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-95 {
    margin-top: 25.3333333333vw;
  }
  .u-mb-sp-95 {
    margin-bottom: 25.3333333333vw;
  }
  .u-mr-sp-95 {
    margin-right: 25.3333333333vw;
  }
  .u-ml-sp-95 {
    margin-left: 25.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-100 {
    margin-top: 26.6666666667vw;
  }
  .u-mb-sp-100 {
    margin-bottom: 26.6666666667vw;
  }
  .u-mr-sp-100 {
    margin-right: 26.6666666667vw;
  }
  .u-ml-sp-100 {
    margin-left: 26.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-105 {
    margin-top: 28vw;
  }
  .u-mb-sp-105 {
    margin-bottom: 28vw;
  }
  .u-mr-sp-105 {
    margin-right: 28vw;
  }
  .u-ml-sp-105 {
    margin-left: 28vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-110 {
    margin-top: 29.3333333333vw;
  }
  .u-mb-sp-110 {
    margin-bottom: 29.3333333333vw;
  }
  .u-mr-sp-110 {
    margin-right: 29.3333333333vw;
  }
  .u-ml-sp-110 {
    margin-left: 29.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-115 {
    margin-top: 30.6666666667vw;
  }
  .u-mb-sp-115 {
    margin-bottom: 30.6666666667vw;
  }
  .u-mr-sp-115 {
    margin-right: 30.6666666667vw;
  }
  .u-ml-sp-115 {
    margin-left: 30.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-120 {
    margin-top: 32vw;
  }
  .u-mb-sp-120 {
    margin-bottom: 32vw;
  }
  .u-mr-sp-120 {
    margin-right: 32vw;
  }
  .u-ml-sp-120 {
    margin-left: 32vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-125 {
    margin-top: 33.3333333333vw;
  }
  .u-mb-sp-125 {
    margin-bottom: 33.3333333333vw;
  }
  .u-mr-sp-125 {
    margin-right: 33.3333333333vw;
  }
  .u-ml-sp-125 {
    margin-left: 33.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-130 {
    margin-top: 34.6666666667vw;
  }
  .u-mb-sp-130 {
    margin-bottom: 34.6666666667vw;
  }
  .u-mr-sp-130 {
    margin-right: 34.6666666667vw;
  }
  .u-ml-sp-130 {
    margin-left: 34.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-135 {
    margin-top: 36vw;
  }
  .u-mb-sp-135 {
    margin-bottom: 36vw;
  }
  .u-mr-sp-135 {
    margin-right: 36vw;
  }
  .u-ml-sp-135 {
    margin-left: 36vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-140 {
    margin-top: 37.3333333333vw;
  }
  .u-mb-sp-140 {
    margin-bottom: 37.3333333333vw;
  }
  .u-mr-sp-140 {
    margin-right: 37.3333333333vw;
  }
  .u-ml-sp-140 {
    margin-left: 37.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-145 {
    margin-top: 38.6666666667vw;
  }
  .u-mb-sp-145 {
    margin-bottom: 38.6666666667vw;
  }
  .u-mr-sp-145 {
    margin-right: 38.6666666667vw;
  }
  .u-ml-sp-145 {
    margin-left: 38.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-150 {
    margin-top: 40vw;
  }
  .u-mb-sp-150 {
    margin-bottom: 40vw;
  }
  .u-mr-sp-150 {
    margin-right: 40vw;
  }
  .u-ml-sp-150 {
    margin-left: 40vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-155 {
    margin-top: 41.3333333333vw;
  }
  .u-mb-sp-155 {
    margin-bottom: 41.3333333333vw;
  }
  .u-mr-sp-155 {
    margin-right: 41.3333333333vw;
  }
  .u-ml-sp-155 {
    margin-left: 41.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-160 {
    margin-top: 42.6666666667vw;
  }
  .u-mb-sp-160 {
    margin-bottom: 42.6666666667vw;
  }
  .u-mr-sp-160 {
    margin-right: 42.6666666667vw;
  }
  .u-ml-sp-160 {
    margin-left: 42.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-165 {
    margin-top: 44vw;
  }
  .u-mb-sp-165 {
    margin-bottom: 44vw;
  }
  .u-mr-sp-165 {
    margin-right: 44vw;
  }
  .u-ml-sp-165 {
    margin-left: 44vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-170 {
    margin-top: 45.3333333333vw;
  }
  .u-mb-sp-170 {
    margin-bottom: 45.3333333333vw;
  }
  .u-mr-sp-170 {
    margin-right: 45.3333333333vw;
  }
  .u-ml-sp-170 {
    margin-left: 45.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-175 {
    margin-top: 46.6666666667vw;
  }
  .u-mb-sp-175 {
    margin-bottom: 46.6666666667vw;
  }
  .u-mr-sp-175 {
    margin-right: 46.6666666667vw;
  }
  .u-ml-sp-175 {
    margin-left: 46.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-180 {
    margin-top: 48vw;
  }
  .u-mb-sp-180 {
    margin-bottom: 48vw;
  }
  .u-mr-sp-180 {
    margin-right: 48vw;
  }
  .u-ml-sp-180 {
    margin-left: 48vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-185 {
    margin-top: 49.3333333333vw;
  }
  .u-mb-sp-185 {
    margin-bottom: 49.3333333333vw;
  }
  .u-mr-sp-185 {
    margin-right: 49.3333333333vw;
  }
  .u-ml-sp-185 {
    margin-left: 49.3333333333vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-190 {
    margin-top: 50.6666666667vw;
  }
  .u-mb-sp-190 {
    margin-bottom: 50.6666666667vw;
  }
  .u-mr-sp-190 {
    margin-right: 50.6666666667vw;
  }
  .u-ml-sp-190 {
    margin-left: 50.6666666667vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-195 {
    margin-top: 52vw;
  }
  .u-mb-sp-195 {
    margin-bottom: 52vw;
  }
  .u-mr-sp-195 {
    margin-right: 52vw;
  }
  .u-ml-sp-195 {
    margin-left: 52vw;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mt-sp-200 {
    margin-top: 53.3333333333vw;
  }
  .u-mb-sp-200 {
    margin-bottom: 53.3333333333vw;
  }
  .u-mr-sp-200 {
    margin-right: 53.3333333333vw;
  }
  .u-ml-sp-200 {
    margin-left: 53.3333333333vw;
  }
}
.u-m-center {
  margin-right: auto;
  margin-left: auto;
}
@media all and (min-width: 64.0625em) {
  .u-m-center-pc {
    margin-right: auto;
    margin-left: auto;
  }
}
@media print {
  .u-m-center-pc {
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-m-center-tb {
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-m-center-sp {
    margin-right: auto;
    margin-left: auto;
  }
}
.u-mr-auto {
  margin-right: auto;
}
@media all and (min-width: 64.0625em) {
  .u-mr-auto-pc {
    margin-right: auto;
  }
}
@media print {
  .u-mr-auto-pc {
    margin-right: auto;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-mr-auto-tb {
    margin-right: auto;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-mr-auto-sp {
    margin-right: auto;
  }
}
.u-ml-auto {
  margin-left: auto;
}
@media all and (min-width: 64.0625em) {
  .u-ml-auto-pc {
    margin-left: auto;
  }
}
@media print {
  .u-ml-auto-pc {
    margin-left: auto;
  }
}
@media only screen and (min-width: 48em) and (max-width: 64em) {
  .u-ml-auto-tb {
    margin-left: auto;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-ml-auto-sp {
    margin-left: auto;
  }
}

/* コンパイル時に @charset "UTF-8"; を出力するため日本語のコメントアウトを残す */